import { EventEmitter } from 'events'; import { WsMessage } from '../../model/common'; import { WebSocketClientOption } from '../../model/websocket_option'; import { WebsocketTransport, WebsocketTransportEvents, WsTokenProvider } from '../interfaces/websocket'; export declare class WebSocketClient extends EventEmitter implements WebsocketTransport { private options; private state; private tokenProvider; private keepAliveInterval; private shutdown; private reconnecting; private tokenInfo; private ackEvents; private worker; private messageBuffer; constructor(tokenProvider: WsTokenProvider, options: WebSocketClientOption); start(): Promise; stop(): Promise; write(ms: WsMessage, timeout: number): Promise; on(event: K, listener: WebsocketTransportEvents[K]): this; emit(event: K, ...args: Parameters): boolean; private close; private dial; private onMessage; private handleAckEvent; private onClose; private keepAlive; private randomEndpoint; private reconnect; }