import { ContextMenu as BaseContextMenu } from "@base-ui/react/context-menu";
import { useRender } from "@base-ui/react/use-render";
import * as React from "react";
interface ContextMenuProps extends React.ComponentPropsWithRef<typeof BaseContextMenu.Root> {
}
interface ContextMenuTriggerProps extends Omit<React.ComponentPropsWithRef<typeof BaseContextMenu.Trigger>, "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 ContextMenuSubTriggerProps extends Omit<React.ComponentPropsWithRef<typeof BaseContextMenu.SubmenuTrigger>, "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 ContextMenuContentProps extends Omit<React.ComponentPropsWithRef<typeof BaseContextMenu.Positioner>, "className"> {
    /**
     * Applies additional CSS classes to the component root element.
     * @default undefined
     */
    className?: string;
}
interface ContextMenuItemProps extends Omit<React.ComponentPropsWithRef<typeof BaseContextMenu.Item>, "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 ContextMenuCheckboxItemProps extends Omit<React.ComponentPropsWithRef<typeof BaseContextMenu.CheckboxItem>, "className"> {
    /**
     * Applies additional CSS classes to the component root element.
     * @default undefined
     */
    className?: string;
}
interface ContextMenuRadioItemProps extends Omit<React.ComponentPropsWithRef<typeof BaseContextMenu.RadioItem>, "className"> {
    /**
     * Applies additional CSS classes to the component root element.
     * @default undefined
     */
    className?: string;
}
interface ContextMenuLabelProps extends Omit<React.ComponentPropsWithRef<typeof BaseContextMenu.GroupLabel>, "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 ContextMenuSeparatorProps extends Omit<React.ComponentPropsWithRef<typeof BaseContextMenu.Separator>, "className"> {
    /**
     * Applies additional CSS classes to the component root element.
     * @default undefined
     */
    className?: string;
}
interface ContextMenuShortcutProps 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<Record<string, never>>;
    /**
     * Enables child element composition instead of rendering the default wrapper.
     * @default false
     * @deprecated Prefer Base UI's `render` prop.
     */
    asChild?: boolean;
}
/**
 * Coordinates context 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/context-menu | Base UI Context Menu}
 * - Preserves the underlying primitive API for advanced composition
 *
 * @example
 * ```tsx
 * <ContextMenu>Content</ContextMenu>
 * ```
 *
 * @see {@link https://base-ui.com/react/components/context-menu | Base UI Documentation}
 */
declare function ContextMenu(props: Readonly<ContextMenu.Props>): React.ReactElement;
declare namespace ContextMenu {
    var displayName: string;
}
/**
 * Renders the context menu group.
 *
 * @remarks
 * - Delegates structure and state to the underlying Base UI primitive
 * - Built on {@link https://base-ui.com/react/components/context-menu | Base UI Context Menu}
 * - Preserves the underlying primitive API for advanced composition
 *
 * @example
 * ```tsx
 * <ContextMenuGroup>Content</ContextMenuGroup>
 * ```
 *
 * @see {@link https://base-ui.com/react/components/context-menu | Base UI Documentation}
 */
declare const ContextMenuGroup: React.ForwardRefExoticComponent<Omit<import("@base-ui/react").ContextMenuGroupProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
/**
 * Provides the context menu portal container.
 *
 * @remarks
 * - Delegates structure and state to the underlying Base UI primitive
 * - Built on {@link https://base-ui.com/react/components/context-menu | Base UI Context Menu}
 * - Preserves the underlying primitive API for advanced composition
 *
 * @example
 * ```tsx
 * <ContextMenuPortal>Content</ContextMenuPortal>
 * ```
 *
 * @see {@link https://base-ui.com/react/components/context-menu | Base UI Documentation}
 */
declare const ContextMenuPortal: React.ForwardRefExoticComponent<Omit<import("@base-ui/react").ContextMenuPortalProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
/**
 * Coordinates the context menu radio group.
 *
 * @remarks
 * - Delegates structure and state to the underlying Base UI primitive
 * - Built on {@link https://base-ui.com/react/components/context-menu | Base UI Context Menu}
 * - Preserves the underlying primitive API for advanced composition
 *
 * @example
 * ```tsx
 * <ContextMenuRadioGroup>Content</ContextMenuRadioGroup>
 * ```
 *
 * @see {@link https://base-ui.com/react/components/context-menu | Base UI Documentation}
 */
declare const ContextMenuRadioGroup: React.NamedExoticComponent<Omit<import("@base-ui/react").ContextMenuRadioGroupProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
/**
 * Coordinates the context menu sub.
 *
 * @remarks
 * - Delegates structure and state to the underlying Base UI primitive
 * - Built on {@link https://base-ui.com/react/components/context-menu | Base UI Context Menu}
 * - Preserves the underlying primitive API for advanced composition
 *
 * @example
 * ```tsx
 * <ContextMenuSub>Content</ContextMenuSub>
 * ```
 *
 * @see {@link https://base-ui.com/react/components/context-menu | Base UI Documentation}
 */
declare const ContextMenuSub: typeof BaseContextMenu.SubmenuRoot & {
    displayName?: string;
};
/**
 * Renders the context menu trigger.
 *
 * @remarks
 * - Renders a `<div>` element by default
 * - Built on {@link https://base-ui.com/react/components/context-menu | Base UI Context Menu}
 * - Supports the `render` prop for element composition
 *
 * @example
 * ```tsx
 * <ContextMenuTrigger>Content</ContextMenuTrigger>
 * ```
 *
 * @see {@link https://base-ui.com/react/components/context-menu | Base UI Documentation}
 */
declare const ContextMenuTrigger: React.ForwardRefExoticComponent<Omit<ContextMenuTriggerProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
/**
 * Renders the context menu sub trigger.
 *
 * @remarks
 * - Renders a `<div>` element by default
 * - Built on {@link https://base-ui.com/react/components/context-menu | Base UI Context Menu}
 * - Supports the `render` prop for element composition
 *
 * @example
 * ```tsx
 * <ContextMenuSubTrigger>Content</ContextMenuSubTrigger>
 * ```
 *
 * @see {@link https://base-ui.com/react/components/context-menu | Base UI Documentation}
 */
declare function ContextMenuSubTrigger(props: Readonly<ContextMenuSubTrigger.Props>): React.ReactElement;
declare namespace ContextMenuSubTrigger {
    var displayName: string;
}
/**
 * Renders the context menu sub content.
 *
 * @remarks
 * - Renders a `<div>` element by default
 * - Built on {@link https://base-ui.com/react/components/context-menu | Base UI Context Menu}
 * - Supports the `render` prop for element composition
 *
 * @example
 * ```tsx
 * <ContextMenuSubContent>Content</ContextMenuSubContent>
 * ```
 *
 * @see {@link https://base-ui.com/react/components/context-menu | Base UI Documentation}
 */
declare function ContextMenuSubContent(props: Readonly<ContextMenuContent.Props>): React.ReactElement;
declare namespace ContextMenuSubContent {
    var displayName: string;
}
/**
 * Renders the context menu content.
 *
 * @remarks
 * - Renders a `<div>` element by default
 * - Built on {@link https://base-ui.com/react/components/context-menu | Base UI Context Menu}
 * - Supports the `render` prop for element composition
 *
 * @example
 * ```tsx
 * <ContextMenuContent>Content</ContextMenuContent>
 * ```
 *
 * @see {@link https://base-ui.com/react/components/context-menu | Base UI Documentation}
 */
declare const ContextMenuContent: React.ForwardRefExoticComponent<Omit<ContextMenuContentProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
/**
 * Renders the context menu item.
 *
 * @remarks
 * - Renders a `<div>` element by default
 * - Built on {@link https://base-ui.com/react/components/context-menu | Base UI Context Menu}
 * - Supports the `render` prop for element composition
 *
 * @example
 * ```tsx
 * <ContextMenuItem>Content</ContextMenuItem>
 * ```
 *
 * @see {@link https://base-ui.com/react/components/context-menu | Base UI Documentation}
 */
declare function ContextMenuItem(props: Readonly<ContextMenuItem.Props>): React.ReactElement;
declare namespace ContextMenuItem {
    var displayName: string;
}
/**
 * Renders the context menu checkbox item.
 *
 * @remarks
 * - Renders a `<div>` element by default
 * - Built on {@link https://base-ui.com/react/components/context-menu | Base UI Context Menu}
 * - Supports the `render` prop for element composition
 *
 * @example
 * ```tsx
 * <ContextMenuCheckboxItem>Content</ContextMenuCheckboxItem>
 * ```
 *
 * @see {@link https://base-ui.com/react/components/context-menu | Base UI Documentation}
 */
declare function ContextMenuCheckboxItem(props: Readonly<ContextMenuCheckboxItem.Props>): React.ReactElement;
declare namespace ContextMenuCheckboxItem {
    var displayName: string;
}
/**
 * Renders the context menu radio item.
 *
 * @remarks
 * - Renders a `<div>` element by default
 * - Built on {@link https://base-ui.com/react/components/context-menu | Base UI Context Menu}
 * - Supports the `render` prop for element composition
 *
 * @example
 * ```tsx
 * <ContextMenuRadioItem>Content</ContextMenuRadioItem>
 * ```
 *
 * @see {@link https://base-ui.com/react/components/context-menu | Base UI Documentation}
 */
declare function ContextMenuRadioItem(props: Readonly<ContextMenuRadioItem.Props>): React.ReactElement;
declare namespace ContextMenuRadioItem {
    var displayName: string;
}
/**
 * Renders the context menu label.
 *
 * @remarks
 * - Renders a `<div>` element by default
 * - Built on {@link https://base-ui.com/react/components/context-menu | Base UI Context Menu}
 * - Supports the `render` prop for element composition
 *
 * @example
 * ```tsx
 * <ContextMenuLabel>Content</ContextMenuLabel>
 * ```
 *
 * @see {@link https://base-ui.com/react/components/context-menu | Base UI Documentation}
 */
declare function ContextMenuLabel(props: Readonly<ContextMenuLabel.Props>): React.ReactElement;
declare namespace ContextMenuLabel {
    var displayName: string;
}
/**
 * Renders the context menu separator.
 *
 * @remarks
 * - Renders a `<div>` element by default
 * - Built on {@link https://base-ui.com/react/components/context-menu | Base UI Context Menu}
 * - Supports the `render` prop for element composition
 *
 * @example
 * ```tsx
 * <ContextMenuSeparator>Content</ContextMenuSeparator>
 * ```
 *
 * @see {@link https://base-ui.com/react/components/context-menu | Base UI Documentation}
 */
declare function ContextMenuSeparator(props: Readonly<ContextMenuSeparator.Props>): React.ReactElement;
declare namespace ContextMenuSeparator {
    var displayName: string;
}
/**
 * Renders the context menu shortcut.
 *
 * @remarks
 * - Renders a `<span>` element by default
 * - Built on {@link https://base-ui.com/react/components/context-menu | Base UI Context Menu}
 * - Supports the `render` prop for element composition
 *
 * @example
 * ```tsx
 * <ContextMenuShortcut>Content</ContextMenuShortcut>
 * ```
 *
 * @see {@link https://base-ui.com/react/components/context-menu | Base UI Documentation}
 */
declare function ContextMenuShortcut(props: Readonly<ContextMenuShortcut.Props>): React.ReactElement;
declare namespace ContextMenuShortcut {
    var displayName: string;
}
declare namespace ContextMenu {
    type Props = ContextMenuProps;
    type State = BaseContextMenu.Root.State;
}
declare namespace ContextMenuTrigger {
    type Props = ContextMenuTriggerProps;
    type State = BaseContextMenu.Trigger.State;
}
declare namespace ContextMenuSubTrigger {
    type Props = ContextMenuSubTriggerProps;
    type State = BaseContextMenu.SubmenuTrigger.State;
}
declare namespace ContextMenuContent {
    type Props = ContextMenuContentProps;
    type State = BaseContextMenu.Popup.State;
}
declare namespace ContextMenuSubContent {
    type Props = ContextMenuContentProps;
    type State = BaseContextMenu.Popup.State;
}
declare namespace ContextMenuItem {
    type Props = ContextMenuItemProps;
    type State = BaseContextMenu.Item.State;
}
declare namespace ContextMenuCheckboxItem {
    type Props = ContextMenuCheckboxItemProps;
    type State = BaseContextMenu.CheckboxItem.State;
}
declare namespace ContextMenuRadioItem {
    type Props = ContextMenuRadioItemProps;
    type State = BaseContextMenu.RadioItem.State;
}
declare namespace ContextMenuLabel {
    type Props = ContextMenuLabelProps;
    type State = BaseContextMenu.GroupLabel.State;
}
declare namespace ContextMenuSeparator {
    type Props = ContextMenuSeparatorProps;
    type State = BaseContextMenu.Separator.State;
}
declare namespace ContextMenuShortcut {
    type Props = ContextMenuShortcutProps;
    type State = Record<string, never>;
}
export { ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, };
//# sourceMappingURL=context-menu.d.ts.map