export interface CDPConnectionOptions { browserPath?: string; cdpPort?: number; headless?: boolean; timeout?: number; } export interface CDPSession { send(method: string, params?: object): Promise; on(event: string, handler: (params: unknown) => void): void; off(event: string, handler: (params: unknown) => void): void; close(): Promise; } export interface ICDPConnection { connect(options: CDPConnectionOptions): Promise; disconnect(): Promise; isConnected(): boolean; getSession(): CDPSession | null; } export interface BrowserInfo { browserVersion: string; userAgent: string; webSocketDebuggerUrl?: string; }