import { AxiosInstance, AxiosRequestConfig } from 'axios';
import { message } from '@/osui';
interface FetchInstance extends AxiosInstance {
    $get<T = any>(url: string, config?: AxiosRequestConfig): Promise<T>;
    $delete<T = any>(url: string, config?: AxiosRequestConfig): Promise<T>;
    $head<T = any>(url: string, config?: AxiosRequestConfig): Promise<T>;
    $options<T = any>(url: string, config?: AxiosRequestConfig): Promise<T>;
    $post<T = any>(url: string, data?: any, config?: AxiosRequestConfig): Promise<T>;
    $put<T = any>(url: string, data?: any, config?: AxiosRequestConfig): Promise<T>;
    $patch<T = any>(url: string, data?: any, config?: AxiosRequestConfig): Promise<T>;
}
export declare const getGateway: (extraPath?: string) => string;
declare const fetch: FetchInstance;
export declare const fetcherInfiniteList: (query: AxiosRequestConfig) => Promise<any>;
export declare const fetcher: (query: string) => Promise<any>;
export declare const fetchVm: (url: string, params: Record<string, any>) => Promise<{
    code: number;
    message?: string;
    data?: Record<string, any>;
}>;
export declare const pluginFetch: any;
export default fetch;
