/** * 存储配置管理器 * 负责加载、验证和管理存储配置,支持从文件加载配置 */ import { StorageConfig } from '../interfaces/StorageAdapter'; /** * 配置文件接口 */ export interface StorageConfigFile { /** * 默认存储配置 */ default: StorageConfig; /** * 命名存储配置集合 */ namedConfigs?: Record; /** * 插件配置 */ plugins?: { /** * 插件目录路径 */ directory?: string; /** * 预加载的插件列表 */ preload?: string[]; }; } /** * 存储配置管理器类 */ export declare class StorageConfigManager { private static configCache; private static defaultConfig; /** * 从配置文件加载存储配置 * @param configPath 配置文件路径 * @returns 配置文件内容 */ static loadConfigFile(configPath: string): StorageConfigFile; /** * 获取默认存储配置 * @returns 默认存储配置 */ static getDefaultConfig(): StorageConfig; /** * 根据名称获取命名存储配置 * @param name 配置名称 * @returns 存储配置或默认配置 */ static getConfig(name?: string): StorageConfig; /** * 注册命名存储配置 * @param name 配置名称 * @param config 存储配置 */ static registerConfig(name: string, config: StorageConfig): void; /** * 设置默认存储配置 * @param config 存储配置 */ static setDefaultConfig(config: StorageConfig): void; /** * 验证存储配置的有效性 * @param config 存储配置 * @throws Error 配置无效时抛出错误 */ static validateConfig(config: StorageConfig): void; /** * 获取所有已注册的命名配置名称 * @returns 配置名称数组 */ static getRegisteredConfigNames(): string[]; /** * 清除命名配置缓存 */ static clearConfigCache(): void; /** * 创建默认配置文件 * @param filePath 目标文件路径 */ static createDefaultConfigFile(filePath: string): void; }