interface GraphNode {
    width?: number;
    height?: number;
}
interface GraphPoint {
    x: number;
    y: number;
}
export default class Graph {
    private nodes;
    private edges;
    readonly space: GraphPoint;
    private structMap;
    constructor(space?: GraphPoint);
    addNode(id: string, node: GraphNode): void;
    addEdge(sourceId: string, targetId: string): void;
    createStruct(): void;
    computedPosition(): void;
    getNodePosition(nodeId: string): GraphPoint;
    setRank(nodeId: string, rank: number): void;
    private computedLevel;
    private computedY;
    private getNodeIdsByLevel;
    private filterParent;
    private isOffspring;
    private isChild;
    private checkHasNode;
}
export {};
