import { AxiosRequestConfig, AxiosResponse, InternalAxiosRequestConfig } from 'axios'; import { z } from 'zod'; export type RequestConfig = AxiosRequestConfig & { schema?: S extends z.Schema ? S : never; }; export declare class HttpClient { private readonly instance; private readonly cancelToken; constructor(config?: AxiosRequestConfig, interceptor?: (value: InternalAxiosRequestConfig) => InternalAxiosRequestConfig | Promise>); cancel(msg?: string): void; delete(url: string, data?: D, config?: RequestConfig): Promise> ? z.core.output : S, any, {}, any>>; get(url: string, config?: RequestConfig): Promise> ? z.core.output : S, any, {}, any>>; head(url: string, config?: RequestConfig): Promise> ? z.core.output : S, any, {}, any>>; options(url: string, config?: RequestConfig): Promise> ? z.core.output : S, any, {}, any>>; patch(url: string, data?: D, config?: RequestConfig): Promise> ? z.core.output : S, any, {}, any>>; post(url: string, data?: D, config?: RequestConfig): Promise> ? z.core.output : S, any, {}, any>>; put(url: string, data?: D, config?: RequestConfig): Promise> ? z.core.output : S, any, {}, any>>; request(config: RequestConfig): Promise> ? z.core.output : S, any, {}, any>>; private obtainConfig; private processResponse; private internalRequest; private internalRequestWithData; }