UNPKG

tuf-js

Version:
26 lines (25 loc) 992 B
import type { MakeFetchHappenOptions } from 'make-fetch-happen'; type DownloadFileHandler<T> = (file: string) => Promise<T>; export interface Fetcher { downloadFile<T>(url: string, maxLength: number, handler: DownloadFileHandler<T>): Promise<T>; downloadBytes(url: string, maxLength: number): Promise<Buffer>; } export declare abstract class BaseFetcher implements Fetcher { abstract fetch(url: string): Promise<NodeJS.ReadableStream>; downloadFile<T>(url: string, maxLength: number, handler: DownloadFileHandler<T>): Promise<T>; downloadBytes(url: string, maxLength: number): Promise<Buffer>; } type Retry = MakeFetchHappenOptions['retry']; interface FetcherOptions { userAgent?: string; timeout?: number; retry?: Retry; } export declare class DefaultFetcher extends BaseFetcher { private userAgent?; private timeout?; private retry?; constructor(options?: FetcherOptions); fetch(url: string): Promise<NodeJS.ReadableStream>; } export {};