import { PluginOption } from "vite"; import { AliasOpt } from "../plugin/alias"; import { AutoHooksFinalConfiguration } from "../plugin/autoHooks"; import { BrowserSyncOpt } from "../plugin/browserSync"; import { vitePluginMetaOpt } from "../plugin/meta"; import { PwaOpt } from "../plugin/pwa"; import { sassDtsOpt } from "../plugin/sassDts"; import { UnPluginVueComponentsOptions } from "../plugin/unpluginVueComponents"; import { PluginVisualizerOptions } from "../plugin/visualizer"; import { logEnvPluginOptions } from "../plugin/viteMsg"; import { requireContextOptions } from "../plugin/requireContext"; import { envSwitchPluginPluginConfig } from "../plugin/envSwitch"; import { viteImageOptimizerOption } from "../plugin/imageOptimizer"; export interface PluginTypes { config: T | undefined; readConfiguration(res?: T): this; getPlugin(): PluginOption; } export declare class PlugInContainer { private plugInContainerList; /** * * 优化图片资源配置 * * 手动安装 sharp 或者 svgo * * @see https://github.com/FatehAK/vite-plugin-image-optimizer * * @public * */ addImageOptimizer(opt: viteImageOptimizerOption): this; /** * * 配置 require.context 插件 * * @see https://github.com/originjs/vite-plugins/tree/main/packages/vite-plugin-require-context * * @public */ addRequireContext(opt: requireContextOptions): this; /** * * 不用停止服务也可切换环境 * * @see https://github.com/PengBoUESTC/vite-plugin-env-switch * * @public */ addEnvSwitch(opt: Partial): this; addHTMLMeta(opt?: Partial): this; /** * * 在终端将 {@link logEnvPluginOptions['strGetter']} 参数的返回值打印出来 可用于一些提示类功能 (env) * * @returns * */ addLogEnvPlugin(opt?: logEnvPluginOptions): this; /** * * 新增 自动带入组件插件 * * @remarks * - 可自动带入element plus配置组件 填充 [`elementPlusResolverOptions`](https://element-plus.org/zh-CN/guide/quickstart.html#%E6%8C%89%E9%9C%80%E5%AF%BC%E5%85%A5) 属性 * * @see https://github.com/unplugin/unplugin-vue-components * * @public * */ addUnPluginVueComponents(opt?: UnPluginVueComponentsOptions): this; /** * auto import APIs on-demand for Vite, Webpack, Rollup and esbuild. With TypeScript support. Powered by unplugin. * * * @param { AutoHooksFinalConfiguration } opt {@link AutoHooksFinalConfiguration} * @remarks * * @see https://www.npmjs.com/package/unplugin-auto-import */ addAutoHooks(opt?: AutoHooksFinalConfiguration): this; /** * @description add alias * @returns */ addAlias(opt?: AliasOpt): this; /** * @description add BrowserSync in your Vite project. * @see https://browsersync.io/ */ addBrowserSync(opt?: BrowserSyncOpt): this; /** * @description zero-config PWA Framework-agnostic Plugin for Vite * @see https://www.npmjs.com/package/vite-plugin-pwa * @returns */ addPwa(opt?: PwaOpt): Omit; /** * @description visuallize your bundle * @see https://github.com/btd/rollup-plugin-visualizer */ addRollupPluginVisualizer(opt?: Partial): this; /** * @description a plugin that automatically creates a type file when using the CSS module type-safely. * @see https://www.npmjs.com/package/vite-plugin-sass-dts * @returns */ addSassDts(opt?: sassDtsOpt): Omit; protected injectPlugin(pluginModule: PluginTypes, res: any): void; getPlugInContainerList(): PluginOption[]; }