/**
 * 异常模块
 * @date 2022-03
 * @author 何华东
 */
import { AxiosError } from "axios";
/**
 * 参数异常类
 * @param paramName 参数名
 */
export declare class ParamError extends Error {
    paramName?: string;
    constructor(message: string, paramName?: string);
}
/**
 * 参数无效异常类
 * @param paramName 参数名
 */
export declare class ParamInvalidError extends ParamError {
    constructor(paramName?: string);
}
/**
 * 参数为空异常类
 * @param paramName 参数名
 */
export declare class ParamEmptyError extends ParamError {
    constructor(paramName?: string);
}
/**
 * 参数解密失败异常类
 * @param paramName 参数名
 */
export declare class ParamDecryptFailedError extends ParamError {
    constructor(paramName?: string);
}
/**
 * 验签失败异常类
 */
export declare class ValidateSignFailedError extends Error {
    constructor();
}
/**
 * 接口异常类
 */
export declare class ApiError {
    /**
     * 接口分类，例如：统一接口、非标接口、杭停接口，仅为日志记录
     */
    apiCategory: string;
    /**
     * 接口描述，例如：2.0.1获取平台配置信息，仅为日志记录
     */
    apiDesc?: string;
    /**
     * 错误信息
     */
    message?: string;
    /**
     * 请求地址
     */
    requestUrl: string;
    /**
     * 请求头
     */
    headers?: any;
    /**
     * 请求数据
     */
    data?: any;
    /**
     * axiosError.code
     *
     * ECONNABORTED 为请求超时时
     */
    code?: string;
    /**
     * http状态码，例如：200、500、404
     */
    statusCode?: any;
    /**
     * 响应
     */
    apiResponse?: any;
    toString(): string;
}
/**
 * 从AxiosError抛出ApiError异常
 * @param apiCategory 接口分类名
 */
export declare function throwApiErrorFromAxiosError(axiosError: AxiosError, apiCategory: string): void;
