import { type HTMLAttributes, type HtmlHTMLAttributes, type ReactElement, type ReactNode, } from "react"; import { type PropsWithRef } from "./types.js"; /** * @since 6.0.0 */ export interface RootHtmlProps extends HtmlHTMLAttributes { /** @defaultValue `"ltr"` */ dir?: string; /** @defaultValue `"en"` */ lang?: string; /** * Any additional props to provide to the `` element and also supports a * `ref` if that is required for some reason. Using a `ref` would make your * root layout a client component though. */ bodyProps?: PropsWithRef>; /** * Convenience prop to replace `bodyProps={{ className: "custom-class-name" }}`. */ bodyClassName?: string; /** * Any content to render before the `` tag. This can be useful if you * need to render a custom `` element. */ beforeBodyChildren?: ReactNode; /** * Any content to render after the `` tag. This can be useful to insert * `