import type { HTMLAttributes, ReactNode } from "react";
import type { CSSTransitionComponentProps } from "@react-md/transition";
export interface ToastProps extends HTMLAttributes, Omit {
/**
* Boolean if the main message content should be stacked above the action
* button. This prop is invalid if an `action` is not provided.
*/
stacked?: boolean;
/**
* Boolean if the children is a two line message. This applies some additional
* styles and unfortunately needs to be known before the toast is created.
*/
twoLines?: boolean;
/**
* An optional action button to display with the toast. This will be rendered
* to the right of the main toast's children if provided.
*/
action?: ReactNode | null;
/**
* Boolean if the toast is currently visible. This should be enabled on mount
* and then set to false once the toast has finished its display timeout.
*/
visible: boolean;
}
/**
* This is a very low-level component that can be used to animate a new toast in
* to a `Snackbar` as it is mainly just a wrapper of the `CSSTransition`
* component. If you are using this component, it is generally recommended to
* provide the `onEntered` callback as a function to start the hide visibility
* timer and the `onExited` callback to remove the current toast from your
* queue.
*/
export declare const Toast: import("react").ForwardRefExoticComponent>;