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;
    submenu?: ActionsMenuItem[];
    /** Optional URL for navigation items */
    href?: string;
    /**
     * 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<ActionsMenuProps>;
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;
}
export declare const ActionsMenuDropdown: React.FC<ActionsMenuDropdownProps>;
export default ActionsMenu;
//# sourceMappingURL=actions-menu.d.ts.map