import { BehaviorSubject, Subject } from 'rxjs';
import { ToastModel } from './interfaces/interfaces';
import { ToastInputModel } from './interfaces/interfaces';
import { ToastConfig } from './interfaces/interfaces';
import { Overlay } from '@angular/cdk/overlay';
import { ToastComponent } from './components/toasts/toast/toast.component';
import * as i0 from "@angular/core";
export declare class ToastService {
    private config;
    private overlay;
    toast: BehaviorSubject<ToastModel | null>;
    clearAll: Subject<void>;
    clearToast: Subject<string>;
    private overlayRef;
    private duration;
    constructor(config: ToastConfig, overlay: Overlay);
    private addToast;
    createOverlay(): void;
    private handleToast;
    success(toastInput: ToastInputModel): void;
    danger(toastInput: ToastInputModel): void;
    info(toastInput: ToastInputModel): void;
    warning(toastInput: ToastInputModel): void;
    clearAllToasts(): void;
    destroyToast(toastComponent: ToastComponent): void;
    private getUniqueId;
    static ɵfac: i0.ɵɵFactoryDeclaration<ToastService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<ToastService>;
}
