express-cargo
Version:
express middleware for class-based request parsing
60 lines • 2.4 kB
TypeScript
import 'reflect-metadata';
import type { Request } from 'express';
import { Source, validArrayElementType, ValidatorRule } from './types';
export declare class CargoClassMetadata {
private target;
private metadataFinalized;
constructor(target: any);
getMetadataKey(propertyKey: string | symbol): string;
getFieldKey(): string;
getRequestFieldKey(): string;
getVirtualFieldKey(): string;
private getCacheKey;
markBindingCargoCalled(): void;
getFieldMetadata(propertyKey: string | symbol): CargoFieldMetadata;
setFieldMetadata(propertyKey: string | symbol, meta: CargoFieldMetadata): void;
private getFieldListByKey;
private setFieldListByKey;
getFieldList(): (string | symbol)[];
setFieldList(propertyKey: string | symbol): void;
getRequestFieldList(): (string | symbol)[];
setRequestFieldList(propertyKey: string | symbol): void;
getVirtualFieldList(): (string | symbol)[];
setVirtualFieldList(propertyKey: string | symbol): void;
}
export declare class CargoFieldMetadata {
readonly target: any;
readonly type: any;
private key;
private source;
private optional;
private defaultValue;
private arrayElementType;
private validators;
private transformer;
private requestTransformer;
private virtualTransformer;
private enumType;
constructor(target: any, key: string | symbol);
getKey(): string | symbol;
setKey(key: string | symbol): void;
getSource(): Source;
setSource(source: Source): void;
getValidators(): ValidatorRule[];
addValidator(rule: ValidatorRule): void;
getOptional(): boolean;
setOptional(optional: boolean): void;
getDefault(): any;
setDefault(defaultValue: any): void;
getArrayElementType(): validArrayElementType | undefined;
setArrayElementType(arrayElementType: validArrayElementType): void;
getTransformer(): ((value: any) => any) | undefined;
setTransformer(transformer: (value: any) => any): void;
getRequestTransformer(): ((req: Request) => any) | undefined;
setRequestTransformer(transformer: (req: Request) => any): void;
getVirtualTransformer(): ((...value: any[]) => any) | undefined;
setVirtualTransformer(transformer: (...value: any[]) => any): void;
setEnumType(enumType: object): void;
getEnumType(): object | undefined;
}
//# sourceMappingURL=metadata.d.ts.map