import type { ConfigPlugin } from "./config";
import { Logger } from "./logger";
export interface FetchOptions {
    url: string;
    headers?: Record<string, string>;
    method?: string;
    body?: string;
    credentials?: "include" | "omit";
    signal?: AbortSignal;
}
export declare function createHttpClientPlugin(configPlugin: ConfigPlugin, logger: Logger): {
    send: (options: FetchOptions) => Promise<Response | undefined>;
    retrySend: (options: FetchOptions) => Promise<Response | undefined>;
    retryRequest: (request: () => Promise<Response | undefined>) => Promise<Response>;
};
