@kevin-infra/core
Version:
Core library for managing configuration and data in your application, for multiple environments.
28 lines (27 loc) • 1.33 kB
TypeScript
import { type IEnvironmentMetaData, type IEnvironmentInformation, type IKevinManager, type IKevinValue, type IProvider } from '../interfaces';
export declare class KevinService implements IKevinManager {
private readonly provider;
private readonly delimiter;
private envInfo;
private readonly internalEnvironmentsPrefix;
private readonly keysDelimiter;
private readonly keysPrefix;
constructor(provider: IProvider, info?: IEnvironmentInformation);
createRootEnvironment(): Promise<IEnvironmentInformation>;
getEnvironments(): Promise<IEnvironmentMetaData[]>;
setCurrentEnvironment(environmentId: string): Promise<IEnvironmentInformation>;
private buildEnvironmentData;
getValue(key: string): Promise<IKevinValue>;
setValue(key: string, value: string): Promise<void>;
getEnvironmentData(): Promise<IKevinValue[]>;
createEnvironment(environmentName: string, parentEnvironmentId?: string): Promise<IEnvironmentMetaData>;
addKey(key: string, value: string, defaultValue?: string): Promise<void>;
deleteKey(key: string): Promise<void>;
private getFullEnvironmentKey;
private cleanName;
private getFullKey;
private getFullKeyByEnvironmentId;
private getEnvironmentMetaData;
private parseEnvironmentMetadata;
private verifyEnvironmentIsSet;
}