UNPKG

hydrate-mongodb

Version:
43 lines (42 loc) 2.09 kB
import { ObjectMapping } from "./objectMapping"; import { Reference } from "../reference"; import { MappingModel } from "./mappingModel"; import { InternalSession } from "../session"; import { ResultCallback } from "../core/callback"; import { ReadContext } from "./readContext"; import { WriteContext } from "./writeContext"; export declare class ClassMapping extends ObjectMapping { private _baseClass; private _subclasses; private _discriminatorMap; private _registry; inheritanceRoot: ClassMapping; name: string; discriminatorField: string; classConstructor: Function; constructor(baseClass?: ClassMapping); private _discriminatorValue; readonly discriminatorValue: string; setDiscriminatorValue(value: string): void; setQueryDocumentDiscriminator(obj: any): void; setDocumentDiscriminator(obj: any): void; getDocumentDiscriminator(obj: any): string; private _getDescendantDiscriminators(discriminators); readonly hasSubClasses: boolean; readonly hasBaseClass: boolean; private _addSubClass(subclass); private _addDiscriminatorMapping(value, mapping); private _ensureRegistry(); read(context: ReadContext, value: any): any; getMapping(context: ReadContext, document: any): ClassMapping; private _getMappingForDocument(document); protected readClass(context: ReadContext, value: any): any; write(context: WriteContext, value: any): any; protected writeClass(context: WriteContext, value: any, mappedConstructor: boolean): any; areEqual(documentValue1: any, documentValue2: any): boolean; private _areEqual(documentValue1, documentValue2); walk(session: InternalSession, value: any, flags: MappingModel.PropertyFlags, entities: any[], embedded: any[], references: Reference[]): void; private _walk(session, value, flags, entities, embedded, references); fetch(session: InternalSession, parentEntity: any, value: any, path: string[], depth: number, callback: ResultCallback<any>): void; private _fetch(session, parentEntity, value, path, depth, callback); }