import { c as getCollectionRendererItem, l as getCollectionRendererItemId } from "../collection-renderer-Bd8XAQhq.js";
import { CompositeRendererBaseItemProps, CompositeRendererItem, CompositeRendererItemObject, CompositeRendererItemProps, CompositeRendererOptions } from "../composite/composite-renderer.js";
import { s as SelectStoreValue, t as SelectStore } from "../select-store-C8tHSVWh.js";
import { Props } from "@ariakit/react-utils";
//#region src/select/select-renderer.d.ts
declare const TagName = "div";
type TagName = typeof TagName;
interface ItemObject extends CompositeRendererItemObject {
  value?: string;
}
type Item = ItemObject | CompositeRendererItem;
type BaseItemProps = CompositeRendererBaseItemProps;
type ItemProps<T extends Item, P extends BaseItemProps = BaseItemProps> = CompositeRendererItemProps<T, P>;
/** @deprecated Use `ComboboxRenderer` instead. */
declare const SelectRenderer: <T extends Item = any>(props: SelectRendererProps<T>) => import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>>;
/** @deprecated Use `getComboboxRendererItem` instead. */
declare const getSelectRendererItem: typeof getCollectionRendererItem;
/** @deprecated Use `getComboboxRendererItemId` instead. */
declare const getSelectRendererItemId: typeof getCollectionRendererItemId;
/** @deprecated Use `ComboboxRendererItemObject` instead. */
type SelectRendererItemObject = ItemObject;
/** @deprecated Use `ComboboxRendererItem` instead. */
type SelectRendererItem = Item;
/** @deprecated Use `ComboboxRendererBaseItemProps` instead. */
type SelectRendererBaseItemProps = BaseItemProps;
/** @deprecated Use `ComboboxRendererItemProps` instead. */
type SelectRendererItemProps<T extends Item, P extends BaseItemProps = BaseItemProps> = ItemProps<T, P>;
/** @deprecated Use `ComboboxRendererOptions` instead. */
interface SelectRendererOptions<T extends Item = any> extends Omit<CompositeRendererOptions<T>, "store"> {
  /**
   * Object returned by the
   * [`useSelectStore`](https://ariakit.com/reference/use-select-store) hook. If
   * not provided, the closest [Select](https://ariakit.com/components/select)
   * component's context will be used.
   *
   * The store [`items`](https://ariakit.com/reference/use-select-store#items)
   * state will be used to render the items if the
   * [`items`](https://ariakit.com/reference/select-items#items) prop is not
   * provided.
   */
  store?: SelectStore;
  /**
   * The current value of the select. This will ensure the item with the given
   * value is rendered even if it's not in the viewport, so it can be
   * automatically focused when the select popover is opened. If not provided,
   * the value will be read from the store.
   */
  value?: SelectStoreValue;
}
/** @deprecated Use `ComboboxRendererProps` instead. */
interface SelectRendererProps<T extends Item = any> extends Props<TagName, SelectRendererOptions<T>> {}
//#endregion
export { SelectRenderer, SelectRendererBaseItemProps, SelectRendererItem, SelectRendererItemObject, SelectRendererItemProps, SelectRendererOptions, SelectRendererProps, getSelectRendererItem, getSelectRendererItemId };
//# sourceMappingURL=select-renderer.d.ts.map