import { Tag, TypeAliasEntry, VariableType } from "../../types.js";
export declare const DEFAULT_SCHEMA = "z.string()";
/**
 * Append a `.meta({...})` call to a Zod schema string when the type
 * carries a `@jsonSchema(...)` tag.
 *
 * `.meta()` MUST be the last call in the Zod chain (Zod's API requires
 * it for the metadata to be picked up by `toJSONSchema`). Every callsite
 * that finishes a Zod expression for a type should route through here.
 */
export declare function appendMeta(schemaExpr: string, tags: Tag[] | undefined): string;
/**
 * Maps Agency types to Zod schema strings for LLM structured output.
 * For Result types, returns only the success type schema (the LLM
 * doesn't return Result objects).
 */
export declare function mapTypeToZodSchema(variableType: VariableType, typeAliases: Record<string, VariableType>, typeAliasesFull?: Record<string, TypeAliasEntry>): string;
/**
 * Maps Agency types to Zod schema strings for validation contexts.
 * For Result types, generates a schema that validates the full Result
 * structure ({__type: "resultType", success: true, value: T} | {__type: "resultType", success: false, error: any}).
 */
export declare function mapTypeToValidationSchema(variableType: VariableType, typeAliases: Record<string, VariableType>, typeAliasesFull?: Record<string, TypeAliasEntry>): string;
