import type { Module } from "../../proto.js"; export declare const INITIAL_BLOCK_UNSET: bigint; export declare class ModuleGraph { protected readonly modules: Module[]; protected readonly nodes: Map>; /** * A cache of shortest paths between modules. */ private readonly distances; /** * A cache of topologically sorted modules. */ private readonly sorted; constructor(modules: Module[]); protected getModule(name: string): Module; protected getModule(module: Module): Module; protected getModule(nameOrModule: string | Module): Module; protected shortesPaths(name: string): Map; protected shortesPaths(module: Module): Map; protected shortesPaths(nameOrModule: string | Module): Map; protected topologicalSort(name?: string): Set; protected topologicalSort(module?: Module): Set; protected topologicalSort(nameOrModule?: string | Module): Set; ancestorsOf(name: string): Module[]; ancestorsOf(module: Module): Module[]; ancestorsOf(nameOrModule: string | Module): Module[]; parentsOf(name: string): Module[]; parentsOf(module: Module): Module[]; parentsOf(nameOrModule: string | Module): Module[]; childrenOf(name: string): Module[]; childrenOf(module: Module): Module[]; childrenOf(nameOrModule: string | Module): Module[]; sortedByGraphTopology(): Module[]; startBlockFor(name: string): bigint; startBlockFor(module: Module): bigint; startBlockFor(nameOrModule: string | Module): bigint; } export declare function createModuleNodes(modules: Module[]): Map>; export declare function createModuleGraph(modules: Module[]): ModuleGraph; //# sourceMappingURL=create-module-graph.d.ts.map