typedoc-plugin-missing-exports

Include non-exported types in TypeDoc documentation


Keywords
typedoc-plugin
License
MIT
Install
npm install typedoc-plugin-missing-exports@4.1.0

Documentation

typedoc-plugin-missing-exports

Automatically document symbols which aren't exported but are referenced.

Supports TypeDoc ^0.28.1

TypeDoc looks at each entry point provided and documents all exports from that entry point.

For libraries which export their full exposed API, this works well, but some packages are extremely resistant to exporting everything. This plugin is for them. After TypeDoc has finished converting packages, it will look for types which are referenced, but not exported, and place them into an internal module for that entry point (called <internal> by default).

If your project references classes which are built into the language (e.g. HTMLElement), this package will result in those types being documented too. If you want to prevent this, set TypeDoc's excludeExternals option to true. The default pattern for determining if a symbol is external will exclude everything within node_modules.

Usage

npm install typedoc-plugin-missing-exports --save-dev
npx typedoc --plugin typedoc-plugin-missing-exports

Alternatively, configure via an options file:

// typedoc.json
{
	"plugin": ["typedoc-plugin-missing-exports"]
}

Options

  • internalModule - Define the name of the module that internal symbols which are not exported should be placed into, defaults to <internal>.
  • collapseInternalModule - Include JS in the page to collapse all <internal> entries in the navigation on page load.
  • placeInternalsInOwningModule - Disable creating a module for internal symbols, and instead place them into the referencing module.
  • includeDocCommentReferences - Also automatically add values linked within doc comments to the documentation. This option requires that TypeDoc's useTsLinkResolution option is enabled and that JSDoc style comments are used. Link tags within TypeDoc's excludeTags option will not be documented as they will be removed from the documentation before rendering.

Additional Reading