import { AnchorHTMLAttributes, HTMLAttributes, ReactElement, ReactNode, default as React } from 'react'; import { SafeOmit } from '../../.deps/utils/src'; interface HTMLSectionAttributes extends SafeOmit, 'children' | 'title'> { } export interface SectionOwnProps { /** * The content of the section. */ children: React.ReactNode; /** * Slot for a tag element. */ tag?: React.ReactNode; /** * Title of the section. * If provided, it will be rendered as an H1 element. * If you want to use a different heading level, use the `tag` prop instead. */ title?: string | ReactNode; /** * Additional content rendered inline next to the H1 title (e.g. a copy-to-clipboard button). * Only rendered when `title` is provided. */ headerContent?: ReactNode; /** * Removes bottom and top padding. */ noSpace?: boolean; /** * Sets flex-grow: 1 on the section. * Useful for sections that should fill the remaining space in a flex container. * @default false */ grow?: boolean; /** * Slot for the link to the next page */ next?: ReactElement | false | null | undefined; /** * Slot for the link to the previous page */ previous?: ReactElement | false | null | undefined; } export interface SectionProps extends SectionOwnProps, HTMLSectionAttributes { } export declare const Section: (({ children, tag, title, headerContent, noSpace, grow, previous, next, ...rest }: SectionProps) => React.JSX.Element) & { Link: typeof SectionLink; }; interface InheritedHTMLAnchorProps extends SafeOmit, 'className' | 'href'> { } interface SectionLinkProps extends InheritedHTMLAnchorProps { label?: string; type: 'previous' | 'next'; href?: string | false | null; } declare function SectionLink(props: SectionLinkProps): React.JSX.Element; export {};