export interface INodeWithChildren { children: InternalNodesMap; node: ValueType; } export declare type InternalNodesMap = Map>; declare class TopologicalSort { private nodes; private visitedNodes; private sortedKeysStack; constructor(nodes: Map); addNode(key: KeyType, node: ValueType): this; addNodes(nodes: Map): void; addEdge(fromKey: KeyType, toKey: KeyType): void; sort(): Map>; private exploreNode; private addInternalNode; private addMultipleInternalNodes; } export default TopologicalSort; export { TopologicalSort };