nestjs-custom-class-validators
Version:
This package contains a few custom validator I have found to be repetitive, So I made templates that handles both class-validator checks and Swagger configuration
58 lines (57 loc) • 1.94 kB
TypeScript
declare class IDefaultValdationOptions {
optional?: boolean;
defaultValue?: any;
description?: string;
}
declare class IBaseValidationOptions extends IDefaultValdationOptions {
isArray?: boolean;
}
export declare class ICustomOnlyDateStringOptions extends IBaseValidationOptions {
}
export declare class ICustomSwaggerOptions extends IBaseValidationOptions {
type?: "boolean" | "number" | "string" | "array" | "media";
format?: "binary";
validEnum?: Object;
}
export declare class ICustomStringOptions extends IBaseValidationOptions {
isUUID?: boolean;
}
export declare class ICustomTimeValidatorOptions extends IBaseValidationOptions {
}
export declare class ICustomPasswordValidatorOptions extends IDefaultValdationOptions {
}
export declare class ICustomNumberValidationOptions extends IBaseValidationOptions {
min?: number;
max?: number;
}
export declare class ICustomEnumJSONArrayValidatorOptions extends IBaseValidationOptions {
validEnum?: Object;
}
export declare class ICustomEnumValidatorOptions extends ICustomEnumJSONArrayValidatorOptions {
isArray?: boolean;
}
export declare class ICustomBooleanValidatorOptions extends IDefaultValdationOptions {
}
export declare enum MimeTypeEnum {
JPG = "image/jpg",
JPEG = "image/jpeg",
PNG = "image/png",
JFIF = "image/jfif",
GIF = "image/gif",
WEBP = "image/webp",
MP4 = "video/mp4",
"3GP" = "video/3gpp",
WEBM = "video/webm",
PDF = "application/pdf",
MS_DOC = "application/x-cfb",
MS_WORD = "application/msword",
DOCX = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"
}
export declare const ImageMimetypes: MimeTypeEnum[];
export declare const VideoMimetypes: MimeTypeEnum[];
export declare class ICustomMediaValidationOptions extends IBaseValidationOptions {
maxSizeInByte?: number;
mimetypes: MimeTypeEnum[];
isArray?: boolean;
}
export {};