Maintains a collection of option declarations split into TypeDoc options and TypeScript options. Ensures options are of the correct type for calling code.

Since plugins commonly add custom options, and TypeDoc does not permit options which have not been declared to be set, options must be read twice. The first time options are read, a noop logger is passed so that any errors are ignored. Then, after loading plugins, options are read again, this time with the logger specified by the application.

Options are read in a specific order.

  1. argv (0) - Must be read first since it should change the files read when passing --options or --tsconfig.
  2. typedoc-json (100) - Read next so that it can specify the tsconfig.json file to read.
  3. tsconfig-json (200) - Last config file reader, cannot specify the typedoc.json file to read.
  4. argv (300) - Read argv again since any options set there should override those set in config files.

Constructors

Methods

  • Internal

    Parameters

    • options: Readonly<CompilerOptions>

    Returns CompilerOptions

  • Marks the options as readonly, enables caching when fetching options, which improves performance.

    Returns void

  • Gets the file names discovered through reading a tsconfig file.

    Returns readonly string[]

  • Gets the project references - used in solution style tsconfig setups.

    Returns readonly ProjectReference[]

  • Discover similar option names to the given name, for use in error reporting.

    Parameters

    • missingName: string

    Returns string[]

  • Checks if the options object has been frozen, preventing future changes to option values.

    Returns boolean

  • Resets the option bag to all default values. If a name is provided, will only reset that name.

    Parameters

    • Optionalname: keyof TypeDocOptionMap

    Returns void

  • Resets the option bag to all default values. If a name is provided, will only reset that name.

    Parameters

    • Optionalname: undefined

    Returns void

  • Internal

    Take a snapshot of option values now, used in tests only.

    Parameters

    • snapshot: { __optionSnapshot: never }

    Returns void

  • Sets the compiler options that will be used to get a TS program.

    Parameters

    • fileNames: readonly string[]
    • options: CompilerOptions
    • projectReferences: undefined | readonly ProjectReference[]

    Returns void

  • Internal

    Take a snapshot of option values now, used in tests only.

    Returns { __optionSnapshot: never }

Properties

packageDir?: string

In packages mode, the directory of the package being converted.