import { FcrBoardToolType } from '../whiteboard-control/enums';
import { Color, FcrBoardMainWindow, FcrBoardPageInfo, FcrBoardWindowObserver } from '../whiteboard-control/types';
import { Whiteboard } from '@netless/forge-whiteboard';
import type { AgoraRteScene } from '../../imports';
export declare class FcrBoardMainWindowImpl implements FcrBoardMainWindow {
    protected logger: import("agora-foundation/lib/logger").Logger;
    private _whiteboard;
    private _observable;
    private _boardView;
    private _currentPage;
    constructor(whiteboard: Whiteboard, scene: AgoraRteScene);
    addPage(): Promise<void>;
    removePage(): Promise<void>;
    undo(): Promise<void>;
    redo(): Promise<void>;
    clean(): Promise<void>;
    getSnapshotImage(): Promise<ImageData>;
    setBackgroundColor(color: string): Promise<void>;
    getPageInfo(): FcrBoardPageInfo;
    prevPage(): Promise<void>;
    nextPage(): Promise<void>;
    setToolType(type: FcrBoardToolType): Promise<void>;
    setStrokeWidth(strokeWidth: number): Promise<void>;
    setStrokeColor(color: Color): Promise<void>;
    setTextColor(color: Color): Promise<void>;
    setTextSize(textSize: number): Promise<void>;
    insertImage(resourceUrl: string, x: number, y: number, width: number, height: number): Promise<void>;
    getContentView(): HTMLElement;
    setContainerSizeRatio(ratio: number): Promise<void>;
    addObserver(observer: FcrBoardWindowObserver): void;
    removeObserver(observer: FcrBoardWindowObserver): void;
    private _addWindowManagerEventListeners;
    private _isBoardWritePermission;
    private _addLogObserver;
}
