import type { TableDeps } from '../table/baseTable'; /** * Column utils class contains all necessary information about sizes of the columns. * * @class {ColumnUtils} */ export default class ColumnUtils { #private; /** * @type {Settings} */ wtSettings: import("../settings").default; /** * @type {Map} */ headerWidths: Map; /** * Read-only access to the dependencies, for the renderer, which reads `columnUtils.deps` * externally and so cannot reach the private `#deps`. * * @returns {TableDeps} */ get deps(): TableDeps; /** * @param {TableDeps} deps The table module dependencies. */ constructor(deps: TableDeps); /** * Returns column width based on passed source index. * * @param {number} sourceIndex Column source index. * @returns {number} */ getWidth(sourceIndex: number): number | undefined; /** * Returns column header height based on passed header level. * * @param {number} level Column header level. * @returns {number} */ getHeaderHeight(level: number): number; /** * Returns column header width based on passed source index. * * @param {number} sourceIndex Column source index. * @returns {number} */ getHeaderWidth(sourceIndex: number): number | undefined; /** * Calculates column header widths that can be retrieved from the cache. */ calculateWidths(): void; }