ts-api-core
Version:
Nodejs api framework core
27 lines (26 loc) • 1.47 kB
TypeScript
import 'reflect-metadata';
import { AbstractValidator } from './abstract.validator';
/**
* 参数校验器
*/
export declare class Validate {
static validMetadataKeyMap: Map<any, [symbol, number, string | undefined][] | undefined>;
static classMap: Map<string, any>;
private static getTargetMetaDataMapKey;
static putMetadataKey(target: any, metadataKey: symbol, type: number, field?: string): void;
static getMetadataInfo(target: any): [symbol, number, string | undefined][] | undefined;
static mergeMetadataField(target: any, keys: string[]): void;
static validateDTO(target: any, data: any): void;
static validateProperty(target: any, data: any, dataLength: number, propertyName: string, propertyKey: string, dataIsArray: boolean): void;
}
/** 参数或字段校验(注意:对象字段校验暂不支持继承) */
export declare function validate(target: any, propertyName?: string, descriptor?: TypedPropertyDescriptor<Function>): any;
export declare class MethodValidateDecorator {
static getValidatorDecorator(metadataKey: symbol, abstractValidator: AbstractValidator): (target: any, propertyKey: string | symbol, parameterIndex?: number) => void;
}
/**
* 参数校验条件 (是否需要校验其它参数)
* @param callBack 检测回调函数,返回 true 时继续执行校验
* @returns
*/
export declare function validateif(callBack?: (v: any) => boolean): (target: any) => void;