import type { FormField } from './types.js';
export interface FieldError {
    key: string;
    message: string;
}
export interface SubmissionValidationResult {
    ok: boolean;
    errors: FieldError[];
    /** Sanitized raw values keyed by field key (HTML stripped from strings). */
    data: Record<string, unknown>;
    /** Type-coerced values for export/search. */
    normalized: Record<string, unknown>;
}
export interface ValidateOptions {
    /** Field keys that have an accompanying uploaded file (for required-file checks). */
    fileKeys?: ReadonlySet<string>;
}
export declare function validateAndNormalizeSubmission(fields: FormField[], rawValues: Record<string, unknown>, options?: ValidateOptions): SubmissionValidationResult;
//# sourceMappingURL=validation.d.ts.map