export declare class WebSocketClient {
    private ws;
    private serverUrl;
    private reconnectInterval;
    private reconnectAttempts;
    private isIntentionalDisconnect;
    private clientConnected;
    private pingInterval;
    private lastPongReceived;
    private cliSessionId;
    constructor(serverUrl?: string);
    connect(): Promise<void>;
    private attemptReconnect;
    private handleMessage;
    sendOutput(data: string): void;
    sendBeep(): void;
    sendBuffer(buffer: string): void;
    notifySessionCreated(token: string): void;
    sendPing(): void;
    sendPong(): void;
    private startPingInterval;
    private stopPingInterval;
    isConnected(): boolean;
    hasClients(): boolean;
    disconnect(): void;
    private generateCliSessionId;
    getCliSessionId(): string;
    onInput?: (data: string) => void;
    onResize?: (cols: number, rows: number) => void;
    onClientConnected?: () => void;
    onClientDisconnected?: () => void;
    onSessionConfirmed?: (token: string) => void;
}
//# sourceMappingURL=websocket-client.d.ts.map