import type { ElementHandle } from 'playwright';
import { z } from 'zod/v4';
import type { ToolCallContext } from '../models/ToolCallContext';
import { ReplayableInteraction } from './ReplayableInteraction';
export declare const ClickCoreSchema: z.ZodObject<{
    button: z.ZodOptional<z.ZodEnum<{
        left: "left";
        right: "right";
        middle: "middle";
    }>>;
}, z.core.$strip>;
export declare const ClickNonGptSchema: z.ZodObject<{
    button: z.ZodOptional<z.ZodEnum<{
        left: "left";
        right: "right";
        middle: "middle";
    }>>;
    selector: z.ZodObject<{
        element: z.ZodArray<z.ZodString>;
        frame: z.ZodOptional<z.ZodNullable<z.ZodString>>;
    }, z.core.$strip>;
}, z.core.$strip>;
export declare const ClickGptSchema: z.ZodObject<{
    button: z.ZodOptional<z.ZodEnum<{
        left: "left";
        right: "right";
        middle: "middle";
    }>>;
    whyThisAnnotation: z.ZodString;
    annotation: z.ZodString;
    rationale: z.ZodString;
}, z.core.$strip>;
export declare class ClickTool extends ReplayableInteraction<typeof ClickCoreSchema, typeof ClickNonGptSchema, typeof ClickGptSchema> {
    static readonly NAME = "click";
    constructor();
    invoke(context: ToolCallContext, parameters: z.infer<typeof ClickCoreSchema>, handles: {
        target: ElementHandle<HTMLElement | SVGElement>;
        label?: ElementHandle<HTMLElement | SVGElement>;
    }): Promise<string>;
}
//# sourceMappingURL=ClickTool.d.ts.map