import { Field } from "./fields"; export declare class ValidationError extends Error { data: unknown; readonly rawMessage: string; path: string[]; constructor(data: unknown, rawMessage: string); get message(): string; } export declare abstract class Validator { abstract validate(value: unknown, field: Field): string | void; } export declare class LengthValidator extends Validator { readonly limits: { max?: number; min?: number; }; constructor(limits?: { max?: number; min?: number; }); validate(value: { length: number; }): void; } export declare class ValueRangeValidator extends Validator { readonly limits: { max?: number; min?: number; getValue?: (v: unknown) => number; }; constructor(limits: { max?: number; min?: number; getValue?: (v: unknown) => number; }); validate(value: number): void; } export declare class IsInstanceValidator extends Validator { targets: Function[]; constructor(...targets: Function[]); validate(value: unknown): void; } export declare class TypeValidator extends Validator { types: string[]; constructor(...types: string[]); validate(value: unknown): void; } export declare class ChoicesValidator extends Validator { choices: unknown[]; constructor(...choices: unknown[]); validate(value: unknown): void; } //# sourceMappingURL=validators.d.ts.map