• Public
  • Public/Protected
  • All

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

Option Discovery

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.


  • Options




  • addDefaultDeclarations(): void
  • freeze(): void
  • getCompilerOptions(): CompilerOptions
  • getFileNames(): readonly string[]
  • getProjectReferences(): readonly ProjectReference[]
  • isFrozen(): boolean
  • removeDeclarationByName(name: string): void
  • Removes a declared option. WARNING: This is probably a bad idea. If you do this you will probably cause a crash when code assumes that an option that it declared still exists.


    will be removed in 0.23.


    • name: string

    Returns void

  • removeReaderByName(name: string): void
  • setCompilerOptions(fileNames: readonly string[], options: CompilerOptions, projectReferences: undefined | readonly ProjectReference[]): void
  • Sets the compiler options that will be used to get a TS program.


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

    Returns void

  • setLogger(logger: Logger): void
  • setValue<K>(name: K, value: TypeDocOptions[K], configPath?: string): void
  • setValue(name: string, value: unknown, configPath?: string): void

Generated using TypeDoc