import { z } from 'zod/v4';
import type { ToolCallContext } from '../models/ToolCallContext';
import type { ToolCallResult } from '../models/ToolCallResult';
import { Tool } from './Tool';
export declare const AcknowledgeUserInstructionCoreSchema: z.ZodObject<{
    userInstruction: z.ZodString;
}, z.core.$strip>;
export declare const AcknowledgeUserInstructionGptSchema: z.ZodObject<{
    userInstruction: z.ZodString;
    rationale: z.ZodString;
}, z.core.$strip>;
/**
 * A special placeholder tool for acknowledging an instruction from a user.
 * This tool is actually never called by anyone (including an LLM). It is just
 * used as a stub for remembering when a user interrupted a flow to add more
 * context for the LLM to act on.
 */
export declare class AcknowledgeUserInstructionTool extends Tool<typeof AcknowledgeUserInstructionCoreSchema, typeof AcknowledgeUserInstructionGptSchema> {
    static readonly NAME = "acknowledgeUserInstruction";
    constructor();
    call(_context: ToolCallContext, parameters: z.infer<typeof AcknowledgeUserInstructionCoreSchema>): Promise<ToolCallResult>;
    callFromGpt(context: ToolCallContext, parameters: z.infer<typeof AcknowledgeUserInstructionGptSchema>): Promise<ToolCallResult>;
}
//# sourceMappingURL=AcknowledgeUserInstruction.d.ts.map