export type ValidationOptions = { required?: Option | string; min?: Option; max?: Option; minLength?: Option; maxLength?: Option; pattern?: Option; validate?: Validator | { [key: string]: Validator; }; valueAsNumber?: boolean; valueAsDate?: boolean; process?: Processor; }; export type ValidationError = { message: string; type: 'required' | 'min' | 'max' | 'minLength' | 'maxLength' | 'pattern' | 'validate'; }; type Validator = (value: any) => boolean | string | Promise; type Processor = (value: any) => any; type Option = { value: T; message: string; }; export {};