import * as React from 'react'; import { type DialogsEntry, type DialogsStore } from '../utils/dialogs.js'; import type { DialogsProps } from './types.js'; export { createDialogs } from '../utils/dialogs.js'; export type { DialogsEntry, DialogsKind, DialogsOptions, DialogsPromptOptions, DialogsResult, DialogsStore, } from '../utils/dialogs.js'; /** The entry the store is currently showing, re-rendering as the queue moves. */ export declare function useDialogs(dialogs: DialogsStore): DialogsEntry | null; /** * Renders whatever the store is showing: an alert, a confirm or a prompt at a * time, each a {@link Dialog} keyed on its entry so a new question starts from * a clean panel. Mount it once, near the app root. * * @example * ```tsx * const dialogs = createDialogs(); * * // anywhere: * if (await dialogs.confirm('Delete the project?')) remove(); * ``` */ export declare function Dialogs({ dialogs }: DialogsProps): React.ReactNode; export declare namespace Dialogs { var displayName: string; }