import { Edge as GLEdge, GraphEdge, Node } from "dagre";
import { Vertex } from "./Vertex.ts";
type GLNode = Node<Vertex>;
export interface GraphLabel {
    debugTiming?: boolean;
}
export declare class GraphData {
    private _g;
    constructor();
    parent(cn: string): string;
    private filterNodes;
    eachNode(callback: any): void;
    private filterEdges;
    eachEdge(callback: any): void;
    setData(subgraphs: any, vertices: any, edges: any, hierarchy: any, merge: any): {
        addedVertices: any[];
        addedEdges: any[];
    };
    node(id: string): GLNode;
    nodeCount(): number;
    nodes(): GLNode[];
    nodeEdges(id: string): GLEdge[];
    edge(glEdge: GLEdge): GraphEdge;
    edges(): GraphEdge[];
    neighbors(id: string): Node<Vertex>[];
    singleNeighbors(id: string): Node<Vertex>[];
    gatherShortestPath(pathObj: any, targetID: any): any[];
    shortestPath(sourceID: string, targetID: string): any[];
    undirectedShortestPath(sourceID: string, targetID: string): any[];
    getJSON(): string;
}
export {};
