export interface WebSocketOptions { protocols?: string | string[]; timeout?: number; maxAttempts?: number; onOpen?: (event: Event) => any; onMessage?: (event: MessageEvent) => any; onReconnect?: (event: Event | CloseEvent) => any; onMaximum?: (event: Event | CloseEvent) => any; onClose?: (event: CloseEvent) => any; onError?: (event: Event) => any; } export declare class WsHandler { private url; private options; private webSocket; private attempts; private timer; private pending; constructor(url: string, options?: WebSocketOptions); private open; reconnect(event: Event | CloseEvent): void; json(payload: any): void; send(payload: any): void; close(code?: number, reason?: string): void; updateUrl(url: string): void; getWebSocket(): WebSocket; get state(): number; get isOpen(): boolean; }