hydrate-mongodb
Version:
An Object Document Mapper (ODM) for MongoDB.
26 lines (25 loc) • 1.5 kB
TypeScript
import { MappingModel } from "./mappingModel";
import { Reference } from "../reference";
import { InternalSession } from "../session";
import { ResultCallback } from "../core/callback";
import { ResolveContext } from "./resolveContext";
import { ReadContext } from "./readContext";
import { Observer } from "../observer";
import { InternalMapping } from "./internalMapping";
import { WriteContext } from "./writeContext";
export declare abstract class MappingBase implements InternalMapping {
flags: MappingModel.MappingFlags;
id: number;
private _resolveCache;
constructor(flags: MappingModel.MappingFlags);
abstract read(context: ReadContext, value: any): any;
abstract write(context: WriteContext, value: any): any;
hasFlags(flags: MappingModel.MappingFlags): boolean;
watch(value: any, observer: Observer, visited: any[]): void;
walk(session: InternalSession, value: any, flags: MappingModel.PropertyFlags, entities: any[], embedded: any[], references: Reference[]): void;
areEqual(documentValue1: any, documentValue2: any): boolean;
fetch(session: InternalSession, parentEntity: any, value: any, path: string[], depth: number, callback: ResultCallback<any>): void;
fetchInverse(session: InternalSession, parentEntity: any, propertyName: string, path: string[], depth: number, callback: ResultCallback<any>): void;
resolve(pathOrContext: string | ResolveContext): ResolveContext;
protected resolveCore(context: ResolveContext): void;
}