import { a as FieldDef, c as FieldType, d as FormErrorCode, f as Result, h as isFieldError, i as CleanSubmission, l as FormDef, m as SubmissionValue, n as AntiSpamVerdict, o as FieldError, p as StoredSubmission, r as ChallengeAdapter, s as FieldErrorCode, t as AntiSpamConfig, u as FormError } from "./types-D1S3rFK7.js";
//#region src/define.d.ts
/**
 * Structural validation of a form DEFINITION (not a submission). Pure.
 * Catches dup field names, option-types without options, bad pattern source, empty id/fields.
 */
declare function defineForm(def: FormDef): Result<FormDef, FormError[]>;
//#endregion
//#region src/validate.d.ts
/**
 * HARD FLOOR. Validate + coerce an untrusted submission against a form.
 * Drops undeclared keys (only declared fields appear in the result), enforces
 * required/min/max/pattern/options, returns typed FieldError[] on failure.
 */
declare function validateSubmission(form: FormDef, raw: Record<string, unknown> | FormData): Result<CleanSubmission, FieldError[]>;
//#endregion
export { AntiSpamConfig, AntiSpamVerdict, ChallengeAdapter, CleanSubmission, FieldDef, FieldError, FieldErrorCode, FieldType, FormDef, FormError, FormErrorCode, Result, StoredSubmission, SubmissionValue, defineForm, isFieldError, validateSubmission };