Skip to content

Latest commit

 

History

History
230 lines (137 loc) · 6.2 KB

client.md

File metadata and controls

230 lines (137 loc) · 6.2 KB

graphql-ws / client

Module: client

Table of contents

Enumerations

Interfaces

Type aliases

Variables

Functions

Type aliases

Event

Ƭ Event: EventConnecting | EventConnected | EventClosed


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


EventListener

Ƭ EventListener<E>: E extends EventConnecting ? EventConnectingListener : E extends EventConnected ? EventConnectedListener : E extends EventClosed ? EventClosedListener : never

Type parameters:

Name Type
E Event

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