import { Board } from "../../../DatabaseServices/Entity/Board";
import { TemplateRecord } from "../../../DatabaseServices/Template/TemplateRecord";
import { ISpaceParse } from "../../../Geometry/SpaceParse/ISpaceParse";
import { BoardProcessOption } from "../../../UI/Store/BoardInterface";
import { IDoorConfigOption, IDoorInfo } from "../../../UI/Store/DoorInterface";
import { Entity } from './../../../DatabaseServices/Entity/Entity';
import { DoorStore } from "../../../UI/Store/DoorDrawerStore/DoorStore";
export declare class DrawDoorTool {
    private store;
    protected spaceParse: ISpaceParse;
    /**id模板对应表*/
    protected _idTempMap: Map<string, TemplateRecord>;
    protected colWidths: (number | string)[];
    protected rowHeighs: (number | string)[];
    protected isDrawVerBrS: boolean[];
    protected isDrawLayBrS: boolean[];
    protected surroundOption: BoardProcessOption;
    /** 每个格子的信息Map*/
    protected rowColIdMap: Map<string, IDoorInfo>;
    private hingeSet;
    protected option: IDoorConfigOption;
    protected doorInfos: IDoorInfo[];
    private currentHandleProps;
    constructor(store: DoorStore, spaceParse: ISpaceParse);
    private GetHeightExpr;
    protected Init(): Promise<void>;
    Draw(): Promise<void>;
    protected AppendTemplateParam(name: string, value: number, des: string, temp: TemplateRecord, expr?: string): void;
    protected GetRootTemplate(): TemplateRecord;
    private GetPositionSpace;
    protected GetHandleTemp(info: IDoorInfo, doorTemp: TemplateRecord): void;
    protected GetHingeTemp(info: IDoorInfo, door: TemplateRecord): void;
    protected RelativeMetalsToBoard(allEntitys: Entity[]): boolean;
    private SetHingeType;
    getSpaceAllBoards(): Board[];
    protected GetDoorTemp(info: IDoorInfo): TemplateRecord;
    protected SetOpenDir(doorsTemp: TemplateRecord, info: IDoorInfo): void;
    private GetBoardOpenDir;
}
//# sourceMappingURL=DrawDoorDrawerTool.d.ts.map