import { t as CompositeStore } from "./composite-store-9jZQUYDt.js";
import { Options, Props } from "@ariakit/react-utils";
import { ElementType } from "react";
//#region src/composite/composite-typeahead.d.ts
declare const TagName = "div";
type TagName = typeof TagName;
/**
 * Returns props to create a `CompositeTypeahead` component.
 * @see https://ariakit.com/components/composite
 * @example
 * ```jsx
 * const store = useCompositeStore();
 * const props = useCompositeTypeahead({ store });
 * <Composite store={store} {...props}>
 *   <CompositeItem>Item 1</CompositeItem>
 *   <CompositeItem>Item 2</CompositeItem>
 * </Composite>
 * ```
 */
declare const useCompositeTypeahead: import("@ariakit/react-utils").Hook<"div", CompositeTypeaheadOptions<"div">>;
/**
 * Renders a component that adds typeahead functionality to composite
 * components.
 *
 * When the
 * [`typeahead`](https://ariakit.com/reference/composite-typeahead#typeahead)
 * prop is enabled, which it is by default, hitting printable character keys
 * will move focus to the next composite item that begins with the input
 * characters.
 * @see https://ariakit.com/components/composite
 * @example
 * ```jsx
 * <CompositeProvider>
 *   <Composite render={<CompositeTypeahead />}>
 *     <CompositeItem>Item 1</CompositeItem>
 *     <CompositeItem>Item 2</CompositeItem>
 *   </Composite>
 * </CompositeProvider>
 * ```
 */
declare const CompositeTypeahead: (props: CompositeTypeaheadProps) => import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>>;
interface CompositeTypeaheadOptions<_T extends ElementType = TagName> extends Options {
  /**
   * Object returned by the
   * [`useCompositeStore`](https://ariakit.com/reference/use-composite-store)
   * hook. If not provided, the closest
   * [`Composite`](https://ariakit.com/reference/composite) or
   * [`CompositeProvider`](https://ariakit.com/reference/composite-provider)
   * components' context will be used.
   */
  store?: CompositeStore;
  /**
   * When enabled, pressing printable character keys will move focus to the next
   * composite item that starts with the entered characters.
   * @default true
   */
  typeahead?: boolean;
}
type CompositeTypeaheadProps<T extends ElementType = TagName> = Props<T, CompositeTypeaheadOptions<T>>;
//#endregion
export { useCompositeTypeahead as i, CompositeTypeaheadOptions as n, CompositeTypeaheadProps as r, CompositeTypeahead as t };
//# sourceMappingURL=composite-typeahead-CcgA3PL9.d.ts.map