import type { ToasterToast } from './types';
/**
 * Toast 상태를 구독하고 관리하는 React 훅
 *
 * 이 훅은 현재 활성화된 모든 toast를 추적하고, toast를 추가하거나 제거할 수 있는 메서드를 제공합니다.
 * toast 상태가 변경될 때마다 컴포넌트가 자동으로 리렌더링됩니다.
 *
 * @example
 * ```tsx
 * function ToastManager() {
 *   const { toasts, toast, dismiss } = useToast();
 *
 *   return (
 *     <div>
 *       <p>활성 Toast: {toasts.length}</p>
 *       <button onClick={() => toast({ text: '알림' })}>Toast 표시</button>
 *       <button onClick={() => dismiss()}>모두 닫기</button>
 *     </div>
 *   );
 * }
 * ```
 *
 * @returns Toast 상태 및 관리 메서드
 * @returns toasts - 현재 활성화된 toast 배열
 * @returns toast - 새로운 toast를 표시하는 함수
 * @returns dismiss - 특정 toast 또는 모든 toast를 닫는 함수
 */
export default function useToast(): {
    toast: typeof toast;
    dismiss: (toastId?: string) => void;
    toasts: ToasterToast[];
};
/**
 * Toast 알림을 표시하는 함수
 *
 * 컴포넌트 외부에서도 호출 가능하며, React 훅 규칙을 따르지 않아도 됩니다.
 * 단순히 toast를 트리거하기만 할 때 사용합니다.
 *
 * @example
 * ```tsx
 * import { toast } from '@/components/Toast';
 *
 * // 기본 사용
 * toast({ text: '저장되었습니다' });
 *
 * // 상태와 함께
 * toast({ text: '성공!', status: 'positive' });
 *
 * // 반환된 메서드 사용
 * const { id, dismiss, update } = toast({ text: '처리 중...' });
 * setTimeout(() => {
 *   update({ text: '완료!', status: 'positive' });
 * }, 1000);
 * ```
 *
 * @param props - Toast 설정 옵션 (id 제외)
 * @param props.text - 표시할 메시지
 * @param props.status - Toast 상태 ('positive' | 'negative')
 * @param props.showClose - 닫기 버튼 표시 여부
 * @param props.action - 추가 액션 버튼
 * @param props.icon - 커스텀 아이콘
 * @param props.closeIcon - 커스텀 닫기 아이콘
 *
 * @returns Toast 제어 메서드
 * @returns id - 생성된 toast의 고유 식별자
 * @returns dismiss - 이 toast를 닫는 함수
 * @returns update - 이 toast의 내용을 업데이트하는 함수
 */
export declare function toast({ ...props }: Omit<ToasterToast, 'id'>): {
    id: string;
    dismiss: () => void;
    update: (props: ToasterToast) => void;
};
//# sourceMappingURL=useToast.d.ts.map