import { type ChangeEvent, type ReactNode } from 'react'; import type { Variant } from '../enums'; import type { CellValue, DataGridColumns, DataGridRowOptions } from '../types'; export type BodyProps> = { /** * Конфигурация колонок для таблицы */ columns: DataGridColumns[]; /** * Поле, которое будет использоваться в качестве ключа */ keyId: keyof TData; /** * Конфигурация ширины колонок */ gridColumns: string; /** * Если true, показывается анимация загрузки */ isLoading?: boolean; /** * Флаг состояния ошибки */ isError?: boolean; /** * Текст ошибки */ errorMsg?: string; /** * Идентификатор активного элемента массива rows. Выделяет активную строку в таблице */ activeRowId?: string; /** * Если true, то дерево будет раскрыто по умолчанию * @default 'false' */ isInitialExpanded: boolean; /** * Уровень раскрытия дерева по умолчанию, при isInitialExpanded=true */ expandedLevel: number; /** * Количество отображаемых по умолчанию дочерних элементов */ initialVisibleChildrenCount: number; /** * Номер колонки, в которой будет расположена кнопка "Показать все" * Работает только для `variant="subrows"` */ moreButtonColumnPosition: number; /** * Если false, кнопка разворачивания элементов не показывается * Работает только для `variant="subrows"` */ isVisibleCollapseButton: boolean; /** * Если true, то будет отображаться чекбокс для выбора элемента */ isSelectable?: boolean; /** * Массив выбранных строк */ selectedRows?: TData[]; /** * Массив данных для отображения */ rows: Array; }>; /** * Вариант отображения вложенных элементов */ variant: `${Variant}`; /** * Используется для отображения переданного кол-ва строк при отсутствии данных */ minDisplayRows: number; /** * Заглушка для пустых ячеек (если отсутствует field и filter и renderCell) */ emptyCellValue?: ReactNode; /** * Используется для отображения placeholder при отсутствии данных в таблице */ noDataPlaceholder?: ReactNode; /** * Обработчик выбора строки */ onSelectRow: (row: TData) => (event: ChangeEvent) => void; /** * Функция обработки нажатия на кнопку "Повторить запрос" */ onRetry: () => void; /** * Обработчик клика строки таблицы */ onRowClick?: (row: TData) => void; }; export declare const Body: >(props: BodyProps) => JSX.Element;