/**
 * Chrome Bridge
 *
 * Native Messaging API bridge for Chrome extension integration.
 * Provides stubs for browser interaction (console, DOM, network, recording).
 */
export interface ChromeBridgeConfig {
    port: number;
    extensionId?: string;
}
export interface DOMElementInfo {
    tagName: string;
    id?: string;
    className?: string;
    textContent?: string;
    attributes: Record<string, string>;
    children: number;
}
export interface NetworkRequest {
    url: string;
    method: string;
    status: number;
    type: string;
    timestamp: number;
}
export interface RecordedAction {
    type: 'click' | 'input' | 'navigation' | 'scroll';
    target: string;
    value?: string;
    timestamp: number;
}
export declare class ChromeBridge {
    private config;
    private connected;
    private recording;
    private recordedActions;
    private consoleErrors;
    private networkRequests;
    private constructor();
    static getInstance(config?: Partial<ChromeBridgeConfig>): ChromeBridge;
    static resetInstance(): void;
    /**
     * Establish connection to Chrome
     */
    connect(port?: number): Promise<boolean>;
    /**
     * Close connection
     */
    disconnect(): Promise<void>;
    /**
     * Check connection state
     */
    isConnected(): boolean;
    /**
     * Get captured console errors (stub)
     */
    getConsoleErrors(): Promise<string[]>;
    /**
     * Get DOM element info (stub)
     */
    getDOMState(selector: string): Promise<DOMElementInfo | null>;
    /**
     * Get captured network requests (stub)
     */
    getNetworkRequests(filter?: string): Promise<NetworkRequest[]>;
    /**
     * Execute JavaScript in browser (stub)
     */
    executeScript(script: string): Promise<unknown>;
    /**
     * Start recording user actions
     */
    startRecording(): Promise<void>;
    /**
     * Stop recording user actions
     */
    stopRecording(): Promise<void>;
    /**
     * Get recorded actions
     */
    getRecording(): RecordedAction[];
    /**
     * Check if currently recording
     */
    isRecording(): boolean;
    /**
     * Get config
     */
    getConfig(): ChromeBridgeConfig;
}
