/** * 配置值读取器的核心实现类. * * 负责从不同来源(URL参数、全局变量)读取配置值, * 并处理配置项之间的依赖关系和值转换。 * * @packageDocumentation * @author yusangeng@outlook.com */ import { type HasOnlyStringKey, type KonphOptions, type KonphGlobal } from "./types"; /** * 配置值读取器. * * @class Reader * @private */ export default class Reader> { /** * 全局配置存储 * @private */ private globalConf_; /** * URL参数解析后的配置存储 * @private */ private urlConf_; /** * 配置项定义 * @private */ private options_; /** * 配置值缓存 * @private */ private cache_; /** * fit函数的执行上下文 * @private */ private fitContext_; /** * 构造函数. * * @param {KonphGlobal} globalConf 全局配置变量. * @param {string} url url字符串. * @param {KonphOptions} options 配置项读取设置. * * @memberof Reader */ constructor(globalConf: KonphGlobal, url: string, options: KonphOptions); /** * 读取配置项. * * @param {string} key 配置项名称(不区分大小写),两边的空格会被trim掉. * @returns {any} 配置项的值. * * @memberof Reader * @instance */ item(key: K): T[K]; }