@remcostoeten/fync
Version:
A unified TypeScript library for easy access to popular APIs (GitHub, Spotify, GitLab, etc.)
25 lines • 1.1 kB
TypeScript
type THttpClientConfig = {
baseUrl?: string;
defaultHeaders?: Record<string, string>;
timeout?: number;
};
type THttpResponse<T> = {
data: T;
status: number;
headers: Record<string, string>;
};
declare function createHttpClient(config?: THttpClientConfig): {
get: <T = unknown>(endpoint: string, params?: Record<string, string | number | boolean>) => Promise<THttpResponse<T>>;
post: <T = unknown>(endpoint: string, data?: unknown) => Promise<THttpResponse<T>>;
put: <T = unknown>(endpoint: string, data?: unknown) => Promise<THttpResponse<T>>;
patch: <T = unknown>(endpoint: string, data?: unknown) => Promise<THttpResponse<T>>;
delete: <T = unknown>(endpoint: string, data?: unknown) => Promise<THttpResponse<T>>;
request: <T = unknown>(endpoint: string, options?: {
method?: string;
params?: Record<string, string | number | boolean>;
headers?: Record<string, string>;
}) => Promise<THttpResponse<T>>;
};
export { createHttpClient };
export type { THttpClientConfig, THttpResponse };
//# sourceMappingURL=http-client.d.ts.map