UNPKG

@jbrowse/core

Version:

JBrowse 2 core libraries used by plugins

29 lines (28 loc) 992 B
import type { BaseLayout, RectTuple, Rectangle, SerializedLayout } from './BaseLayout'; export interface Layout { minX: number; minY: number; maxX: number; maxY: number; name: string; } export default class PrecomputedLayout<T> implements BaseLayout<T> { private rectangles; private totalHeight; maxHeightReached: boolean; private rbush; constructor({ rectangles, totalHeight, maxHeightReached }: SerializedLayout); addRect(id: string): number; getRectangles(): Map<string, RectTuple>; getTotalHeight(): number; collides(_rect: Rectangle<T>, _top: number): boolean; getByCoord(x: number, y: number): string | undefined; getByID(id: string): RectTuple | undefined; addRectToBitmap(_rect: Rectangle<T>, _data: Record<string, T>): void; discardRange(_left: number, _right: number): void; serializeRegion(_region: { start: number; end: number; }): SerializedLayout; toJSON(): SerializedLayout; }