Skip to content

Latest commit

 

History

History
290 lines (173 loc) · 7.71 KB

client.md

File metadata and controls

290 lines (173 loc) · 7.71 KB

graphql-ws / client

Module: client

Table of contents

Enumerations

Interfaces

Type aliases

Variables

Functions

Type aliases

Event

Ƭ Event: EventConnecting | EventConnected | EventMessage | EventClosed | EventError


EventClosed

Ƭ EventClosed: closed


EventClosedListener

Ƭ EventClosedListener: (event: unknown) => void

The argument is actually the websocket CloseEvent, but to avoid bundling DOM typings because the client can run in Node env too, you should assert the websocket type during implementation.

Type declaration:

▸ (event: unknown): void

Parameters:

Name Type
event unknown

Returns: void


EventConnected

Ƭ EventConnected: connected


EventConnectedListener

Ƭ EventConnectedListener: (socket: unknown, payload?: Record<string, unknown>) => void

The first argument is actually the WebSocket, but to avoid bundling DOM typings because the client can run in Node env too, you should assert the websocket type during implementation.

Also, the second argument is the optional payload that the server may send through the ConnectionAck message.

Type declaration:

▸ (socket: unknown, payload?: Record<string, unknown>): void

Parameters:

Name Type
socket unknown
payload? Record<string, unknown>

Returns: void


EventConnecting

Ƭ EventConnecting: connecting


EventConnectingListener

Ƭ EventConnectingListener: () => void

Type declaration:

▸ (): void

Returns: void


EventError

Ƭ EventError: error


EventErrorListener

Ƭ EventErrorListener: (error: unknown) => void

The argument can be either an Error Event or an instance of Error, but to avoid bundling DOM typings because the client can run in Node env too, you should assert the type during implementation. Events dispatched from the WebSocket onerror can be handler in this listener.

Type declaration:

▸ (error: unknown): void

Parameters:

Name Type
error unknown

Returns: void


EventListener

Ƭ EventListener<E>: E extends EventConnecting ? EventConnectingListener : E extends EventConnected ? EventConnectedListener : E extends EventMessage ? EventMessageListener : E extends EventClosed ? EventClosedListener : E extends EventError ? EventErrorListener : never

Type parameters:

Name Type
E Event

EventMessage

Ƭ EventMessage: message


EventMessageListener

Ƭ EventMessageListener: (message: Message) => void

Called for all valid messages received by the client. Mainly useful for debugging and logging received messages.

Type declaration:

▸ (message: Message): void

Parameters:

Name Type
message Message

Returns: void


Message

Ƭ Message<T>: T extends ConnectionAck ? ConnectionAckMessage : T extends ConnectionInit ? ConnectionInitMessage : T extends Subscribe ? SubscribeMessage : T extends Next ? NextMessage : T extends Error ? ErrorMessage : T extends Complete ? CompleteMessage : never

Type parameters:

Name Type Default
T MessageType MessageType

Variables

GRAPHQL_TRANSPORT_WS_PROTOCOL

Const GRAPHQL_TRANSPORT_WS_PROTOCOL: graphql-transport-ws= 'graphql-transport-ws'

The WebSocket sub-protocol used for the GraphQL over WebSocket Protocol.

Functions

createClient

createClient(options: ClientOptions): Client

Creates a disposable GraphQL over WebSocket client.

Parameters:

Name Type
options ClientOptions

Returns: Client


isMessage

isMessage(val: unknown): val is ConnectionInitMessage | ConnectionAckMessage | SubscribeMessage | NextMessage | ErrorMessage | CompleteMessage

Checks if the provided value is a message.

Parameters:

Name Type
val unknown

Returns: val is ConnectionInitMessage | ConnectionAckMessage | SubscribeMessage | NextMessage | ErrorMessage | CompleteMessage


parseMessage

parseMessage(data: unknown): Message

Parses the raw websocket message data to a valid message.

Parameters:

Name Type
data unknown

Returns: Message


stringifyMessage

stringifyMessage<T>(msg: Message<T>): string

Stringifies a valid message ready to be sent through the socket.

Type parameters:

Name Type
T MessageType

Parameters:

Name Type
msg Message<T>

Returns: string