import { EasemobChat } from '../imports';
import { FcrChatConnection, FcrChatConnectionObserver, FcrChatConnectionState } from './type';
import { FcrCoreServiceApi } from '../service/api';
import { FcrCoreEngineConfig } from '../type';
export declare class FcrChatConnectionImpl implements FcrChatConnection {
    private _config;
    private _api;
    protected logger: import("agora-foundation/lib/logger").Logger;
    private _observable;
    private _initConfig?;
    private _chatIpList?;
    private _restIpList?;
    private _conn?;
    private _connectionState;
    private _offlineListener;
    constructor(_config: FcrCoreEngineConfig, _api: FcrCoreServiceApi);
    login(): Promise<void>;
    private _addEventListeners;
    logout(): void;
    private _setConnectionState;
    getConnectionState(): FcrChatConnectionState;
    getConnectionInstance(): EasemobChat.Connection;
    addObserver(observer: FcrChatConnectionObserver): void;
    removeObserver(observer: FcrChatConnectionObserver): void;
    private _getPrivateConfig;
}
