import { type AnalysisServerRuntime } from '../runtime-env.ts'; type EventListener = (...args: any[]) => void; declare class EventEmitter { #private; on(eventName: string | symbol, listener: EventListener): this; once(eventName: string | symbol, listener: EventListener): this; off(eventName: string | symbol, listener: EventListener): this; removeListener(eventName: string | symbol, listener: EventListener): this; removeAllListeners(eventName?: string | symbol): this; emit(eventName: string | symbol, ...args: any[]): boolean; listenerCount(eventName: string | symbol): number; } export declare class WebSocketClient extends EventEmitter { #private; constructor(serverId: string, runtime?: AnalysisServerRuntime); /** Optional: await until connected (good for startup sequencing). */ ready(timeoutMs?: number): Promise; callMethod, Value>(method: string, params: Params, timeoutMs?: number): Promise; callStream, Value>(method: string, params: Params): { [Symbol.asyncIterator](): /*elided*/ any; next(): Promise>; return(): Promise<{ value: undefined; done: boolean; }>; }; close(): void; } export {};