import { Point } from '../../..';
import { PointLocation } from '../../../math/geometry';
import { CdtEdge } from '../../ConstrainedDelaunayTriangulation/CdtEdge';
import { CdtSite } from '../../ConstrainedDelaunayTriangulation/CdtSite';
import { CdtTriangle } from '../../ConstrainedDelaunayTriangulation/CdtTriangle';
export declare class CdtThreader {
    start: Point;
    end: Point;
    positiveSign: number;
    negativeSign: number;
    currentPiercedEdge: CdtEdge;
    get CurrentPiercedEdge(): CdtEdge;
    currentTriangle: CdtTriangle;
    get CurrentTriangle(): CdtTriangle;
    constructor(startTriangle: CdtTriangle, start: Point, end: Point);
    Triangles(): IterableIterator<CdtTriangle>;
    FindFirstPiercedEdge(): CdtEdge;
    static PointLocationForTriangle(p: Point, triangle: CdtTriangle): PointLocation;
    FindNextPierced(): void;
    GetHyperplaneSign(cdtSite: CdtSite): number;
    MoveNext(): boolean;
}
