Skip to content

Upgrading tsdown 0.20 to 0.21

Breaking0.20.3 → 0.21.10Breaking3Platform3New34Changed7Fixed31Other12

BreakingUpgrade verdict

3 breaking changes and 3 platform requirement changes.

  • exe: Add exe.outDir for separate executable output dir, defaults to build  -  (d49ef).
  • Change failOnWarn default from 'ci-only' to false  -  (ad8db).
  • css: Move all CSS support to @tsdown/css package  -  (1b1a1).
  • Upgrade Node.js: Ensure you're running Node.js >= 22.18.0 to avoid deprecation warnings.
Top 5 of 6 that need code or config changes

Installs 64 packages in all (was 80).

Breaking3
exe: Add exe.outDir for separate executable output dir, defaults to build  -  (d49ef).
exe.outDirbuild
Change failOnWarn default from 'ci-only' to false  -  (ad8db).
failOnWarn
css: Move all CSS support to @tsdown/css package  -  (1b1a1).
@tsdown/css
Platform3
Upgrade Node.js: Ensure you're running Node.js >= 22.18.0 to avoid deprecation warnings.
exe: Require Node >=25.7 and default format to esm  -  (0173c).
Deprecate Node.js versions below 22.18.0  -  (439f1).

Generated by DepDelta from published .d.ts files. Not mixed with prose notes.

  • added: declare module '*?inline'
  • added: const src: string
  • added: default src
  • removed: function defineConfig(options: UserConfig): UserConfig
  • removed: function defineConfig(options: UserConfigExport): UserConfigExport
  • removed: function defineConfig(options: UserConfigFn): UserConfigFn
  • removed: function defineConfig(options: UserConfig[]): UserConfig[]
  • added: export { defineConfig }
  • added: function n(defaults: InlineConfig, ...overrides: InlineConfig[]): InlineConfig
  • added: function n(defaults: UserConfig, ...overrides: UserConfig[]): UserConfig
  • added: function r(userConfig: UserConfig, inlineConfig: InlineConfig, configDeps: Set<string>): Promise<ResolvedConfig[]>
  • added: function t(options: UserConfig): UserConfig
  • added: function t(options: UserConfigExport): UserConfigExport
  • added: function t(options: UserConfigFn): UserConfigFn
  • added: function t(options: UserConfig[]): UserConfig[]
  • removed: export { CssOptions }
  • changed: function buildWithConfigs(configs: ResolvedConfig[], configFiles: string[], _restart: () => void): Promise<TsdownBundle[]> → function buildWithConfigs(configs: ResolvedConfig[], configDeps: Set<string>, _restart: () => void): Promise<TsdownBundle[]>
  • added: export { DepsConfig }
  • added: export { ExeOptions }
  • added: export { ResolvedDepsConfig }
  • added: export { SeaConfig }
  • added: export { TsdownPlugin }
  • added: export { TsdownPluginOption }
  • added: const i: Logger
  • added: index t[key: string]: any
  • added: interface r
  • added: interface t
  • added: property r.clearScreen: (type: LogType) => void
  • added: property r.error: (...args: any[]) => void
  • added: property r.info: (...args: any[]) => void
  • added: property r.level: LogLevel
  • added: property r.options?: LoggerOptions
  • added: property r.success: (...args: any[]) => void
  • added: property r.warn: (...args: any[]) => void
  • added: property r.warnOnce: (...args: any[]) => void
  • added: property t.author?: PackageJsonPerson
  • added: property t.bin?: string | Record<string, string>
  • added: property t.browser?: string | Record<string, string | false>
  • added: property t.bugs?: string | { url?: string; email?: string }
  • added: property t.contributors?: PackageJsonPerson[]
  • added: property t.cpu?: string[]
  • added: property t.dependencies?: Record<string, string>
  • added: property t.description?: string
  • added: property t.devDependencies?: Record<string, string>
  • added: property t.exports?: PackageJsonExports
  • added: property t.files?: string[]
  • added: property t.funding?: PackageJsonFunding | PackageJsonFunding[]
  • added: property t.homepage?: string
  • added: property t.imports?: Record<string, string | Record<string, string>>
  • added: property t.keywords?: string[]
  • added: property t.license?: string
  • added: property t.main?: string
  • added: property t.man?: string | string[]
  • added: property t.module?: string
  • added: property t.name?: string
  • added: property t.optionalDependencies?: Record<string, string>
  • added: property t.os?: string[]
  • added: property t.packageManager?: string
  • added: property t.peerDependencies?: Record<string, string>
  • added: property t.private?: boolean
  • added: property t.publishConfig?: { registry?: string; tag?: string; access?: 'public' | 'restricted'; executableFiles?: string[]; directory?: string; linkDirectory?: boolean } & Pick<PackageJson, 'bin' | 'main' | 'exports' | 'types' | 'typings' | 'module' | 'browser' | 'unpkg' | 'typesVersions' | 'os' | 'cpu'>
  • added: property t.repository?: string | { type: string; url: string; directory?: string }
  • added: property t.scripts?: PackageJsonScripts
  • added: property t.type?: 'module' | 'commonjs'
  • added: property t.types?: string
  • added: property t.typesVersions?: Record<string, Record<string, string[]>>
  • added: property t.typings?: string
  • added: property t.unpkg?: string
  • added: property t.version?: string
  • added: property t.workspaces?: string[] | { packages?: string[]; nohoist?: string[] }
  • added: type a<T> = T | T[]
  • added: type c<T, U> = Omit<T, keyof U> & U
  • added: type n = LogType | 'silent'
  • added: type o<T> = T | Promise<T>
  • added: type s<T, K extends keyof T> = Omit<Required<T>, K> & Partial<Pick<T, K>>
  • added: export { Logger }
  • added: export { MarkPartial }
  • added: export { Overwrite }
  • added: function expandBaselineTarget(targets: string[]): string[]
  • added: function fsExists(path: string): Promise<boolean>
  • added: function fsRemove(path: string): Promise<void>
  • added: function importWithError<T>(moduleName: string): Promise<T>
  • added: function resolveComma<T extends string>(arr: T[]): T[]
  • added: function toArray<T>(val: T | T[] | null | undefined, defaultValue?: T): T[]
  • removed: function n(userConfig: UserConfig, inlineConfig: InlineConfig): Promise<ResolvedConfig[]>
  • removed: function t(defaults: InlineConfig, overrides: InlineConfig): InlineConfig
  • removed: function t(defaults: UserConfig, overrides: UserConfig): UserConfig
  • removed: function DepPlugin({ pkg, noExternal, inlineOnly, skipNodeModulesBundle, logger, nameLabel }: ResolvedConfig): Plugin
  • changed: function WatchPlugin(configFiles: string[], { config, chunks }: TsdownBundle): Plugin → function WatchPlugin(configDeps: Set<string>, { config, chunks }: TsdownBundle): Plugin
  • added: export { DepsPlugin }
  • removed: const b: Logger
  • removed: export { DtsOptions as n }
  • removed: export { TreeshakingOptions as l }
  • removed: export { UnusedOptions as d }
  • removed: function v(userOptions: ReportOptions, logger: Logger, cwd: string, cjsDts?: boolean, nameLabel?: string, isDualFormat?: boolean): Plugin
  • removed: interface F
  • removed: interface I
  • removed: interface L extends NonNullable<InputOptions['devtools']>
  • removed: interface M extends PackageJson
  • removed: interface O
  • removed: interface P
  • removed: interface R
  • removed: interface S
  • removed: interface T extends CheckPackageOptions
  • removed: interface _
  • removed: interface f
  • removed: interface g
  • removed: interface i extends UserConfig
  • removed: interface j
  • removed: interface k
  • removed: interface w extends AsyncDisposable
  • removed: interface x extends Omit<Options, 'pack' | 'pkgDir'>
  • removed: interface y
  • removed: interface z
  • removed: property F.buildOptions: BuildOptions
  • removed: property I.'build:before': (ctx: BuildContext & RolldownContext) => void | Promise<void>
  • removed: property I.'build:done': (ctx: BuildContext & { chunks: RolldownChunk[] }) => void | Promise<void>
  • removed: property I.'build:prepare': (ctx: BuildContext) => void | Promise<void>
  • removed: property L.clean?: boolean
  • removed: property L.ui?: boolean | Partial<StartOptions>
  • removed: property M.packageJsonPath: string
  • removed: property O.css?: string
  • removed: property O.dts?: string
  • removed: property O.js?: string
  • removed: property P.hooks: Hookable<TsdownHooks>
  • removed: property P.options: ResolvedConfig
  • removed: property R.fileName?: string
  • removed: property R.splitting?: boolean
  • removed: property S.all?: boolean
  • removed: property S.customExports?: (exports: Record<string, any>, context: { pkg: PackageJson; chunks: ChunksByFormat; isPublish: boolean }) => Awaitable<Record<string, any>>
  • removed: property S.devExports?: boolean | string
  • removed: property S.exclude?: (RegExp | string)[]
  • removed: property S.legacy?: boolean
  • removed: property S.packageJson?: boolean
  • removed: property T.ignoreRules?: string[]
  • removed: property T.level?: 'error' | 'warn'
  • removed: property T.profile?: 'strict' | 'node16' | 'esm-only'
  • removed: property _.brotli?: boolean
  • removed: property _.gzip?: boolean
  • removed: property _.maxCompressSize?: number
  • removed: property f.alias?: Record<string, string>
  • removed: property f.attw?: WithEnabled<AttwOptions>
  • removed: property f.banner?: ChunkAddon
  • removed: property f.bundle?: boolean
  • removed: property f.checks?: ChecksOptions & { legacyCjs?: boolean }
  • removed: property f.cjsDefault?: boolean
  • removed: property f.clean?: boolean | string[]
  • removed: property f.copy?: CopyOptions | CopyOptionsFn
  • removed: property f.css?: CssOptions
  • removed: property f.customLogger?: Logger
  • removed: property f.cwd?: string
  • removed: property f.define?: Record<string, string>
  • removed: property f.devtools?: WithEnabled<DevtoolsOptions>
  • removed: property f.dts?: WithEnabled<DtsOptions>
  • removed: property f.entry?: TsdownInputOption
  • removed: property f.env?: Record<string, any>
  • removed: property f.envFile?: string
  • removed: property f.envPrefix?: string | string[]
  • removed: property f.exports?: WithEnabled<ExportsOptions>
  • removed: property f.external?: ExternalOption
  • removed: property f.failOnWarn?: boolean | CIOption
  • removed: property f.fixedExtension?: boolean
  • removed: property f.footer?: ChunkAddon
  • removed: property f.format?: Format | Format[] | Partial<Record<Format, Partial<ResolvedConfig>>>
  • removed: property f.fromVite?: boolean | 'vitest'
  • removed: property f.globImport?: boolean
  • removed: property f.globalName?: string
  • removed: property f.hash?: boolean
  • removed: property f.hooks?: Partial<TsdownHooks> | ((hooks: Hookable<TsdownHooks>) => Awaitable<void>)
  • removed: property f.ignoreWatch?: Arrayable<string | RegExp>
  • removed: property f.inlineOnly?: Arrayable<string | RegExp> | false
  • removed: property f.inputOptions?: InputOptions | ((options: InputOptions, format: NormalizedFormat, context: { cjsDts: boolean }) => Awaitable<InputOptions | void | null>)
  • removed: property f.loader?: ModuleTypes
  • removed: property f.logLevel?: LogLevel
  • removed: property f.minify?: boolean | 'dce-only' | MinifyOptions
  • removed: property f.name?: string
  • removed: property f.noExternal?: Arrayable<string | RegExp> | NoExternalFn
  • removed: property f.nodeProtocol?: 'strip' | boolean
  • removed: property f.onSuccess?: string | ((config: ResolvedConfig, signal: AbortSignal) => void | Promise<void>)
  • removed: property f.outDir?: string
  • removed: property f.outExtensions?: OutExtensionFactory
  • removed: property f.outputOptions?: OutputOptions | ((options: OutputOptions, format: NormalizedFormat, context: { cjsDts: boolean }) => Awaitable<OutputOptions | void | null>)
  • removed: property f.platform?: 'node' | 'neutral' | 'browser'
  • removed: property f.plugins?: InputOptions['plugins']
  • removed: property f.publicDir?: CopyOptions | CopyOptionsFn
  • removed: property f.publint?: WithEnabled<PublintOptions>
  • removed: property f.removeNodeProtocol?: boolean
  • removed: property f.report?: WithEnabled<ReportOptions>
  • removed: property f.shims?: boolean
  • removed: property f.skipNodeModulesBundle?: boolean
  • removed: property f.sourcemap?: Sourcemap
  • removed: property f.target?: string | string[] | false
  • removed: property f.treeshake?: boolean | TreeshakingOptions
  • removed: property f.tsconfig?: string | boolean
  • removed: property f.unbundle?: boolean
  • removed: property f.unused?: WithEnabled<UnusedOptions>
  • removed: property f.watch?: boolean | Arrayable<string>
  • removed: property f.workspace?: Workspace | Arrayable<string> | true
  • removed: property f.write?: boolean
  • removed: property g.config?: boolean | string
  • removed: property g.exclude?: Arrayable<string>
  • removed: property g.include?: Arrayable<string> | 'auto'
  • removed: property i.config?: boolean | string
  • removed: property i.configLoader?: 'auto' | 'native' | 'unrun'
  • removed: property i.filter?: RegExp | Arrayable<string>
  • removed: property j.dts?: string
  • removed: property j.js?: string
  • removed: property k.format: NormalizedFormat
  • removed: property k.options: InputOptions
  • removed: property k.pkgType?: PackageType
  • removed: property w.chunks: RolldownChunk[]
  • removed: property w.config: ResolvedConfig
  • removed: property y.clearScreen: (type: LogType) => void
  • removed: property y.error: (...args: any[]) => void
  • removed: property y.info: (...args: any[]) => void
  • removed: property y.level: LogLevel
  • removed: property y.success: (...args: any[]) => void
  • removed: property y.warn: (...args: any[]) => void
  • removed: property y.warnOnce: (...args: any[]) => void
  • removed: property z.flatten?: boolean
  • removed: property z.from: string | string[]
  • removed: property z.rename?: string | ((name: string, extension: string, fullPath: string) => string)
  • removed: property z.to?: string
  • removed: property z.verbose?: boolean
  • removed: type A = (context: OutExtensionContext) => OutExtensionObject | undefined
  • removed: type B = Arrayable<string | CopyEntry>
  • removed: type C = (OutputChunk | OutputAsset) & { outDir: string }
  • removed: type D = (ctx: { format: Format; fileName: string }) => ChunkAddonObject | string | undefined
  • removed: type E = ChunkAddonObject | ChunkAddonFunction | string
  • removed: type H<T> = T | T[]
  • removed: type N = 'module' | 'commonjs' | undefined
  • removed: type V = (options: ResolvedConfig) => Awaitable<CopyOptions>
  • removed: type a = (id: string, importer: string | undefined) => boolean | null | undefined | void
  • removed: type c = boolean | 'inline' | 'hidden'
  • removed: type h<T> = boolean | undefined | CIOption | (T & { enabled?: boolean | CIOption })
  • removed: type m = (inlineConfig: InlineConfig, context: { ci: boolean }) => Awaitable<Arrayable<UserConfig>>
  • removed: type o = InternalModuleFormat
  • removed: type p = Awaitable<Arrayable<UserConfig> | UserConfigFn>
  • removed: type r = ModuleFormat
  • removed: type s = Overwrite<MarkPartial<Omit<UserConfig, 'workspace' | 'fromVite' | 'publicDir' | 'bundle' | 'removeNodeProtocol' | 'logLevel' | 'failOnWarn' | 'customLogger' |…
  • removed: type t = 'ci-only' | 'local-only'
  • removed: type u = Arrayable<string | Record<string, Arrayable<string>>>
  • added: export { TreeshakingOptions as c }
  • added: export { UnusedOptions as u }
  • added: function R({ pkg, deps: { alwaysBundle, onlyBundle, skipNodeModulesBundle }, logger, nameLabel }: ResolvedConfig, tsdownBundle: TsdownBundle): Plugin
  • added: function _(config: ResolvedConfig, cjsDts?: boolean, isDualFormat?: boolean): Plugin
  • added: interface B
  • added: interface E
  • added: interface F
  • added: interface H extends AsyncDisposable
  • added: interface I extends NonNullable<InputOptions['devtools']>
  • added: interface L
  • added: interface M
  • added: interface N
  • added: interface O
  • added: interface P extends ExeExtensionOptions
  • added: interface S extends CheckPackageOptions
  • added: interface T
  • added: interface U
  • added: interface b extends Omit<Options, 'pack' | 'pkgDir'>
  • added: interface d
  • added: interface g
  • added: interface h
  • added: interface i extends UserConfig
  • added: interface j
  • added: interface k extends PackageJson
  • added: interface n extends Options$1
  • added: interface v<A = any> extends Plugin<A>
  • added: interface x
  • added: property B.alwaysBundle?: NoExternalFn
  • added: property B.neverBundle?: ExternalOption
  • added: property B.onlyBundle?: Array<string | RegExp> | false
  • added: property B.skipNodeModulesBundle: boolean
  • added: property E.format: NormalizedFormat
  • added: property E.options: InputOptions
  • added: property E.pkgType?: PackageType
  • added: property F.assets?: Record<string, string>
  • added: property F.disableExperimentalSEAWarning?: boolean
  • added: property F.execArgv?: string[]
  • added: property F.execArgvExtension?: 'none' | 'env' | 'cli'
  • added: property F.executable?: string
  • added: property F.main?: string
  • added: property F.mainFormat?: 'commonjs' | 'module'
  • added: property F.output?: string
  • added: property F.useCodeCache?: boolean
  • added: property F.useSnapshot?: boolean
  • added: property H.chunks: RolldownChunk[]
  • added: property H.config: ResolvedConfig
  • added: property H.inlinedDeps: Map<string, Set<string>>
  • added: property I.clean?: boolean
  • added: property I.ui?: boolean | Partial<StartOptions>
  • added: property L.alwaysBundle?: Arrayable<string | RegExp> | NoExternalFn
  • added: property L.neverBundle?: ExternalOption
  • added: property L.onlyAllowBundle?: Arrayable<string | RegExp> | false
  • added: property L.onlyBundle?: Arrayable<string | RegExp> | false
  • added: property L.skipNodeModulesBundle?: boolean
  • added: property M.buildOptions: BuildOptions
  • added: property N.'build:before': (ctx: BuildContext & RolldownContext) => void | Promise<void>
  • added: property N.'build:done': (ctx: BuildContext & { chunks: RolldownChunk[] }) => void | Promise<void>
  • added: property N.'build:prepare': (ctx: BuildContext) => void | Promise<void>
  • added: property O.dts?: string
  • added: property O.js?: string
  • added: property P.fileName?: string | ((chunk: RolldownChunk) => string)
  • added: property P.outDir?: string
  • added: property P.seaConfig?: Omit<SeaConfig, 'main' | 'output' | 'mainFormat'>
  • added: property S.ignoreRules?: ('no-resolution' | 'untyped-resolution' | 'false-cjs' | 'false-esm' | 'cjs-resolves-to-esm' | 'fallback-condition' | 'cjs-only-exports-default' | 'named-exports' | 'false-export-default' | 'missing-export-equals' | 'unexpected-module-syntax' | 'internal-resolution-error' | (string & {}))[]
  • added: property S.level?: 'error' | 'warn'
  • added: property S.module?: typeof _$_arethetypeswrong_core0
  • added: property S.profile?: 'strict' | 'node16' | 'esm-only'
  • added: property T.css?: string
  • added: property T.dts?: string
  • added: property T.js?: string
  • added: property U.flatten?: boolean
  • added: property U.from: string | string[]
  • added: property U.rename?: string | ((name: string, extension: string, fullPath: string) => string)
  • added: property U.to?: string
  • added: property U.verbose?: boolean
  • added: property b.module?: [typeof _$publint, typeof _$publint_utils0]
  • added: property d.alias?: Record<string, string>
  • added: property d.attw?: WithEnabled<AttwOptions>
  • added: property d.banner?: ChunkAddon
  • added: property d.bundle?: boolean
  • added: property d.checks?: ChecksOptions & { legacyCjs?: boolean }
  • added: property d.cjsDefault?: boolean
  • added: property d.clean?: boolean | string[]
  • added: property d.copy?: CopyOptions | CopyOptionsFn
  • added: property d.css?: _$_tsdown_css0.CssOptions
  • added: property d.customLogger?: Logger
  • added: property d.cwd?: string
  • added: property d.define?: Record<string, string>
  • added: property d.deps?: DepsConfig
  • added: property d.devtools?: WithEnabled<DevtoolsOptions>
  • added: property d.dts?: WithEnabled<DtsOptions>
  • added: property d.entry?: TsdownInputOption
  • added: property d.env?: Record<string, any>
  • added: property d.envFile?: string
  • added: property d.envPrefix?: string | string[]
  • added: property d.exe?: WithEnabled<ExeOptions>
  • added: property d.exports?: WithEnabled<ExportsOptions>
  • added: property d.external?: ExternalOption
  • added: property d.failOnWarn?: boolean | CIOption
  • added: property d.fixedExtension?: boolean
  • added: property d.footer?: ChunkAddon
  • added: property d.format?: Format | Format[] | Partial<Record<Format, Partial<ResolvedConfig>>>
  • added: property d.fromVite?: boolean | 'vitest'
  • added: property d.globImport?: boolean
  • added: property d.globalName?: string
  • added: property d.hash?: boolean
  • added: property d.hooks?: Partial<TsdownHooks> | ((hooks: Hookable<TsdownHooks>) => Awaitable<void>)
  • added: property d.ignoreWatch?: Arrayable<string | RegExp>
  • added: property d.injectStyle?: boolean
  • added: property d.inlineOnly?: Arrayable<string | RegExp> | false
  • added: property d.inputOptions?: InputOptions | ((options: InputOptions, format: NormalizedFormat, context: { cjsDts: boolean }) => Awaitable<InputOptions | void | null>)
  • added: property d.loader?: ModuleTypes
  • added: property d.logLevel?: LogLevel
  • added: property d.minify?: boolean | 'dce-only' | MinifyOptions
  • added: property d.name?: string
  • added: property d.noExternal?: Arrayable<string | RegExp> | NoExternalFn
  • added: property d.nodeProtocol?: 'strip' | boolean
  • added: property d.onSuccess?: string | ((config: ResolvedConfig, signal: AbortSignal) => void | Promise<void>)
  • added: property d.outDir?: string
  • added: property d.outExtensions?: OutExtensionFactory
  • added: property d.outputOptions?: OutputOptions | ((options: OutputOptions, format: NormalizedFormat, context: { cjsDts: boolean }) => Awaitable<OutputOptions | void | null>)
  • added: property d.platform?: 'node' | 'neutral' | 'browser'
  • added: property d.plugins?: TsdownPluginOption
  • added: property d.publicDir?: CopyOptions | CopyOptionsFn
  • added: property d.publint?: WithEnabled<PublintOptions>
  • added: property d.removeNodeProtocol?: boolean
  • added: property d.report?: WithEnabled<ReportOptions>
  • added: property d.root?: string
  • added: property d.shims?: boolean
  • added: property d.skipNodeModulesBundle?: boolean
  • added: property d.sourcemap?: Sourcemap
  • added: property d.target?: string | string[] | false
  • added: property d.treeshake?: boolean | TreeshakingOptions
  • added: property d.tsconfig?: string | boolean
  • added: property d.unbundle?: boolean
  • added: property d.unused?: WithEnabled<UnusedOptions>
  • added: property d.watch?: boolean | Arrayable<string>
  • added: property d.workspace?: Workspace | Arrayable<string> | true
  • added: property d.write?: boolean
  • added: property g.brotli?: boolean
  • added: property g.gzip?: boolean
  • added: property g.maxCompressSize?: number
  • added: property h.config?: boolean | string
  • added: property h.exclude?: Arrayable<string>
  • added: property h.include?: Arrayable<string> | 'auto'
  • added: property i.config?: boolean | string
  • added: property i.configLoader?: 'auto' | 'native' | 'unrun'
  • added: property i.filter?: RegExp | Arrayable<string>
  • added: property j.hooks: Hookable<TsdownHooks>
  • added: property j.options: ResolvedConfig
  • added: property k.packageJsonPath: string
  • added: property n.cjsReexport?: boolean
  • added: property v.tsdownConfig?: (config: UserConfig, inlineConfig: InlineConfig) => Awaitable<UserConfig | void | null>
  • added: property v.tsdownConfigResolved?: (resolvedConfig: ResolvedConfig) => Awaitable<void>
  • added: property x.all?: boolean
  • added: property x.bin?: boolean | string | Record<string, string>
  • added: property x.customExports?: Record<string, any> | ((exports: Record<string, any>, context: { pkg: PackageJson; chunks: ChunksByFormat; isPublish: boolean }) => Awaitable<Record<string, any>>)
  • added: property x.devExports?: boolean | string
  • added: property x.exclude?: (RegExp | string)[]
  • added: property x.extensions?: boolean
  • added: property x.inlinedDependencies?: boolean
  • added: property x.legacy?: boolean
  • added: property x.packageJson?: boolean
  • added: type A = 'module' | 'commonjs' | undefined
  • added: type C = ChunkAddonObject | ChunkAddonFunction | string
  • added: type D = (context: OutExtensionContext) => OutExtensionObject | undefined
  • added: type G = (options: ResolvedConfig) => Awaitable<CopyOptions>
  • added: type V = (OutputChunk | OutputAsset) & { outDir: string }
  • added: type W = Arrayable<string | CopyEntry>
  • added: type a = InternalModuleFormat
  • added: type f = Awaitable<Arrayable<UserConfig> | UserConfigFn>
  • added: type l = Arrayable<string | Record<string, Arrayable<string>>>
  • added: type m<T> = boolean | undefined | CIOption | (T & { enabled?: boolean | CIOption })
  • added: type o = Overwrite<MarkPartial<Omit<UserConfig, 'workspace' | 'fromVite' | 'publicDir' | 'bundle' | 'injectStyle' | 'removeNodeProtocol' | 'external' | 'noExternal' | '…
  • added: type p = (inlineConfig: InlineConfig, context: { ci: boolean; rootConfig?: UserConfig }) => Awaitable<Arrayable<UserConfig>>
  • added: type r = ModuleFormat
  • added: type s = boolean | 'inline' | 'hidden'
  • added: type t = 'ci-only' | 'local-only'
  • added: type w = (ctx: { format: Format; fileName: string }) => ChunkAddonObject | string | undefined
  • added: type y<A = any> = Awaitable<TsdownPlugin<A> | RolldownPlugin<A> | { name: string } | undefined | null | void | false | TsdownPluginOption<A>[]>
  • added: type z = (id: string, importer: string | undefined) => boolean | null | undefined | void