import { IRectangle } from '../IRectangle'; import { RectangleNode } from './rectangleNode'; export declare function mkRTree(rectsAndData: Array<[IRectangle

, T]>): BinaryRTree; export declare class BinaryRTree { private _rootNode; clear(): void; NumberOfIntersectedIsLessThanBound(rect: IRectangle

, bound: number, conditionFunc: (t: T) => boolean): boolean; get RootNode(): RectangleNode; set RootNode(value: RectangleNode); constructor(rootNode: RectangleNode); GetAllLeaves(): IterableIterator; get Count(): number; Add(key: IRectangle

, value: T): void; AddNode(node: RectangleNode): void; Rebuild(): void; private AddNodeToTreeRecursive; GetAllIntersecting(queryRegion: IRectangle

): T[]; OneIntersecting(queryRegion: IRectangle

): { intersectedLeaf: T; }; GetAllLeavesIntersectingRectangle(queryRegion: IRectangle

): Iterable>; IsIntersecting(queryRegion: IRectangle

): boolean; Contains(rectangle: IRectangle

, userData: T): boolean; Remove(rectangle: IRectangle

, userData: T): T; RemoveLeaf(leaf: RectangleNode): void; UnbalancedNode(node: RectangleNode): RectangleNode; }