/**
 * @internal
 *
 * Renders a single toast card inside the `<Toast>` portal container.
 * Not part of the public API — consumers call `showToast(params)` to trigger
 * toasts and configure appearance via `<Toast>` component props.
 *
 * Compared to `AlertItem`, `ToastItem` adds:
 * - **Auto-dismiss timer** with hover-pause support
 * - **Progress bar** (`withProgress`) that drains over the toast lifetime
 * - **`color` prop** driving background, text, icon, and border colors
 * - **`renderProp`** for fully custom inner content
 */
import { FC, JSX } from 'react';
import { NotificationPositions, NotificationSizes } from '../types';
import { ColorsKeys } from '../../../types/emotion';
import { ToastVariants } from './types';
export interface ToastItemProps {
    id: string;
    variant: ToastVariants;
    /**
     * Theme color key or arbitrary CSS color. When provided:
     * - Background = resolved color
     * - Text/close icon = auto-contrast (white on dark, greyDarker on light)
     * - Status icon = contrast on dark bg, 35%-darkened shade on light bg
     * - Border + progress bar = 35%-darkened shade
     */
    color?: ColorsKeys | string;
    title?: string;
    description?: string;
    cancelText?: string;
    submitText?: string;
    size: NotificationSizes;
    withShadow?: boolean;
    withBorder?: boolean;
    animationDuration: number;
    position: NotificationPositions;
    /** `undefined` = no auto-dismiss */
    timeout?: number;
    withProgress?: boolean;
    /**
     * Progress bar color. When provided, takes priority over the automatic
     * darkened-`color` shade and the component-level `progressColor` default.
     * Accepts a theme color key or any CSS color string.
     */
    progressColor?: string;
    onClose?: () => void;
    onSubmit?: () => void;
    onRemove: (id: string) => void;
    /** Fully replaces inner content. Outer card + progress bar still render. */
    renderProp?: (close: () => void) => JSX.Element;
}
export declare const ToastItem: FC<ToastItemProps>;
