import type { DialogAction, DialogProps } from './types';
/**
 * Native variant of `<Dialog>`.
 *
 * Uses bloom's own `BottomSheet` in `detached` mode as the underlying
 * surface — a floating, dynamically-sized, content-hugging card that
 * gracefully degrades from sheet (phone) to centered card (tablet, via the
 * 500px max-width cap).
 *
 * The component accepts three rendering modes simultaneously:
 *
 *   1. Declarative — `title`, `description`, `actions`. Bloom renders a
 *      standard confirm/destructive/cancel layout.
 *   2. Custom children — caller passes JSX, bloom renders the chrome (title
 *      + close behaviour) and the children fill the body.
 *   3. Pure children — no `title`/`description`/`actions`; caller owns
 *      every pixel.
 *
 * All three share the same dismissal semantics: tapping the backdrop, the
 * drag handle, swiping down, or `control.close()` runs the queued close
 * callbacks once the sheet's exit animation has settled.
 */
export declare function Dialog({ control, onClose, testID, title, description, actions, style, label, children, }: DialogProps): import("react/jsx-runtime").JSX.Element;
/**
 * Helper used by the imperative `alert()` API. Mounts a `<Dialog>` against
 * a fresh control and presents it immediately. `onResolve` is invoked
 * exactly once when the dialog finishes closing (regardless of how the
 * dismissal happened).
 *
 * Kept private to the dialog module — `alert()` is the public surface.
 */
export declare function AutoMountedDialog({ title, description, actions, onResolve, }: {
    title?: string;
    description?: string;
    actions: DialogAction[];
    onResolve: () => void;
}): import("react/jsx-runtime").JSX.Element;
//# sourceMappingURL=Dialog.d.ts.map