import { ReactNode } from 'react';
import type { ToastApi, ToastType } from './types';
/**
 * Get the appropriate icon for a toast based on theme and loading state.
 * - When loading, returns the provided icon as-is (loading indicator is separate)
 * - When not loading, returns the provided icon or falls back to theme-based default
 */
export declare function getThemeIcon(theme: ToastType | undefined, icon: ReactNode | undefined, isLoading?: boolean): ReactNode | undefined;
/**
 * Hook to display toast notifications.
 *
 * @example
 * ```tsx
 * const toast = useToast();
 *
 * // String shorthand
 * toast.success('Copied to clipboard');
 *
 * // Object with options
 * toast.success({
 *   title: 'Success',
 *   description: 'File copied to clipboard',
 *   icon: <CustomIcon />,
 *   duration: 3000,
 * });
 *
 * // Methods: toast(), toast.success(), toast.danger(), toast.warning(), toast.note()
 * ```
 */
export declare function useToast(): ToastApi;
