import { Vector3 } from "three";
import { Board } from "../../DatabaseServices/Entity/Board";
import { ExtrudeContourCurve } from "../../DatabaseServices/Entity/Extrude";
import { Polyline } from "../../DatabaseServices/Entity/Polyline";
import { Command } from "../../Editor/CommandMachine";
export declare class LinearCutting implements Command {
    exec(): Promise<void>;
    /** 针对圆弧板的分裂处理 */
    private ProcessForSweepInSplitBoard;
    /** 根据轮廓曲线分裂板件
     * @param br 被切割的板件
     * @param cus 切割后的轮廓曲线
     * @param SweepPaths 切割后的放样路径(针对圆弧板)
     * @param contourBiases 用于修正轮廓位置的偏移值(针对圆弧板)
     */
    protected SplitBoard(br: Board, cus: ExtrudeContourCurve[], SweepPaths: Polyline[], contourBiases: {
        x: number;
        y: number;
    }[]): void;
    protected GetCuttingPoints(): Promise<Vector3[] | undefined>;
}
export declare class RectLinearCutting extends LinearCutting {
    protected GetCuttingPoints(): Promise<Vector3[] | undefined>;
}
//# sourceMappingURL=LinearCutting.d.ts.map