import type { BoundedAxisRange } from './GridAxisRange'; /** A grid coordinate value */ export type Coordinate = number; /** Coordinates of a box */ export type BoxCoordinates = { x1: Coordinate; y1: Coordinate; x2: Coordinate; y2: Coordinate; }; /** The visible index of the item, eg. after moves are applied */ export type VisibleIndex = number; /** The model index of the item, eg. moves are not applied */ export type ModelIndex = number; /** Map from an item index to it's coordinate */ export type CoordinateMap = Map; /** Map from an item index to it's size */ export type SizeMap = Map; /** Map from a ModelIndex to it's size */ export type ModelSizeMap = Map; /** Map from visible Index to ModelIndex */ export type VisibleToModelMap = Map; /** Represents a move operation from one index to another */ export type MoveOperation = { from: VisibleIndex | BoundedAxisRange; to: VisibleIndex; }; export type GridMetrics = { rowHeight: number; rowHeaderWidth: number; rowFooterWidth: number; rowCount: number; columnWidth: number; columnCount: number; columnHeaderHeight: number; floatingTopRowCount: number; floatingBottomRowCount: number; floatingLeftColumnCount: number; floatingRightColumnCount: number; gridX: Coordinate; gridY: Coordinate; firstRow: VisibleIndex; firstColumn: VisibleIndex; treePaddingX: number; treePaddingY: number; /** * The visible index of the left-most column that is at least partially visible. */ left: VisibleIndex; /** * The visible index of the top row that is at least partially visible. */ top: VisibleIndex; /** * The visible index of the bottom row that is at least partially visible. */ bottom: VisibleIndex; /** * The visible index of the right-most column that is at least partially visible. */ right: VisibleIndex; topOffset: Coordinate; leftOffset: Coordinate; topVisible: VisibleIndex; leftVisible: VisibleIndex; bottomVisible: VisibleIndex; rightVisible: VisibleIndex; bottomViewport: VisibleIndex; rightViewport: VisibleIndex; width: number; height: number; maxX: Coordinate; maxY: Coordinate; lastLeft: VisibleIndex; lastTop: VisibleIndex; barHeight: number; barTop: number; barWidth: number; barLeft: number; handleHeight: number; handleWidth: number; hasHorizontalBar: boolean; hasVerticalBar: boolean; verticalBarWidth: number; horizontalBarHeight: number; scrollX: number; scrollY: number; scrollableContentWidth: number; scrollableContentHeight: number; scrollableViewportWidth: number; scrollableViewportHeight: number; visibleRows: readonly VisibleIndex[]; visibleColumns: readonly VisibleIndex[]; columnsForRender: readonly VisibleIndex[]; visibleRowHeights: SizeMap; visibleColumnWidths: SizeMap; floatingRows: readonly VisibleIndex[]; floatingColumns: readonly VisibleIndex[]; allRows: readonly VisibleIndex[]; allColumns: readonly VisibleIndex[]; allRowHeights: SizeMap; allColumnWidths: SizeMap; floatingTopHeight: number; floatingBottomHeight: number; floatingLeftWidth: number; floatingRightWidth: number; visibleRowYs: CoordinateMap; visibleColumnXs: CoordinateMap; allRowYs: CoordinateMap; allColumnXs: CoordinateMap; visibleRowTreeBoxes: Map; modelRows: VisibleToModelMap; modelColumns: VisibleToModelMap; movedRows: readonly MoveOperation[]; movedColumns: readonly MoveOperation[]; fontWidthsLower: Map; fontWidthsUpper: Map; userColumnWidths: ModelSizeMap; userRowHeights: ModelSizeMap; calculatedRowHeights: ModelSizeMap; calculatedColumnWidths: ModelSizeMap; contentColumnWidths: ModelSizeMap; contentRowHeights: ModelSizeMap; columnHeaderMaxDepth: number; }; export default GridMetrics; //# sourceMappingURL=GridMetrics.d.ts.map