@hypernetlabs/utils
Version:
Utilities used by Hypernet Labs packages
19 lines • 1.03 kB
TypeScript
/// <reference types="node" />
import { AjaxError, JsonWebToken } from "@hypernetlabs/objects";
import { AxiosRequestConfig } from "axios";
import { ResultAsync } from "neverthrow";
import { Readable } from "stream";
/**
* AjaxUtils are just a wrapper around Axios for purposes of testing.
*/
export interface IAjaxUtils {
get<T>(url: URL, config?: IRequestConfig): ResultAsync<T, AjaxError>;
post<T>(url: URL, data: string | Record<string, unknown> | ArrayBuffer | ArrayBufferView | Readable | URLSearchParams, config?: IRequestConfig): ResultAsync<T, AjaxError>;
put<T>(url: URL, data: string | Record<string, unknown> | ArrayBuffer | ArrayBufferView | Readable | URLSearchParams, config?: IRequestConfig): ResultAsync<T, AjaxError>;
delete<T>(url: URL, config?: IRequestConfig): ResultAsync<T, AjaxError>;
setDefaultToken(token: JsonWebToken): void;
}
export interface IRequestConfig extends AxiosRequestConfig {
}
export declare const IAjaxUtilsType: unique symbol;
//# sourceMappingURL=IAjaxUtils.d.ts.map