export declare const START = 0;
export declare const END = 1;
export type Segment1d = [number, number];
export declare enum PointType {
    Right = 1,//前 坐标加大
    Left = -1
}
export declare function FindInWall(x: number, walls: Segment1d[]): Segment1d;
export declare function Segment1dUnion(segs: Segment1d[]): Segment1d[];
/**
 * 一维区间的裁剪
 * @param primitiveSegs 原始区间 例如 [0,1] [2,3]
 * @param subs 减去的区间 例如 [ [0,0.2] , [0.15,0.5] ]...
 * @returns 剩余区间 [0.5,1] [2,3]...
 */
export declare function Segment1dSubtraction2(primitiveSegs: Segment1d[], subs: Segment1d[]): Segment1d[];
/**
 * 查找最近的区间和位置
 * @export
 * @param {number} num  当前位置例如 5
 * @param {Segment1d[]} intervals 需要查找的区间例如 [[1,2],[7,9]]
 * @param {number} allIntervalsLength 实际区间长度
 * @param {number} checkOtherNum 同时检查第二个数值是否在 checkOtherIntervals 有效区间
 * @param {number} checkOtherIntervals 同时检查第二个数值是否在有效的区间
 * @param {number} minDist 移动的最小步数
 * @param {number} inceptionNum 初始移动距离 当移动距离等于初始距离时应用  大于初始距离时 要符合(dist减去inceptionNum) 是最小步数的倍数  这样可以满足排钻通孔偏移后各个排钻32倍数
 * @return {*} closestInterval  closestNum最近值 closestDist值距离 positive值 正数在左/负数右边
 */
export declare function FindClosestInterval(num: number, intervals: Segment1d[], allIntervalsLength: number, minDist?: number, checkOtherNum?: number, checkOtherIntervals?: Segment1d[], inceptionNum?: number): {
    closestInterval: Segment1d;
    closestNum: number;
    closestDist: number;
    positive: number;
};
export declare function OperInterval(oldIntervals: Segment1d[], addIntervals: Segment1d[], filter?: Segment1d[]): any[];
//# sourceMappingURL=Segment1dUtil.d.ts.map