import React from 'react';
import { type HTMLMotionProps } from 'framer-motion';
type RootVerticalPlacement = 'auto' | 'top' | 'bottom';
type RootHorizontalPlacement = 'auto' | 'left' | 'right';
type SubmenuHorizontalPlacement = 'auto' | 'left' | 'right';
export interface DropdownMenuProps {
children: React.ReactNode;
open?: boolean;
defaultOpen?: boolean;
onOpenChange?: (open: boolean) => void;
placement?: RootVerticalPlacement;
className?: string;
}
export declare const DropdownMenu: React.FC;
export interface DropdownMenuTriggerProps extends React.ButtonHTMLAttributes {
asChild?: boolean;
children: React.ReactNode;
}
export declare const DropdownMenuTrigger: React.ForwardRefExoticComponent>;
export interface DropdownMenuContentProps extends Omit, 'children'> {
children: React.ReactNode;
align?: 'start' | 'end';
side?: RootHorizontalPlacement;
sideOffset?: number;
animate?: boolean;
}
export declare const DropdownMenuContent: React.FC;
export interface DropdownMenuItemProps extends React.HTMLAttributes {
children: React.ReactNode;
asChild?: boolean;
disabled?: boolean;
closeOnSelect?: boolean;
}
export declare const DropdownMenuItem: React.ForwardRefExoticComponent>;
export interface DropdownMenuSubProps {
children: React.ReactNode;
defaultOpen?: boolean;
placement?: SubmenuHorizontalPlacement;
}
export declare const DropdownMenuSub: React.FC;
export interface DropdownMenuSubTriggerProps extends React.ButtonHTMLAttributes {
asChild?: boolean;
children: React.ReactNode;
}
export declare const DropdownMenuSubTrigger: React.ForwardRefExoticComponent>;
export interface DropdownMenuSubContentProps extends Omit, 'children'> {
children: React.ReactNode;
sideOffset?: number;
animate?: boolean;
}
export declare const DropdownMenuSubContent: React.FC;
export {};