import { type CSSResult, type HTMLTemplateResult } from '@a11d/lit'; import { equals } from '@a11d/equals'; import type { DataGrid, DataGridSortingStrategy } from './index.js'; import type * as CSS from 'csstype'; export type DataGridColumnContentStyle = string | CSSResult | ((value: TValue, data: TData) => string | CSSResult | undefined); export type DataGridColumnAlignment = 'start' | 'center' | 'end'; export type DataGridColumnSticky = 'start' | 'both' | 'end'; export type DataGridColumnMenuItems = HTMLTemplateResult | Map<'sorting' | 'stickiness' | 'more', HTMLTemplateResult>; export declare class DataGridColumn { dataGrid: DataGrid; dataSelector: KeyPath.Of; heading: string; description?: string; width: CSS.DataType.TrackBreadth<(string & {}) | 0>; alignment: DataGridColumnAlignment; hidden: boolean; hide(): void; sticky?: DataGridColumnSticky; toggleSticky(sticky: DataGridColumnSticky): void; sortable: boolean; private _sortDataSelector?; get sortDataSelector(): object extends Required ? string : TData extends readonly any[] ? Extract | Extract | (Extract extends infer T ? T extends Extract ? T extends keyof TData ? `${T}.${object extends Required ? string : TData[T] extends infer T_1 ? T_1 extends TData[T] ? T_1 extends readonly any[] ? Extract | Extract | (Extract extends infer T_2 ? T_2 extends Extract ? T_2 extends keyof T_1 ? never : never : never : never) : T_1 extends object ? Extract | (Extract extends infer T_3 ? T_3 extends Extract ? T_3 extends keyof T_1 ? never : never : never : never) : never : never : never}` : never : never : never) : TData extends object ? Extract | (Extract extends infer T_4 ? T_4 extends Extract ? T_4 extends keyof TData ? `${T_4}.${object extends Required ? string : TData[T_4] extends infer T_5 ? T_5 extends TData[T_4] ? T_5 extends readonly any[] ? Extract | Extract | (Extract extends infer T_6 ? T_6 extends Extract ? T_6 extends keyof T_5 ? never : never : never : never) : T_5 extends object ? Extract | (Extract extends infer T_7 ? T_7 extends Extract ? T_7 extends keyof T_5 ? never : never : never : never) : never : never : never}` : never : never : never) : never; set sortDataSelector(value: object extends Required ? string : TData extends readonly any[] ? Extract | Extract | (Extract extends infer T ? T extends Extract ? T extends keyof TData ? `${T}.${object extends Required ? string : TData[T] extends infer T_1 ? T_1 extends TData[T] ? T_1 extends readonly any[] ? Extract | Extract | (Extract extends infer T_2 ? T_2 extends Extract ? T_2 extends keyof T_1 ? never : never : never : never) : T_1 extends object ? Extract | (Extract extends infer T_3 ? T_3 extends Extract ? T_3 extends keyof T_1 ? never : never : never : never) : never : never : never}` : never : never : never) : TData extends object ? Extract | (Extract extends infer T_4 ? T_4 extends Extract ? T_4 extends keyof TData ? `${T_4}.${object extends Required ? string : TData[T_4] extends infer T_5 ? T_5 extends TData[T_4] ? T_5 extends readonly any[] ? Extract | Extract | (Extract extends infer T_6 ? T_6 extends Extract ? T_6 extends keyof T_5 ? never : never : never : never) : T_5 extends object ? Extract | (Extract extends infer T_7 ? T_7 extends Extract ? T_7 extends keyof T_5 ? never : never : never : never) : never : never : never}` : never : never : never) : never); toggleSort(strategy?: DataGridSortingStrategy | null): void; getMenuItemsTemplate?(): DataGridColumnMenuItems; contentStyle?: DataGridColumnContentStyle; getContentTemplate?(value: TValue, data: TData): HTMLTemplateResult; editable: boolean | Predicate; getEditContentTemplate?(value: TValue, data: TData): HTMLTemplateResult; sumHeading?: string; getSumTemplate?(sum: number): HTMLTemplateResult; constructor(column: Partial>); [equals](other: DataGridColumn): boolean; with(other: Partial): DataGridColumn; private _widthInPixels?; get widthInPixels(): number; set widthInPixels(value: number); get sortingDefinition(): import("./DataGridSortingController.js").DataGridRankedSortDefinition | undefined; get sumTemplate(): HTMLTemplateResult | undefined; get stickyColumnInsetInline(): string; static readonly stickyStyles: CSSResult; get stickyEdge(): string | undefined; generateCsvHeading?(): Generator; generateCsvValue?(value: TValue, data: TData): Generator; } //# sourceMappingURL=DataGridColumn.d.ts.map