import React from 'react';

interface ToastProps {
    id?: string;
    open?: boolean;
    defaultOpen?: boolean;
    onOpenChange?: (open: boolean) => void;
    title?: string;
    description?: string;
    variant?: "default" | "primary" | "secondary" | "success" | "warning" | "danger";
    position?: "top-left" | "top-right" | "bottom-left" | "bottom-right" | "top-center" | "bottom-center";
    duration?: number;
    showCloseButton?: boolean;
    className?: string;
    children?: React.ReactNode;
    icon?: React.ReactNode;
    containerClassName?: string;
    toastClassName?: string;
    titleClassName?: string;
    descriptionClassName?: string;
    iconContainerClassName?: string;
    contentClassName?: string;
    closeButtonClassName?: string;
    role?: "status" | "alert";
    important?: boolean;
}
declare const Toast: React.FC<ToastProps>;
interface ToastContextType {
    open: (props: Omit<ToastProps, "open" | "defaultOpen" | "onOpenChange" | "id">) => void;
    close: (id?: string) => void;
}
declare const ToastProvider: React.FC<{
    children: React.ReactNode;
    containerClassName?: string;
}>;
declare const useToast: () => ToastContextType;

export { Toast, ToastProvider, useToast };
export type { ToastProps };
