Skip to content

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

Interface: TopicsControllerOptions<Address, Ref> ​

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

Extends ​

Type Parameters ​

Type ParameterDefault type
Address extends string-
Ref extends TopicRefTopicRef

Properties ​

buffer? ​

ts
optional buffer?: BufferMode;

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


closeDelay? ​

ts
optional closeDelay?: number;

Defined in: packages/client/src/core/socket.ts:59

Grace period before a socket with no remaining consumers is actually closed. React's StrictMode unmounts and immediately remounts in development, which would otherwise tear down and rebuild the connection on every mount.

Inherited from ​

SocketOptions.closeDelay


enabled? ​

ts
optional enabled?: boolean;

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

Inherited from ​

ts
Omit.enabled

heartbeat? ​

ts
optional heartbeat?: false | HeartbeatOptions;

Defined in: packages/client/src/core/socket.ts:50

Ping on an interval and reconnect if nothing comes back. Off unless enabled: chanx consumers only answer ping when they declare a handler for it, and one that does not replies with an error frame every interval. connect() turns it on for channels whose schema declares ping/pong.

Inherited from ​

SocketOptions.heartbeat


maxQueuedFrames? ​

ts
optional maxQueuedFrames?: number;

Defined in: packages/client/src/core/socket.ts:52

Cap on frames buffered while the socket is not yet open.

Inherited from ​

SocketOptions.maxQueuedFrames


on? ​

ts
optional on?: HandlerMap<ToClientOf<Ref>>;

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

Handlers for the joined topics' messages, keyed by action.


onError? ​

ts
optional onError?: (error) => void;

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

Parameters ​

ParameterType
errorChanxErrorFrame

Returns ​

void

Inherited from ​

ts
Omit.onError

onReconnectStop? ​

ts
optional onReconnectStop?: (attempts) => void;

Defined in: packages/client/src/core/socket.ts:43

Parameters ​

ParameterType
attemptsnumber

Returns ​

void

Inherited from ​

SocketOptions.onReconnectStop


onSubscribeError? ​

ts
optional onSubscribeError?: (topic, error) => void;

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

Called when a subscription is rejected, typically by an authorization check.

Parameters ​

ParameterType
topicstring
errorunknown

Returns ​

void


params? ​

ts
optional params?: ParamsOf<Address>;

Defined in: packages/client/src/core/client.ts:21

Inherited from ​

ts
Omit.params

protocols? ​

ts
optional protocols?: string | string[];

Defined in: packages/client/src/core/socket.ts:30

Inherited from ​

SocketOptions.protocols


queryParams? ​

ts
optional queryParams?: Record<string, string | number>;

Defined in: packages/client/src/core/socket.ts:31

Inherited from ​

SocketOptions.queryParams


reconnectAttempts? ​

ts
optional reconnectAttempts?: number;

Defined in: packages/client/src/core/socket.ts:39

Inherited from ​

SocketOptions.reconnectAttempts


reconnectInterval? ​

ts
optional reconnectInterval?: number | ((attempt) => number);

Defined in: packages/client/src/core/socket.ts:41

Fixed delay, or a function of the attempt number for backoff.

Inherited from ​

SocketOptions.reconnectInterval


retryOnError? ​

ts
optional retryOnError?: boolean;

Defined in: packages/client/src/core/socket.ts:42

Inherited from ​

SocketOptions.retryOnError


share? ​

ts
optional share?: boolean;

Defined in: packages/client/src/core/socket.ts:37

Share one socket per resolved URL. connect() defaults it to true for channels that carry topics and false otherwise: topic frames are routed per consumer, but on a plain channel every consumer of a shared socket sees every reply.

Inherited from ​

SocketOptions.share


shouldReconnect? ​

ts
optional shouldReconnect?: (event) => boolean;

Defined in: packages/client/src/core/socket.ts:38

Parameters ​

ParameterType
event{ code?: number; reason?: string; }
event.code?number
event.reason?string

Returns ​

boolean

Inherited from ​

SocketOptions.shouldReconnect


socketFactory? ​

ts
optional socketFactory?: SocketFactory;

Defined in: packages/client/src/core/socket.ts:53

Inherited from ​

SocketOptions.socketFactory


topics ​

ts
topics: readonly Ref[];

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

Topics to join, each from topic.with(params).


validate? ​

ts
optional validate?: ValidateConfig;

Defined in: packages/client/src/core/client.ts:22

Inherited from ​

ControllerOptions.validate

MIT licensed