import { InjectionToken } from '@angular/core';
import { Actions } from '@ngrx/effects';
import { Store } from '@ngrx/store';
import { Observable, Scheduler } from 'rxjs';
import { ClaimMap } from '../claim-map';
export declare const SCHEDULER: InjectionToken<Scheduler>;
export declare const ESCALATION_WAIT_TIME: InjectionToken<number>;
export declare class RetryWithEscalation<CM = ClaimMap> {
    private actions$;
    store: Store<any>;
    private scheduler;
    private waitTime;
    retryWithEscalation(tokenName: Extract<keyof CM, string>): (source: Observable<any>) => Observable<any>;
    private waitForResult;
    private expirationTimer;
    private failureError;
    constructor(actions$: Actions, store: Store<any>, scheduler: Scheduler, waitTime: number);
}
