UNPKG

@dipscope/type-manager

Version:

Transform JSON strings or plain objects into JS class instances.

34 lines 1.85 kB
import { ReferenceHandler } from '../reference-handler'; import { ReferenceKey } from '../reference-key'; import { ReferenceValue } from '../reference-value'; import { ReferenceValueGetter } from '../reference-value-getter'; import { SerializerContext } from '../serializer-context'; /** * Plain reference handler preserves references except circular. If circular reference is detected the it will * be setted to undefined so only first occurance is handled. * * @type {PlainReferenceHandler} */ export declare class PlainReferenceHandler implements ReferenceHandler { /** * Defines reference. Called during serialization. * * @param {SerializerContext<any>} serializerContext Serializer context. * @param {ReferenceKey} referenceKey Reference which acts as a key. This is basically a serializing object. * @param {ReferenceValueGetter} referenceValueGetter Function to get a reference value when one is not yet present for a key. * * @returns {ReferenceValue} Resolved reference value. */ define(serializerContext: SerializerContext<any>, referenceKey: ReferenceKey, referenceValueGetter: ReferenceValueGetter): ReferenceValue; /** * Restores reference. Called during deserialization. * * @param {SerializerContext<any>} serializerContext Serializer context. * @param {ReferenceKey} referenceKey Reference which acts as a key. This is basically a deserializing object. * @param {ReferenceValueGetter} referenceValueGetter Function to get a reference value when one is not yet present for a key. * * @returns {ReferenceValue} Resolved reference value. */ restore(serializerContext: SerializerContext<any>, referenceKey: ReferenceKey, referenceValueGetter: ReferenceValueGetter): ReferenceValue; } //# sourceMappingURL=plain-reference-handler.d.ts.map