---
url: 'https://adk.nht.io/api/@nhtio/adk/batteries/classes/GuestEndpoint.md'
description: >-
  Guest-side correlation engine over a [`PortLike`](https://adk.nht.io/api/@nhtio/adk/batteries/interfaces/PortLike). Owns per-call
  `AbortController`s (aborted on an inbound `abort`/`stream:cancel` envelope)
  and exposes `settleCall`/`pushDelta`/`endStream`/ `errorStream` for `serve.ts`
  to report outcomes back across the wire.
---

# Class: GuestEndpoint

Defined in: [src/batteries/isolation/protocol.ts:432](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/isolation/protocol.ts#L432)

Guest-side correlation engine over a [PortLike](../interfaces/PortLike.md). Owns per-call `AbortController`s (aborted on
an inbound `abort`/`stream:cancel` envelope) and exposes `settleCall`/`pushDelta`/`endStream`/
`errorStream` for `serve.ts` to report outcomes back across the wire.

## Constructors

### Constructor

```ts
new GuestEndpoint(port: PortLike, hooks?: GuestEndpointHooks): GuestEndpoint;
```

Defined in: [src/batteries/isolation/protocol.ts:442](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/isolation/protocol.ts#L442)

#### Parameters

| Parameter | Type                                                        |
| --------- | ----------------------------------------------------------- |
| `port`    | [`PortLike`](../interfaces/PortLike.md)                     |
| `hooks`   | [`GuestEndpointHooks`](../interfaces/GuestEndpointHooks.md) |

#### Returns

`GuestEndpoint`

## Methods

### emit()

```ts
emit(channel: string, payload: WireValue): void;
```

Defined in: [src/batteries/isolation/protocol.ts:554](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/isolation/protocol.ts#L554)

Emit an unsolicited event on `channel`.

#### Parameters

| Parameter | Type                                        |
| --------- | ------------------------------------------- |
| `channel` | `string`                                    |
| `payload` | [`WireValue`](../type-aliases/WireValue.md) |

#### Returns

`void`

***

### endStream()

```ts
endStream(id: string): void;
```

Defined in: [src/batteries/isolation/protocol.ts:536](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/isolation/protocol.ts#L536)

Signal a stream's clean end and release its abort controller.

#### Parameters

| Parameter | Type     |
| --------- | -------- |
| `id`      | `string` |

#### Returns

`void`

***

### errorStream()

```ts
errorStream(id: string, error: WireError): void;
```

Defined in: [src/batteries/isolation/protocol.ts:542](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/isolation/protocol.ts#L542)

Signal a stream's terminal error and release its abort controller.

#### Parameters

| Parameter | Type                                      |
| --------- | ----------------------------------------- |
| `id`      | `string`                                  |
| `error`   | [`WireError`](../interfaces/WireError.md) |

#### Returns

`void`

***

### hostcall()

```ts
hostcall(
   method: string,
   args: WireValue[],
   maxBytes?: number): {
  id: string;
  promise: Promise<string | WireValue>;
};
```

Defined in: [src/batteries/isolation/protocol.ts:497](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/isolation/protocol.ts#L497)

Issue a guest-to-host capability request using the separate hostcall id space.

#### Parameters

| Parameter   | Type                                          |
| ----------- | --------------------------------------------- |
| `method`    | `string`                                      |
| `args`      | [`WireValue`](../type-aliases/WireValue.md)\[] |
| `maxBytes?` | `number`                                      |

#### Returns

```ts
{
  id: string;
  promise: Promise<string | WireValue>;
}
```

| Name      | Type                                                                 | Defined in                                                                                                                              |
| --------- | -------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | `string`                                                             | [src/batteries/isolation/protocol.ts:501](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/isolation/protocol.ts#L501) |
| `promise` | `Promise`<`string` | [`WireValue`](../type-aliases/WireValue.md)> | [src/batteries/isolation/protocol.ts:501](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/isolation/protocol.ts#L501) |

***

### pushDelta()

```ts
pushDelta(id: string, delta: WireValue): void;
```

Defined in: [src/batteries/isolation/protocol.ts:531](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/isolation/protocol.ts#L531)

Push a stream delta.

#### Parameters

| Parameter | Type                                        |
| --------- | ------------------------------------------- |
| `id`      | `string`                                    |
| `delta`   | [`WireValue`](../type-aliases/WireValue.md) |

#### Returns

`void`

***

### ready()

```ts
ready(encoderAvailable: boolean): void;
```

Defined in: [src/batteries/isolation/protocol.ts:514](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/isolation/protocol.ts#L514)

Announce readiness. Must be sent exactly once, before any `result`/`stream:*`/`event` envelope.

#### Parameters

| Parameter          | Type      |
| ------------------ | --------- |
| `encoderAvailable` | `boolean` |

#### Returns

`void`

***

### settleError()

```ts
settleError(id: string, error: WireError): void;
```

Defined in: [src/batteries/isolation/protocol.ts:525](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/isolation/protocol.ts#L525)

Report a failed call outcome and release the call's abort controller.

#### Parameters

| Parameter | Type                                      |
| --------- | ----------------------------------------- |
| `id`      | `string`                                  |
| `error`   | [`WireError`](../interfaces/WireError.md) |

#### Returns

`void`

***

### settleOk()

```ts
settleOk(id: string, value: WireValue): void;
```

Defined in: [src/batteries/isolation/protocol.ts:519](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/isolation/protocol.ts#L519)

Report a successful call outcome and release the call's abort controller.

#### Parameters

| Parameter | Type                                        |
| --------- | ------------------------------------------- |
| `id`      | `string`                                    |
| `value`   | [`WireValue`](../type-aliases/WireValue.md) |

#### Returns

`void`

***

### terminate()

```ts
terminate(reason?: string): void;
```

Defined in: [src/batteries/isolation/protocol.ts:548](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/isolation/protocol.ts#L548)

Reject all guest capability requests when this endpoint is stopped.

#### Parameters

| Parameter | Type     | Default value                         |
| --------- | -------- | ------------------------------------- |
| `reason`  | `string` | `'GuestEndpoint has been terminated'` |

#### Returns

`void`
