import type { HttpClient, RequestConfigBuilder, ResponseHandler } from "./HttpClientInterface";
import type FormData from "form-data";
import { KintoneResponseHandler } from "../KintoneResponseHandler";
type Log = {
    method: "get" | "post" | "put" | "delete";
    path: string;
    params: {
        [key: string]: any;
    };
};
export declare class MockClient implements HttpClient {
    private responseHandler;
    private requestConfigBuilder;
    logs: Log[];
    responses: any[];
    constructor({ responseHandler, requestConfigBuilder, }: {
        responseHandler: ResponseHandler;
        requestConfigBuilder: RequestConfigBuilder;
    });
    mockResponse(mock: unknown, headers?: Record<string, string>): void;
    private createResponse;
    get<T extends object>(path: string, params: any): Promise<T>;
    getData(path: string, params: any): Promise<ArrayBuffer>;
    post<T extends object>(path: string, params: any): Promise<T>;
    postData<T extends object>(path: string, formData: FormData): Promise<T>;
    put<T extends object>(path: string, params: any): Promise<T>;
    delete<T extends object>(path: string, params: any): Promise<T>;
    getLogs(): Log[];
}
export declare const buildMockClient: (requestConfigBuilder: RequestConfigBuilder, responseHandler?: KintoneResponseHandler) => MockClient;
export {};
