import type { BooleanOrCallback } from "@ariakit/core/utils/types"; import type { ElementType, KeyboardEvent, MouseEvent, SelectHTMLAttributes } from "react"; import type { CompositeTypeaheadOptions } from "../composite/composite-typeahead.tsx"; import type { PopoverDisclosureOptions } from "../popover/popover-disclosure.tsx"; import type { Props } from "../utils/types.ts"; import type { SelectStore } from "./select-store.ts"; declare const TagName = "button"; type TagName = typeof TagName; /** * Returns props to create a `Select` component. * @see https://ariakit.com/components/select * @example * ```jsx * const store = useSelectStore(); * const props = useSelect({ store }); * * ``` */ export declare const useSelect: import("../utils/types.ts").Hook<"button", SelectOptions<"button">>; /** * Renders a custom select element that controls the visibility of either a * [`SelectList`](https://ariakit.com/reference/select-list) or a * [`SelectPopover`](https://ariakit.com/reference/select-popover) component. * * By default, the * [`value`](https://ariakit.com/reference/select-provider#value) state is * rendered as the children, followed by a * [`SelectArrow`](https://ariakit.com/reference/select-arrow) component. This * can be customized by passing different children to the component. * @see https://ariakit.com/components/select * @example * ```jsx {2} * *