Networking · interface

SocketLike

What a browser WebSocket and a Node ws both satisfy. Named here so neither is imported.

Explained in Networking and rollback.

interface SocketLike
import type { SocketLike } from '@driftengine/network';

Properties

NameTypeDescription
readyStatereadonlynumber
binaryTypeoptionalstring

Methods

send

send(data: ArrayBufferView<ArrayBuffer> | ArrayBuffer): void

A view of an ArrayBuffer, never of shared memory: that is what a browser's WebSocket.send takes, and declaring any buffer here made a browser socket not fit its own transport, so new WebSocketTransport({ socket: new WebSocket(url) }) did not typecheck.

ParameterTypeDescription
dataArrayBufferView<ArrayBuffer> | ArrayBuffer

close

close(): void

addEventListener

addEventListener(type: string, listener: (event: unknown) => void): void
ParameterTypeDescription
typestring
listener(event: unknown) => void