/**
 * 统一国际化/翻译接口模块
 *
 * https://pan.keytop.cn:8088/project/677/interface/api/4553
 */
import { AxiosInstance } from "axios";
/**
 * 统一翻译接口客户端
 */
export default class TyGlobalApiClient {
    /**
     * 获取指定资源
     *
     * https://pan.keytop.cn:8088/project/677/interface/api/4553
     */
    get(request: GetRequest): Promise<ApiResponse<GetResponse>>;
    /**
     * 获取所有资源
     *
     * https://pan.keytop.cn:8088/project/677/interface/api/4547
     */
    fetch(request: FetchRequest): Promise<ApiResponse<GetResponse>>;
}
export declare class ApiResponse<T = any> {
    constructor(resultCode: number);
    /**
     * 错误码，200操作成功；其他，操作失败
     */
    resultCode?: number;
    /**
     * 提示信息
     */
    resultMsg?: string;
    data?: T;
    /**
     * 判断响应码是否为成功
     */
    static resultCodeIsSuccess(resultCode: number): boolean;
}
export declare function throwIfResultCodeNoSuccess(apiResponse: ApiResponse): void;
/**
 * 语言包分类,上游系统接口是这么设计的
 */
export declare enum Token {
    /**
     * 标准-后端
     */
    keytop_nkc_pro_sg = "keytop_nkc_pro_sg",
    /**
     * 标准-场端/云端c++
     */
    keytop_charge_pro_sg = "keytop_charge_pro_sg",
    /**
     * 非标/计费
     */
    nonstandard_callfee = "94505439ee1d4fe7853851a75907fa8b",
    /**
     * 非标/后端
     */
    nonstandard_back_end = "e344d0c953c6023ffd30b14efc46fcbd",
    /**
     * 非标/前端
     */
    nonstandard_front_end = "0c9b6bca050980a891b5d90495c08c20"
}
export declare type Language = 'zh_CN' | 'en_US';
export declare class GetRequest {
    /**
     * token
     */
    token: Token;
    /**
     * 语言（符合i18n规范）
     */
    language?: Language;
    /**
     * 翻译类型 1-文本、2-图片、3-声音
     */
    type: 1 | 2 | 3;
}
export declare class GetResponse {
    /**
     * 语言（符合i18n规范）
     */
    language: string;
    /**
     * 翻译类型 1-文本、2-图片、3-声音
     */
    type: 1 | 2 | 3;
    data: {
        /**
         * i18n-中文简体value
         */
        cn: string;
        /**
         * i18n-key
         */
        key: string;
        /**
         * i18n-value
         */
        value: string;
        language: string;
    }[];
}
export declare class FetchRequest {
    reqId: string;
    sign: string;
    ts: number;
    token: Token;
}
export declare let axiosInstance: AxiosInstance;
export { TyGlobalApiClient };
