/// <reference types="node" />
import { EventEmitter } from 'events';
import { Provider } from '@nestjs/common';
import { NacosConfigClient } from './nacos.config.client';
import { ConfigClientOptions } from './nacos.config.interface';
export declare class ConfigStore extends EventEmitter {
    private static _config;
    get config(): Map<string, any>;
    set(key: string, value: any): void;
    get<T>(key: string, defaultValue?: T | any): any;
}
export declare class NacosConfigService {
    private readonly options;
    private configClient;
    private configStore;
    private readonly logger;
    private readonly listeners;
    constructor(options: ConfigClientOptions);
    getListeners(): {
        dataId: string;
        groupName: string;
        listener: Function;
    }[];
    getConfigStore(): ConfigStore;
    getConfigClient(): NacosConfigClient;
    clearListeners(): void;
    getConfigKey(dataId: string, groupName?: string): string;
    init(): Promise<void>;
    unSubscribe(): Promise<void>;
}
export declare function createNacosConfigService(): Provider;
