import type { EventEmitter } from '../../stencil-public-runtime'; import type { NotificationVariant } from './mud-notification.types'; /** * Notification — semantic toast message (350px filled surface, 8px radius). * * Renders a leading icon, an optional bold heading, the message body * (default slot), an optional inline action group (`actions` slot) and an * optional trailing close button. * * Pattern B (atom-display + interactive close): the close affordance lives * inside shadow DOM so it participates in tab order with a real * `button` role. The body itself is not interactive. * * `variant` selects the semantic color family — `info`, `warning`, `success`, * or `error` — each a filled toast surface with its own leading icon. * * Live-region routing: * - `info` / `success` → `role="status"` + `aria-live="polite"` * - `warning` / `error` → `role="alert"` + `aria-live="assertive"` * * @element mud-notification * * @slot - (default) The message body. Plain text or rich inline content. * @slot icon-start - Optional override for the leading icon. When supplied, * suppresses both the `iconName` prop and the per-variant * default icon. * @slot actions - Optional inline action group (typically `mud-button` or * `mud-link`). Aligned to the trailing edge before the close * button when present. */ export declare class MudNotification { /** * Semantic color family. * @default 'info' */ variant: NotificationVariant; /** * When `true`, renders a trailing close button. Activating it emits * `mudClose`; the consumer is responsible for removing the notification * from the DOM. * @default false */ closable: boolean; /** * Optional bold title rendered above the body. */ titleText?: string; /** * Override the default `mud-icon` name for the variant (e.g. swap * `circle-info-filled` for a custom glyph). When the `icon-start` slot * is populated, this prop is ignored. */ iconName?: string; /** * Forwarded to the host as `aria-label`. Use this to give the entire * notification an explicit accessible name when the body content alone is * not descriptive enough. */ ariaLabel?: string; /** * Close-button accessible label. Defaults to the Romanian "Închide". * Provide an alternative for non-Romanian locales. * @default 'Închide' */ closeLabel: string; private hasIconStart; private hasActions; host: HTMLMudNotificationElement; /** * Fires when the user activates the close button. Payload is `void` — * the consumer is responsible for the dismiss animation / DOM removal. */ mudClose: EventEmitter; componentWillLoad(): void; private detectSlots; private onIconSlotChange; private onActionsSlotChange; private handleCloseClick; private handleCloseKeyDown; private resolveIconName; private resolveAriaRole; private resolveAriaLive; render(): any; }