import { VisuallyHiddenOptions } from "../visually-hidden/visually-hidden.js";
import { Props } from "@ariakit/react-utils";
import { ElementType } from "react";
//#region src/focus-trap/focus-trap.d.ts
declare const TagName = "span";
type TagName = typeof TagName;
/**
 * Returns props to create a `FocusTrap` component.
 * @see https://ariakit.com/components/focus-trap
 * @example
 * ```jsx
 * const props = useFocusTrap();
 * <Role {...props} />
 * ```
 */
declare const useFocusTrap: import("@ariakit/react-utils").Hook<"span", FocusTrapOptions<"span">>;
/**
 * Renders a focus trap element.
 * @see https://ariakit.com/components/focus-trap
 * @example
 * ```jsx
 * <FocusTrap onFocus={focusSomethingElse} />
 * ```
 */
declare const FocusTrap: (props: FocusTrapProps) => import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>>;
type FocusTrapOptions<T extends ElementType = TagName> = VisuallyHiddenOptions<T>;
type FocusTrapProps<T extends ElementType = TagName> = Props<T, FocusTrapOptions<T>>;
//#endregion
export { FocusTrap, FocusTrapOptions, FocusTrapProps, useFocusTrap };
//# sourceMappingURL=focus-trap.d.ts.map