import { EventEntity } from "../entity/EventEntity";
import { IPosition } from "./IPosition";
import { EventPositionEntity } from "../entity/EventPositionEntity";
import { SVGGenerator } from "./SVGGenerator";
import { modelInterface } from "../model/IModel";
export declare class Renderer {
    stickyEntities: EventPositionEntity[];
    originPosition: IPosition;
    private _svgGenerator;
    constructor(svgGenerator: SVGGenerator);
    createEntity(node: EventEntity, nodes: EventEntity[]): EventPositionEntity;
    private handForChildNode(node, position, newEntity);
    updateEntity(node: EventPositionEntity, nodes: EventEntity[]): EventPositionEntity;
    calculatePositions(nodes: EventEntity[]): IPosition[];
    calculateSubPosition(parentPosition: IPosition, parentNode: EventPositionEntity, currentNode: modelInterface): IPosition;
    private calculatePosition(nodes);
    render(): string;
}
