UNPKG

takin

Version:

Front end engineering base toolchain and scaffold

71 lines (70 loc) 2.02 kB
import dotenv from 'dotenv'; export declare type EnvironmentOptions = dotenv.DotenvConfigOptions & { /** * false 值配置,用于判断哪些值等同于 false,默认为 ['', 'none', 'false', '0', 'undefined', 'null'] */ falsyValues?: string[]; /** * 数组分隔符,用于将特定环境变量分割为字符串数组,默认为 [',', ' '] */ arraySeparators?: string[]; }; /** * 环境变量支持,用于统一环境变量的获取、解析和值判断 */ export declare class Environment { options: EnvironmentOptions; private parsedEnv; /** * 是否已开启 env 支持 */ private enabled; /** * 开启 env 支持 */ enable(): this; /** * 关闭 env 支持 */ disable(): this; /** * 载入 .env 文件 */ load(): this; /** * 是否包含某个环境变量 * @param name - 环境变量名称 * @returns 是否包含环境变量 */ has(name: string): boolean; /** * 获取环境变量的值 * @param name - 环境变量名称 * @returns 环境变量的值 */ get(name: string): string; /** * 判断环境变量是否为 false,基于 falsyValues 配置 * @param name - 环境变量名称 * @returns 返回 `true` 或 `false` */ isFalsy(name: string): boolean; /** * 判断环境变量是否为 true,基于 falsyValues 配置,当环境变量未配置时为 false * @param name - 环境变量名称 * @returns 返回 `true` 或 `false` */ isTruthy(name: string): boolean; /** * 将环境变量的值解析为数组并返回,基于 arraySeparators 配置 * @param name - 环境变量名称 * @returns 解析后的数组 */ array(name: string): string[]; /** * 将值解析为数组,基于 arraySeparators 配置 * @param value - 需要解析的值 * @returns 解析后的数组 */ arrayify(value?: string): string[]; }