import { type JsxCustomElementAttributes, type JsxElementProps, type JsxRenderable } from '@ecopages/jsx'; import type { RuiDialog as RuiDialogElement, RuiDialogProps } from './dialog.script'; import './dialog.script'; export type RuiDialogTitleProps = JsxElementProps; /** * Dialog title for the visible dialog name. * * @cssclass rui-dialog__title - Dialog title; `aria-labelledby` target. */ export declare function RuiDialogTitle({ children, class: className, ...props }: RuiDialogTitleProps): JsxRenderable; export type RuiDialogBodyProps = JsxElementProps; /** * Dialog body content. * * @cssclass rui-dialog__body - Dialog body; `aria-describedby` target. */ export declare function RuiDialogBody({ children, class: className, ...props }: RuiDialogBodyProps): JsxRenderable; export type RuiDialogActionsProps = JsxElementProps; /** * Action row for dialog buttons. * * @cssclass rui-dialog__actions - Right-aligned action row. */ export declare function RuiDialogActions({ children, class: className, ...props }: RuiDialogActionsProps): JsxRenderable; export type RuiDialogCloseProps = JsxElementProps; /** * Close control for the dialog surface. * * @cssclass rui-dialog__close - Dismiss button; dispatches `data-dialog-close` click. */ export declare function RuiDialogClose({ children, class: className, aria, ...props }: RuiDialogCloseProps): JsxRenderable; export type RuiDialogViewProps = Omit, 'title'> & { title?: JsxRenderable; actions?: JsxRenderable; }; /** * Dialog view. Pass `title` / `actions` for the composite API; otherwise compose * `RuiDialogTitle`, `RuiDialogBody`, `RuiDialogActions`, and `RuiDialogClose` as children. * * @remarks The composite API SSRs a full `` shell (close button, title, * body, actions). When neither `title` nor `actions` is set, children are composed * inside the view-owned dialog shell. */ export declare function RuiDialog({ title, actions, children, open, alert, ...props }: RuiDialogViewProps): JsxRenderable;