undefinedConfigure the generation of the TypeScript declaration files.
Declaration files generation is an optional feature, you can set dts: true to enable bundleless declaration files generation.
If you want to disable declaration files generation, you can set dts: false or do not specify the dts option.
If you want to customize the declaration files generation, you can set the dts option to an object.
booleanfalseWhether to bundle the declaration files.
If you want to bundle declaration files files, you should:
dts.bundle to true.When we bundle declaration files, we should specify which third-party package types need to be bundled, refer to the Handle Third-Party Dependencies documentation for more details about externals related configurations.
stringThe output directory of declaration files.
The default value follows the priority below:
dts.distPath value in the current lib configuration.declarationDir value in the tsconfig.json file.booleanfalseWhether to generate declaration files with building the project references. This is equivalent to using the --build flag with the tsc command. See Project References for more details.
When this option is enabled, you must explicitly set declarationDir or outDir in tsconfig.json in order to meet the build requirements.
booleantrueWhether to abort the build process when an error occurs during declaration files generation.
By default, type errors will cause the build to fail.
When abortOnError is set to false like below, the build will still succeed even if there are type issues in the code.
When this configuration is disabled, there is no guarantee that the type files will be generated correctly.
booleanfalseWhether to automatically set the declaration file extension based on the format option.
By default that when dts.autoExtension is false, the declaration file extension will be .d.ts.
When dts.autoExtension is set to true, the declaration file extension will be:
.d.ts with esm format and .d.cts with cjs format when type: module in package.json.
.d.ts with cjs format and .d.mts with esm format when type: commonjs or no type field in package.json.
It follows the same logic as lib.autoExtension, but the default value is different since the declaration file extension may cause some issues with different module resolution strategies.