Skip to content

API reference / @chanx-js/client / core / ChannelController

Interface: ChannelController<ToServer, ToClient> ​

Defined in: packages/client/src/core/controller.ts:88

Type Parameters ​

Type Parameter
ToServer extends ChanxMessage
ToClient extends ChanxMessage

Properties ​

clearMessages ​

ts
clearMessages: () => void;

Defined in: packages/client/src/core/controller.ts:98

Returns ​

void


getConnection ​

ts
getConnection: () => 
  | ChannelConnection<ToServer, ToClient>
  | null;

Defined in: packages/client/src/core/controller.ts:99

Returns ​

| ChannelConnection<ToServer, ToClient> | null


getSnapshot ​

ts
getSnapshot: () => ChannelSnapshot<ToClient>;

Defined in: packages/client/src/core/controller.ts:95

Stable between changes, so it can back useSyncExternalStore.

Returns ​

ChannelSnapshot<ToClient>


request ​

ts
request: (message, options?) => Promise<ChanxMessage>;

Defined in: packages/client/src/core/controller.ts:97

Parameters ​

ParameterType
messageToServer
options?RequestOptions

Returns ​

Promise<ChanxMessage>


send ​

ts
send: (message) => void;

Defined in: packages/client/src/core/controller.ts:96

Parameters ​

ParameterType
messageToServer

Returns ​

void


setOptions ​

ts
setOptions: (options) => void;

Defined in: packages/client/src/core/controller.ts:103

Replace the options the handlers close over, without reconnecting.

Parameters ​

ParameterType
optionsControllerOptions<string, ToClient>

Returns ​

void


start ​

ts
start: () => void;

Defined in: packages/client/src/core/controller.ts:106

Returns ​

void


stop ​

ts
stop: () => void;

Defined in: packages/client/src/core/controller.ts:107

Returns ​

void


subscribe ​

ts
subscribe: (listener) => () => void;

Defined in: packages/client/src/core/controller.ts:93

Subscribe to snapshot changes. Returns a disposer.

Parameters ​

ParameterType
listener() => void

Returns ​

() => void


terminate ​

ts
terminate: (code?, reason?) => void;

Defined in: packages/client/src/core/controller.ts:101

Close the socket for every consumer sharing it. See ChannelConnection.terminate.

Parameters ​

ParameterType
code?number
reason?string

Returns ​

void


url ​

ts
readonly url: string | null;

Defined in: packages/client/src/core/controller.ts:105

The resolved URL, or null when disabled. Bindings key their lifecycle on this.

MIT licensed