import { AxiosInstance, AxiosRequestConfig, AxiosResponse } from "axios"; import { ServiceConfig } from "../types/service.types"; import { BaseParamType, Route } from "../types/route"; import { WithPayloadHTTPMethods } from "../types/methods.types"; export interface WithPayloadRequestFactoryProps { axios: AxiosInstance; prefix: string; method: WithPayloadHTTPMethods; serviceConfig?: ServiceConfig; } /** * Util Method For Sending HTTP Requests * @param axios - Axios Instance * @param prefix - Request Route Prefix * @param method - HTTP Method with Payload * @param serviceConfig - Upper Level Multiple Methods Service Configuration * @returns - Request Function of selected method with route: "prefix/route" */ export declare const withPayloadRequest: ({ axios, prefix, method, serviceConfig }: WithPayloadRequestFactoryProps) => (route?: Route | undefined, key?: string | undefined, config?: AxiosRequestConfig | undefined) => (data: PayloadType) => Promise>; /** * Util Method For Sending HTTP Requests * @param axios - Axios Instance * @param prefix - Request Route Prefix * @param method - HTTP Method with Payload * @param serviceConfig - Upper Level Multiple Methods Service Configuration * @returns - Request Function of selected method with route: "prefix/route" */ export declare const withPayloadRequestByParam: ({ axios, prefix, method, serviceConfig }: WithPayloadRequestFactoryProps) => (route?: Route | undefined, key?: string | undefined, config?: AxiosRequestConfig | undefined) => (param: ParamType, data: PayloadType) => Promise>;