/**
 * @file tableContextMenu.tsx
 * @input React, ContextMenu, Icon, types
 * @output wrapInTableContextMenu helper
 * @position Renders the aggregated `contextMenuActions` for a header cell / row
 *
 * SYNC: When modified, update these files to stay in sync:
 * - /packages/core/src/Table/BaseTable.tsx (call sites)
 * - /packages/core/src/Table/types.ts (TableContextAction)
 */
import { type ReactNode } from 'react';
import type { StyleXStyles } from '../theme/types';
import type { TableContextAction, TableContextActions } from './types';
/**
 * Resolve a `contextMenuActions` value (array or getter) to a plain array.
 * Use this when composing actions from a prior plugin's render props so you
 * don't have to branch on the array-vs-getter form:
 *
 * ```
 * contextMenuActions: () => [
 *   ...resolveContextActions(props.contextMenuActions),
 *   ...myActions,
 * ]
 * ```
 */
export declare function resolveContextActions(actions: TableContextActions | undefined): TableContextAction[];
/**
 * Wrap a table element (a header cell's content or a body cell) in a right-click
 * context menu rendering the aggregated `actions`. Accepts a static array or a
 * getter (resolved lazily on open). When there are no actions the element is
 * returned untouched so the native browser menu passes through.
 *
 * `triggerXstyle` styles the right-click target wrapper. Cells pass a fill +
 * padding style so the entire cell (padding included) opens the menu.
 */
export declare function wrapInTableContextMenu(element: ReactNode, actions: TableContextActions | undefined, triggerXstyle?: StyleXStyles | StyleXStyles[]): ReactNode;
//# sourceMappingURL=tableContextMenu.d.ts.map