import { GMLRender, NodeManager } from "../../application";
import { AuxiliaryManager } from "../../auxiliary";
import { GraphicNode } from "../../graphics";
import { IRectNode, RectNode } from "../../common";
import { SlotManager } from "../../slot";
import { ZoomWorker } from "./zoom/ZoomWorker";
import { ExportWorker } from "./export/ExportWorker";
import { IPoint } from "../../idl";
import { AbsDrawMode } from "@/action/render/drawMode/AbsDrawMode";
import { DocState } from "@/app";
export declare class RenderManager {
    gmlRender: GMLRender;
    nodeManager: NodeManager;
    auxiliaryManager: AuxiliaryManager;
    slotManager: SlotManager;
    zoomWorker: ZoomWorker;
    exportWorker: ExportWorker;
    drawModes: AbsDrawMode[];
    private working;
    contentDraw: boolean;
    auxiliaryDraw: boolean;
    /**
     * 聚焦节点信息，如果有聚焦节点会改变视图的渲染内容，只会绘制该聚焦节点以及其子节点
     */
    focusId: string;
    /**
     * 文档状态
     */
    docState: DocState;
    constructor(gmlRender: GMLRender, nodeManager: NodeManager, auxiliaryManager: AuxiliaryManager, slotManager: SlotManager, docState: DocState);
    getScale(): number;
    zoomScale(scale: number, globalPoint: IPoint): void;
    zoomToFit(): void;
    zoomToSelect(): void;
    zoomTo100(): void;
    exportOfflineCanvas(rectNode: IRectNode, resolution: number, bgColor: string): HTMLCanvasElement;
    /**
     * 根据过滤节点导出离线canvas，只有在过滤节点以及与过滤节点内的节点会被导出
     * @param rectNode
     * @param resolution
     * @param bgColor
     * @param filterNodes
     * @returns
     */
    exportOfflineCanvasByFilterNodes(rectNode: IRectNode, resolution: number, bgColor: string, filterNodes: Set<GraphicNode>): HTMLCanvasElement;
    exportNodesImg(ids: string[], resolution: number, bgColor?: string): HTMLCanvasElement;
    scroll(dx: number, dy: number): void;
    start(): void;
    stop(): void;
    addAuxiliaryDrawTask(): void;
    addContentRenderTask(): void;
    dirtyDraw(bounds: RectNode): void;
    tickerRun: () => void;
    private scrollTo;
    private judgeFocusNode;
}
//# sourceMappingURL=RenderManager.d.ts.map