import BaseEdge from "../graph/BaseEdge.js";
import BaseGraph from "../graph/BaseGraph.js";
import BaseNode from "../graph/BaseNode.js";
declare abstract class DotFormatter {
    #private;
    static defaultGraphName: string;
    abstract formatNode(node: BaseNode.Class): DotFormatter.Node;
    abstract formatEdge(edge: BaseEdge.Class): DotFormatter.Edge;
    format(graph: BaseGraph.Class, label?: string): string;
}
declare namespace DotFormatter {
    interface Attrs {
        label: string;
        shape: string;
        [key: string]: string;
    }
    interface Node {
        id: string;
        attrs: {
            label: string;
            shape: string;
            [key: string]: string;
        };
    }
    interface Edge {
        source: string;
        target: string;
        attrs: {
            [key: string]: string;
        };
    }
}
export default DotFormatter;
//# sourceMappingURL=DotFormatter.d.ts.map