import type { SourceGraphEdge, SourceGraphNode } from './types.js';
export declare class SourceGraph {
    private readonly edges;
    private readonly nodes;
    replace(nodes: Iterable<SourceGraphNode>, edges: Iterable<SourceGraphEdge>): void;
    getNode(id: string): {
        scope: {
            id: string;
            kind: import("./types.js").SourceScopeKind;
        };
        id: string;
        kind: import("./types.js").SourceKind;
        content?: string | undefined;
    } | undefined;
    getNodes(): {
        scope: {
            id: string;
            kind: import("./types.js").SourceScopeKind;
        };
        id: string;
        kind: import("./types.js").SourceKind;
        content?: string | undefined;
    }[];
    getEdges(): {
        from: string;
        to: string;
        kind: import("./types.js").SourceEdgeKind;
    }[];
    getDependents(id: string): string[];
    clear(): void;
    private edgeKey;
}
