setOpen(false)}>
* Are you sure you want to delete this item? This action cannot be undone.
*
* Delete
* Cancel
*
*
* @controlled {"props": ["open"], "event": "dismiss"}
*/
interface DiwaModal {
/**
* Controls the visual style of the backdrop overlay. `blur` — frosted glass via backdrop-filter (default). Use when the modal is opened by direct user interaction (e.g. a button click). `shading` — solid dark scrim via --diwa-bg-shading. Use for system-triggered modals (e.g. session timeout, cookie consent).
* @default 'blur'
*/
"backdrop": ModalBackdrop;
/**
* When true, clicking the backdrop does not emit `dismiss`. Use for required confirmations requiring an explicit user choice.
* @default false
*/
"disableBackdropClick": boolean;
/**
* When false, the dismiss (×) button in the header is hidden. Pair with a close action in the footer or programmatic `open = false`.
* @default true
*/
"dismissButton": boolean;
/**
* Heading text displayed in the modal title bar.
*/
"heading"?: string;
/**
* Whether the modal is open. Controlled prop — set `open={true}` to open and `open={false}` to close. The component emits `dismiss` when the user requests a close; the consumer must set `open={false}` in response.
* @default false
*/
"open": boolean;
/**
* Per-component theme override. Reflects data-theme onto the host element so the light/dark token overrides in app.css cascade into the Shadow DOM via CSS inheritance.
* @default 'dark'
*/
"theme": Theme;
}
/**
* @component diwa-multi-select
* A fully accessible multi-select dropdown with built-in text filter,
* keyboard navigation, and form integration.
* Based on the Diwa multi-select API contract.
* Design token override API:
* --diwa-multi-select-height Trigger button height (default 40px)
* --diwa-multi-select-height-sm Trigger height when compact (default 32px)
* Usage:
*