import { Matrix4 } from "three";
import { Board } from "../../DatabaseServices/Entity/Board";
import { Polyline } from "../../DatabaseServices/Entity/Polyline";
import { TemplateRecord } from "../../DatabaseServices/Template/TemplateRecord";
import { Command } from "../../Editor/CommandMachine";
import { Rec2BrStore } from "./Rec2BrStore";
export declare class Polyline2Board implements Command {
    store: Rec2BrStore;
    SpaceOCS: Matrix4;
    SpaceOCSInv: Matrix4;
    exec(): Promise<void>;
    boardThick: number;
    boardDepth: number;
    fontDis: number;
    knifeRadius: number;
    grooveLength: number;
    grooveDepth: number;
    grooveWidth: number;
    backLeftExtend: number;
    backRightExtend: number;
    backTopExtend: number;
    backDownExtend: number;
    backBoardThick: number;
    moveBackLen: number;
    moveBackWidth: number;
    backBoardMoveDis: number;
    backIsTemplate: boolean;
    backTemplate: TemplateRecord;
    isUseBoardNameToAttr: boolean;
    isMultiBackCab: boolean;
    maxThickness: number;
    backBrName: string;
    behindIsRelative: boolean;
    footThickness: number;
    InitData(store: Rec2BrStore): void;
    Doit(pls: Polyline[]): Promise<void>;
    DrawBoard(pls: Polyline[], isBack?: boolean, color?: number): Board[];
    IsPolyLineContain(pl1: Polyline, pl2: Polyline): boolean;
    private IsBackBoard;
    private IsFaceBoard;
    private ParsePolyline;
}
//# sourceMappingURL=Polyline2Board.d.ts.map