UNPKG

@snow-tzu/type-config

Version:

Core configuration management system with Spring Boot-like features

41 lines 1.3 kB
import { ConfigSource } from './sources'; export interface ConfigManagerOptions { profile?: string; configDir?: string; envPrefix?: string; additionalSources?: ConfigSource[]; encryptionKey?: string; validateOnBind?: boolean; enablePlaceholderResolution?: boolean; } export declare class ConfigManager { private options; private config; private sources; private readonly profile; private initialized; private configInstances; private readonly encryptionHelper?; private readonly validateOnBind; private placeholderResolver; private readonly enablePlaceholderResolution; private mapBinder; constructor(options?: ConfigManagerOptions); initialize(): Promise<void>; private reload; private resolveEnvironmentVariables; get<T = any>(path: string, defaultValue?: T): T; getAll(): Record<string, any>; getProfile(): string; bind<T>(ConfigClass: new () => T): T; private validateInstanceSync; private formatValidationErrors; private isConfigurationClass; private getAllProperties; private getAllPropertiesForNestedClass; private bindNestedClass; private convertAndBindType; private deepMerge; dispose(): Promise<void>; } //# sourceMappingURL=config-manager.d.ts.map