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;
}