import { type ReactNode } from 'react'; import type { CommonProps } from '../types.js'; import { type ColumnContentAlignment } from './contexts/column-collection.js'; /** Represents the sort order of a table column. */ export type TableColumnSortOrder = 'ascending' | 'descending'; export interface TableHeaderCellProps extends CommonProps { /** The contents of the header cell. */ children: ReactNode; /** * A unique identifier for the column that this cell belongs to. * Cells that belong to the same column must have the same `columnKey`. */ columnKey: string; /** * The position of the column that this cell belongs to within the full dataset. * * Provide this value if your table presents a subset of columns, such as when the user toggles column visibility. * * This number must be: * - greater than or equal to `1` * - greater than the `columnNumber` of any previous cells in the current row * - less than or equal to the `totalColumnCount` of the parent `Table` * * Use together with `totalColumnCount` on the `Table` component. */ columnNumber?: number; /** The width of the column. Can be any valid value of the `width` CSS property. */ columnWidth?: string | number; /** * Horizontal alignment of cell content within the column. * @default 'start' */ columnContentAlignment?: ColumnContentAlignment; /** * The current sort order of the column. */ sortOrder?: TableColumnSortOrder; /** * A function called when the column's sort order should change. * If not provided, the column will not be sortable. */ onSortOrderToggle?: () => void; /** An icon displayed before the header text. */ iconStart?: ReactNode; /** An icon displayed after the header text. */ iconEnd?: ReactNode; } /** * Renders a header cell within a table header row. * * See [table usage guidelines](https://ui.cimpress.io/components/table/) and [table building guide](https://ui.cimpress.io/dev-guides/tables/). */ declare const _TableHeaderCell: (props: TableHeaderCellProps & import("react").RefAttributes) => import("react").JSX.Element | null; export { _TableHeaderCell as TableHeaderCell }; //# sourceMappingURL=table-header-cell.d.ts.map