import { ApplicationRef } from '@angular/core';
import { NotificationConfiguration } from './notification-configuration';
import { Theme } from './theme';
import * as i0 from "@angular/core";
/**
 * A singleton service to programmatically show notifications.
 */
export declare class NotificationService {
    private readonly _applicationRef;
    /**
     * The number of milliseconds after which the notification is closed.
     */
    static readonly DEFAULT_AUTO_CLOSE_MS = 10000;
    private static _defaultTheme;
    private static _defaultCloseButtonLabel;
    private _openedNotifications;
    constructor(_applicationRef: ApplicationRef);
    /**
     * Set the default theme that will be used for all notifications created in the future.
     *
     * @param theme The new theme to be used as the default.
     */
    static setDefaultTheme(theme: Theme): void;
    /**
     * Set the default label for the close button. Default is `Close`.
     */
    static setDefaultCloseButtonLabel(label: string): void;
    /**
     * Open a notification using the provided configuration. The opened notification
     * will be closed automatically after 10 seconds by default.
     *
     * @param notificationConfiguration The notification configuration object.
     */
    open(notificationConfiguration: NotificationConfiguration): void;
    private _closeAll;
    static ɵfac: i0.ɵɵFactoryDeclaration<NotificationService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<NotificationService>;
}
