import { OnDestroy } from '@angular/core';
import { BehaviorSubject, Subscription } from 'rxjs';
import * as i0 from "@angular/core";
export interface TrackerOptions {
    minDuration: number;
    delay: number;
    busyList: Array<Promise<any> | Subscription>;
}
export declare class BusyTrackerService implements OnDestroy {
    private busyQueue;
    private operations;
    private busyDone;
    private destroyIndicator;
    private checkSubject;
    private processingIndicator;
    active: BehaviorSubject<boolean>;
    get isActive(): boolean;
    get busyList(): Subscription[];
    get isBusy(): boolean;
    constructor();
    load(options: TrackerOptions): void;
    private updateActiveStatus;
    private reset;
    private appendToQueue;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<BusyTrackerService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<BusyTrackerService>;
}
