import * as React from 'react';
import { BehaviorSubject } from 'rxjs';
import type { ToastItemPublic } from './types';
import type { ToastStack } from './ToastStack';
export interface ToastItemOpts {
    id?: string;
    type?: string;
    title?: React.ReactNode;
    message?: React.ReactNode;
    duration?: number;
    noClose?: boolean;
}
export declare class ToastItem implements ToastItemPublic {
    protected readonly stack: ToastStack;
    readonly opts: ToastItemOpts;
    readonly durationConsumed$: BehaviorSubject<number>;
    readonly softDeletedTime$: BehaviorSubject<number>;
    constructor(stack: ToastStack, opts: ToastItemOpts);
    readonly remove: () => void;
    readonly hardRemove: () => void;
    readonly consume: (time: number) => void;
}
