import type { StyleInfo } from 'lit/directives/style-map.js'; import type { ColumnConfiguration, GridHost } from './types.js'; /** Width of the auto-rendered selection (checkbox) column in CSS pixels. */ export declare const SELECTION_COLUMN_WIDTH = 44; /** Width of the auto-rendered expansion (chevron) column in CSS pixels. */ export declare const EXPANSION_COLUMN_WIDTH = 40; export declare function applyColumnWidths(columns: Array>, options?: { showSelectionColumn?: boolean; showExpansionColumn?: boolean; }): StyleInfo; /** * Returns the visual render order of the columns: start-pinned columns first, * then unpinned columns, then end-pinned columns. Within each group the * original `columns` array order is preserved. * * @remarks * The grid uses this order for rendering, navigation, and CSS grid track widths. * The user-supplied `columns` array is never mutated; this returns a new array. */ export declare function getDisplayColumns(columns: Array>): Array>; /** * Returns `'start'` for the last visible start-pinned column, `'end'` for the * first visible end-pinned column, or `null` otherwise. The edge column gets a * subtle shadow / border to separate the pinned region from the scrolling one. */ export declare function getPinEdge(displayColumns: Array>, index: number): 'start' | 'end' | null; export declare function autoGenerateColumns(grid: GridHost): void; export declare function asArray(value: T | T[]): T[]; export declare function getFilterOperandsFor(column: ColumnConfiguration): Readonly> | Readonly> | Readonly>;