import type { RequestHandler, RequestOptions, RequestResponse } from '#services/request-handler/request-handler.types';
export declare class FetchRequestHandler implements RequestHandler {
    private readonly AUTHORIZATION_HEADER;
    private readonly ACCEPT_HEADER;
    private readonly CONTENT_TYPE_HEADER;
    private readonly JSON_CONTENT_TYPE;
    private readonly permanentHeaders;
    get<T = unknown>(url: string, options?: RequestOptions): Promise<RequestResponse<T>>;
    post<T = unknown>(url: string, body?: unknown, options?: RequestOptions): Promise<RequestResponse<T>>;
    put<T = unknown>(url: string, body?: unknown, options?: RequestOptions): Promise<RequestResponse<T>>;
    delete<T = unknown>(url: string, options?: RequestOptions): Promise<RequestResponse<T>>;
    setPermanentHeader(name: string, value: string): void;
    private request;
    private buildUrl;
    private buildHeaders;
    private buildBody;
    private parseBody;
}
export default FetchRequestHandler;
