import { IFZ, Url, FzConfig, Fetch, BeforeRequest, AfterResponse, StatusCode, StatusHandler, ErrorHandler } from '../types'; export declare class Fz implements IFZ { private readonly config; static request(options: FzConfig): IFZ; static get(url: Url, options?: Omit): IFZ; static post(url: Url, options?: Omit): IFZ; static put(url: Url, options?: Omit): IFZ; static patch(url: Url, options?: Omit): IFZ; static head(url: Url, options?: Omit): IFZ; static delete(url: Url, options?: Omit): IFZ; static fetch(url: Url, options: Omit): IFZ; static baseUrl(url: string): void; static headers(hs: Record): void; static status(statusCode: StatusCode, handler: StatusHandler): void; static loading(start: BeforeRequest, end: AfterResponse): void; static error(handler: ErrorHandler): void; static enableShowLoading(): void; static beforeRequest(handler: BeforeRequest): void; static afterResponse(handler: AfterResponse): void; static onBadRequest(handler: StatusHandler): void; static onUnauthorized(handler: StatusHandler): void; static onForbidden(handler: StatusHandler): void; static onNotFound(handler: StatusHandler): void; static onMethodNotAllowed(handler: StatusHandler): void; static onRateLimited(handler: StatusHandler): void; static onInternalServerError(handler: StatusHandler): void; static onBadGateway(handler: StatusHandler): void; static onServiceUnavailable(handler: StatusHandler): void; static onGatewayTimeout(handler: StatusHandler): void; static engine(customEngine: Fetch): void; private static _CACHE; private static _STATUS; private static _LOADING; private static _DEFAULT_SHOW_LOADING; private static _HOOKS; private static _BASE_URL; private static _HEADERS; private static _ERROR_HANDLER; private static _ENGINE; private engine; private showLoading; private timeout; private retryCount; private hooks; private requestConfig; constructor(config: FzConfig); private applyLoading; private applyPrefix; private applySuffix; private applyQuery; private applyParams; private applyBaseUrl; private applyHeader; private applyBody; private applyCache; private applyStatus; private request; response(): Promise; text(): Promise; json(): Promise; arrayBuffer(): Promise; blob(): Promise; private getResponse; private retry; private beforeRequest; private afterResponse; private getCachedResponse; private setCachedResponse; private getCachedKey; private runStatusBeforeError; }