import { ReactNode } from 'react'; /** * Layout presets for the canonical dialog header. * * - "inline": (default) icon on the LEFT, title + description stacked to * its right. The classic apple-sheet banner with a status * glyph beside the primary label. This is the house style for * Spectre admin dialogs — compact and consistent across * surfaces. * - "centered": icon on top, title + description centered beneath. Reserved * for hero-style modals where the dialog is a distinct, * attention-grabbing moment (e.g. onboarding, large * confirmation surfaces). * - "plain": no icon, title + description only, left-aligned. For small * modals where an icon would add more noise than clarity. */ export type GlassDialogHeaderVariant = "inline" | "centered" | "plain"; interface GlassDialogHeaderProps { icon?: ReactNode; title: ReactNode; description?: ReactNode; /** See {@link GlassDialogHeaderVariant}. Defaults to "inline". */ variant?: GlassDialogHeaderVariant; /** * @deprecated Use `variant` instead. Preserved so older callers keep * working: * - `align="center"` → `variant="centered"` * - `align="left"` → `variant="inline"` */ align?: "left" | "center"; /** * Optional trailing slot for inline / plain variants — e.g. a status pill * or secondary button. Ignored for the centered variant. */ trailing?: ReactNode; className?: string; } /** * GlassDialogHeader — the canonical header slot. Always renders shadcn * DialogTitle + DialogDescription so accessibility wiring is enforced. * * Examples: * * } * title="Key generated" * description="This key is shown only once." * variant="inline" * /> * * } * title="New application" * description="Give your app a memorable name." * // variant defaults to "centered" * /> */ export declare function GlassDialogHeader({ icon, title, description, variant, align, trailing, className, }: GlassDialogHeaderProps): import("react/jsx-runtime").JSX.Element; export {}; //# sourceMappingURL=GlassDialogHeader.d.ts.map