import { type ComponentPropsWithoutRef, type ReactNode, type Ref } from 'react'; import { type CssLength, type CssTime } from '../../../utils/css'; type MaterialDotsMenuButtonItem = { id: string; label: ReactNode; icon: ReactNode; disabled?: boolean; }; type MaterialDotsMenuButtonProps = Omit, 'children' | 'color' | 'onSelect'> & { items?: readonly MaterialDotsMenuButtonItem[]; selectedId?: string; defaultSelectedId?: string; onSelectedIdChange?: (id: string) => void; onItemSelect?: (item: MaterialDotsMenuButtonItem) => void; open?: boolean; defaultOpen?: boolean; onOpenChange?: (open: boolean) => void; closeOnSelect?: boolean; closeOnOutsideClick?: boolean; disabled?: boolean; ariaLabel?: string; closeAriaLabel?: string; menuLabel?: string; size?: CssLength; expandedWidth?: CssLength; itemSize?: CssLength; dotSize?: CssLength; duration?: CssTime; backgroundColor?: string; itemBackgroundColor?: string; itemColor?: string; selectedColor?: string; rippleColor?: string; ref?: Ref; }; declare const MaterialDotsMenuButton: ({ items, selectedId, defaultSelectedId, onSelectedIdChange, onItemSelect, open, defaultOpen, onOpenChange, closeOnSelect, closeOnOutsideClick, disabled, ariaLabel, closeAriaLabel, menuLabel, size, expandedWidth, itemSize, dotSize, duration, backgroundColor, itemBackgroundColor, itemColor, selectedColor, rippleColor, className, style, ref, ...rootProps }: MaterialDotsMenuButtonProps) => import("react/jsx-runtime").JSX.Element; export { MaterialDotsMenuButton }; export type { MaterialDotsMenuButtonItem, MaterialDotsMenuButtonProps };