import { SafeHtml } from '@angular/platform-browser'; import { DialogVariant } from './dialog-types'; import * as i0 from "@angular/core"; /** * Internal presentational chrome for the dialog: the surface box, header (leading icon + * title + close, or a floating close), centered icon badge + title/description, the body * slot, and the actions footer. Rendered by BOTH the declarative `compsych-dialog` and the * imperative `DialogService` container, so the chrome has a single source of truth. * * Not part of the public API. Overlay/a11y state (role, aria-modal, focus, open) is owned * by the host (the CDK dialog container); `titleId`/`descId` are supplied by the host so its * `aria-labelledby`/`aria-describedby` can reference the rendered title/description elements. * The host renders `display: contents`, so `.cmp-dialog` is the layout box. */ export declare class DialogSurfaceComponent { /** Layout type. */ readonly variant: import("@angular/core").InputSignal; /** Optional CSS-length width override (falls back to the variant width). */ readonly width: import("@angular/core").InputSignal; /** Heading text. */ readonly title: import("@angular/core").InputSignal; /** Supporting text (rendered for `centered` and `alert` variants). */ readonly description: import("@angular/core").InputSignal; /** Lucide icon name (leading header icon / centered badge glyph). */ readonly icon: import("@angular/core").InputSignal; /** Whether the close button is shown. */ readonly dismissible: import("@angular/core").InputSignal; /** Accessible label for the close button. */ readonly closeLabel: import("@angular/core").InputSignal; /** Whether the projected actions footer is rendered. */ readonly showActions: import("@angular/core").InputSignal; /** Id for the title element (host supplies it for `aria-labelledby`). */ readonly titleId: import("@angular/core").InputSignal; /** Id for the description element (host supplies it for `aria-describedby`). */ readonly descId: import("@angular/core").InputSignal; /** Emitted when the close button is activated. */ readonly closeClick: import("@angular/core").OutputEmitterRef; private readonly sanitizer; constructor(); /** Header (leading) icon markup at 24px. */ protected readonly iconMarkup: import("@angular/core").Signal; /** Centered badge icon markup at 32px. */ protected readonly centeredIconMarkup: import("@angular/core").Signal; /** Close (`x`) icon markup at 20px. */ protected readonly closeMarkup: import("@angular/core").Signal; /** * Looks up a Lucide icon by name and injects an explicit width/height so it renders at the * right size when bound via `[innerHTML]` (Angular's CSS encapsulation does not reach * dynamically injected content). Matches the Card/Button icon helper. */ private buildIcon; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }