import { Observable } from 'rxjs';
import { ToastMessage } from './toast-message.model';
import { ToastType } from './toast-type.enum';
import * as i0 from "@angular/core";
export declare class NgToastService {
    #private;
    /**
     * Constructs a new NgToastService instance.
     */
    constructor();
    /**
     * Displays a toast message.
     * @param message The message to display.
     * @param type The type of the toast message.
     * @param title The optional title of the toast message.
     * @param duration The duration in milliseconds for which the toast message should be displayed. Defaults to the default duration.
     */
    toast(message: string, type: ToastType, title?: string, duration?: number): void;
    /**
     * Displays a success toast message.
     * @param message The message to display.
     * @param title The optional title of the toast message.
     * @param duration The duration in milliseconds for which the toast message should be displayed. Defaults to the default duration.
     */
    success(message: string, title?: string, duration?: number): void;
    /**
     * Displays an info toast message.
     * @param message The message to display.
     * @param title The optional title of the toast message.
     * @param duration The duration in milliseconds for which the toast message should be displayed. Defaults to the default duration.
     */
    info(message: string, title?: string, duration?: number): void;
    /**
     * Displays a warning toast message.
     * @param message The message to display.
     * @param title The optional title of the toast message.
     * @param duration The duration in milliseconds for which the toast message should be displayed. Defaults to the default duration.
     */
    warning(message: string, title?: string, duration?: number): void;
    /**
     * Displays a danger/error toast message.
     * @param message The message to display.
     * @param title The optional title of the toast message.
     * @param duration The duration in milliseconds for which the toast message should be displayed. Defaults to the default duration.
     */
    danger(message: string, title?: string, duration?: number): void;
    /**
     * Returns an observable that emits the toast messages.
     * @returns An observable that emits the toast messages.
     */
    onToastMessage(): Observable<ToastMessage>;
    static ɵfac: i0.ɵɵFactoryDeclaration<NgToastService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<NgToastService>;
}
