import { ZodError, z } from 'zod'; import { type ToolDefinition } from './types.js'; export declare const writeModeSchema: z.ZodEnum<{ plan: "plan"; preview: "preview"; apply: "apply"; verify: "verify"; }>; export type WriteMode = z.infer; export declare const writePlanOutputSchema: z.ZodObject<{ success: z.ZodLiteral; transaction: z.ZodObject<{ id: z.ZodString; toolName: z.ZodString; phase: z.ZodEnum<{ plan: "plan"; preview: "preview"; apply: "apply"; verify: "verify"; }>; willApply: z.ZodBoolean; bridgeCallRequired: z.ZodBoolean; confirmWriteRequired: z.ZodBoolean; confirmWriteSatisfied: z.ZodBoolean; risk: z.ZodEnum<{ low: "low"; medium: "medium"; high: "high"; }>; requiredScopes: z.ZodArray; summary: z.ZodString; inputPreview: z.ZodRecord; nextStep: z.ZodOptional; confirmWrite: z.ZodLiteral; }, z.core.$strip>>; }, z.core.$strip>; }, z.core.$strip>; export declare function getRawInput(input: unknown): Record; export declare function parseWriteMode(raw: Record): WriteMode | ZodError; export declare function omitWriteControls(input: unknown): Record; export declare function writePlanResponse(tool: ToolDefinition, phase: Exclude, inputPreview: Record, requiredScopes: string[]): { structuredContent: { success: true; transaction: { id: string; toolName: string; phase: "plan" | "preview" | "apply" | "verify"; willApply: boolean; bridgeCallRequired: boolean; confirmWriteRequired: boolean; confirmWriteSatisfied: boolean; risk: "low" | "medium" | "high"; requiredScopes: string[]; summary: string; inputPreview: Record; nextStep?: { writeMode: "apply"; confirmWrite: true; } | undefined; }; }; content: { type: "text"; text: string; }[]; }; export declare function registeredOutputSchema(tool: ToolDefinition): z.ZodType;