import { Point } from '../../../math/geometry/point'; import { PointMap } from '../../../utils/PointMap'; import { LayerArrays } from '../LayerArrays'; import { ProperLayeredGraph } from '../ProperLayeredGraph'; export declare class MetroMapOrdering { layerArrays: LayerArrays; nodePositions: Map; properLayeredGraph: ProperLayeredGraph; constructor(properLayeredGraph: ProperLayeredGraph, layerArrays: LayerArrays, nodePositions: Map); static UpdateLayerArrays0(properLayeredGraph: ProperLayeredGraph, layerArrays: LayerArrays, nodePositions: Map): void; static UpdateLayerArrays1(properLayeredGraph: ProperLayeredGraph, layerArrays: LayerArrays): void; static BuildInitialNodePositions(properLayeredGraph: ProperLayeredGraph, layerArrays: LayerArrays): Map; UpdateLayerArrays(): void; CreateInitialOrdering(): PointMap>; BuildOrdering(initialOrdering: PointMap>): PointMap>; BuildNodeOrdering(result: Array, inverseToOrder: Map): void; firstSucc(node: number): number; firstPred(node: number): number; Comparison(inverseToOrder: Map): (node1: number, node2: number) => number; RestoreLayerArrays(ordering: PointMap>): void; }