UNPKG

@formily/validator

Version:

> Formily 数据校验工具

87 lines (82 loc) 4.67 kB
declare type ValidatorFormats = 'url' | 'email' | 'ipv6' | 'ipv4' | 'number' | 'integer' | 'idcard' | 'qq' | 'phone' | 'money' | 'zh' | 'date' | 'zip' | (string & {}); interface IValidateResult { type: 'error' | 'warning' | 'success' | (string & {}); message: string; } interface IValidateResults { error?: string[]; warning?: string[]; success?: string[]; } declare const isValidateResult: (obj: any) => obj is IValidateResult; declare type ValidatorFunctionResponse = null | string | boolean | IValidateResult; declare type ValidatorFunction<Context = any> = (value: any, rule: IValidatorRules<Context>, ctx: Context, render: (message: string, scope?: any) => string) => ValidatorFunctionResponse | Promise<ValidatorFunctionResponse> | null; declare type ValidatorParsedFunction<Context = any> = (value: any, ctx: Context) => IValidateResult | Promise<IValidateResult> | null; declare type ValidatorTriggerType = 'onInput' | 'onFocus' | 'onBlur' | (string & {}); interface IValidatorRules<Context = any> { triggerType?: ValidatorTriggerType; format?: ValidatorFormats; validator?: ValidatorFunction<Context>; required?: boolean; pattern?: RegExp | string; max?: number; maximum?: number; maxItems?: number; minItems?: number; maxLength?: number; minLength?: number; exclusiveMaximum?: number; exclusiveMinimum?: number; minimum?: number; min?: number; len?: number; whitespace?: boolean; enum?: any[]; const?: any; multipleOf?: number; uniqueItems?: boolean; maxProperties?: number; minProperties?: number; message?: string; [key: string]: any; } interface IRegistryLocaleMessages { [key: string]: string | IRegistryLocaleMessages; } interface IRegistryLocales { [language: string]: IRegistryLocaleMessages; } interface IRegistryRules<Context = any> { [key: string]: ValidatorFunction<Context>; } interface IRegistryFormats { [key: string]: string | RegExp; } declare type ValidatorDescription<Context = any> = ValidatorFormats | ValidatorFunction<Context> | IValidatorRules<Context>; declare type MultiValidator<Context = any> = ValidatorDescription<Context>[]; declare type Validator<Context = any> = ValidatorDescription<Context> | MultiValidator<Context>; interface IValidatorOptions<Context = any> { validateFirst?: boolean; triggerType?: ValidatorTriggerType; context?: Context; } declare const validate: <Context = any>(value: any, validator: Validator<Context>, options?: IValidatorOptions<Context>) => Promise<IValidateResults>; declare const parseValidatorDescription: (description: ValidatorDescription) => IValidatorRules; declare const parseValidatorDescriptions: <Context = any>(validator: Validator<Context>) => IValidatorRules[]; declare const parseValidatorRules: (rules?: IValidatorRules) => ValidatorParsedFunction[]; declare const parseValidator: <Context = any>(validator: Validator<Context>, options?: IValidatorOptions) => ValidatorParsedFunction<Context>[]; declare const getValidateLocaleIOSCode: (language: string) => any; declare const setValidateLanguage: (lang: string) => void; declare const getValidateLanguage: () => any; declare const getLocaleByPath: (path: string, lang?: string) => any; declare const getValidateLocale: (path: string) => any; declare const getValidateMessageTemplateEngine: () => any; declare const getValidateFormats: (key?: string) => any; declare const getValidateRules: <T>(key?: T) => T extends string ? ValidatorFunction<any> : { [key: string]: ValidatorFunction<any>; }; declare const registerValidateLocale: (locale: IRegistryLocales) => void; declare const registerValidateRules: (rules: IRegistryRules) => void; declare const registerValidateFormats: (formats: IRegistryFormats) => void; declare const registerValidateMessageTemplateEngine: (template: (message: ValidatorFunctionResponse, context: any) => any) => void; export { IRegistryFormats, IRegistryLocaleMessages, IRegistryLocales, IRegistryRules, IValidateResult, IValidateResults, IValidatorOptions, IValidatorRules, MultiValidator, Validator, ValidatorDescription, ValidatorFormats, ValidatorFunction, ValidatorFunctionResponse, ValidatorParsedFunction, ValidatorTriggerType, getLocaleByPath, getValidateFormats, getValidateLanguage, getValidateLocale, getValidateLocaleIOSCode, getValidateMessageTemplateEngine, getValidateRules, isValidateResult, parseValidator, parseValidatorDescription, parseValidatorDescriptions, parseValidatorRules, registerValidateFormats, registerValidateLocale, registerValidateMessageTemplateEngine, registerValidateRules, setValidateLanguage, validate };