/**
 * Labeler object
 */
export default class Labeler {
    constructor(transitive: any);
    transitive: any;
    clear(): void;
    points: any[] | undefined;
    updateLabelList(graph: any): void;
    updateQuadtree(): void;
    quadtree: d3.geom.quadtree.Quadtree<[number, number]> | undefined;
    addPointsToQuadtree(): void;
    addSegmentsToQuadtree(): void;
    addBBoxToQuadtree(bbox: any): void;
    maxBBoxWidth: any;
    maxBBoxHeight: any;
    doLayout(): {
        pointLabels: any[];
        segmentLabels: any[];
    };
    width: any;
    height: any;
    /** placePointLabels **/
    placePointLabels(): any[];
    /** placeSegmentLabels **/
    placeSegmentLabels(): any[];
    placedLabelKeys: any[] | undefined;
    currentGroup: any;
    labelTextArray: any;
    labelTextIndex: number | undefined;
    getNextLabel(): SegmentLabel | null;
    constructSegmentLabel(segment: any, labelText: any): SegmentLabel;
    findOverlaps(label: any, labelBBox: any): any[];
    findNearbySegmentLabels(label: any, x: any, y: any, buffer: any): any[];
}
import d3 from "d3";
import SegmentLabel from "./segmentlabel";
