import "./danger_section.css"; import type * as React from "react"; import { useRender } from "@base-ui/react/use-render"; import { type ConfirmRequest } from "./alert"; import { type StyleProps } from "./style_props"; /** An act declared here cannot run without its confirm. */ export interface DangerAction { key: string; /** Verb and noun ("Delete order"), the same phrase as the confirm's commit. */ label: string; confirm: ConfirmRequest; } export interface DangerSectionProps extends StyleProps { /** Defaults to the locale's `dangerSection.title`. */ title?: string; /** The consequence; usually irreversible, so say so. */ description?: string; /** The standard shape: `danger` buttons whose press raises {@link DangerAction.confirm}. */ actions?: readonly DangerAction[]; /** * A non-standard body (a form, a statement) in its own block above the acts, since in the row it * reads as a button. Ordinary destructive acts belong in `actions`. */ children?: React.ReactNode; testID?: string; ref?: React.Ref; render?: useRender.RenderProp; } /** * The irreversible record actions (delete, archive, transfer), set apart at the bottom of a record * or settings surface. Each act carries the `ConfirmRequest` it raises, so the fence confirms * rather than merely warns. One left edge via `Callout`'s anatomy: the glyph beside a `body` * column. */ export declare function DangerSection({ title, description, actions, children, testID, render, ref, ...props }: DangerSectionProps): React.ReactElement>;