import type { Component, VNode } from 'vue';
import type { ToastProps } from '.';
import { type ComputedRef } from 'vue';
export type StringOrVNode = string | VNode | (() => VNode);
type ToasterToast = ToastProps & {
    id: string;
    title?: string;
    description?: StringOrVNode;
    action?: Component;
};
declare function useToast(): {
    toasts: ComputedRef<ToasterToast[]>;
    toast: (props: Toast) => void;
    dismiss: (toastId?: string) => void;
};
type Toast = Omit<ToasterToast, 'id'>;
declare function toast(props: Toast): {
    id: string;
    dismiss: () => void;
    update: (props: ToasterToast) => void;
};
export { toast, useToast };
