import { type Dispatch, type ReactNode, type SetStateAction } from 'react' import { Button as AriaButton, Menu as AriaMenu, MenuItem, MenuTrigger, Popover } from 'react-aria-components' import { cn } from '~/utils/cn' function Button(properties: Parameters[0]) { return ( ) } function Items(properties: Parameters[0]) { return ( {properties.children} ) } type ButtonProperties = Parameters[0] & { readonly control?: [boolean, Dispatch>]; } function ItemButton(properties: ButtonProperties) { return ( { properties.onPress?.(event) properties.control?.[1](true) }} /> ) } function Item(properties: Parameters[0]) { return ( ) } function Menu({ children }: { readonly children: ReactNode }) { return ( {children} ) } export default Object.assign(Menu, { Button, Item, ItemButton, Items })