import { OnDestroy } from '@angular/core';
import { Subject } from 'rxjs';
import { BaseComponent } from '../base-component';
import { NxNotificationRef } from './nx-notification/nx-notification-ref';
import * as i0 from "@angular/core";
declare enum TransitionStates {
    Idle = 0,
    Calculating = 1,
    Animating = 2,
    Swapping = 3,
    Cycling = 4
}
export declare const NX_NOTIFICATIONS_ANIMATION_DURATION = "0.5s";
/** Container component that manages notifications for the application */
export declare class NxNotificationsComponent extends BaseComponent implements OnDestroy {
    private rem;
    protected animationDuration: string;
    protected padding: number;
    protected gap: number;
    private notificationsService;
    protected notifications: import("@angular/core").WritableSignal<NxNotificationRef[]>;
    constructor();
    ngOnDestroy(): void;
    protected TransitionStates: typeof TransitionStates;
    protected openQueue: NxNotificationRef[];
    protected _openSubscription: import("rxjs").Subscription;
    protected openingNotifications: import("@angular/core").WritableSignal<NxNotificationRef[]>;
    protected openingIds: import("@angular/core").Signal<Set<string>>;
    private afterOpen;
    private enterContainer;
    private containerObserver;
    private containerHeight;
    protected _containerHeightEffect: import("@angular/core").EffectRef;
    protected enterTranslation: import("@angular/core").Signal<number>;
    protected openingState: import("@angular/core").WritableSignal<TransitionStates>;
    protected _openStateEffect: import("@angular/core").EffectRef;
    protected enterTransitionEnd(): void;
    protected close$: Subject<string>;
    private closeQueue;
    protected _closeSubscription: import("rxjs").Subscription;
    protected closingNotifications: import("@angular/core").WritableSignal<string[]>;
    protected closingIds: import("@angular/core").Signal<Set<string>>;
    private afterClose;
    private notificationComponents;
    protected topShifts: import("@angular/core").WritableSignal<Map<string, number>>;
    protected closingState: import("@angular/core").WritableSignal<TransitionStates>;
    protected _closeStateEffect: import("@angular/core").EffectRef;
    protected closeTransitionEnd(event: TransitionEvent): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<NxNotificationsComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<NxNotificationsComponent, "nx-notifications", never, {}, {}, never, never, true, never>;
}
export {};
