export declare enum HttpMethod { Get = "GET", Post = "POST", Put = "PUT", Patch = "PATCH", Delete = "DELETE" } export declare enum Encoding { None = 0, FormData = 1, Json = 2, Blob = 3 } export type BodyEncoding = Encoding.None | Encoding.FormData | Encoding.Json; export type ResponseEncoding = Encoding.None | Encoding.Blob | Encoding.Json; export interface IServiceCall { readonly response: Promise; readonly error: IServiceError | null; readonly attempts: number; readonly token: string | null; readonly wasAborted: boolean; abort(reason?: Error): void; } export interface IServiceParameters { [index: string]: any; } export interface IServiceError { readonly Code: string; readonly StatusCode?: number; readonly Message: string; } export type ErrorHandler = (error: IServiceError, token: string | null) => Promise;