import type { CenteredDialogProps } from './centered-dialog-types';
/** Stable testID for the dimmed backdrop. Overridden when a `testID` is set. */
export declare const CENTERED_DIALOG_BACKDROP_TESTID = "bloom-centered-dialog-backdrop";
/**
 * Web variant of `<CenteredDialog>`.
 *
 * A centered modal card rendered into the Bloom Portal at the end of
 * `document.body`. Identical prop surface to native — `visible`, `onClose`,
 * `title`, `compact`, etc. — so call sites are platform agnostic.
 *
 * Differences from the native fork (necessary, not behavioural):
 *   - Portal + `RemoveScrollBar` lock the underlying page while open.
 *   - `Escape` dismisses (when `dismissible`).
 *   - A `role="dialog"` panel with `aria-label`/`aria-modal` for a11y.
 *   - A CSS fade/zoom keyframe matches the native modal's `fade` animation;
 *     the keyframes are injected once (idempotent) into `<head>`.
 *
 * The backdrop is a sibling element BEHIND the card, and the card stops
 * click/press propagation so a tap on the card never dismisses.
 */
export declare function CenteredDialog({ visible, onClose, title, dismissible, maxWidth, compact, showClose, children, footer, accessibilityLabel, closeAccessibilityLabel, backdropAccessibilityLabel, cardStyle, contentStyle, testID, }: CenteredDialogProps): import("react/jsx-runtime").JSX.Element | null;
/**
 * CSS keyframes powering the web enter/exit animation. Injected once into
 * `<head>` on first mount (keyed by id so re-mounts and multiple dialogs
 * don't duplicate the rule). Mirrors the native modal's `fade` feel with a
 * subtle zoom on the card.
 */
export declare const BLOOM_CENTERED_DIALOG_CSS = "\n@keyframes bloomCenteredDialogFadeIn { from { opacity: 0; } to { opacity: 1; } }\n@keyframes bloomCenteredDialogFadeOut { from { opacity: 1; } to { opacity: 0; } }\n@keyframes bloomCenteredDialogZoomIn { from { opacity: 0; transform: scale(0.96); } to { opacity: 1; transform: scale(1); } }\n@keyframes bloomCenteredDialogZoomOut { from { opacity: 1; transform: scale(1); } to { opacity: 0; transform: scale(0.96); } }\n";
//# sourceMappingURL=CenteredDialog.web.d.ts.map