import { Auth } from '@kalamazoo/media-core'; export declare type RequestMethod = 'GET' | 'POST' | 'PUT' | 'DELETE'; export declare type RequestParams = { [key: string]: any; }; export declare type RequestHeaders = { [key: string]: string; }; export declare type RequestOptions = { readonly method?: RequestMethod; readonly auth?: Auth; readonly params?: RequestParams; readonly headers?: RequestHeaders; readonly body?: any; }; export declare function request(url: string, options?: RequestOptions & { retryOptions?: Partial; }, controller?: AbortController): Promise; export declare function mapResponseToJson(response: Response): Promise; export declare function mapResponseToBlob(response: Response): Promise; export declare function mapResponseToVoid(): Promise; export declare type CreateUrlOptions = { readonly params?: RequestParams; readonly auth?: Auth; }; export declare function createUrl(url: string, { params, auth }: CreateUrlOptions): string; export interface RetryOptions { attempts: number; startTimeoutInMs: number; factor: number; } export declare const isAbortedRequestError: (e: Error) => boolean;