import { z } from 'zod/v4';
import type { ToolCallContext } from '../models/ToolCallContext';
import type { ToolCallResult } from '../models/ToolCallResult';
import { Tool } from './Tool';
export declare const TriggerDonobuFlowCoreSchema: z.ZodObject<{
    donobuFlowParameters: z.ZodObject<{
        id: z.ZodOptional<z.ZodString>;
        target: z.ZodString;
        web: z.ZodOptional<z.ZodObject<{
            browser: z.ZodOptional<z.ZodNullable<z.ZodObject<{
                initialState: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
                    type: z.ZodLiteral<"id">;
                    value: z.ZodString;
                }, z.core.$strip>, z.ZodObject<{
                    type: z.ZodLiteral<"name">;
                    value: z.ZodString;
                }, z.core.$strip>, z.ZodObject<{
                    type: z.ZodLiteral<"testId">;
                    value: z.ZodString;
                }, z.core.$strip>, z.ZodObject<{
                    type: z.ZodLiteral<"json">;
                    value: z.ZodObject<{
                        cookies: z.ZodArray<z.ZodType<{
                            name: string;
                            value: string;
                            domain: string;
                            path: string;
                            expires: number;
                            httpOnly: boolean;
                            secure: boolean;
                            sameSite: "Strict" | "Lax" | "None";
                        }, unknown, z.core.$ZodTypeInternals<{
                            name: string;
                            value: string;
                            domain: string;
                            path: string;
                            expires: number;
                            httpOnly: boolean;
                            secure: boolean;
                            sameSite: "Strict" | "Lax" | "None";
                        }, unknown>>>;
                        origins: z.ZodArray<z.ZodType<{
                            origin: string;
                            localStorage: Array<{
                                name: string;
                                value: string;
                            }>;
                        } & {
                            sessionStorage?: Array<{
                                name: string;
                                value: string;
                            }>;
                        }, unknown, z.core.$ZodTypeInternals<{
                            origin: string;
                            localStorage: Array<{
                                name: string;
                                value: string;
                            }>;
                        } & {
                            sessionStorage?: Array<{
                                name: string;
                                value: string;
                            }>;
                        }, unknown>>>;
                    }, z.core.$strip>;
                }, z.core.$strip>], "type">>;
                persistState: z.ZodOptional<z.ZodBoolean>;
                using: z.ZodDiscriminatedUnion<[z.ZodObject<{
                    type: z.ZodLiteral<"device">;
                    deviceName: z.ZodOptional<z.ZodString>;
                    headless: z.ZodOptional<z.ZodBoolean>;
                    proxy: z.ZodOptional<z.ZodObject<{
                        server: z.ZodString;
                        bypass: z.ZodOptional<z.ZodString>;
                        username: z.ZodOptional<z.ZodString>;
                        password: z.ZodOptional<z.ZodString>;
                    }, z.core.$strip>>;
                }, z.core.$strip>, z.ZodObject<{
                    type: z.ZodLiteral<"remoteInstance">;
                    url: z.ZodString;
                }, z.core.$strip>, z.ZodObject<{
                    type: z.ZodLiteral<"browserBase">;
                    sessionArgs: z.ZodObject<{
                        projectId: z.ZodString;
                        extensionId: z.ZodOptional<z.ZodString>;
                        browserSettings: z.ZodOptional<z.ZodObject<{
                            context: z.ZodOptional<z.ZodObject<{
                                id: z.ZodString;
                            }, z.core.$strip>>;
                            extensionId: z.ZodOptional<z.ZodString>;
                            viewport: z.ZodOptional<z.ZodObject<{
                                width: z.ZodNumber;
                                height: z.ZodNumber;
                            }, z.core.$strip>>;
                            blockAds: z.ZodOptional<z.ZodBoolean>;
                            solveCaptchas: z.ZodOptional<z.ZodBoolean>;
                            advancedStealth: z.ZodOptional<z.ZodBoolean>;
                        }, z.core.$strip>>;
                        timeout: z.ZodOptional<z.ZodNumber>;
                        keepAlive: z.ZodOptional<z.ZodBoolean>;
                        proxies: z.ZodUnion<[z.ZodOptional<z.ZodBoolean>, z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
                            type: z.ZodLiteral<"browserbase">;
                            geolocation: z.ZodOptional<z.ZodObject<{
                                country: z.ZodString;
                                state: z.ZodOptional<z.ZodString>;
                                city: z.ZodOptional<z.ZodString>;
                            }, z.core.$strip>>;
                            domainPattern: z.ZodOptional<z.ZodString>;
                        }, z.core.$strip>, z.ZodObject<{
                            type: z.ZodLiteral<"external">;
                            server: z.ZodString;
                            username: z.ZodOptional<z.ZodString>;
                            password: z.ZodOptional<z.ZodString>;
                            domainPattern: z.ZodOptional<z.ZodString>;
                        }, z.core.$strip>], "type">>]>;
                        region: z.ZodOptional<z.ZodString>;
                        userMetadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
                    }, z.core.$strip>;
                }, z.core.$strip>], "type">;
            }, z.core.$strip>>>;
            targetWebsite: z.ZodString;
        }, z.core.$strip>>;
        name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        envVars: z.ZodOptional<z.ZodNullable<z.ZodNullable<z.ZodArray<z.ZodString>>>>;
        customTools: z.ZodOptional<z.ZodNullable<z.ZodNullable<z.ZodArray<z.ZodObject<{
            name: z.ZodString;
            description: z.ZodString;
            inputSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
            javascript: z.ZodString;
        }, z.core.$strip>>>>>;
        defaultMessageDuration: z.ZodOptional<z.ZodNullable<z.ZodNullable<z.ZodNumber>>>;
        callbackUrl: z.ZodOptional<z.ZodNullable<z.ZodNullable<z.ZodString>>>;
        overallObjective: z.ZodOptional<z.ZodNullable<z.ZodNullable<z.ZodString>>>;
        allowedTools: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
        maxToolCalls: z.ZodOptional<z.ZodNullable<z.ZodNullable<z.ZodNumber>>>;
        resultJsonSchema: z.ZodOptional<z.ZodNullable<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>>;
        videoDisabled: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
        gptConfigNameOverride: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        initialRunMode: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
            AUTONOMOUS: "AUTONOMOUS";
            INSTRUCT: "INSTRUCT";
            DETERMINISTIC: "DETERMINISTIC";
        }>>>;
        isControlPanelEnabled: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
        toolCallsOnStart: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
            name: z.ZodString;
            parameters: z.ZodRecord<z.ZodString, z.ZodUnknown>;
            toolCallId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        }, z.core.$strip>>>>;
        testId: z.ZodOptional<z.ZodString>;
    }, z.core.$loose>;
}, z.core.$strip>;
export declare const TriggerDonobuFlowGptSchema: z.ZodObject<{
    donobuFlowParameters: z.ZodObject<{
        id: z.ZodOptional<z.ZodString>;
        target: z.ZodString;
        web: z.ZodOptional<z.ZodObject<{
            browser: z.ZodOptional<z.ZodNullable<z.ZodObject<{
                initialState: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
                    type: z.ZodLiteral<"id">;
                    value: z.ZodString;
                }, z.core.$strip>, z.ZodObject<{
                    type: z.ZodLiteral<"name">;
                    value: z.ZodString;
                }, z.core.$strip>, z.ZodObject<{
                    type: z.ZodLiteral<"testId">;
                    value: z.ZodString;
                }, z.core.$strip>, z.ZodObject<{
                    type: z.ZodLiteral<"json">;
                    value: z.ZodObject<{
                        cookies: z.ZodArray<z.ZodType<{
                            name: string;
                            value: string;
                            domain: string;
                            path: string;
                            expires: number;
                            httpOnly: boolean;
                            secure: boolean;
                            sameSite: "Strict" | "Lax" | "None";
                        }, unknown, z.core.$ZodTypeInternals<{
                            name: string;
                            value: string;
                            domain: string;
                            path: string;
                            expires: number;
                            httpOnly: boolean;
                            secure: boolean;
                            sameSite: "Strict" | "Lax" | "None";
                        }, unknown>>>;
                        origins: z.ZodArray<z.ZodType<{
                            origin: string;
                            localStorage: Array<{
                                name: string;
                                value: string;
                            }>;
                        } & {
                            sessionStorage?: Array<{
                                name: string;
                                value: string;
                            }>;
                        }, unknown, z.core.$ZodTypeInternals<{
                            origin: string;
                            localStorage: Array<{
                                name: string;
                                value: string;
                            }>;
                        } & {
                            sessionStorage?: Array<{
                                name: string;
                                value: string;
                            }>;
                        }, unknown>>>;
                    }, z.core.$strip>;
                }, z.core.$strip>], "type">>;
                persistState: z.ZodOptional<z.ZodBoolean>;
                using: z.ZodDiscriminatedUnion<[z.ZodObject<{
                    type: z.ZodLiteral<"device">;
                    deviceName: z.ZodOptional<z.ZodString>;
                    headless: z.ZodOptional<z.ZodBoolean>;
                    proxy: z.ZodOptional<z.ZodObject<{
                        server: z.ZodString;
                        bypass: z.ZodOptional<z.ZodString>;
                        username: z.ZodOptional<z.ZodString>;
                        password: z.ZodOptional<z.ZodString>;
                    }, z.core.$strip>>;
                }, z.core.$strip>, z.ZodObject<{
                    type: z.ZodLiteral<"remoteInstance">;
                    url: z.ZodString;
                }, z.core.$strip>, z.ZodObject<{
                    type: z.ZodLiteral<"browserBase">;
                    sessionArgs: z.ZodObject<{
                        projectId: z.ZodString;
                        extensionId: z.ZodOptional<z.ZodString>;
                        browserSettings: z.ZodOptional<z.ZodObject<{
                            context: z.ZodOptional<z.ZodObject<{
                                id: z.ZodString;
                            }, z.core.$strip>>;
                            extensionId: z.ZodOptional<z.ZodString>;
                            viewport: z.ZodOptional<z.ZodObject<{
                                width: z.ZodNumber;
                                height: z.ZodNumber;
                            }, z.core.$strip>>;
                            blockAds: z.ZodOptional<z.ZodBoolean>;
                            solveCaptchas: z.ZodOptional<z.ZodBoolean>;
                            advancedStealth: z.ZodOptional<z.ZodBoolean>;
                        }, z.core.$strip>>;
                        timeout: z.ZodOptional<z.ZodNumber>;
                        keepAlive: z.ZodOptional<z.ZodBoolean>;
                        proxies: z.ZodUnion<[z.ZodOptional<z.ZodBoolean>, z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
                            type: z.ZodLiteral<"browserbase">;
                            geolocation: z.ZodOptional<z.ZodObject<{
                                country: z.ZodString;
                                state: z.ZodOptional<z.ZodString>;
                                city: z.ZodOptional<z.ZodString>;
                            }, z.core.$strip>>;
                            domainPattern: z.ZodOptional<z.ZodString>;
                        }, z.core.$strip>, z.ZodObject<{
                            type: z.ZodLiteral<"external">;
                            server: z.ZodString;
                            username: z.ZodOptional<z.ZodString>;
                            password: z.ZodOptional<z.ZodString>;
                            domainPattern: z.ZodOptional<z.ZodString>;
                        }, z.core.$strip>], "type">>]>;
                        region: z.ZodOptional<z.ZodString>;
                        userMetadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
                    }, z.core.$strip>;
                }, z.core.$strip>], "type">;
            }, z.core.$strip>>>;
            targetWebsite: z.ZodString;
        }, z.core.$strip>>;
        name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        envVars: z.ZodOptional<z.ZodNullable<z.ZodNullable<z.ZodArray<z.ZodString>>>>;
        customTools: z.ZodOptional<z.ZodNullable<z.ZodNullable<z.ZodArray<z.ZodObject<{
            name: z.ZodString;
            description: z.ZodString;
            inputSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
            javascript: z.ZodString;
        }, z.core.$strip>>>>>;
        defaultMessageDuration: z.ZodOptional<z.ZodNullable<z.ZodNullable<z.ZodNumber>>>;
        callbackUrl: z.ZodOptional<z.ZodNullable<z.ZodNullable<z.ZodString>>>;
        overallObjective: z.ZodOptional<z.ZodNullable<z.ZodNullable<z.ZodString>>>;
        allowedTools: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
        maxToolCalls: z.ZodOptional<z.ZodNullable<z.ZodNullable<z.ZodNumber>>>;
        resultJsonSchema: z.ZodOptional<z.ZodNullable<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>>;
        videoDisabled: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
        gptConfigNameOverride: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        initialRunMode: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
            AUTONOMOUS: "AUTONOMOUS";
            INSTRUCT: "INSTRUCT";
            DETERMINISTIC: "DETERMINISTIC";
        }>>>;
        isControlPanelEnabled: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
        toolCallsOnStart: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
            name: z.ZodString;
            parameters: z.ZodRecord<z.ZodString, z.ZodUnknown>;
            toolCallId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        }, z.core.$strip>>>>;
        testId: z.ZodOptional<z.ZodString>;
    }, z.core.$loose>;
    rationale: z.ZodString;
}, z.core.$strip>;
export declare class TriggerDonobuFlowTool extends Tool<typeof TriggerDonobuFlowCoreSchema, typeof TriggerDonobuFlowGptSchema> {
    static readonly NAME = "triggerDonobuFlow";
    constructor();
    call(context: ToolCallContext, parameters: z.infer<typeof TriggerDonobuFlowCoreSchema>): Promise<ToolCallResult>;
    callFromGpt(context: ToolCallContext, parameters: z.infer<typeof TriggerDonobuFlowGptSchema>): Promise<ToolCallResult>;
}
//# sourceMappingURL=TriggerDonobuFlowTool.d.ts.map