/** * WebSocket Handler for UI Bridge Server * * Handles WebSocket connections and message routing. */ import type { UIBridgeServerHandlers } from './types'; import type { BridgeEvent } from '@qontinui/ui-bridge'; /** * WebSocket-like interface for compatibility */ export interface WebSocketLike { send(data: string): void; close(): void; readyState: number; onmessage?: ((event: { data: string; }) => void) | null; onclose?: (() => void) | null; onerror?: ((error: unknown) => void) | null; } /** * WebSocket handler for UI Bridge server */ export declare class UIBridgeWSHandler { private handlers; private clients; private verbose; private log; constructor(handlers: UIBridgeServerHandlers, options?: { verbose?: boolean; log?: (message: string) => void; }); /** * Handle new WebSocket connection */ handleConnection(ws: WebSocketLike, preferredId?: string): string; /** * Handle client disconnect */ handleDisconnect(clientId: string, ws?: WebSocketLike): void; /** * Handle incoming message */ private handleMessage; /** * Handle ping message */ private handlePing; /** * Handle subscribe message */ private handleSubscribe; /** * Handle unsubscribe message */ private handleUnsubscribe; /** * Handle find message */ private handleFind; /** * Handle getElement message */ private handleGetElement; /** * Handle getSnapshot message */ private handleGetSnapshot; /** * Handle executeAction message */ private handleExecuteAction; /** * Handle executeComponentAction message */ private handleExecuteComponentAction; /** * Handle executeWorkflow message */ private handleExecuteWorkflow; /** * Handle getElementHistory message */ private handleGetElementHistory; /** * Broadcast event to all subscribed clients */ broadcastEvent(event: BridgeEvent): void; /** * Send message to specific client */ private sendToClient; /** * Send response message */ private sendResponse; /** * Send error message */ private sendError; /** * Get connected client count */ get clientCount(): number; /** * Get all connected client IDs */ get clientIds(): string[]; /** * Disconnect all clients */ disconnectAll(): void; } //# sourceMappingURL=websocket-handler.d.ts.map