/**
 * Human interaction tools for Supapup
 * Allows agents to ask humans to visually identify elements
 */
import { Page } from 'puppeteer';
export interface HumanSelectionResult {
    success: boolean;
    element?: {
        selector: string;
        id: string;
        tagName: string;
        className: string;
        text: string;
        attributes: Record<string, string>;
        position: {
            x: number;
            y: number;
            width: number;
            height: number;
        };
    };
    cancelled?: boolean;
    error?: string;
}
export declare class HumanInteraction {
    private page;
    constructor(page: Page);
    /**
     * Ask human to click on an element
     */
    askHumanToIdentifyElement(prompt: string, timeout?: number): Promise<HumanSelectionResult>;
    /**
     * Ask human to select multiple elements
     */
    askHumanToIdentifyMultipleElements(prompt: string, maxElements?: number, timeout?: number): Promise<{
        success: boolean;
        elements?: HumanSelectionResult['element'][];
        cancelled?: boolean;
        error?: string;
    }>;
    /**
     * Ask human to draw a bounding box around an area
     */
    askHumanToSelectArea(prompt: string, timeout?: number): Promise<{
        success: boolean;
        area?: {
            x: number;
            y: number;
            width: number;
            height: number;
        };
        cancelled?: boolean;
        error?: string;
    }>;
}
//# sourceMappingURL=human-interaction.d.ts.map