import { AxiosInstance } from "axios"; import ForestInstance from "../forest/instance"; import { NoPayloadHTTPMethods, WithPayloadHTTPMethods } from "../types/methods.types"; import { Prefix } from "../types/route"; import { ServiceConfig } from "../types/service.types"; export declare class RequestFunctionsFactory { private axios; private prefix; private config; constructor(axios: AxiosInstance, prefix: Prefix, config?: ServiceConfig); noPayloadRequest: (method: NoPayloadHTTPMethods) => ({ config, route, serviceFunction, validation, onSuccess, onError, }?: import("./factory.types").NoPayloadRequestFunctionConfig) => () => Promise; noPayloadRequestByParam: (method: NoPayloadHTTPMethods) => ({ config, route, serviceFunction, suffix, validation, onError, onSuccess, }?: import("./factory.types").NoPayloadRequestFunctionByParamConfig) => (param: ParamType) => Promise>; withPayloadRequest: (method: WithPayloadHTTPMethods) => ({ config, key, route, serviceFunction, validation, onError, onSuccess, }?: import("./factory.types").PayloadRequestFunctionConfig) => (data: PayloadType) => Promise>; withPayloadRequestByParam: (method: WithPayloadHTTPMethods) => ({ config, key, route, serviceFunction, suffix, validation, onError, onSuccess, }?: import("./factory.types").PayloadRequestFunctionByParamConfig) => (param: ParamType, data: PayloadType) => Promise>; } export declare const createMethodsFunctionsCreator: (prefix: string, forestInstance: ForestInstance, config?: ServiceConfig | undefined) => { get: ({ config, route, serviceFunction, validation, onSuccess, onError, }?: import("./factory.types").NoPayloadRequestFunctionConfig) => () => Promise; getByParam: ({ config, route, serviceFunction, suffix, validation, onError, onSuccess, }?: import("./factory.types").NoPayloadRequestFunctionByParamConfig) => (param: ParamType) => Promise>; delete: ({ config, route, serviceFunction, validation, onSuccess, onError, }?: import("./factory.types").NoPayloadRequestFunctionConfig) => () => Promise; deleteByParam: ({ config, route, serviceFunction, suffix, validation, onError, onSuccess, }?: import("./factory.types").NoPayloadRequestFunctionByParamConfig) => (param: ParamType) => Promise>; post: ({ config, key, route, serviceFunction, validation, onError, onSuccess, }?: import("./factory.types").PayloadRequestFunctionConfig) => (data: PayloadType) => Promise>; putByParam: ({ config, key, route, serviceFunction, suffix, validation, onError, onSuccess, }?: import("./factory.types").PayloadRequestFunctionByParamConfig) => (param: ParamType_1, data: PayloadType_1) => Promise>; put: ({ config, key, route, serviceFunction, validation, onError, onSuccess, }?: import("./factory.types").PayloadRequestFunctionConfig) => (data: PayloadType) => Promise>; patchByParam: ({ config, key, route, serviceFunction, suffix, validation, onError, onSuccess, }?: import("./factory.types").PayloadRequestFunctionByParamConfig) => (param: ParamType_1, data: PayloadType_1) => Promise>; patch: ({ config, key, route, serviceFunction, validation, onError, onSuccess, }?: import("./factory.types").PayloadRequestFunctionConfig) => (data: PayloadType) => Promise>; };