/** * @license *------------------------------------------------------------------------------------------- * Copyright © 2026 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the package root for more information *------------------------------------------------------------------------------------------- */ import * as React from 'react'; export interface CellProps { /** * @hidden */ id: string; /** * The index applied to the `aria-colindex` attribute. */ ariaColumnIndex: number; /** * Indicates if the cell is selected. */ isSelected: boolean; /** @hidden */ isHighlighted?: boolean; /** @hidden */ isInEdit?: boolean; /** * Indicates if the cell is sorted. */ isSorted?: boolean; /** * Indicates if the cell is alt. */ isAlt?: boolean; /** * Indicates if the cell is expanded. */ expanded?: boolean; /** * Custom CSS classes for the cell. */ className?: string; /** * Inline styles for the cell. */ style?: React.CSSProperties; /** * The data field that the cell binds to. */ field?: string; /** * The data item for the current row. */ dataItem: any; /** * The format applied to the value before display. * Takes the `{0:format}` form where `format` is a standard number format, a custom number format, * a standard date format, or a custom date format. */ format?: string; /** * The column span of the cell. */ colSpan?: number; /** * Fires when the cell is selected. */ selectionChange?: (event: { syntheticEvent: React.SyntheticEvent; }) => void; /** * Fires when the cell value changes. */ onChange?: (event: { dataItem: any; syntheticEvent: React.SyntheticEvent; field?: string; value?: any; }) => void; /** * Overrides the default cell rendering. */ render?: (defaultRendering: React.ReactElement | null, props: CellProps) => React.ReactElement | null; }