import { Logger } from 'pino'; import { CDPBrowserInfo } from '../core/cdp-browser-manager.js'; export interface RemoteCDPConfig { url: string; sslMode: 'auto' | 'enabled' | 'disabled' | 'insecure'; apiKey?: string | null; headers?: Record; timeout?: number; } export interface RemoteCDPResponse { success: boolean; browsers: CDPBrowserInfo[]; error?: string; metadata?: { serverVersion?: string; serverInfo?: string; timestamp: number; }; } export declare class RemoteCDPClient { private logger; private config; constructor(logger: Logger, config: RemoteCDPConfig); /** * Fetches available browsers from remote CDP server */ getAvailableBrowsers(): Promise; /** * Gets server information and status */ getServerInfo(): Promise<{ success: boolean; info?: any; error?: string; }>; /** * Checks if remote server is available */ isServerAvailable(): Promise; /** * Gets browser details by ID */ getBrowserDetails(browserId: string): Promise<{ success: boolean; browser?: CDPBrowserInfo; error?: string; }>; /** * Makes HTTP request to remote CDP server */ private makeRequest; /** * Detects browser type from user agent or version string */ private detectBrowserType; /** * Validates remote CDP server URL */ static validateURL(url: string): { valid: boolean; error?: string; }; /** * Parses remote CDP server URL and extracts components */ static parseRemoteURL(url: string): { host: string; port: number; protocol: string; path: string; }; /** * Creates a RemoteCDPClient from configuration */ static createFromConfig(logger: Logger, config: { url: string; sslMode?: string; apiKey?: string | null; headers?: Record; timeout?: number; }): RemoteCDPClient; } //# sourceMappingURL=remote-cdp-client.d.ts.map