import { BasicGraph } from '../../structs/BasicGraph'; import { GeomNode } from '../core/geomNode'; import { LayerEdge } from './layerEdge'; import { PolyIntEdge } from './polyIntEdge'; export declare class ProperLayeredGraph { BaseGraph: BasicGraph; virtualNodesToInEdges: LayerEdge[]; virtualNodesToOutEdges: LayerEdge[]; totalNumberOfNodes: number; firstVirtualNode: number; constructor(intGraph: BasicGraph); Initialize(intGraph: BasicGraph): void; edges_(): IterableIterator; get Edges(): IterableIterator; InEdges(node: number): IterableIterator; static LastEdge(e: PolyIntEdge): LayerEdge; InEdgeOfVirtualNode(node: number): LayerEdge; OutEdges(node: number): IterableIterator; OutDegreeIsMoreThanOne(node: number): boolean; InDegreeIsMoreThanOne(node: number): boolean; OutEdgeOfVirtualNode(node: number): LayerEdge; static FirstEdge(e: PolyIntEdge): LayerEdge; InEdgesCount(node: number): number; RealInEdgesCount(node: number): number; OutEdgesCount(node: number): number; RealOutEdgesCount(node: number): number; get NodeCount(): number; IsRealNode(node: number): boolean; IsVirtualNode(node: number): boolean; ReversedClone(): ProperLayeredGraph; CreateReversedEdges(): PolyIntEdge[]; Succ(node: number): IterableIterator; Pred(node: number): IterableIterator; }