Interface ProjectReflection

interface ProjectReflection {
    files: JSONOutput.FileRegistry;
    flags: JSONOutput.ReflectionFlags;
    id: Models.ReflectionId;
    kind: Models.ReflectionKind;
    name: string;
    symbolIdMap: undefined | Record<number, JSONOutput.ReflectionSymbolId>;
    variant: "project";
    categories?: JSONOutput.ReflectionCategory[];
    children?: (
        JSONOutput.DeclarationReflection
        | JSONOutput.ReferenceReflection
    )[];
    childrenIncludingDocuments?: number[];
    comment?: JSONOutput.Comment;
    documents?: JSONOutput.DocumentReflection[];
    groups?: JSONOutput.ReflectionGroup[];
    packageName?: string;
    packageVersion?: string;
    readme?: JSONOutput.CommentDisplayPart[];
}

Hierarchy

Properties

Unique id of this reflection.

The kind of this reflection.

name: string

The symbol name of this reflection.

symbolIdMap: undefined | Record<number, JSONOutput.ReflectionSymbolId>
variant: "project"

Discriminator representing the type of reflection represented by this object.

All children grouped by their category.

The children of this reflection. Do not add reflections to this array manually. Instead call addChild.

childrenIncludingDocuments?: number[]

The parsed documentation comment attached to this reflection.

Documents associated with this reflection.

These are not children as including them as children requires code handle both types, despite being mostly unrelated and handled separately.

Including them here in a separate array neatly handles that problem, but also introduces another one for rendering. When rendering, documents should really actually be considered part of the "children" of a reflection. For this reason, we also maintain a list of child declarations with child documents which is used when rendering.

All children grouped by their kind.

packageName?: string

The name of the package that this reflection documents according to package.json.

packageVersion?: string

The version of the package that this reflection documents according to package.json.

The contents of the readme.md file of the project when found.