UNPKG

websocket-pro-client

Version:

High-performance WebSocket client with auto-reconnect, heartbeat and priority messaging

32 lines (31 loc) 1.04 kB
import { EventEmitter } from "./EventEmitter"; import { WebSocketConfig } from "../types"; export declare class WebSocketClient extends EventEmitter { private readonly url; private readonly protocols; private config; private currentConfig; private socket; private reconnectAttempts; private reconnectTimer?; private readonly messageQueue; private heartbeat?; private readonly scheduler; private isUpdatingConfig; private configQueue; constructor(url: string, protocols: string[], config: Required<WebSocketConfig>); private initHeartbeat; private connect; private sendRaw; private scheduleReconnect; private flushMessageQueue; send(data: any, priority?: number): Promise<void>; close(code?: number, reason?: string): void; reconnect(): void; updateConfig(newConfig: WebSocketConfig): Promise<void>; private applyConfigSafely; private handleConfigChange; private applyConfig; private reInitHeartbeat; private resetReconnectTimer; }