import type { ICDPConnection, CDPConnectionOptions, CDPSession, BrowserInfo } from './interfaces/index.js'; interface CDPClient { send(method: string, params?: object): Promise; on(event: string, handler: (params: unknown) => void): void; off(event: string, handler: (params: unknown) => void): void; close(): Promise; Browser: { getVersion(): Promise<{ protocolVersion: string; product: string; revision: string; userAgent: string; jsVersion: string; }>; }; Page: { enable(): Promise; navigate(params: { url: string; }): Promise<{ frameId: string; loaderId?: string; }>; loadEventFired(): Promise; }; Runtime: { enable(): Promise; evaluate(params: { expression: string; awaitPromise?: boolean; }): Promise; }; Tracing: { start(params: object): Promise; end(): Promise; dataCollected(handler: (params: { value: unknown[]; }) => void): void; tracingComplete(handler: () => void): void; }; } export declare class CDPConnectionService implements ICDPConnection { private client; private browserProcess; private connected; private browserInfo; connect(options: CDPConnectionOptions): Promise; disconnect(): Promise; isConnected(): boolean; getSession(): CDPSession | null; getBrowserInfo(): BrowserInfo | null; getClient(): CDPClient | null; private launchBrowser; private waitForBrowserReady; private connectWithRetry; private fetchBrowserInfo; private createSession; private delay; } export {};