qmhc/unplugin-dts

An unplugin for generating declaration (dts) files.

1,527

stars

560

commits

TypeScript

primary language

Sep 1, 2026

updated

dts
esbuild
react
rolldown
rollup
rsbuild
rspack
svelte
tsc
typescript
unplugin
vite
volar
vue
vue-tsc
webpack

README

unplugin-dts

An unplugin that generates declaration files (*.d.ts) from .ts(x) or .vue source files when using library mode.

version version license

It evolved from vite-plugin-dts, and after being rewritten with unplugin, it has become more versatile.

English | 中文

Installation

Requires Node.js >= 20.

pnpm i -D unplugin-dts

Previous only for Vite (not recommend):

pnpm i -D vite-plugin-dts

Quick Start

import dts from 'unplugin-dts/vite'

export default defineConfig({
  plugins: [dts()],
})

Supports Vite, Rollup, Rolldown, Webpack, Rspack and Esbuild. See Usage for detailed bundler setup.

Documentation

  • Usage - Installation and bundler configuration
  • Options - Full plugin options reference
  • FAQ - Frequently asked questions and solutions
  • Migration (v4 → v5) - Migrating from vite-plugin-dts v4

Contributors

Thanks for all the contributions!

contributors

A real project using this plugin: Vexip UI.

License

MIT License.

Contributors

(top 30 of 50)

qmhc

503 commits

lachieh

3 commits

qwqcode

2 commits

Q16solver

2 commits

qmhc/unplugin-dts

An unplugin for generating declaration (dts) files.

1,527

stars

560

commits

TypeScript

primary language

Sep 1, 2026

updated

dts
esbuild
react
rolldown
rollup
rsbuild
rspack
svelte
tsc
typescript
unplugin
vite
volar
vue
vue-tsc
webpack

README

unplugin-dts

An unplugin that generates declaration files (*.d.ts) from .ts(x) or .vue source files when using library mode.

version version license

It evolved from vite-plugin-dts, and after being rewritten with unplugin, it has become more versatile.

English | 中文

Installation

Requires Node.js >= 20.

pnpm i -D unplugin-dts

Previous only for Vite (not recommend):

pnpm i -D vite-plugin-dts

Quick Start

import dts from 'unplugin-dts/vite'

export default defineConfig({
  plugins: [dts()],
})

Supports Vite, Rollup, Rolldown, Webpack, Rspack and Esbuild. See Usage for detailed bundler setup.

Documentation

  • Usage - Installation and bundler configuration
  • Options - Full plugin options reference
  • FAQ - Frequently asked questions and solutions
  • Migration (v4 → v5) - Migrating from vite-plugin-dts v4

Contributors

Thanks for all the contributions!

contributors

A real project using this plugin: Vexip UI.

License

MIT License.

Contributors

(top 30 of 50)

qmhc

503 commits

lachieh

3 commits

qwqcode

2 commits

Q16solver

2 commits

Languages

TypeScript

92.5%

JavaScript

4.1%

Vue

2.5%