Skip to content

Commit

Permalink
feat: 🎨 return type on requests
Browse files Browse the repository at this point in the history
  • Loading branch information
WillianAgostini committed Oct 12, 2023
1 parent 7f6a0b9 commit 180a497
Showing 1 changed file with 27 additions and 18 deletions.
45 changes: 27 additions & 18 deletions src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,14 +14,14 @@ import {
} from "./request";
import { append } from "./utils";

export async function get<T>(url: string, nordusConfig?: NordusConfig) {
export async function get<T = any>(url: string, nordusConfig?: NordusConfig) {
const { nordusRequest, nordusConfigApi } = createRequest(nordusConfig);

nordusConfigApi.method = "GET";
return await nordusRequest.request<T>(url, nordusConfigApi);
}

export async function post<T, D>(
export async function post<T = any, D = any>(
url: string,
body: D,
nordusConfig?: NordusConfig,
Expand All @@ -33,7 +33,7 @@ export async function post<T, D>(
return await nordusRequest.request<T>(url, nordusConfigApi);
}

export async function put<T, D>(
export async function put<T = any, D = any>(
url: string,
body: D,
nordusConfig?: NordusConfig,
Expand All @@ -45,7 +45,7 @@ export async function put<T, D>(
return await nordusRequest.request<T>(url, nordusConfigApi);
}

export async function patch<T, D>(
export async function patch<T = any, D = any>(
url: string,
body: D,
nordusConfig?: NordusConfig,
Expand All @@ -57,7 +57,7 @@ export async function patch<T, D>(
return await nordusRequest.request<T>(url, nordusConfigApi);
}

export async function del<T>(url: string, nordusConfig?: NordusConfig) {
export async function del<T = any>(url: string, nordusConfig?: NordusConfig) {
const { nordusRequest, nordusConfigApi } = createRequest(nordusConfig);

nordusConfigApi.method = "DELETE";
Expand Down Expand Up @@ -106,26 +106,26 @@ interface Nordus {
request: NordusInterceptorManager<InterceptorRequest>;
response: NordusInterceptorManager<InterceptorResponse>;
};
get: <T>(
get: <T = any>(
url: string,
nordusConfig?: NordusConfig,
) => Promise<NordusResponse<T>>;
post: <T, D>(
post: <T = any, D = any>(
url: string,
body: D,
nordusConfig?: NordusConfig,
) => Promise<NordusResponse<T>>;
put: <T, D>(
put: <T = any, D = any>(
url: string,
body: D,
nordusConfig?: NordusConfig,
) => Promise<NordusResponse<T>>;
patch: <T, D>(
patch: <T = any, D = any>(
url: string,
body: D,
nordusConfig?: NordusConfig,
) => Promise<NordusResponse<T>>;
del: <T>(
del: <T = any>(
url: string,
nordusConfig?: NordusConfig,
) => Promise<NordusResponse<T>>;
Expand All @@ -134,15 +134,24 @@ interface Nordus {
export function create(nordusConfig?: NordusConfig) {
const nordusConfigApi = getDefaultConfig(nordusConfig);
return {
get: <T>(url: string, nordusConfig?: NordusConfig) =>
get: <T = any>(url: string, nordusConfig?: NordusConfig) =>
get<T>(url, mergeConfig(nordusConfigApi, nordusConfig)),
post: <T, D>(url: string, body: D, nordusConfig?: NordusConfig) =>
post<T, D>(url, body, mergeConfig(nordusConfigApi, nordusConfig)),
put: <T, D>(url: string, body: D, nordusConfig?: NordusConfig) =>
put<T, D>(url, body, mergeConfig(nordusConfigApi, nordusConfig)),
patch: <T, D>(url: string, body: D, nordusConfig?: NordusConfig) =>
patch<T, D>(url, body, mergeConfig(nordusConfigApi, nordusConfig)),
del: <T>(url: string, nordusConfig?: NordusConfig) =>
post: <T = any, D = any>(
url: string,
body: D,
nordusConfig?: NordusConfig,
) => post<T, D>(url, body, mergeConfig(nordusConfigApi, nordusConfig)),
put: <T = any, D = any>(
url: string,
body: D,
nordusConfig?: NordusConfig,
) => put<T, D>(url, body, mergeConfig(nordusConfigApi, nordusConfig)),
patch: <T = any, D = any>(
url: string,
body: D,
nordusConfig?: NordusConfig,
) => patch<T, D>(url, body, mergeConfig(nordusConfigApi, nordusConfig)),
del: <T = any>(url: string, nordusConfig?: NordusConfig) =>
del<T>(url, mergeConfig(nordusConfigApi, nordusConfig)),
interceptors: {
request: requestInterptorsManager(nordusConfigApi),
Expand Down

0 comments on commit 180a497

Please sign in to comment.