import "./section_heading.css"; import type * as React from "react"; import { useRender } from "@base-ui/react/use-render"; import { type StyleProps } from "./style_props"; import { type HeadingLevel } from "./text"; export interface SectionProps extends StyleProps { children: React.ReactNode; testID?: string; ref?: React.Ref; render?: useRender.RenderProp; } /** The card-less twin of `Card`: a gap-spaced region with no surface; no `SectionBody`, since there is no * padding to own. */ export declare function Section({ children, testID, render, ref, ...rest }: SectionProps): React.ReactElement>; export interface SubsectionProps extends StyleProps { children: React.ReactNode; testID?: string; ref?: React.Ref; render?: useRender.RenderProp; } /** A named group inside a `Section` (`###`); siblings stack in a `SubsectionStack`, and the lead group may * be headingless. */ export declare function Subsection({ children, testID, render, ref, ...rest }: SubsectionProps): React.ReactElement>; export interface SubsectionHeadingProps extends StyleProps { children: React.ReactNode; testID?: string; ref?: React.Ref; render?: useRender.RenderProp; } export declare function SubsectionHeading({ children, testID, render, ref, ...rest }: SubsectionHeadingProps): React.ReactElement>; export interface SubsectionHeadingTitleProps extends StyleProps { children: React.ReactNode; description?: string; /** Defaults to 3, under `SectionHeadingTitle`'s 2. */ level?: HeadingLevel; /** A short "what this is" gloss, as on `SectionHeadingTitle`. */ info?: string; /** How many rows the part it heads holds, as a `Count` beside the words. */ count?: number; testID?: string; ref?: React.Ref; render?: useRender.RenderProp; } /** Always `###` (lg semibold), the fixed step under a page's section title; grows to push siblings right. * One rung: in a panel the section rung is already the floor (`####`), so a panel's named group is * `Text size="sm" weight="semibold"`. */ export declare function SubsectionHeadingTitle({ children, description, level, info, count, testID, render, ref, ...rest }: SubsectionHeadingTitleProps): React.ReactElement>; export interface SectionHeadingProps extends StyleProps { children: React.ReactNode; testID?: string; ref?: React.Ref; render?: useRender.RenderProp; } /** Every child after the title moves as one unit; only the title breaks away. It sits on the title's first * line, not centred on a column whose height depends on the description. A single verb still drops below * an overlong title. */ export declare function SectionHeading({ children, testID, render, ref, ...rest }: SectionHeadingProps): React.ReactElement>; export interface SectionHeadingAddProps extends StyleProps { /** The verb and what it adds — "Add line", "Log a call". */ label: string; onPress: () => void; /** The add opens a composer or a draft in the section's body: whether it stands open, announced as a * disclosure. Absent for an add that opens a dialog. */ expanded?: boolean; accessibilityLabel?: string; testID?: string; } /** THE SECTION'S ADD, in the one place a section's add goes: its heading row's trailing slot, above the body * it adds to — never an opener inside the body, whatever the body draws. Secondary: a record's one primary * act is its head's. It states `data-create` (`theming.md` §3). */ export declare function SectionHeadingAdd({ label, onPress, expanded, accessibilityLabel, testID, ...rest }: SectionHeadingAddProps): React.JSX.Element; export interface SectionHeadingTitleProps extends StyleProps { children: React.ReactNode; description?: string; /** Only when the outline needs a rank the surface does not give; defaults to the rung's (`2` page, `4` * panel). Never moves the size. */ level?: HeadingLevel; /** `medium` for a heading competing with a stronger band above. */ weight?: "medium" | "semibold"; /** A short "what this is" gloss, as on `CardHeaderTitle`. */ info?: string; /** The full count as a `Count` beside the words, where the rows show the latest few; never in the title. */ count?: number; testID?: string; ref?: React.Ref; render?: useRender.RenderProp; } /** The section rung of the ladder `#` xxl (`RecordSummary`/`PageHeader`) → `##` xl → `###` lg * (`SubsectionHeadingTitle`) over sm body; the surface picks it (`heading_surface.ts`). In a panel this * is the floor, so a group inside is `Text size="sm" weight="semibold"`, not an out-ranking subsection * title. No glyph slot: a heading is its words and its verb; a subject's mark leads the surface naming * it. Grows to push actions right. */ export declare function SectionHeadingTitle({ children, description, level, weight, info, count, testID, render, ref, ...rest }: SectionHeadingTitleProps): React.ReactElement>; export interface SectionHeadingMetaProps extends StyleProps { children: React.ReactNode; testID?: string; ref?: React.Ref; render?: useRender.RenderProp; } /** A count, unit or period — `CardHeaderMeta`'s card-less twin. */ export declare function SectionHeadingMeta({ children, testID, render, ref, ...rest }: SectionHeadingMetaProps): React.JSX.Element;