import Field, { Rule } from '../field';
export type SubmitCallback = (value: null | {
    [x: string]: any;
}, errors: any, field: Field) => void;
type ValidateTrigger = string;
export interface ValidationProps {
    required?: boolean;
    requiredMessage?: string;
    requiredTrigger?: ValidateTrigger;
    min?: number;
    max?: number;
    minmaxMessage?: string;
    minmaxTrigger?: ValidateTrigger;
    minLength?: number;
    maxLength?: number;
    minmaxLengthMessage?: string;
    minmaxLengthTrigger?: ValidateTrigger;
    length?: number;
    lengthMessage?: string;
    lengthTrigger?: ValidateTrigger;
    pattern?: RegExp;
    patternMessage?: string;
    patternTrigger?: ValidateTrigger;
    format?: 'number' | 'email' | 'url' | 'tel';
    formatMessage?: string;
    formatTrigger?: ValidateTrigger;
    validator?: (rule: any, value: any, callback: any) => Promise<void>;
    validatorTrigger?: ValidateTrigger;
}
export declare function getValidationRules(name: string, options: ValidationProps): Rule[];
export declare function removeFormAttrs(obj: any): any;
export {};
