import { BoardType } from '../../DatabaseServices/Entity/BoardInterface';
import { ObjectId } from '../../DatabaseServices/ObjectId';
import { Command } from '../../Editor/CommandMachine';
import { ISpaceParse } from '../../Geometry/SpaceParse/ISpaceParse';
import { BoardModalType } from "../../UI/Components/Board/BoardModalType";
import { BehindBoardStore, LayerBoardStore, VerticalBoardStore } from '../../UI/Store/BoardStore';
export declare abstract class DrawBoardTool implements Command {
    protected drawType: BoardType;
    protected modalType: BoardModalType;
    protected store: LayerBoardStore | VerticalBoardStore | BehindBoardStore;
    protected space: ISpaceParse;
    protected IntersectSpaceEntitys: Set<ObjectId>;
    /**
     * 识别空间时记录切割的板件 空间包围盒min/max顶点 做索引
     */
    CacheSpaceEntitysMap: Map<string, Set<ObjectId>>;
    exec(): Promise<void>;
    private Callback;
    private SelectAndBuildBoard;
    private GetIntersectSpaceEntitys;
    protected buildBoard(isAppendSpace?: boolean): Promise<void>;
}
//# sourceMappingURL=DrawBoardTool.d.ts.map