` with `text-cladd-md font-semibold`. Auto-wired to `aria-labelledby`. */
title?: ReactNode;
/** Body text slot. Rendered as `
` with `text-cladd-sm leading-relaxed`. Auto-wired to `aria-describedby`. */
text?: ReactNode;
/** Set to `true` when the dialog is rendered inside a React `lazy()` + `Suspense` boundary so it opens on the next tick (after the lazy chunk has resolved and mounted). */
lazy?: boolean;
/** Custom button row. Rendered after the auto-generated cancel/confirm buttons (if any). */
buttons?: ReactNode;
/**
* "Type to confirm" guard. When set, renders an `Input` and disables the confirm button until the user types this exact string - used for destructive actions (e.g. type the project name to delete).
*/
requireConfirmText?: string;
/** Stop click propagation on backdrop and surface. Useful when the dialog is rendered inside a clickable parent. */
stopPropagationOnClick?: boolean;
/** Default `true`. */
closeOnBackdropClick?: boolean;
/** Default `true`. Suppressed automatically when this dialog has a child popover/dialog open. */
closeOnEscape?: boolean;
/** Label for the cancel button. When omitted, the cancel button is not rendered. */
cancelButtonText?: ReactNode;
/** Label for the confirm button. When omitted, the confirm button is not rendered. */
confirmButtonText?: ReactNode;
/** Color for the cancel button. Default `'neutral'`. */
cancelButtonColor?: Color;
/** Color for the confirm button. Default: theme accent color. */
confirmButtonColor?: Color;
/** Forwarded to the underlying `Surface` as `level`. Default `1`. */
surfaceLevel?: string | number;
/** Surface variant. Default depends on theme: `'solid'` for light, `'gradient'` for dark. */
variant?: SurfaceVariant;
/** Outline ring on the dialog surface. Default `true` for dark, `false` for light. */
outline?: boolean;
/** Fires after the cancel button is pressed (the dialog also closes). */
onCancel?: () => void;
/** Fires after the confirm button is pressed and the `requireConfirmText` guard (if any) is satisfied. */
onConfirm?: () => void;
/** Forwarded to the dialog surface root. */
ref?: Ref;
/** ARIA label fallback when no `aria-labelledby`/`title` is set. */
'aria-label'?: string;
/** Override the auto-wired label id. By default this is the `title` element's id. */
'aria-labelledby'?: string;
/** Override the auto-wired description id. By default this is the `text` element's id. */
'aria-describedby'?: string;
/** Custom content rendered between `text` and the optional confirm-input/buttons row. */
children?: ReactNode;
}
/** Shape of `Dialog` defaults that can be supplied via `CladdProvider`'s `defaults` prop. */
export type DialogDefaultProps = Partial>;
export declare const Dialog: (props: DialogProps) => import("react/jsx-runtime").JSX.Element;
//# sourceMappingURL=Dialog.d.ts.map