vtils
Version:
一个面向业务的 JavaScript/TypeScript 实用程序库。
13 lines (12 loc) • 650 B
TypeScript
import { ArrayLocale, MixedLocale } from './Locale';
import { GetSchema, MixedSchema } from './mixed';
import { Refable } from './ref';
export interface ArraySchema<T extends any = any> extends MixedSchema<T[]> {
of(type: GetSchema<T>): this;
required(message?: MixedLocale['required']): this;
min(limit: Refable<number>, message?: ArrayLocale['min']): this;
max(limit: Refable<number>, message?: ArrayLocale['max']): this;
ensure(): this;
compact(rejector: (value: T) => boolean): this;
}
export declare function array<T extends any = any>(type?: GetSchema<T> | ((schema: ArraySchema<T>) => ArraySchema<T>)): ArraySchema<T>;