import { Point } from '../..'; import { RBTree } from '../../math/RBTree/rbTree'; import { Polygon } from './Polygon'; import { VisibilityGraph } from './VisibilityGraph'; import { Algorithm } from '../../utils/algorithm'; import { Diagonal } from './Diagonal'; import { Tangent } from './Tangent'; import { ActiveDiagonalComparerWithRay } from './ActiveDiagonalComparerWithRay'; export declare class InteractiveTangentVisibilityGraphCalculator extends Algorithm { polygons: Array; addedPolygons: Array; visibilityGraph: VisibilityGraph; diagonals: Array; tangents: Array; activeDiagonalTree: RBTree; currentPolygon: Polygon; activeDiagonalComparer: ActiveDiagonalComparerWithRay; useLeftPTangents: boolean; run(): void; CalculateAndAddEdges(): void; private CalculateVisibleTangentsFromPolygon; private AllocateDataStructures; private Sweep; private AddVisibleEdge; private InitActiveDiagonals; private RemoveDiagonalFromActiveNodes; private InsertActiveDiagonal; private static MarkDiagonalAsActiveInTangents; static RayIntersectDiagonal(pivot: Point, pointOnRay: Point, diagonal: Diagonal): boolean; static TangentComparison(e0: Tangent, e1: Tangent): number; AllObstacles(): IterableIterator; private OrganizeTangents; private ProcessPolygonQ; constructor(holes: Array, addedPolygons: Array, visibilityGraph: VisibilityGraph); }