import { Base, Point, Type } from "./type";
import { List$1 } from "./List$1";
import { LabelCollisionPlacementPositions } from "./LabelCollisionPlacementPositions";
import { LabelCollisionManagerCollisionMode } from "./LabelCollisionManagerCollisionMode";
import { IExecutionContext } from "./IExecutionContext";
import { Rect } from "./Rect";
import { LabelCollisionInfo } from "./LabelCollisionInfo";
import { QuadTreeBoundingBox } from "./QuadTreeBoundingBox";
/**
 * @hidden
 */
export declare class LabelCollisionManager extends Base {
    static $t: Type;
    constructor(a: number, b: number, c: Rect, d: IExecutionContext, e: number, f: LabelCollisionManagerCollisionMode, g: LabelCollisionPlacementPositions, h: number, i: number, j: boolean);
    g(a: LabelCollisionInfo, b: LabelCollisionPlacementPositions, c: number, d: number, e: boolean): QuadTreeBoundingBox;
    private o;
    t: List$1<LabelCollisionPlacementPositions>;
    labelsMoved: (movedLabels: List$1<LabelCollisionInfo>) => void;
    h: () => void;
    private f;
    e: LabelCollisionManagerCollisionMode;
    private c;
    y: number;
    af: number;
    ae: number;
    az: Rect;
    z: number;
    x: number;
    private ar;
    private aq;
    av(a: QuadTreeBoundingBox): void;
    private r;
    private ab;
    al(a: LabelCollisionInfo): void;
    aw(a: LabelCollisionInfo): void;
    at(a: LabelCollisionInfo): void;
    as(a: LabelCollisionInfo): void;
    ay(): void;
    private s;
    private k;
    private j;
    am(): void;
    private ap;
    private an;
    private static aj;
    private ad;
    private aa;
    private u;
    private v;
    private ao;
    private ac;
    private l;
    private i;
    private w;
    private m;
    get ag(): number;
    ak: string;
    ai: any;
    ax(a: number, b: number, c: Rect): void;
    q(): boolean;
    ah(): number;
    private au;
    p(a: LabelCollisionInfo): boolean;
    private n;
    private a;
    d(a: Point, b: boolean): LabelCollisionInfo;
}
