import React, { useState } from 'react'
import { useButton } from '@react-aria/button'
import { HiddenSelect, useSelect } from '@react-aria/select'
import { useSelectState, type SelectProps as AriaSelectProps } from '@react-stately/select'
import { Filter, FilterContents } from '~components/Filter/Filter'
import { type FilterButtonProps } from '~components/Filter/FilterButton'
import { SelectProvider } from '~components/SingleSelect/context'
import {
ListBoxSection,
ListItem,
Option,
SectionDivider,
SelectPopoverContents,
type SelectPopoverContentsProps,
} from '~components/SingleSelect/subcomponents'
import { getDisabledKeysFromItems } from '~components/SingleSelect/utils/getDisabledKeysFromItems'
import { transformSelectItemToCollectionElement } from '~components/SingleSelect/utils/transformSelectItemToCollectionElement'
import { type OverrideClassName } from '~components/types/OverrideClassName'
import { type SingleSelectItem, type SingleSelectOption } from './types'
import styles from './FilterSelect.module.css'
type OmittedAriaSelectProps =
| 'label'
| 'children'
| 'isOpen'
| 'onOpenChange'
| 'defaultOpen'
| 'items'
export type FilterSelectProps