import { type Key, type Node } from '@react-types/shared' export type SingleSelectOption = { label: string value: Key disabled?: boolean options?: never } export type SingleSelectOptionGroup = { label: string options: Iterable } export type SingleSelectItem = | Option | SingleSelectOptionGroup export type SingleSelectOptionNode = Node & { type: 'item' hasChildNodes: false } export type SingleSelectOptionGroupNode = Omit>, 'childNodes'> & { type: 'section' hasChildNodes: true childNodes: SingleSelectOptionNode[] } export type SingleSelectItemNode = | SingleSelectOptionNode | SingleSelectOptionGroupNode