import { AxiosRequestConfig } from "axios";
interface RestClientParams {
    baseURL?: string;
    apiToken?: string;
    errorHandler?: (error: any) => any;
}
export declare const createRestClient: ({ baseURL, apiToken, errorHandler }: RestClientParams) => {
    fetch: import("axios").AxiosInstance;
    get: <Response_1 = any, Params = Record<string, string>>(endpoint: string, params?: Params | undefined, config?: AxiosRequestConfig) => Promise<Response_1>;
    post: <Response_2 = any, Payload = Record<string, any>>(endpoint: string, payload?: Payload | undefined, config?: AxiosRequestConfig) => Promise<Response_2>;
    put: <Response_3 = any, Payload_1 = Record<string, any>>(endpoint: string, payload?: Payload_1 | undefined, config?: AxiosRequestConfig) => Promise<Response_3>;
    delete: <Response_4 = any, Params_1 = Record<string, any>>(endpoint: string, params?: Params_1 | undefined, config?: AxiosRequestConfig) => Promise<Response_4>;
};
export {};
