plumjs-config
Version:
A powerful Node.js configuration management library with YAML support and dynamic configuration loading
53 lines • 1.09 kB
TypeScript
/**
* Configuration source type
*/
export declare enum ConfigSource {
FILE = "file",
NACOS = "nacos",
ENVIRONMENT = "environment"
}
/**
* Configuration interface for type safety
*/
export interface ConfigData {
[key: string]: any;
}
/**
* Nacos configuration options
*/
export interface NacosConfig {
serverAddr: string;
namespace?: string;
username?: string;
password?: string;
shareConfigs?: Array<{
dataId: string;
group: string;
refresh?: boolean;
}>;
}
/**
* Configuration loader options
*/
export interface ConfigLoaderOptions {
configDir?: string;
enableNacos?: boolean;
nacosConfig?: NacosConfig;
enableEnvironmentVariables?: boolean;
filePatterns?: string[];
}
/**
* Configuration change event
*/
export interface ConfigChangeEvent {
source: ConfigSource;
path?: string;
oldValue: any;
newValue: any;
timestamp: Date;
}
/**
* Configuration listener callback
*/
export type ConfigChangeListener = (_event: ConfigChangeEvent) => void;
//# sourceMappingURL=types.d.ts.map