/** * Vault 配置服务 * 提供运行时动态访问 Vault 配置的能力 * 用于读取敏感配置而不缓存到 process.env */ export declare class VaultConfigService { private readonly logger; private vaultClient; constructor(); /** * 检查 Vault 是否可用 */ isAvailable(): boolean; /** * 运行时动态读取 Vault 配置 * @param path Vault 配置路径 * @param key 可选,指定要读取的配置键,不指定则返回整个配置对象 * @returns 配置值 * * @example * // 读取整个配置对象 * const config = await vaultConfigService.getSecret('secret/data/app/config'); * * // 读取指定键 * const apiKey = await vaultConfigService.getSecret('secret/data/app/config', 'API_KEY'); */ getSecret(path: string, key?: string): Promise; /** * 写入配置到 Vault(需要相应权限) * @param path Vault 配置路径 * @param data 配置数据 * * @example * await vaultConfigService.setSecret('secret/data/app/config', { * API_KEY: 'new-key', * DB_PASSWORD: 'new-password', * }); */ setSecret(path: string, data: Record): Promise; /** * 删除 Vault 中的配置(需要相应权限) * @param path Vault 配置路径 */ deleteSecret(path: string): Promise; /** * 列出指定路径下的所有配置键 * @param path Vault 配置路径 * @returns 配置键列表 */ listSecrets(path: string): Promise; /** * 检查 Vault 健康状态 * @returns 是否健康 */ healthCheck(): Promise; /** * 获取 Vault 状态信息 * @returns Vault 状态 */ getStatus(): Promise<{ initialized: boolean; sealed: boolean; standby: boolean; version: string; } | null>; /** * 续订 Token(对于有时限的 Token) * @param increment 续订时长(秒) */ renewToken(increment?: number): Promise; }