///
import { EventEmitter } from 'events';
import Configs from './configs';
import { EnvReader } from './env-reader';
import { IApolloConfig } from './interface/IApolloConfig';
import { IApolloRequestConfig } from './interface/IApolloRequestConfig';
import { IApolloReponseConfigData } from './interface/IApolloReponseConfigData';
import { ApolloEvent } from './type/Event';
import { OpenApi } from './OpenApi';
export default class Apollo extends EventEmitter {
logger: any;
private _config_server_url;
private _app_id;
private _secret;
private _cluster_name;
private _namespace_name;
private _release_key;
private _ip;
private _watch;
private _set_env_file;
private _init_on_start;
private _env_file_path;
private _env_file_type;
private _token;
private _portal_address;
private _envReader;
private _delay;
private _timeout;
private _apollo_env;
private _configs;
private _notifications;
private _openApi;
constructor(config: IApolloConfig, logger?: any);
get openApi(): OpenApi;
get token(): string;
get portal_address(): string;
get config_server_url(): string;
get app_id(): string;
get secret(): string;
get cluster_name(): string;
get namespace_name(): string;
get release_key(): string;
get ip(): string;
get watch(): boolean;
get env_file_path(): string;
get env_file_type(): string;
get set_env_file(): boolean;
get init_on_start(): boolean;
get configs(): Configs;
get apollo_env(): {
[x: string]: string;
};
get notifications(): {
[x: string]: number;
};
get delay(): number;
set delay(delay: number);
get timeout(): number;
get envReader(): EnvReader;
on(event: ApolloEvent, listener: (config: IApolloReponseConfigData) => void): this;
emit(event: ApolloEvent, ...args: any[]): boolean;
private signature;
/**
* get namespace configs
* @param namespace
*/
getNamespace(namespace: string): import("./namespaceConfigs").default;
/**
* get All configs
*/
getAll(): {
[x: string]: import("./namespaceConfigs").default;
};
/**
* Init configs by a sync http request
* @param config
*/
init(config?: IApolloRequestConfig): void;
/**
* @description 复写配置项信息
* @author tunan
* @param {string} key
* @param {string} value
* @memberof Apollo
*/
setConfig(key: string, value: string): void;
remoteConfigServiceFromCache(config?: IApolloRequestConfig): Promise;
remoteConfigServiceSkipCache(config?: IApolloRequestConfig): Promise;
startNotification(config?: IApolloRequestConfig): Promise;
remoteConfigFromServiceLongPolling(config?: IApolloRequestConfig): Promise;
get(key: string): string | undefined;
getString(key: string): string;
getNumber(key: string): number;
getBoolean(key: string): boolean;
getJSON(key: string): any;
getDate(key: string): Date;
setEnv(data: IApolloReponseConfigData): void;
protected saveEnvFile(data: IApolloReponseConfigData): void;
protected readFromEnvFile(envPath?: string): void;
protected checkEnvPath(envPath?: string): string;
private _setDelay;
}