export const VALIDATE_STATUSES = [ 'success' , 'warning' , 'error' , 'validating' , ] as const ; export type ValidateStatus = typeof VALIDATE_STATUSES [ number ] ; export const VALIDATE_TRIGGERS = [ 'change' , 'input' , 'focus' , 'blur' ] as const ; export type ValidateTrigger = typeof VALIDATE_TRIGGERS [ number ] ; export interface FieldRule < FieldValue = any > { zh en type ? : 'string' | 'number' | 'boolean' | 'array' | 'object' | 'email' | 'url' | 'ip' ; zh en required ? : boolean ; zh en message ? : string ; zh en length ? : number ; zh en maxLength ? : number ; zh en minLength ? : number ; zh en match ? : RegExp ; zh en uppercase ? : boolean ; zh en lowercase ? : boolean ; zh en min ? : number ; zh en max ? : number ; zh en equal ? : number ; zh en positive ? : boolean ; zh en negative ? : boolean ; zh en true ? : boolean ; zh en false ? : boolean ; zh en includes ? : any [ ] ; zh en deepEqual ? : any ; zh en empty ? : boolean ; zh en hasKeys ? : string [ ] ; zh en param value param callback validator ? : ( value : FieldValue | undefined , callback : ( error ? : string ) => void ) => void ; } export interface FieldData { zh en value ? : any ; zh en status ? : ValidateStatus ; zh en message ? : string ; } export interface ValidatedError { zh en field : string ; zh en value : any ; zh en type : string ; zh en isRequiredError : boolean ; zh en message : string ; }