type Map = (...args: any) => any; type Maps = Record>; type MapsMember = T[S][keyof T[S]]; type Mappers = Extract, Map>; type MapperSourceType = Parameters>[0]; type MapperDestinationType = ReturnType; export declare class Mapper { private readonly mapperFunctions; constructor(mapperFunctions: T); map(source: S, value: MapperSourceType, destination: D): MapperDestinationType; map(source: S, value: MapperSourceType | null, destination: D): MapperDestinationType | null; map(source: S, value: MapperSourceType | undefined, destination: D): MapperDestinationType | undefined; map(source: S, value: MapperSourceType | null | undefined, destination: D): MapperDestinationType | null | undefined; map(source: S, value: MapperSourceType[], destination: D): MapperDestinationType[]; mapEntries(source: S, value: Record>, destination: D): Record>; mapEntries(source: S, value: Record> | null, destination: D): Record> | null; mapEntries(source: S, value: Record> | undefined, destination: D): Record> | undefined; mapEntries(source: S, value: Record> | null | undefined, destination: D): Record> | null | undefined; mapEntries(source: S, value: Record[]>, destination: D): Record[]>; mapEntries(source: S, value: Record[]> | null, destination: D): Record[]> | null; mapEntries(source: S, value: Record[]> | undefined, destination: D): Record[]> | undefined; mapEntries(source: S, value: Record[]> | null | undefined, destination: D): Record[]> | null | undefined; private bindMapper; } export declare const mapper: Mapper<{ SchemaResponse: { Schema: MapFunction; }; SchemaPropertyResponse: { SchemaProperty: MapFunction; }; SchemaPropertiesResponse: { SchemaProperties: MapFunction; }; Schema: { SchemaResponse: MapFunction; }; SchemaProperty: { SchemaPropertyResponse: MapFunction; }; SchemaProperties: { SchemaPropertiesResponse: MapFunction; }; }>; export type MapFunction = (this: typeof mapper, source: S) => D; export {};