export interface TaskRequest {
    task: string;
    project_folder: string;
    temperature?: number;
    browser_config?: Record<string, any>;
    agent_settings?: Record<string, any>;
    output_format?: Record<string, any>;
    session_id?: string;
}
export interface TaskResponse {
    task_id: string;
    status: 'pending' | 'running' | 'completed' | 'failed' | 'paused' | 'cancelled';
    task: string;
    result?: any;
    error?: string;
    created_at: string;
    updated_at: string;
    session_id?: string;
    history?: Array<{
        step: number;
        action: string | null;
        result: any[] | null;
    }>;
}
export interface BrowserSessionConfig {
    headless?: boolean;
    viewport?: {
        width: number;
        height: number;
    };
    user_agent?: string;
    proxy?: string;
    cookies?: Array<{
        name: string;
        value: string;
        domain: string;
    }>;
}
export interface ScanRequest {
    url: string;
    filename: string;
    project_folder: string;
}
export interface ScanResponse {
    url: string;
    page_title: string;
    screenshot_path: string;
    screenshot_description: string;
    timestamp: string;
}
export interface ScreenshotRequest {
    project_folder: string;
    filename?: string;
}
export interface ScreenshotResponse {
    task_id: string;
    task: string;
    current_url: string;
    page_title: string;
    screenshot_path: string;
    screenshot_description: string;
    timestamp: string;
}
export declare class BrowserUseClient {
    private api;
    constructor(baseURL: string, apiKey?: string);
    createTask(params: TaskRequest): Promise<TaskResponse>;
    createTaskSync(params: TaskRequest): Promise<TaskResponse>;
    getTask(taskId: string): Promise<TaskResponse>;
    listTasks(): Promise<TaskResponse[]>;
    cancelTask(taskId: string): Promise<void>;
    pauseTask(taskId: string): Promise<void>;
    getTaskHistory(taskId: string): Promise<any[]>;
    getScreenshot(taskId: string, params: ScreenshotRequest): Promise<ScreenshotResponse>;
    createBrowserSession(config: BrowserSessionConfig): Promise<{
        session_id: string;
    }>;
    closeBrowserSession(sessionId: string): Promise<void>;
    streamTask(taskId: string, onMessage: (message: any) => void): Promise<void>;
    checkHealth(): Promise<any>;
    scanUrl(params: ScanRequest): Promise<ScanResponse>;
    getSnapshot(taskId: string): Promise<string>;
}
//# sourceMappingURL=client.d.ts.map