export default class FilesFetcher {
    private pendingQueue;
    private activeRequests;
    private completeRequests;
    private averageSegmentDuration;
    private lastPrefetchStart;
    private throttleTimeout;
    private RETRY_COUNT;
    private TIMEOUT;
    private BITRATE_ESTIMATOR;
    private MAX_PARALLEL_REQUESTS;
    private logger;
    constructor(RETRY_COUNT: number, TIMEOUT: number, BITRATE_ESTIMATOR: any, MAX_PARALLEL_REQUESTS: number, logger: (...args: any[]) => void);
    private limitCompleteCount;
    private _sendRequest;
    private _getParallelRequestCount;
    private _getPrefetchDelay;
    private _canSendPending;
    private _sendPending;
    private _removeFromActive;
    abortAll(): void;
    requestData(url: string, cb: (data: any, downloadTime: number) => void, errorCB: (arg: any) => void, retryCB: (arg: any) => void): Record<string, any>;
    prefetch(url: string): void;
    optimizeForSegDuration(duration: number): void;
}
