import { type ReactElement } from 'react';
import type { Variant } from '../../enums';
import type { CellValue, DataGridRowOptions } from '../../types';
export type NestedChildrenProps<TData extends Record<string, CellValue>> = {
    /**
     * Если true, список дочерних элементов раскрыт
     */
    isOpen: boolean;
    /**
     * Данные для отображения
     */
    data: Array<TData & {
        options?: DataGridRowOptions<TData>;
    }>;
    /**
     * Поле, которое будет использоваться в качестве ключа
     */
    keyId: keyof TData;
    /**
     * Идентификатор строки
     */
    rowId: string;
    /**
     * Вариант отображения вложенных элементов
     */
    variant: `${Variant}`;
    /**
     * Конфигурация ширины колонок
     */
    gridColumns: string;
    /**
     * Уровень вложенности в дереве
     */
    level: number;
    /**
     * Количество отображаемых по умолчанию дочерних элементов
     */
    initialVisibleChildrenCount: number;
    /**
     * Номер колонки, в которой будет расположена кнопка "Показать все"
     * Работает только для `variant="subrows"`
     */
    moreButtonColumnPosition: number;
    renderRow: ({ key, level, row, nestedChildren, options, className, }: {
        key: string;
        row: TData;
        level: number;
        nestedChildren: Array<TData & {
            options?: DataGridRowOptions<TData>;
        }>;
        options?: DataGridRowOptions<TData>;
        className?: string;
    }) => ReactElement;
};
export declare const NestedChildren: import("react").MemoExoticComponent<(<TData extends Record<string, unknown>>(props: NestedChildrenProps<TData>) => import("react/jsx-runtime").JSX.Element | null)>;
