import { Menu as MenuPrimitive } from '@base-ui/react/menu';
import * as React from 'react';
interface RootProps {
    children: React.ReactNode;
    open?: boolean;
    defaultOpen?: boolean;
    onOpenChange?: (open: boolean) => void;
}
declare function Root({ children, open: controlledOpen, defaultOpen, onOpenChange, }: RootProps): import("react/jsx-runtime").JSX.Element;
declare namespace Root {
    var displayName: string;
}
interface TriggerProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'onContextMenu'> {
    children: React.ReactNode;
    className?: string;
    disabled?: boolean;
}
declare function Trigger({ children, className, disabled, onKeyDown: onKeyDownProp, ...props }: TriggerProps): import("react/jsx-runtime").JSX.Element;
declare namespace Trigger {
    var displayName: string;
}
declare function Portal({ ...props }: MenuPrimitive.Portal.Props): import("react/jsx-runtime").JSX.Element;
declare namespace Portal {
    var displayName: string;
}
interface PopupProps extends Omit<MenuPrimitive.Popup.Props, 'anchor'> {
    alignOffset?: number;
    sideOffset?: number;
}
declare function Popup({ alignOffset, sideOffset, className, ...props }: PopupProps): import("react/jsx-runtime").JSX.Element;
declare namespace Popup {
    var displayName: string;
}
declare function Group({ ...props }: MenuPrimitive.Group.Props): import("react/jsx-runtime").JSX.Element;
declare namespace Group {
    var displayName: string;
}
declare function Label({ className, inset, ...props }: MenuPrimitive.GroupLabel.Props & {
    inset?: boolean;
}): import("react/jsx-runtime").JSX.Element;
declare namespace Label {
    var displayName: string;
}
declare function Item({ className, inset, variant, ...props }: MenuPrimitive.Item.Props & {
    inset?: boolean;
    variant?: 'default' | 'destructive';
}): import("react/jsx-runtime").JSX.Element;
declare namespace Item {
    var displayName: string;
}
declare function Sub({ ...props }: MenuPrimitive.SubmenuRoot.Props): import("react/jsx-runtime").JSX.Element;
declare namespace Sub {
    var displayName: string;
}
declare function SubTrigger({ className, inset, children, ...props }: MenuPrimitive.SubmenuTrigger.Props & {
    inset?: boolean;
}): import("react/jsx-runtime").JSX.Element;
declare namespace SubTrigger {
    var displayName: string;
}
declare function SubPopup({ className, ...props }: Omit<PopupProps, 'alignOffset' | 'sideOffset'> & Omit<MenuPrimitive.Popup.Props, 'anchor'>): import("react/jsx-runtime").JSX.Element;
declare namespace SubPopup {
    var displayName: string;
}
declare function CheckboxItem({ className, children, checked, ...props }: MenuPrimitive.CheckboxItem.Props): import("react/jsx-runtime").JSX.Element;
declare namespace CheckboxItem {
    var displayName: string;
}
declare function RadioGroup({ ...props }: MenuPrimitive.RadioGroup.Props): import("react/jsx-runtime").JSX.Element;
declare namespace RadioGroup {
    var displayName: string;
}
declare function RadioItem({ className, children, ...props }: MenuPrimitive.RadioItem.Props): import("react/jsx-runtime").JSX.Element;
declare namespace RadioItem {
    var displayName: string;
}
declare function Separator({ className, ...props }: MenuPrimitive.Separator.Props): import("react/jsx-runtime").JSX.Element;
declare namespace Separator {
    var displayName: string;
}
declare function Shortcut({ className, ...props }: React.ComponentProps<'span'>): import("react/jsx-runtime").JSX.Element;
declare namespace Shortcut {
    var displayName: string;
}
export type ContextMenuRootProps = RootProps;
export type ContextMenuTriggerProps = TriggerProps;
export type ContextMenuPopupProps = PopupProps;
declare const ContextMenu: typeof Root & {
    Root: typeof Root;
    Trigger: typeof Trigger;
    Portal: typeof Portal;
    Popup: typeof Popup;
    Group: typeof Group;
    Label: typeof Label;
    Item: typeof Item;
    Sub: typeof Sub;
    SubTrigger: typeof SubTrigger;
    SubPopup: typeof SubPopup;
    CheckboxItem: typeof CheckboxItem;
    RadioGroup: typeof RadioGroup;
    RadioItem: typeof RadioItem;
    Separator: typeof Separator;
    Shortcut: typeof Shortcut;
};
export { CheckboxItem as ContextMenuCheckboxItem, ContextMenu, Group as ContextMenuGroup, Item as ContextMenuItem, Label as ContextMenuLabel, Popup as ContextMenuPopup, Portal as ContextMenuPortal, RadioGroup as ContextMenuRadioGroup, RadioItem as ContextMenuRadioItem, Root as ContextMenuRoot, Separator as ContextMenuSeparator, Shortcut as ContextMenuShortcut, Sub as ContextMenuSub, SubPopup as ContextMenuSubPopup, SubTrigger as ContextMenuSubTrigger, Trigger as ContextMenuTrigger, };
