///
///
import type { MakeFetchHappenOptions } from 'make-fetch-happen';
type DownloadFileHandler = (file: string) => Promise;
export interface Fetcher {
downloadFile(url: string, maxLength: number, handler: DownloadFileHandler): Promise;
downloadBytes(url: string, maxLength: number): Promise;
}
export declare abstract class BaseFetcher implements Fetcher {
abstract fetch(url: string): Promise;
downloadFile(url: string, maxLength: number, handler: DownloadFileHandler): Promise;
downloadBytes(url: string, maxLength: number): Promise;
}
type Retry = MakeFetchHappenOptions['retry'];
interface FetcherOptions {
timeout?: number;
retry?: Retry;
}
export declare class DefaultFetcher extends BaseFetcher {
private timeout?;
private retry?;
constructor(options?: FetcherOptions);
fetch(url: string): Promise;
}
export {};