import { Rectangle } from '../../math/geometry/rectangle'; import { GeomNode } from './geomNode'; import { Edge } from '../../structs/edge'; import { GeomLabel } from './geomLabel'; import { Point } from '../../math/geometry/point'; import { CurveClip, ArrowHeadData } from './tileMap'; import { ICurve } from '../../math/geometry'; export type Bundle = { clip: ICurve; edges: Edge[]; }; /** keeps the data needed to render a tile, and some fields for optimizations */ export declare class Tile { private _curveClips; get curveClips(): CurveClip[]; set curveClips(value: CurveClip[]); constructor(rect: Rectangle); addCurveClip(cc: CurveClip): void; arrowheads: { tip: Point; edge: Edge; base: Point; }[]; nodes: GeomNode[]; labels: GeomLabel[]; rect: Rectangle; isEmpty(): boolean; initCurveClips(): void; /** clears all arrays but does not touch this.rect */ clear(): void; /** returns the number of entities that will be rendered for a tile: each bundle is counted as one entity */ get entityCount(): number; addElement(data: CurveClip | ArrowHeadData | GeomLabel | GeomNode): void; }