import { ElementDataType } from '../../types';
import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
import * as React from 'react';
/**
 * Dropdown menu primitives for building contextual menus.
 */
declare const DropdownMenu: React.FC<DropdownMenuPrimitive.DropdownMenuProps>;
declare const DropdownMenuTrigger: React.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuTriggerProps & React.RefAttributes<HTMLButtonElement>>;
declare const DropdownMenuGroup: React.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuGroupProps & React.RefAttributes<HTMLDivElement>>;
declare const DropdownMenuPortal: React.FC<DropdownMenuPrimitive.DropdownMenuPortalProps>;
declare const DropdownMenuSub: React.FC<DropdownMenuPrimitive.DropdownMenuSubProps>;
declare const DropdownMenuRadioGroup: React.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuRadioGroupProps & React.RefAttributes<HTMLDivElement>>;
/**
 * A submenu trigger item that shows a nested menu.
 * @returns {JSX.Element} The rendered DropdownMenuSubTrigger component.
 */
declare const DropdownMenuSubTrigger: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSubTriggerProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
    inset?: boolean;
} & React.RefAttributes<HTMLDivElement>>;
/**
 * Container for submenu content.
 * @returns {JSX.Element} The rendered DropdownMenuSubContent component.
 */
declare const DropdownMenuSubContent: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSubContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
/**
 * Root dropdown menu content surface.
 * @returns {JSX.Element} The rendered DropdownMenuContent component.
 */
declare const DropdownMenuContent: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
/**
 * A selectable menu item.
 * @returns {JSX.Element} The rendered DropdownMenuItem component.
 */
declare const DropdownMenuItem: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
    inset?: boolean;
} & React.RefAttributes<HTMLDivElement>>;
/**
 * A checkbox-style menu item.
 * @returns {JSX.Element} The rendered DropdownMenuCheckboxItem component.
 */
declare const DropdownMenuCheckboxItem: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuCheckboxItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
/**
 * A radio-style menu item.
 * @returns {JSX.Element} The rendered DropdownMenuRadioItem component.
 */
declare const DropdownMenuRadioItem: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuRadioItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
/**
 * Section label within the menu.
 * @returns {JSX.Element} The rendered DropdownMenuLabel component.
 */
declare const DropdownMenuLabel: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuLabelProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
    inset?: boolean;
} & React.RefAttributes<HTMLDivElement>>;
/**
 * Visual separator between groups of items.
 * @returns {JSX.Element} The rendered DropdownMenuSeparator component.
 */
declare const DropdownMenuSeparator: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSeparatorProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
/**
 * Right-aligned keyboard shortcut hint renderer.
 * @returns {JSX.Element} The rendered DropdownMenuShortcut component.
 */
declare const DropdownMenuShortcut: {
    ({ className, ...props }: React.HTMLAttributes<HTMLSpanElement>): import("react/jsx-runtime").JSX.Element;
    displayName: string;
};
/**
 * Props aggregation for components that wrap DropdownMenu primitives.
 * Useful for high-level components needing to forward props to specific Dropdown parts.
 */
/**
 * Props aggregation for components that wrap DropdownMenu primitives.
 * Useful for high-level components needing to forward props to specific Dropdown parts.
 * @property {React.ComponentPropsWithoutRef<typeof DropdownMenuTrigger> & ElementDataType} [triggerProps] - Props for the DropdownMenuTrigger component.
 * @property {React.ComponentPropsWithoutRef<typeof DropdownMenuContent> & ElementDataType} [contentProps] - Props for the DropdownMenuContent component.
 * @property {React.ComponentPropsWithoutRef<typeof DropdownMenuItem> & ElementDataType} [menuItemProps] - Props for the DropdownMenuItem component.
 * @property {React.ComponentPropsWithoutRef<typeof DropdownMenuSubTrigger> & ElementDataType} [subTriggerProps] - Props for the DropdownMenuSubTrigger component.
 * @property {React.ComponentPropsWithoutRef<typeof DropdownMenuSubContent> & ElementDataType} [subContentProps] - Props for the DropdownMenuSubContent component.
 */
interface DropdownContainerProps {
    triggerProps?: React.ComponentPropsWithoutRef<typeof DropdownMenuTrigger> & ElementDataType;
    contentProps?: React.ComponentPropsWithoutRef<typeof DropdownMenuContent> & ElementDataType;
    menuItemProps?: React.ComponentPropsWithoutRef<typeof DropdownMenuItem> & ElementDataType;
    subTriggerProps?: React.ComponentPropsWithoutRef<typeof DropdownMenuSubTrigger> & ElementDataType;
    subContentProps?: React.ComponentPropsWithoutRef<typeof DropdownMenuSubContent> & ElementDataType;
}
export { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, type DropdownContainerProps, };
//# sourceMappingURL=dropdown-menu.d.ts.map