import type { RawData, WebSocket } from 'ws'; import type { OutgoingMessage, IncomingMessage, MessageObjectInfo } from '../../messages'; import { ClientAdapter } from './ClientAdapter'; import { ClientAdapterConfig } from './ClientAdapterConfig'; export declare class WebSocketClientAdapter extends ClientAdapter { ws: WebSocket; reconnectInterval: number; private reconnectTryCounter; private reconnectTimer?; private isClosed; constructor(ws: WebSocket, cfg?: Partial); close(): void; setReconnectInterval(interval: number): void; send(message: IncomingMessage): Promise; sendBinary(message: BinaryData): Promise; getUrl(): string; protected init(): void; protected prepareWs(): void; prepareBinary(message: IncomingMessage): MessageObjectInfo; protected initOnOpen(): void; protected initOnClose(): void; protected reconnect(): void; protected doReconnect(): void; protected createMessageObject(msg: RawData): OutgoingMessage; protected clearReconnectTimer(): void; }