UNPKG

@dipscope/type-manager

Version:

Transform JSON strings or plain objects into JS class instances.

33 lines 1.78 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'; /** * Circular reference handler which preserves references as is even if the circular is detected. * * @type {CircularReferenceHandler} */ export declare class CircularReferenceHandler 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=circular-reference-handler.d.ts.map