import { type ReactNode } from 'react';
import { type DataGridSecondaryActionsProps } from './DataGridSecondaryActions';
import type { MainActionKind, SecondaryActionKind } from './types';
export type DataGridActions<TAction> = {
    /**
     * Основные действия
     */
    main: MainActionKind<TAction>[];
    /**
     * Вторичные действия
     */
    secondary?: SecondaryActionKind<TAction>[];
};
export type DataGridActionCellProps<TRow> = {
    /**
     * Действия
     * @deprecated Используйте `mainActions` и `secondaryActions`.
     *
     * Новый подход обеспечивает:
     *   - Ленивую загрузку вторичных действий с бэкенда
     *   - Рендеринг `secondaryActions` только при открытии dropdown-меню
     *   - Улучшенную производительность при работе со сложной логикой
     *   - Оптимизацию за счет tree shaking
     */
    actions?: DataGridActions<TRow>;
    /**
     * Компонент всегда отображаемых действий
     */
    mainActions?: () => ReactNode;
    /**
     * Компонент доп. действий, которые скрыты в popover за кнопкой
     */
    secondaryActions?: (props: DataGridSecondaryActionsProps<TRow>) => ReactNode;
    /**
     * Данные строки
     */
    row: TRow;
};
export declare const DataGridActionCell: <TRow>(props: DataGridActionCellProps<TRow>) => import("react/jsx-runtime").JSX.Element;
