Skip to content

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

Function: defineChannel() ​

ts
function defineChannel<ToServer, ToClient>(): <Address, Topics>(spec) => ChannelDescriptor<ToServer, ToClient, Address, Topics>;

Defined in: packages/client/src/core/descriptor.ts:109

Declare a channel.

Curried so the message types can be given explicitly while the address literal and topic map are still inferred: TypeScript has no partial type-argument inference.

ts
export const chat = defineChannel<ChatToServer, ChatToClient>()({
  name: 'chat',
  address: '/ws/chat/{room}/',
});

Type Parameters ​

Type Parameter
ToServer extends ChanxMessage
ToClient extends ChanxMessage

Returns ​

<Address, Topics>(spec) => ChannelDescriptor<ToServer, ToClient, Address, Topics>

MIT licensed