import type { Plugin } from 'vite'; interface UserOptions { deps: boolean; devDeps: boolean; except: Array; /** * Additional dependencies to externalize. * * @example * * ```ts * externalizeDeps({ * include: [ * /^unlisted-dep(?:\/.*)?$/, * ], * }) * ``` * * @default [] */ include: Array; nodeBuiltins: boolean; optionalDeps: boolean; peerDeps: boolean; useFile: string; } /** * Returns a Vite plugin to exclude dependencies from the bundle. * * @example * * ```ts * // vite.config.ts * import { defineConfig } from 'vite' * import { externalizeDeps } from 'vite-plugin-externalize-deps' * * export default defineConfig({ * plugins: [ * externalizeDeps({ * deps: true, * devDeps: false, * except: [ * // Match exact values with strings. * '@some/obscure/dependency', * // Or match patterns with regular expressions. * /^@some\/obscure(?:\/.+)?$/, * ], * include: [ * // Match exact values with strings. * '@some/obscure/dependency', * // Or match patterns with regular expressions. * /^@some\/obscure(?:\/.+)?$/, * ], * nodeBuiltins: true, * optionalDeps: true, * peerDeps: true, * useFile: join(process.cwd(), 'package.json'), * }), * ], * }) * ``` */ export declare const externalizeDeps: (options?: Partial) => Plugin; export {};