@mirad-work/sms-core
Version:
A framework-agnostic TypeScript SMS service core with provider abstraction for Iranian SMS providers
24 lines • 1.13 kB
TypeScript
import { IHttpClient } from "../interfaces/http-client.interface";
import { HttpRequestConfig, HttpResponse } from "../types/driver-types";
/**
* Framework-agnostic HTTP client implementation using node-fetch
* This can be easily replaced with any other HTTP library
*/
export declare class HttpClient implements IHttpClient {
private readonly defaultTimeout;
constructor(timeout?: number);
request<T = unknown>(config: HttpRequestConfig): Promise<HttpResponse<T>>;
get<T = unknown>(url: string, config?: Partial<HttpRequestConfig>): Promise<HttpResponse<T>>;
post<T = unknown>(url: string, data?: unknown, config?: Partial<HttpRequestConfig>): Promise<HttpResponse<T>>;
put<T = unknown>(url: string, data?: unknown, config?: Partial<HttpRequestConfig>): Promise<HttpResponse<T>>;
delete<T = unknown>(url: string, config?: Partial<HttpRequestConfig>): Promise<HttpResponse<T>>;
/**
* Validate request configuration
*/
private validateRequestConfig;
/**
* Parse response data based on content type
*/
private parseResponse;
}
//# sourceMappingURL=http-client.d.ts.map