ws-asyncapi API / client / websocketAsyncAPI
Function: websocketAsyncAPI()
websocketAsyncAPI<
Path,Channel,T>(url,path,options?):object
Defined in: .api-entries/client/index.d.ts:254
Type Parameters
Path
Path extends any
Channel
Channel extends any
T
T = { commandMap: any; eventMap: any; rpcMap: any; serverRpcMap: any; streamMap: any; authCredentials: any; presenceState: any; }
Parameters
url
string
path
Path
options?
WebsocketAsyncAPIOptions<any, any>
Returns
~original
readonly~original:WebSocketLike
connected
readonlyconnected:boolean
sessionId
readonlysessionId:string
Server-assigned session id (stable across reconnects).
recovered
readonlyrecovered:boolean
Whether the most recent (re)connect recovered missed events.
opened
opened:
Promise<void>
onRecover()
onRecover(
callback): () =>boolean
Fires after each (re)connect handshake with whether the session was recovered (true = missed events were replayed, false = clean (re)subscribe). Useful to refetch state only when recovery failed.
Parameters
callback
(recovered) => void
Returns
() => boolean
onOpen()
onOpen(
callback): () =>boolean
Parameters
callback
(data) => void
Returns
() => boolean
onClose()
onClose(
callback): () =>boolean
Parameters
callback
(data) => void
Returns
() => boolean
onError()
onError(
callback): () =>boolean
Parameters
callback
(event) => void
Returns
() => boolean
onEvent
onEvent: <
Event>(eventName,callback) => () =>boolean
Type Parameters
Event
Event extends string | number | symbol
Parameters
eventName
Event
callback
(data) => void
Returns
() => boolean
onRequest
onRequest: <
Name>(name,handler) => () =>boolean
Type Parameters
Name
Name extends string | number | symbol
Parameters
name
Name
handler
(input) => MaybePromise<T["serverRpcMap"][Name]["output"]>
Returns
() => boolean
call
call: <
Command>(command, ...data) =>void
Type Parameters
Command
Command extends string | number | symbol
Parameters
command
Command
data
...T["commandMap"][Command] extends never ? [] : [T["commandMap"][Command]]
Returns
void
request
request: <
Command>(command,input,options?) =>Promise<T["rpcMap"][Command]["output"]>
Type Parameters
Command
Command extends string | number | symbol
Parameters
command
Command
input
T["rpcMap"][Command]["input"]
options?
Returns
Promise<T["rpcMap"][Command]["output"]>
stream
stream: <
Name>(name,input) =>AsyncIterable<T["streamMap"][Name]["output"]>
Open a typed stream and consume it with for await. Stopping iteration (a break, return, or throw) sends a StreamStop so the server cancels the handler. A server-side error surfaces as a thrown RpcError.
Type Parameters
Name
Name extends string | number | symbol
Parameters
name
Name
input
T["streamMap"][Name]["input"]
Returns
AsyncIterable<T["streamMap"][Name]["output"]>
safeRequest
safeRequest: <
Command>(command,input,options?) =>Promise<SafeResult<T["rpcMap"][Command]["output"],T["rpcMap"][Command]["errors"]>>
Like request, but never throws: returns a typed, discriminated { data, error } result. Narrow on error (and error.code) to get the declared error's typed data.
Type Parameters
Command
Command extends string | number | symbol
Parameters
command
Command
input
T["rpcMap"][Command]["input"]
options?
Returns
Promise<SafeResult<T["rpcMap"][Command]["output"], T["rpcMap"][Command]["errors"]>>
authenticate
authenticate: (
credentials) =>Promise<void>
Refresh credentials on the live connection (token refresh). The server re-runs .onAuth and replaces the connection context — no reconnect. The credentials are remembered and re-sent automatically after a reconnect. Rejects with a typed RpcError if the server rejects them.
Parameters
credentials
T["authCredentials"]
Returns
Promise<void>
presence
presence:
object
presence.self
readonlyself:string
presence.set
set: (
state) =>Promise<void>
Parameters
state
T["presenceState"]
Returns
Promise<void>
presence.update
update: (
patch) =>void
Parameters
patch
Partial<T["presenceState"]>
Returns
void
presence.clear
clear: () =>
Promise<void>
Returns
Promise<void>
presence.get
get: () =>
Map<string,T["presenceState"]>
Returns
Map<string, T["presenceState"]>
presence.subscribe
subscribe: (
callback) => () =>void
Parameters
callback
(members) => void
Returns
() => void
history
history: (
room,options?) =>Promise<unknown[]>
Parameters
room
string
options?
limit?
number
Returns
Promise<unknown[]>
close()
close(
code?,reason?):void
Parameters
code?
number
reason?
string
Returns
void