UNPKG

@casipe/react-service-provider

Version:
31 lines (30 loc) 1.1 kB
import { AxiosRequestConfig, AxiosResponse } from 'axios'; import { Observable, Subject } from 'rxjs'; import { RegistryParams } from './interfaces'; export default class Registry<T = any> { private params; private selfSubject; private retriesCountdownTimer?; id: number; private responseSubject; response$: Observable<AxiosResponse<T, any>>; retries: number; retryDelay: number; retriesTimeout?: number; tryCounter: number; canRetry: boolean; finish: boolean; requesting: boolean; get isCached(): boolean; cachedData?: AxiosResponse<T>; readonly axiosRequestConfig: AxiosRequestConfig; private _cancelToken?; constructor(params: RegistryParams, selfSubject: Subject<Registry>, retriesCountdownTimer?: ((origin: Registry) => void) | undefined); private finishRetriesCountdownTimer; private startRetriesCountdownTimer; private countdownStrategy; cancel(): void; run(): Observable<AxiosResponse<T>>; retry(): void; static createRegistry<T = any>(params: RegistryParams): Observable<Registry<T>>; }