export interface OutputSchema {
    /** Schema identifier for tracking. */
    id: string;
    /** Required top-level fields. */
    requiredFields?: string[];
    /** Fields that must be strings if present. */
    stringFields?: string[];
    /** Fields that must be arrays if present. */
    arrayFields?: string[];
    /** Fields that must be numbers if present. */
    numberFields?: string[];
    /** Fields that must be booleans if present. */
    booleanFields?: string[];
    /** Custom validator function. */
    custom?: (data: Record<string, unknown>) => string[];
}
export interface SchemaValidationResult {
    valid: boolean;
    schema_id: string;
    errors: string[];
    /** 0-1 score based on how many checks passed. */
    score: number;
}
export declare const BUILTIN_SCHEMAS: Record<string, OutputSchema>;
/** Validate a parsed object against a schema. */
export declare function validateStructuredOutput(data: Record<string, unknown>, schema: OutputSchema): SchemaValidationResult;
/** Try to parse JSON from text and validate against a schema. */
export declare function parseAndValidate(text: string, schema: OutputSchema): {
    parsed: Record<string, unknown> | null;
    validation: SchemaValidationResult;
};
/** Auto-detect which schema to apply based on context. */
export declare function detectSchema(context: {
    toolName?: string;
    taskType?: string;
}): OutputSchema | null;
//# sourceMappingURL=structuredOutputValidator.d.ts.map