import type { Table } from '..'; import type { TableRecord } from '../types'; /** * This class manages the layout of columns within a Table. * @interal */ export declare class TableLayoutManager { private readonly table; isColumnBeingSized: boolean; activeColumnIndex?: number; activeColumnDivider?: number; private gridSizedColumns?; private visibleColumns; private initialTableScrollableWidth?; private initialTableScrollableMinWidth?; private initialColumnTotalWidth?; private activeColumnDividerElement?; private currentTotalDelta; private dragStart; private leftColumnIndex?; private rightColumnIndex?; private initialColumnWidths; constructor(table: Table); getGridTemplateColumns(): string; /** * Sets up state related to interactively sizing a column. * @param activeColumnDividerElement The divider element that was clicked on * @param pointerId The pointerId of the pointer that started the drag * @param dragStart The x-position from which a column size was started * @param activeColumnDivider The 1-based index of the divider that was clicked on */ beginColumnInteractiveSize(activeColumnDividerElement: HTMLElement, pointerId: number, dragStart: number, activeColumnDivider: number): void; /** * Determines if the specified column or any columns to the left are resizable. */ hasResizableColumnToLeft(columnIndex: number): boolean; /** * Determines if the specified column or any columns to the right are resizable. */ private hasResizableColumnToRight; private readonly onDividerPointerMove; private readonly onDividerPointerUp; private getTotalColumnFixedWidth; private setColumnsToFixedSize; private getAllowedSizeDelta; /** * Gets the index of the first resizable column starting with * `columnIndex` and moving to the left. If no resizable column * is found, returns -1. */ private getFirstLeftResizableColumnIndex; /** * Gets the index of the first resizable column starting with * `columnIndex` and moving to the right. If no resizable column * is found, returns -1. */ private getFirstRightResizableColumnIndex; private performCascadeSizeLeft; private performCascadeSizeRight; private cacheGridSizedColumns; private cacheColumnInitialPixelWidths; private resetGridSizedColumns; private getVisibleColumns; private getLeftColumnIndexFromDivider; }