import { type JSX } from 'react'; import { type ColumnDef } from './useTable/types.js'; import { type DataTableV2ColumnDef, type DataTableV2DisplayColumnDef, type DataTableV2GroupColumnDef, type DataTableV2RowData } from '../public.api.js'; /** * @internal * TypeGuard helper to verify that a given external columnDef is a GroupColumnDef */ export declare function isDataTableV2GroupColumnDef(columnDef: unknown): columnDef is DataTableV2GroupColumnDef; /** * @internal * TypeGuard helper to verify that a given external columnDef is a DisplayColumnDef */ export declare function isDataTableV2DisplayColumnDef(columnDef: unknown): columnDef is DataTableV2DisplayColumnDef; /** * Custom cell renderer function. * @public */ export type DataTableV2CustomCell = (props: { /** Raw value of the cell that is rendered. */ value: TValue; /** Index of the row the rendered cell is in. */ rowIndex: number; /** Data of the entire row the rendered cell is in. */ rowData: TData; /** Id of the row the rendered cell is in. */ rowId: string; /** Format function that would have been applied to the cell value out of the box. */ format: (value: TValue) => string; /** Link detection function for automatic link detection. */ detectLinks: (value: string) => string | JSX.Element; /** Formatting function for log content. */ formatLogContent: (value: string) => JSX.Element | null; /** The current line wrap state of the column the rendered cell is in. */ isLineWrapped: boolean; }) => JSX.Element; /** * Helper hook that will calculate which columns are enabled within the DataTable * @internal */ export declare function useColumns(propColumns: DataTableV2ColumnDef[]): readonly [ColumnDef[], Map>];