UNPKG

@assassinonz/exzodus-client

Version:

Axios wrapper with end to end type safety

21 lines 1.58 kB
import * as axios from "axios"; import type { Api, ResponseCode, MethodByPath, Path, PathByMethod, ResponseBody, DefaultResponseBody } from "../core/index.js"; import type { ConfigParam } from "../core/client.js"; export { axios }; export declare class ExZodusClient<A extends Api> { readonly axios: axios.AxiosInstance; constructor(_apiDef: A, baseURL: string); get<P extends PathByMethod<A, "get">>(path: P, ...[config]: ConfigParam<A, "get", P>): Promise<axios.AxiosResponse<DefaultResponseBody<A, "get", P>, any>>; post<P extends PathByMethod<A, "post">>(path: P, ...[config]: ConfigParam<A, "post", P>): Promise<axios.AxiosResponse<DefaultResponseBody<A, "post", P>, any>>; put<P extends PathByMethod<A, "put">>(path: P, ...[config]: ConfigParam<A, "put", P>): Promise<axios.AxiosResponse<DefaultResponseBody<A, "put", P>, any>>; patch<P extends PathByMethod<A, "patch">>(path: P, ...[config]: ConfigParam<A, "patch", P>): Promise<axios.AxiosResponse<DefaultResponseBody<A, "patch", P>, any>>; delete<P extends PathByMethod<A, "delete">>(path: P, ...[config]: ConfigParam<A, "delete", P>): Promise<axios.AxiosResponse<DefaultResponseBody<A, "delete", P>, any>>; isErrorOf<M extends MethodByPath<A, P>, P extends Path<A>, C extends ResponseCode<A, M, P>>(err: unknown, method: M, path: P, code: C): err is axios.AxiosError<ResponseBody<A, M, P, C>> & { response: { data: ResponseBody<A, M, P, C>; }; }; private static replacePathParams; private static buildAxiosConfig; } //# sourceMappingURL=index.d.ts.map