import * as z from "zod/v3";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
export type Conditions = {
    /**
     * The argument of the tool call to evaluate
     */
    condition: string;
    /**
     * The operator to use
     */
    operator: string;
    /**
     * The value to compare against
     */
    value: string;
};
export type Tool = {
    /**
     * The id of the resource
     */
    id: string;
    /**
     * Optional tool key for custom tools
     */
    key?: string | undefined;
    actionType: string;
    displayName?: string | undefined;
    /**
     * Optional tool description
     */
    description?: string | undefined;
    requiresApproval: boolean;
    /**
     * Nested tool ID for MCP tools (identifies specific tool within MCP server)
     */
    toolId?: string | undefined;
    conditions?: Array<Conditions> | undefined;
    /**
     * Tool execution timeout in seconds (default: 2 minutes, max: 10 minutes)
     */
    timeout: number;
};
export type ActionReviewRequestedStreamingEventData = {
    agentId: string;
    actionId: string;
    requiresApproval: boolean;
    tool: Tool;
    input: {
        [k: string]: any;
    };
    agentToolCallId: string;
    responseId?: string | undefined;
};
/**
 * Emitted when a tool action requires approval before execution. Contains the tool details, input arguments, and whether approval is mandatory.
 */
export type ActionReviewRequestedStreamingEvent = {
    type: "event.agents.action_review_requested";
    /**
     * ISO timestamp of the event
     */
    timestamp: string;
    data: ActionReviewRequestedStreamingEventData;
};
/** @internal */
export declare const Conditions$inboundSchema: z.ZodType<Conditions, z.ZodTypeDef, unknown>;
export declare function conditionsFromJSON(jsonString: string): SafeParseResult<Conditions, SDKValidationError>;
/** @internal */
export declare const Tool$inboundSchema: z.ZodType<Tool, z.ZodTypeDef, unknown>;
export declare function toolFromJSON(jsonString: string): SafeParseResult<Tool, SDKValidationError>;
/** @internal */
export declare const ActionReviewRequestedStreamingEventData$inboundSchema: z.ZodType<ActionReviewRequestedStreamingEventData, z.ZodTypeDef, unknown>;
export declare function actionReviewRequestedStreamingEventDataFromJSON(jsonString: string): SafeParseResult<ActionReviewRequestedStreamingEventData, SDKValidationError>;
/** @internal */
export declare const ActionReviewRequestedStreamingEvent$inboundSchema: z.ZodType<ActionReviewRequestedStreamingEvent, z.ZodTypeDef, unknown>;
export declare function actionReviewRequestedStreamingEventFromJSON(jsonString: string): SafeParseResult<ActionReviewRequestedStreamingEvent, SDKValidationError>;
//# sourceMappingURL=actionreviewrequestedstreamingevent.d.ts.map