import type { AxiosRequestConfig } from 'axios'; import RequestBuilder from "./builder"; import Config from "./config"; export declare function normalizePath(path: string): string; export declare function isNullOrEmpty(param: any): boolean; type MetaPropertyDescriptor = PropertyDescriptor & { builder: RequestBuilder; config?: Config; }; export declare function castToMetaDescriptor(descriptor: PropertyDescriptor): MetaPropertyDescriptor; /** * Merges multiple Axios request configurations with specific logic for Axios. * - `headers` and `params` are shallowly merged. * - All other properties are replaced by the last provided value. * * @param sources A list of AxiosRequestConfig objects to merge. * @returns A new, merged AxiosRequestConfig object. */ export declare function mergeAxiosConfigs(...sources: AxiosRequestConfig[]): AxiosRequestConfig; /** * 替换链接占位符,注意使用基本类型 * Replaces placeholders in a URL with values from a data object. * e.g., formatUrl("http://a.com/{c}?d={e}", {c: 'x', e: 100}) -> "http://a.com/x?d=100" * * @param url The URL string with placeholders like {key}. * @param data The plain object data source. * @returns The formatted URL string. */ export declare function formatUrl(url: string, data: Record): string; /** * Checks if a value is a plain object, i.e., an object created by `{}` or `new Object()`. * @param value The value to check. * @returns True if the value is a plain object, false otherwise. */ export declare function isPlainObject(value: any): value is Record; export {};