// packages/components/src/heading/hook.ts
import { useContextSystem } from "../context/index.js";
import { useText } from "../text/index.js";
import { getHeadingFontSize } from "../utils/font-size.js";
import { CONFIG, COLORS } from "../utils/index.js";
function useHeading(props) {
  const {
    as: asProp,
    level = 2,
    color = COLORS.theme.foreground,
    isBlock = true,
    weight = CONFIG.fontWeightHeading,
    ...otherProps
  } = useContextSystem(props, "Heading");
  const as = asProp || `h${level}`;
  const a11yProps = {};
  if (typeof as === "string" && as[0] !== "h") {
    a11yProps.role = "heading";
    a11yProps["aria-level"] = typeof level === "string" ? parseInt(level) : level;
  }
  const textProps = useText({
    color,
    isBlock,
    weight,
    size: getHeadingFontSize(level),
    ...otherProps
  });
  return {
    ...textProps,
    ...a11yProps,
    as
  };
}
export {
  useHeading
};
//# sourceMappingURL=hook.js.map
