import type { KeyOf, ValidationResult, ValidationRule } from '../types/common.js'; export declare function validate>(source: T, rules: Array>): ValidationResult; export declare function validateField>(value: unknown, rule: ValidationRule, source?: T): boolean; export declare function required>(field: KeyOf, message?: string): ValidationRule; export declare function minLength>(field: KeyOf, min: number, message?: string): ValidationRule; export declare function maxLength>(field: KeyOf, max: number, message?: string): ValidationRule; export declare function pattern>(field: KeyOf, matcher: RegExp, message?: string): ValidationRule; export declare function email>(field: KeyOf, message?: string): ValidationRule; export declare function customRule>(field: KeyOf, validator: (value: unknown, source: T) => boolean, message?: string): ValidationRule; export declare class ValidationUtils { static validate: typeof validate; static validateField: typeof validateField; static required: typeof required; static minLength: typeof minLength; static maxLength: typeof maxLength; static pattern: typeof pattern; static email: typeof email; static customRule: typeof customRule; } //# sourceMappingURL=validation.d.ts.map