UNPKG

custom-automapper

Version:

A powerful, type-safe object mapping library for TypeScript and NestJS

40 lines 2.33 kB
import type { ClassType, MappingConfig, MappingEntryOptions, MappingResult, ConditionalMapping, TransformOptions, ValidationRule, MapperConstructorOptions, CacheConfig } from './types'; export declare class Mapper { private registry; private globalOptions; private validationRules; private reverseRegistry; private compiledMapFns; private compiledAsyncMapFns; private instanceCache; private cacheConfig; constructor(options?: MapperConstructorOptions | (MappingEntryOptions & { cache?: CacheConfig; })); setCacheEnabled(enabled: boolean): void; isGlobalCacheEnabled(): boolean; private isCacheEnabled; mapFrom<S, K extends keyof S>(sourcePath: K): (src: S) => S[K]; createMap<S extends object, D extends object>(source: ClassType<S>, destination: ClassType<D>, config?: MappingConfig<S, D>, options?: MappingEntryOptions<S, D>): this; createReverseMap<S extends object, D extends object>(source: ClassType<S>, destination: ClassType<D>): this; private mergeOptions; map<S extends object, D extends object>(sourceObj: S, destinationClass: ClassType<D>, _options?: TransformOptions): D; mapAsync<S extends object, D extends object>(sourceObj: S, destinationClass: ClassType<D>, _options?: TransformOptions): Promise<D>; mapWithMetadata<S extends object, D extends object>(sourceObj: S, destinationClass: ClassType<D>, options?: TransformOptions): MappingResult<D>; mapArray<S extends object, D extends object>(sourceArray: S[], destinationClass: ClassType<D>, options?: TransformOptions): D[]; mapArrayAsync<S extends object, D extends object>(sourceArray: S[], destinationClass: ClassType<D>, options?: TransformOptions): Promise<D[]>; mapConditional<S extends object, D extends object>(sourceObj: S, destinationClass: ClassType<D>, conditions: ConditionalMapping<S, D>[]): D; addValidation<T>(targetClass: ClassType<T>, property: string, rule: ValidationRule): this; validate<T extends object>(obj: T): Promise<boolean>; clear(): void; getMappings(): Array<{ source: string; destination: string; }>; private findEntry; private getRegistryKey; private compileMapFunction; private compileAsyncMapFunction; private createMappingError; } //# sourceMappingURL=mapper.d.ts.map