import { Ray } from "three";
import { PromptDistendResult } from "../../Editor/PromptResult";
import { Box3Ext, SplitType } from "../Box";
import { ISpaceParse } from "./ISpaceParse";
/**
 * 夹层空间分析
 */
export declare class ClampSpaceParse extends ISpaceParse {
    Parse(): Promise<void>;
    /**
     * 单板延伸空间的时候的延伸距离
     */
    get SignalDist(): number;
    protected _signalDist: number;
    ParseSignalBoard(): Promise<void>;
    GetSignalDist(): Promise<PromptDistendResult>;
    SetRay(ray: Ray): void;
    SelectBoxRecord: Map<SplitType, number>;
    WrapSelectBox(splitBoxs: Box3Ext[], splitType: SplitType): Promise<Box3Ext>;
    /**
     * virtual (请重载) 当盒子空间被切割时,选择合适的空间
     * @param splitBoxs 切割后的盒子(2个)
     * @param splitType 切割类型
     * @returns box 盒子
     */
    SelectBox(splitBoxs: Box3Ext[], splitType: SplitType): Promise<Box3Ext>;
    /**
     *用单块板包围盒切割空间
     */
    private SpliteBoxsAndSelect;
}
//# sourceMappingURL=ClampSpaceParse.d.ts.map