import { type ButtonHTMLAttributes, type ReactNode } from 'react'; import type { Column } from '@tanstack/react-table'; import { type TestableProps } from '../../../utils/testId'; interface TableColumnMenuContextValue { column: Column; } export declare const useTableColumnMenuContext: () => TableColumnMenuContextValue; export interface TableColumnMenuProps extends Omit, 'color' | 'type' | 'children'>, TestableProps { /** Column from the header render context. */ column: Column; /** * When omitted, the menu renders the default set of items (Move left / Move * right / Sort submenu / Pin / Hide) the same way the design system has * always rendered them. When provided, the consumer takes full control of * the menu's contents — typically a mix of the exported item sub-components * (`TableColumnMenuSortItem`, `TableColumnMenuPinItem`, etc.) for per-item * analytics, or arbitrary `DropdownMenuItem`s for custom actions. */ children?: ReactNode; } /** * Per-column header menu ("…" trigger) with an optional consumer-controlled * item set. The trigger `