import { IGetValidatorBaseValue, IGetValidatorErrorMessage, IParseValue, Operator, Preprocessor, ValidateTrigger, ValidatorCreator } from './interfaces';
export declare const withPreprocessor: <T>(preprocessor: Preprocessor<T>) => number;
export declare const valueIsAbsent: (value: any) => boolean;
export interface IValidatorCreatorOptions<B, I, F, P> {
    validate?: ValidateTrigger;
    getValidatorErrorMessage: IGetValidatorErrorMessage<B, I, F, P> | string;
    getValidatorBaseValue?: IGetValidatorBaseValue<B, F, P> | B;
    getValueFromInput?: IParseValue<any, I>;
    getValueFromBase?: IParseValue<any, B>;
    operator: Operator<B, I>;
}
export declare const validatorCreatorFactory: <B, I, F, P>({ validate, getValidatorErrorMessage, getValidatorBaseValue, getValueFromInput, getValueFromBase, operator, }: IValidatorCreatorOptions<B, I, F, P>) => ValidatorCreator<B, I, F, P>;
