import { t as HeadingLevels } from "./utils-DUF1aMov.js";
import { Options, Props } from "@ariakit/react-utils";
import { ElementType } from "react";
//#region src/heading/heading.d.ts
type HeadingElements = `h${HeadingLevels}`;
declare const TagName = "h1";
type TagName = HeadingElements;
/**
 * Returns props to create a `Heading` component. The element type (or the
 * `aria-level` prop, if the element type is not a native heading) is determined
 * by the context level provided by the parent `HeadingLevel` component.
 * @see https://ariakit.com/components/heading
 * @example
 * ```jsx
 * const props = useHeading();
 * <Role {...props}>Heading</Role>
 * ```
 */
declare const useHeading: import("@ariakit/react-utils").Hook<"h1" | "h2" | "h3" | "h4" | "h5" | "h6", HeadingOptions<"h1" | "h2" | "h3" | "h4" | "h5" | "h6">>;
/**
 * Renders a heading element. The element type (or the `aria-level` attribute,
 * if the element type is not a native heading) is determined by the context
 * level provided by the closest
 * [`HeadingLevel`](https://ariakit.com/reference/heading-level) ancestor.
 * @see https://ariakit.com/components/heading
 * @example
 * ```jsx
 * <HeadingLevel>
 *   <Heading>Heading 1</Heading>
 *   <HeadingLevel>
 *     <Heading>Heading 2</Heading>
 *   </HeadingLevel>
 * </HeadingLevel>
 * ```
 */
declare const Heading: (props: HeadingProps) => import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>>;
interface HeadingOptions<_T extends ElementType = TagName> extends Options {}
type HeadingProps<T extends ElementType = TagName> = Props<T, HeadingOptions<T>>;
//#endregion
export { useHeading as i, HeadingOptions as n, HeadingProps as r, Heading as t };
//# sourceMappingURL=heading-hnz56WnL.d.ts.map