import { type ReactNode } from "react";
import { type IUiToast } from "./types.js";
/**
 * @internal
 */
export interface IUiToastItemProps {
    toast: IUiToast;
    /** Fired when the user dismisses (close X or action click). */
    onClose: (id: string) => void;
}
/**
 * Presentational single-toast component. Most consumers use
 * `UiToastsContainer` (which reads queued toasts from the provider), but
 * this can be rendered directly for static demos or one-off composition.
 *
 * @internal
 */
export declare function UiToastItem({ toast, onClose }: IUiToastItemProps): ReactNode;
/**
 * @internal
 */
export interface IUiToastsContainerProps {
    /** Test id forwarded to the root element. */
    dataTestId?: string;
}
/**
 * Renders the list of toasts queued by `useUiToast`. Mount once near the app
 * root, inside a `UiToastProvider`. Nested containers render nothing — only
 * the outermost one is visible, preserving the topmost-only behaviour.
 *
 * @internal
 */
export declare function UiToastsContainer({ dataTestId }: IUiToastsContainerProps): ReactNode;
//# sourceMappingURL=UiToastsContainer.d.ts.map