Class ReflectionAbstract

Base class for all reflection classes.

While generating a documentation, TypeDoc generates an instance of ProjectReflection as the root for all reflections within the project. All other reflections are represented by the DeclarationReflection class.

This base class exposes the basic properties one may use to traverse the reflection tree. You can use the ContainerReflection.children and parent properties to walk the tree. The ContainerReflection.groups property contains a list of all children grouped and sorted for rendering.

Hierarchy (view full)



flags: Models.ReflectionFlags = ...
id: number

Unique id of this reflection.

The kind of this reflection.

name: string

The symbol name of this reflection.

variant: keyof ReflectionVariant

Discriminator representing the type of reflection represented by this object.

anchor?: string

The name of the anchor of this child. TODO: Reflections shouldn't know anchors exist. Move this to a serializer.

comment?: Models.Comment

The parsed documentation comment attached to this reflection.

hasOwnDocument?: boolean

Is the url pointing to an individual document?

When FALSE, the url points to an anchor tag on a page of a different reflection. TODO: Reflections shouldn't know how they are rendered. Move this to the correct serializer.

The reflection this reflection is a child of.

url?: string

The url of this reflection in the generated documentation. TODO: Reflections shouldn't know urls exist. Move this to a serializer.


  • Return the full name of this reflection, with signature names dropped if possible without introducing ambiguity in the name.

    Returns string

  • Return the full name of this reflection. Intended for use in debugging. For log messages intended to be displayed to the user for them to fix, prefer getFriendlyFullName instead.

    The full name contains the name of this reflection and the names of all parent reflections.


    • separator: string = "."

      Separator used to join the names of the reflections.

    Returns string

    The full name of this reflection.

  • Check if this reflection or any of its parents have been marked with the @deprecated tag.

    Returns boolean

  • Return a string representation of this reflection and all of its children.

    Note: This is intended as a debug tool only, output may change between patch versions.


    • indent: string = ""

      Used internally to indent child reflections.

    Returns string

  • Traverse most potential child reflections of this reflection.

    Note: This may not necessarily traverse child reflections contained within the type property of the reflection, and should not be relied on for this. Support for checking object types will likely be removed in v0.27.

    The given callback will be invoked for all children, signatures and type parameters attached to this reflection.


    • callback: TraverseCallback

      The callback function that should be applied for each child reflection.

    Returns void