import { FcrBoardActiveInfo, FcrBoardMainWindow } from '../whiteboard-control/types';
import { AgoraRteEngine, AgoraRteScene } from '../../imports';
import { FcrCoreServiceApi } from '../../service/api';
import { FcrConnectionState } from '../../type';
import { FcrSharedCache } from '../shared-cache';
import { FcrWhiteboardControl, FcrWhiteboardObserver } from './whiteboard-control/type';
export declare class FcrWhiteboardControlImpl implements FcrWhiteboardControl {
    private _scene;
    private _api;
    private _engine;
    private _sharedCache;
    protected logger: import("agora-foundation/lib/logger").Logger;
    private _boardView;
    private _boardRoom;
    private _observable;
    private _connectState;
    private _needRetry;
    private _FORGE_WHITEBOARD_APP_ID;
    private _roomCache;
    constructor(_scene: AgoraRteScene, _api: FcrCoreServiceApi, _engine: AgoraRteEngine, _sharedCache: FcrSharedCache);
    open(): Promise<FcrBoardMainWindow>;
    close(): Promise<void>;
    active(): Promise<void>;
    inactive(): Promise<void>;
    getConnectionState(): FcrConnectionState;
    getMainWindow(): FcrBoardMainWindow | undefined;
    getBoardActiveInfo(): FcrBoardActiveInfo;
    setBackgroundColor(backgroundColor: string): Promise<void>;
    getBackgroundColor(): string | undefined;
    getActivity(): boolean;
    getOwnerId(): string;
    addObserver(observer: FcrWhiteboardObserver): void;
    removeObserver(observer: FcrWhiteboardObserver): void;
    private _notifyObservers;
    private _updateConnnectionState;
    private _getToken;
    private _addLogObserver;
}
