import { ApiDef, TypedApi } from './types.js'; import { Module } from '@nu-art/ts-common'; import { BaseHttpRequest } from './BaseHttpRequest.js'; import { HttpException } from './request-types.js'; type HttpConfig = { origin?: string; timeout?: number; compress?: boolean; }; export declare abstract class BaseHttpModule_Class extends Module { protected origin: string; protected timeout: number; private readonly defaultHeaders; protected defaultOnComplete?: (response: unknown, input: unknown, request: BaseHttpRequest) => Promise; protected defaultOnError?: (errorResponse: HttpException, input: unknown, request: BaseHttpRequest) => Promise; constructor(); init(): void; getOrigin(): string; shouldCompress(): boolean | undefined; setDefaultOnComplete: (defaultOnComplete: (response: unknown, input: unknown, request: BaseHttpRequest) => Promise) => void; setDefaultOnError: (defaultOnError: (errorResponse: HttpException, input: unknown, request: BaseHttpRequest) => Promise) => void; addDefaultHeader(key: string, header: (() => string | string[]) | string | string[]): void; getDefaultHeaders(): { [k: string]: string | string[]; }; abstract createRequest>(apiDef: ApiDef, data?: any): BaseHttpRequest; } export {};