import React from "react"; export interface ActionsMenuItemIconAction { icon: React.ReactNode; "aria-label": string; onClick?: () => void; href?: string; openInNewTab?: boolean; disabled?: boolean; } export interface ActionsMenuItem { id: string; label: string; icon?: React.ReactNode; onClick?: () => void; disabled?: boolean; type?: "item" | "checkbox" | "submenu" | "separator"; checked?: boolean; /** * Keep the dropdown open after this item is clicked instead of closing it * (e.g. multi-select add). Only affects ActionsMenuDropdown; `checkbox` and * `submenu` items always keep the menu open regardless. Defaults to closing. */ closeOnSelect?: boolean; submenu?: ActionsMenuItem[]; /** Render the row in the error/destructive color (label + icon). */ danger?: boolean; /** Optional URL for navigation items */ href?: string; /** Open the main-row `href` in a new tab (external app deep-links). */ openInNewTab?: boolean; /** * Optional secondary action — a 40px-wide button on the right of the row * with a vertical divider. The main row keeps its primary click target; * the secondary is independently clickable (e.g. "open in new tab"). */ iconAction?: ActionsMenuItemIconAction; } export interface ActionsMenuGroup { id?: string; items: ActionsMenuItem[]; separator?: boolean; } export interface ActionsMenuProps { groups: ActionsMenuGroup[]; className?: string; onItemClick?: (item: ActionsMenuItem) => void; } export declare const ActionsMenu: React.FC; export interface ActionsMenuDropdownProps extends ActionsMenuProps { trigger?: React.ReactNode; /** Replace the entire default trigger button. When set, rendered directly as the DropdownMenuTrigger child. */ customTrigger?: React.ReactNode; triggerAriaLabel?: string; triggerClassName?: string; contentClassName?: string; align?: "start" | "center" | "end"; side?: "top" | "right" | "bottom" | "left"; sideOffset?: number; /** Controlled open state. Pair with `onOpenChange`. Uncontrolled by default. */ open?: boolean; /** Open-state change handler (also fires when an item closes the menu). */ onOpenChange?: (open: boolean) => void; /** Forwarded to the dropdown content — e.g. `e.preventDefault()` to stop * Radix returning focus (and its focus ring) to the trigger on close. */ onCloseAutoFocus?: (event: Event) => void; } export declare const ActionsMenuDropdown: React.FC; export default ActionsMenu; //# sourceMappingURL=actions-menu.d.ts.map