import { AgentContext, BaseBrowserLabelsAgent } from "@eko-ai/eko";
import { Browser, Page, BrowserContext } from "playwright";
export default class BrowserAgent extends BaseBrowserLabelsAgent {
    private cdpWsEndpoint?;
    private userDataDir?;
    private options?;
    protected browser: Browser | null;
    private browser_context;
    private current_page;
    private headless;
    setHeadless(headless: boolean): void;
    setCdpWsEndpoint(cdpWsEndpoint: string): void;
    setOptions(options?: Record<string, any>): void;
    protected screenshot(agentContext: AgentContext): Promise<{
        imageBase64: string;
        imageType: "image/jpeg" | "image/png";
    }>;
    protected navigate_to(agentContext: AgentContext, url: string): Promise<{
        url: string;
        title?: string;
        tabId?: number;
    }>;
    protected get_all_tabs(agentContext: AgentContext): Promise<Array<{
        tabId: number;
        url: string;
        title: string;
    }>>;
    protected switch_tab(agentContext: AgentContext, tabId: number): Promise<{
        tabId: number;
        url: string;
        title: string;
    }>;
    protected input_text(agentContext: AgentContext, index: number, text: string, enter: boolean): Promise<void>;
    protected click_element(agentContext: AgentContext, index: number, num_clicks: number, button: "left" | "right" | "middle"): Promise<void>;
    protected hover_to_element(agentContext: AgentContext, index: number): Promise<void>;
    protected execute_script(agentContext: AgentContext, func: (...args: any[]) => void, args: any[]): Promise<any>;
    private open_url;
    protected currentPage(): Promise<Page>;
    private get_element;
    private sleep;
    protected getBrowserContext(): Promise<BrowserContext>;
    protected initScript(): Promise<{
        path?: string;
        content?: string;
    }>;
}
export { BrowserAgent };
//# sourceMappingURL=browser.d.ts.map