import { Menu as BaseMenu } from "@base-ui/react/menu"; import { useRender } from "@base-ui/react/use-render"; import * as React from "react"; interface DropdownMenuProps extends React.ComponentPropsWithRef { } interface DropdownMenuTriggerProps extends Omit, "className"> { /** * Applies additional CSS classes to the component root element. * @default undefined */ className?: string; /** * Enables child element composition instead of rendering the default wrapper. * @default false * @deprecated Prefer Base UI's `render` prop. */ asChild?: boolean; } interface DropdownMenuSubTriggerProps extends Omit, "className"> { /** * Applies additional CSS classes to the component root element. * @default undefined */ className?: string; /** * Applies inset spacing to align nested content. * @default false */ inset?: boolean; } interface DropdownMenuContentProps extends Omit, "className"> { /** * Applies additional CSS classes to the component root element. * @default undefined */ className?: string; } interface DropdownMenuItemProps extends Omit, "className"> { /** * Applies additional CSS classes to the component root element. * @default undefined */ className?: string; /** * Applies inset spacing to align nested content. * @default false */ inset?: boolean; /** * Enables child element composition instead of rendering the default wrapper. * @default false * @deprecated Prefer Base UI's `render` prop. */ asChild?: boolean; } interface DropdownMenuCheckboxItemProps extends Omit, "className"> { /** * Applies additional CSS classes to the component root element. * @default undefined */ className?: string; } interface DropdownMenuRadioItemProps extends Omit, "className"> { /** * Applies additional CSS classes to the component root element. * @default undefined */ className?: string; } interface DropdownMenuLabelProps extends Omit, "className"> { /** * Applies additional CSS classes to the component root element. * @default undefined */ className?: string; /** * Applies inset spacing to align nested content. * @default false */ inset?: boolean; } interface DropdownMenuSeparatorProps extends Omit, "className"> { /** * Applies additional CSS classes to the component root element. * @default undefined */ className?: string; } interface DropdownMenuShortcutProps extends React.ComponentPropsWithRef<"span"> { /** * Applies additional CSS classes to the component root element. * @default undefined */ className?: string; /** * Overrides the default rendered element while preserving component behavior. * @default undefined */ render?: useRender.RenderProp>; /** * Enables child element composition instead of rendering the default wrapper. * @default false * @deprecated Prefer Base UI's `render` prop. */ asChild?: boolean; } /** * Coordinates dropdown menu state and accessibility behavior. * * @remarks * - Delegates structure and state to the underlying Base UI primitive * - Built on {@link https://base-ui.com/react/components/menu | Base UI Menu} * - Preserves the underlying primitive API for advanced composition * * @example * ```tsx * Content * ``` * * @see {@link https://base-ui.com/react/components/menu | Base UI Documentation} */ declare function DropdownMenu(props: Readonly): React.ReactElement; declare namespace DropdownMenu { var displayName: string; } /** * Renders the dropdown menu group. * * @remarks * - Delegates structure and state to the underlying Base UI primitive * - Built on {@link https://base-ui.com/react/components/menu | Base UI Menu} * - Preserves the underlying primitive API for advanced composition * * @example * ```tsx * Content * ``` * * @see {@link https://base-ui.com/react/components/menu | Base UI Documentation} */ declare const DropdownMenuGroup: React.ForwardRefExoticComponent & React.RefAttributes>; /** * Provides the dropdown menu portal container. * * @remarks * - Delegates structure and state to the underlying Base UI primitive * - Built on {@link https://base-ui.com/react/components/menu | Base UI Menu} * - Preserves the underlying primitive API for advanced composition * * @example * ```tsx * Content * ``` * * @see {@link https://base-ui.com/react/components/menu | Base UI Documentation} */ declare const DropdownMenuPortal: React.ForwardRefExoticComponent & React.RefAttributes>; /** * Coordinates the dropdown menu radio group. * * @remarks * - Delegates structure and state to the underlying Base UI primitive * - Built on {@link https://base-ui.com/react/components/menu | Base UI Menu} * - Preserves the underlying primitive API for advanced composition * * @example * ```tsx * Content * ``` * * @see {@link https://base-ui.com/react/components/menu | Base UI Documentation} */ declare const DropdownMenuRadioGroup: React.NamedExoticComponent & React.RefAttributes>; /** * Coordinates the dropdown menu sub. * * @remarks * - Delegates structure and state to the underlying Base UI primitive * - Built on {@link https://base-ui.com/react/components/menu | Base UI Menu} * - Preserves the underlying primitive API for advanced composition * * @example * ```tsx * Content * ``` * * @see {@link https://base-ui.com/react/components/menu | Base UI Documentation} */ declare const DropdownMenuSub: typeof BaseMenu.SubmenuRoot & { displayName?: string; }; /** * Renders the dropdown menu trigger. * * @remarks * - Renders a `