import { useCallback, useState } from 'react' export interface Toast { id: string message: string type: 'success' | 'error' | 'info' } export function useToast() { const [toasts, setToasts] = useState([]) const showToast = useCallback((message: string, type: Toast['type'] = 'success') => { const id = Math.random().toString(36).substring(2, 9) const toast: Toast = { id, message, type } setToasts(prev => [...prev, toast]) setTimeout(() => { setToasts(prev => prev.filter(t => t.id !== id)) }, 3000) }, []) const removeToast = useCallback((id: string) => { setToasts(prev => prev.filter(t => t.id !== id)) }, []) return { toasts, showToast, removeToast } }