import { RadiantElement } from '@ecopages/radiant'; import type { EventEmitter } from '@ecopages/radiant/tools/event-emitter'; export type RuiDialogProps = { /** Whether the dialog is open. Default: `false`. */ open?: boolean; /** * When `true`, uses `role="alertdialog"` for workflow-interrupting * confirmations. Default: `false` (`role="dialog"`). */ alert?: boolean; /** Accessible name when there is no visible title. */ label?: string; }; export type RuiDialogCloseDetail = { reason: 'escape' | 'backdrop' | 'dismiss'; }; type RuiDialogBindings = { open: boolean; alert: boolean; }; /** * `` — a composition-first modal dialog shell. * * Implements the WAI-ARIA APG Dialog (Modal) pattern, and the Alert and Message * Dialogs pattern when `alert` is set. Compose title, body, actions, and close * controls with the view helpers. * * @see https://www.w3.org/WAI/ARIA/apg/patterns/dialog-modal/ * @see https://www.w3.org/WAI/ARIA/apg/patterns/alertdialog/ * * @element rui-dialog * @fires rui-close - Emitted when the dialog is dismissed. * @cssclass rui-dialog - Root; hidden until `open`. * @cssclass rui-dialog__backdrop - Scrim using the `overlay` role. * @cssclass rui-dialog__surface - Modal panel: `background` + `rounded-container` + `shadow-modal`. */ export declare class RuiDialog extends RadiantElement { open: boolean; alert: boolean; label: string; rootTarget: HTMLElement; dialogTarget: HTMLElement; titleTarget: HTMLElement; descriptionTarget: HTMLElement; closeEvent: EventEmitter; private previouslyFocused; private titleId; private descriptionId; protected onConnected(): void; syncOpenState(): void; private focusInitial; private getFocusable; private dismiss; onDocumentKeydown(event: KeyboardEvent): void; onBackdropClick(): void; onCloseClick(): void; } export {};