KC's Workspace
    Preparing search index...
    interface Options {
        build?: boolean;
        cjsDefault?: boolean;
        compilerOptions?: TsConfigJson.CompilerOptions;
        cwd?: string;
        dtsInput?: boolean;
        eager?: boolean;
        emitDtsOnly?: boolean;
        emitJs?: boolean;
        incremental?: boolean;
        newContext?: boolean;
        oxc?: boolean | Omit<IsolatedDeclarationsOptions, "sourcemap">;
        parallel?: boolean;
        resolve?: boolean | (string | RegExp)[];
        resolver?: "oxc" | "tsc";
        sideEffects?: boolean;
        sourcemap?: boolean;
        tsconfig?: string | boolean;
        tsconfigRaw?: Omit<TsConfigJson, "compilerOptions">;
        tsgo?: boolean;
        tsMacro?: boolean;
        vue?: boolean;
    }

    Hierarchy (View Summary)

    Index

    Properties

    build?: boolean

    Build mode for the TypeScript compiler:

    • If true, the plugin will use tsc -b to build the project and all referenced projects before emitting .d.ts files.
    • If false, the plugin will use tsc to emit .d.ts files without building referenced projects.
    false
    
    cjsDefault?: boolean

    Determines how the default export is emitted.

    If set to true, and you are only exporting a single item using export default ..., the output will use export = ... instead of the standard ES module syntax. This is useful for compatibility with CommonJS.

    compilerOptions?: TsConfigJson.CompilerOptions

    Override the compilerOptions specified in tsconfig.json.

    cwd?: string

    The directory in which the plugin will search for the tsconfig.json file.

    dtsInput?: boolean

    Set to true if your entry files are .d.ts files instead of .ts files.

    When enabled, the plugin will skip generating a .d.ts file for the entry point.

    eager?: boolean

    If true, the plugin will prepare all files listed in tsconfig.json for tsc or vue-tsc.

    This is especially useful when you have a single tsconfig.json for multiple projects in a monorepo.

    emitDtsOnly?: boolean

    If true, the plugin will emit only .d.ts files and remove all other output chunks.

    This is especially useful when generating .d.ts files for the CommonJS format as part of a separate build step.

    emitJs?: boolean

    If true, the plugin will emit .d.ts files for .js files as well. This is useful when you want to generate type definitions for JavaScript files with JSDoc comments.

    Enabled by default when allowJs in compilerOptions is true. This option is only used when Options.oxc is false.

    incremental?: boolean

    If your tsconfig.json has references option, rolldown-plugin-dts will use tsc -b to build the project and all referenced projects before emitting .d.ts files.

    In such case, if this option is true, rolldown-plugin-dts will write down all built files into your disk, including .tsbuildinfo and other built files. This is equivalent to running tsc -b in your project.

    Otherwise, if this option is false, rolldown-plugin-dts will write built files only into memory and leave a small footprint in your disk.

    Enabling this option will decrease the build time by caching previous build results. This is helpful when you have a large project with multiple referenced projects.

    By default, incremental is true if your tsconfig has incremental or tsBuildInfoFile enabled.

    This option is only used when Options.oxc is false.

    newContext?: boolean

    If true, the plugin will create a new isolated context for each build, ensuring that previously generated .d.ts code and caches are not reused.

    By default, the plugin may reuse internal caches or incremental build artifacts to speed up repeated builds. Enabling this option forces a clean context, guaranteeing that all type definitions are generated from scratch.

    false
    
    oxc?: boolean | Omit<IsolatedDeclarationsOptions, "sourcemap">

    If true, the plugin will generate .d.ts files using Oxc, which is significantly faster than the TypeScript compiler.

    This option is automatically enabled when isolatedDeclarations in compilerOptions is set to true.

    parallel?: boolean

    If true, the plugin will launch a separate process for tsc or vue-tsc. This enables processing multiple projects in parallel.

    resolve?: boolean | (string | RegExp)[]

    Controls whether type definitions from node_modules are bundled into your final .d.ts file or kept as external import statements.

    By default, dependencies are external, resulting in import { Type } from 'some-package'. When bundled, this import is removed, and the type definitions from some-package are copied directly into your file.

    • true: Bundles all dependencies.
    • false: (Default) Keeps all dependencies external.
    • (string | RegExp)[]: Bundles only dependencies matching the provided strings or regular expressions (e.g. ['pkg-a', /^@scope//]).
    resolver?: "oxc" | "tsc"

    Specifies a resolver to resolve type definitions, especially for node_modules.

    • 'oxc': Uses Oxc's module resolution, which is faster and more efficient.
    • 'tsc': Uses TypeScript's native module resolution, which may be more compatible with complex setups, but slower.
    'oxc'
    
    sideEffects?: boolean

    Indicates whether the generated .d.ts files have side effects.

    • If set to true, Rolldown will treat the .d.ts files as having side effects during tree-shaking.
    • If set to false, Rolldown may consider the .d.ts files as side-effect-free, potentially removing them if they are not imported.
    false
    
    sourcemap?: boolean

    If true, the plugin will generate declaration maps (.d.ts.map) for .d.ts files.

    tsconfig?: string | boolean

    The path to the tsconfig.json file.

    If set to false, the plugin will ignore any tsconfig.json file. You can still specify compilerOptions directly in the options.

    'tsconfig.json'
    
    tsconfigRaw?: Omit<TsConfigJson, "compilerOptions">

    Pass a raw tsconfig.json object directly to the plugin.

    tsgo?: boolean

    [Experimental] Enables DTS generation using tsgo.

    To use this option, make sure @typescript/native-preview is installed as a dependency.

    Note: This option is not yet recommended for production environments. tsconfigRaw and isolatedDeclarations options will be ignored when this option is enabled.

    tsMacro?: boolean

    If true, the plugin will generate .d.ts files using @ts-macro/tsc.

    vue?: boolean

    If true, the plugin will generate .d.ts files using vue-tsc.