import { ContainerIoC, InstanceWrapper, Module } from "../core";
import { EnhancerMetadataCacheEntry } from "./contracts/enhancer-metadata-cache-entry";
import { OrphanedEnhancerDefinition } from "./contracts/extras";
import { Entrypoint } from "./contracts/entrypoint";
import { Node } from "./contracts/node";
export declare class GraphInspector {
    private readonly container;
    private readonly graph;
    private readonly enhancersMetadataCache;
    constructor(container: ContainerIoC);
    inspectModules(modules?: Map<string, Module>): void;
    registerPartial(error: unknown): void;
    inspectInstanceWrapper<T = any>(source: InstanceWrapper<T>, moduleRef: Module): void;
    insertEnhancerMetadataCache(entry: EnhancerMetadataCacheEntry): void;
    insertOrphanedEnhancer(entry: OrphanedEnhancerDefinition): void;
    insertAttachedEnhancer(wrapper: InstanceWrapper): void;
    insertEntrypointDefinition<T>(definition: Entrypoint<T>, parentId: string): void;
    insertClassNode(moduleRef: Module, wrapper: InstanceWrapper, type: Exclude<Node['metadata']['type'], 'module'>): void;
    private insertModuleNode;
    private insertModuleToModuleEdges;
    private insertEnhancerEdge;
    private insertClassToClassEdge;
    private insertClassNodes;
}
//# sourceMappingURL=graph-inspector.d.ts.map