Class Deserializer

Deserializes TypeDoc's JSON output back to Reflection instances.

Accessors

Constructors

Methods

Properties

application: Application
oldFileIdToNewFileId: Record<number, undefined | number> = {}
oldIdToNewId: Record<number, undefined | number> = {}
project: undefined | Models.ProjectReflection
projectRoot: string

Only set when deserializing.

reflectionBuilders: {
    declaration: (
        parent: Models.Reflection,
        obj: JSONOutput.DeclarationReflection | JSONOutput.ReferenceReflection,
    ) => Models.DeclarationReflection;
    document: (
        parent: Models.Reflection,
        obj: JSONOutput.DocumentReflection,
    ) => Models.DocumentReflection;
    param: (
        parent: Models.SignatureReflection,
        obj: JSONOutput.ParameterReflection,
    ) => Models.ParameterReflection;
    project: (
        parent: Models.Reflection,
        obj: JSONOutput.ProjectReflection,
    ) => Models.ProjectReflection;
    reference: (
        parent: Models.Reflection,
        obj: JSONOutput.ReferenceReflection,
    ) => Models.ReferenceReflection;
    signature: (
        parent: Models.DeclarationReflection,
        obj: JSONOutput.SignatureReflection,
    ) => Models.SignatureReflection;
    typeParam: (
        parent: NonNullable<
            undefined
            | Models.DeclarationReflection
            | Models.SignatureReflection,
        >,
        obj: JSONOutput.TypeParameterReflection,
    ) => Models.TypeParameterReflection;
} = ...
typeBuilders: {
    array: (obj: JSONOutput.ArrayType, de: Deserializer) => Models.ArrayType;
    conditional: (
        obj: JSONOutput.ConditionalType,
        de: Deserializer,
    ) => Models.ConditionalType;
    indexedAccess: (
        obj: JSONOutput.IndexedAccessType,
        de: Deserializer,
    ) => Models.IndexedAccessType;
    inferred: (
        obj: JSONOutput.InferredType,
        de: Deserializer,
    ) => Models.InferredType;
    intersection: (
        obj: JSONOutput.IntersectionType,
        de: Deserializer,
    ) => Models.IntersectionType;
    intrinsic: (
        obj: JSONOutput.IntrinsicType,
        de: Deserializer,
    ) => Models.IntrinsicType;
    literal: (
        obj: JSONOutput.LiteralType,
        de: Deserializer,
    ) => Models.LiteralType;
    mapped: (obj: JSONOutput.MappedType, de: Deserializer) => Models.MappedType;
    namedTupleMember: (
        obj: NamedTupleMemberType,
        de: Deserializer,
    ) => Models.NamedTupleMember;
    optional: (
        obj: JSONOutput.OptionalType,
        de: Deserializer,
    ) => Models.OptionalType;
    predicate: (
        obj: JSONOutput.PredicateType,
        de: Deserializer,
    ) => Models.PredicateType;
    query: (obj: JSONOutput.QueryType, de: Deserializer) => Models.QueryType;
    reference: (
        obj: JSONOutput.ReferenceType,
        de: Deserializer,
    ) => Models.ReferenceType;
    reflection: (
        obj: JSONOutput.ReflectionType,
        de: Deserializer,
    ) => Models.ReflectionType;
    rest: (obj: JSONOutput.RestType, de: Deserializer) => Models.RestType;
    templateLiteral: (
        obj: JSONOutput.TemplateLiteralType,
        de: Deserializer,
    ) => Models.TemplateLiteralType;
    tuple: (obj: JSONOutput.TupleType, de: Deserializer) => Models.TupleType;
    typeOperator: (
        obj: JSONOutput.TypeOperatorType,
        de: Deserializer,
    ) => Models.TypeOperatorType;
    union: (obj: JSONOutput.UnionType, de: Deserializer) => Models.UnionType;
    unknown: (
        obj: JSONOutput.UnknownType,
        de: Deserializer,
    ) => Models.UnknownType;
} = ...