import type { GridConfirmPayload, GridProps, GridRangeSelection, GridRowData, GridRowMeta } from '../../types'; export type SpreadsheetRangeCopy = (rangeSelection: GridRangeSelection, data: { rowIds: TDataModel['id'][]; columnIds: string[]; }, e: React.ClipboardEvent) => void; export type SpreadsheetGridPastedCell = { value: unknown; colSpan?: number; }; export type SpreadsheetGridProps = any> = Omit, 'selectionMode' | 'selection' | 'onSelectionChange'> & { /** * By default range selection is managed internally, but it can be controlled by providing the current * selection via this property. */ rangeSelection?: GridRangeSelection | null; /** * When range selection changes, this callback will be invoked with the new range selection. It also * provides the ordered list of row and column IDs included in the selection. */ onRangeSelectionChange?: (rangeSelection: GridRangeSelection | null, data: { rowIds: TDataModel['id'][]; columnIds: string[]; }) => void; /** * Callback invoked during a copy operation. By default, copying a range will place the labels of the cells * on the clipboard. You can optionally set it to copy the values instead, or provide a custom handler to take * complete control over the copy operation. */ onRangeCopy?: 'labels' | 'values' | SpreadsheetRangeCopy; /** * Callback that functions the same as `onCellChange`, but is invoked with all changes at once after a bulk edit operation * like paste or (future) fill handle is complete. The payloads are grouped by row ID. */ onBulkCellChange?: (payload: Map[]>) => boolean | void; }; //# sourceMappingURL=types.d.ts.map