/** * define env types */ type ViteBuildEnv = 'dev' | 'prod' | 'lib'; type ViteCommand = 'build' | 'serve'; type ViteRouteType = 'web' | 'hash'; type ViteProxyOption = [string, string]; type ViteUseCompressType = 'gzip' | 'brotli' | 'none'; /** * define vite env: import.meta.evn * VITE_BUILD_ENV: 当前环境类型 * VITE_COMMAND: 正在运行的指令 * VITE_SYSTEM_CODE: 系统唯一码 * VITE_BASE_URL: 所有请求的前缀路径 * VITE_PUBLIC_PATH: 静态资源地址 * VITE_APP_NAME: 应用名称 VITE_APP_SHORT_NAME: 应用名称缩写; * VITE_APP_TITLE: 应用标题 * VITE_APP_DESC: 应用描述 * VITE_ROUTE_TYPE: 路由类型 * VITE_ROUTE_HOME_PATH: 默认路由地址 * VITE_ROUTE_HOME_NAME: 默认路由名称 * VITE_ROUTE_HOME_REDIRECT: 默认跳转路由 * VITE_ICON_PREFIX: ICON前缀 * VITE_ICON_LOCAL_PREFIX: 本地ICON前缀 * VITE_SERVER_PORT: 服务端口 * VITE_USE_HTTPS: 是否开启Https * VITE_USE_PROXY: 是否使用代理 * VITE_USE_PROXY_OPTIONS: 使用代理的设置 * VITE_USE_PWA: 是否使用PWA * VITE_USE_MOCK: 是否使用MOCK * VITE_USE_COMPRESS: 是否压缩 * VITE_USE_COMPRESS: 压缩类型 * VITE_USE_COMPRESS_DELETE_ORIGIN: 压缩是否删除源文件 * VITE_USE_LEGACY: 是否LEGACY * VITE_USE_VISUALIZER: 是否显示体积 * VITE_DROP_CONSOLE: 是否删除CONSOLE */ interface ImportMetaEnv { readonly VITE_BUILD_ENV: ViteBuildEnv; readonly VITE_COMMAND: ViteCommand; readonly VITE_SYSTEM_CODE: string; readonly VITE_BASE_URL: string; readonly VITE_PUBLIC_PATH: string; readonly VITE_APP_NAME: string; readonly VITE_APP_SHORT_NAME: string; readonly VITE_APP_TITLE: string; readonly VITE_APP_DESC: string; readonly VITE_ROUTE_TYPE: ViteRouteType; readonly VITE_ROUTE_HOME_PATH: string; readonly VITE_ROUTE_HOME_NAME: string; readonly VITE_ROUTE_HOME_REDIRECT: string; readonly VITE_ICON_PREFIX: string; readonly VITE_ICON_LOCAL_PREFIX: string; readonly VITE_SERVER_PORT: number; readonly VITE_USE_HTTPS: boolean; readonly VITE_USE_PROXY: boolean; readonly VITE_USE_PROXY_OPTIONS: Array; readonly VITE_USE_PWA: boolean; readonly VITE_USE_MOCK: boolean; readonly VITE_USE_COMPRESS: boolean; readonly VITE_USE_COMPRESS_TYPE: ViteUseCompressType; readonly VITE_USE_COMPRESS_DELETE_ORIGIN: boolean; readonly VITE_USE_LEGACY: boolean; readonly VITE_USE_VISUALIZER: boolean; readonly VITE_DROP_CONSOLE: boolean; } /** * define import.meta */ interface ImportMeta { readonly env: ImportMetaEnv; }