import DotFormatter from "@specs-feup/lara/api/lara/graphs/DotFormatter.js";
import Graph from "@specs-feup/lara/api/lara/graphs/Graph.js";
import cytoscape from "cytoscape";
import { FunctionJp, Joinpoint } from "../../Joinpoints.js";
export default class StaticCallGraph extends Graph {
    private static dotFormatterInstance;
    /**
     * Maps functions to graph nodes
     */
    private functionMap;
    constructor(graph: cytoscape.Core, functions: Record<string, cytoscape.NodeSingular>);
    /**
     *
     * @param $jp -
     * @param visitCalls - If true, recursively visits the functions of each call, building a call graph of the available code
     * @returns
     */
    static build($jp: Joinpoint, visitCalls?: boolean): StaticCallGraph;
    get functions(): Record<string, cytoscape.NodeSingular>;
    getNode($function: FunctionJp): cytoscape.NodeSingular;
    static get dotFormatter(): DotFormatter;
    toDot(): string;
}
//# sourceMappingURL=StaticCallGraph.d.ts.map