import { Observable } from 'rxjs';
import { Notification, NotificationPosition, NotificationType } from '../../interfaces/core';
import * as i0 from "@angular/core";
export declare class ItNotificationService {
    private subject;
    /**
     * Listen on notification arrived
     * @param filterType filter type of notification
     */
    onNotification(filterType?: NotificationType): Observable<Notification>;
    /**
     * Show new notification
     * @param notification notification
     */
    addNotification(notification: Notification): void;
    /**
     * Create new Standard notification
     * @param title notification title
     * @param message notification message
     * @param dismissible notification dismissible
     * @param duration notification duration (milliseconds)
     * @param position notification position
     */
    standard(title: string, message?: string, dismissible?: boolean, duration?: number, position?: NotificationPosition): void;
    /**
     * Create new Success notification
     * @param title notification title
     * @param message notification message
     * @param dismissible notification dismissible
     * @param duration notification duration (milliseconds)
     * @param position notification position
     */
    success(title: string, message?: string, dismissible?: boolean, duration?: number, position?: NotificationPosition): void;
    /**
     * Create new Error notification
     * @param title notification title
     * @param message notification message
     * @param dismissible notification dismissible
     * @param duration notification duration (milliseconds)
     * @param position notification position
     */
    error(title: string, message?: string, dismissible?: boolean, duration?: number, position?: NotificationPosition): void;
    /**
     * Create new Warning notification
     * @param title notification title
     * @param message notification message
     * @param dismissible notification dismissible
     * @param duration notification duration (milliseconds)
     * @param position notification position
     */
    warning(title: string, message?: string, dismissible?: boolean, duration?: number, position?: NotificationPosition): void;
    /**
     * Create new Info notification
     * @param title notification title
     * @param message notification message
     * @param dismissible notification dismissible
     * @param duration notification duration (milliseconds)
     * @param position notification position
     */
    info(title: string, message?: string, dismissible?: boolean, duration?: number, position?: NotificationPosition): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<ItNotificationService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<ItNotificationService>;
}
