Class ProjectReflection

A reflection that represents the root of the project.

The project reflection acts as a global index, one may receive all reflections and source files of the processed project through this reflection.




flags: ReflectionFlags = ...
id: number

Unique id of this reflection.

The kind of this reflection.

name: string

The symbol name of this reflection.

originalName: string

The original name of the TypeScript declaration.

reflections: { [id: number]: Reflection } = {}

A list of all reflections within the project. DO NOT MUTATE THIS OBJECT. All mutation should be done via registerReflection and removeReflection to ensure that links to reflections remain valid.

This may be replaced with a Map<number, Reflection> someday.

Type declaration

anchor?: string

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

categories?: ReflectionCategory[]

All children grouped by their category.

The children of this reflection.

comment?: Comment

The parsed documentation comment attached to this reflection.

cssClasses?: string

A list of generated css classes that should be applied to representations of this reflection in the generated markup. TODO: Reflections shouldn't know about CSS. Move this property to the correct serializer.

groups?: ReflectionGroup[]

All children grouped by their kind.

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.

kindString?: string

The human readable string representation of the kind of this reflection. Set during the resolution phase by GroupPlugin

label?: string

Label associated with this reflection, if any ( Added by the CommentPlugin during resolution.

parent?: Reflection

The reflection this reflection is a child of.

The contents of the file of the project when found.

relevanceBoost?: number

A precomputed boost derived from the searchCategoryBoosts and searchGroupBoosts options, used when boosting search relevance scores at runtime. May be modified by plugins.

sources?: SourceReference[]

A list of all source files that contributed to this reflection.

url?: string

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



  • Try to find a reflection by its name.


    The found reflection or null.


    This method not be used, it naively splits the name by a . and searches recursively up the parent tree, which is not how any other name resolver works. If you are currently using this and need another method, please open an issue. For tests getChildByName should generally be sufficient.


    • arg: string | string[]

    Returns undefined | Reflection

  • 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.


    The full name of this reflection.


    • separator: string = "."

      Separator used to join the names of the reflections.

    Returns string

  • Registers the given reflection so that it can be quickly looked up by helper methods. Should be called for every reflection added to the project.


    Returns void

  • When excludeNotExported is set, if a symbol is exported only under a different name there will be a reference which points to the symbol, but the symbol will not be converted and the rename will point to nothing. Warn the user if this happens.

    Returns void

  • Removes a reflection from the documentation. Can be used by plugins to filter reflections out of the generated documentation. Has no effect if the reflection is not present in the project.


    Returns void

Generated using TypeDoc