import { Graph, VisualizationConfig } from "@/types/interfaces/visualization";
export declare class GraphRenderer {
    private readonly container;
    private svg;
    private mainGroup;
    private simulation;
    private nodes;
    private edges;
    private readonly config;
    private currentLayout?;
    constructor(containerId: string, config: Required<VisualizationConfig>);
    private initialize;
    private setupSVG;
    private createMarkers;
    private createFilters;
    private setupSimulation;
    private setupZoom;
    private setupEventListeners;
    private handleResize;
    private handleTick;
    private calculateEdgePath;
    render(graph: Graph): void;
    private renderNodes;
    private createNodes;
    private updateNodes;
    private removeNodes;
    private setupDragBehavior;
    private renderEdges;
    private createEdges;
    private updateEdges;
    private removeEdges;
    fitViewToContent(): void;
    dispose(): void;
}
