/**
 * 应用服务模块
 * @date 2022-03
 * @author 何华东
 */
import { TyExternalApiClient, GetConfigInfoResponse } from "./TyExternalApi";
/**
 * 车场扩展信息
 */
export declare type ParkExtendConfig = {
    /**
     * 固定返回字段`车场id`
     */
    stcParkId: any;
    /**
     * 车场id
     */
    parkId?: any;
    /**
     * 第三方车场标识
     */
    thirdParkId?: any;
    /**
     * 其他属性
     */
    [prop: string]: any;
};
/**
 * 接口授权/`APP`应用服务, `appId`、`appSecret`
 *
 * ```ts
 * import { AppService } from "refs/nslib";
 * import { Inject, Singleton } from "typescript-ioc";
 *
 * //去掉注释
 * //@Inject
 * appService: AppService;
 *
 * //获取APP的配置信息，包括已授权车场的扩展配置
 * let configInfo = await this.appService.getConfigInfoFromLocal();
 * ```
 * @see [接口授权](https://kp-open.keytop.cn/api/index.html#/service/platformManage)
 */
export default class AppService {
    externalApiClient: TyExternalApiClient;
    private configInfo;
    private refresh_configInfo_interval;
    /**
     * 获取`APP`的配置信息, 包括已授权车场的扩展配置
     *
     * redis缓存(30分钟), key: `{tapdId}_configInfo`
     *
     * @param ex 过期时间(秒)
     * @deprecated {@link getConfigInfoFromLocal}
     */
    getConfigInfo(ex?: number): Promise<GetConfigInfoResponse>;
    /**
     * 从redis缓存 {@link getConfigInfo} 查找车场扩展配置
     *
     * @deprecated {@link findParkExtendConfigFromLocal}
     */
    findParkExtendConfig(parkId: any): Promise<ParkExtendConfig>;
    /**
     * 从redis缓存 {@link getConfigInfo} 获取车场扩展配置, 如果未匹配到则抛出异常
     *
     * @throws {@link Error}
     * @deprecated {@link getParkExtendConfigFromLocal}
     */
    getParkExtendConfig(parkId: any): Promise<ParkExtendConfig>;
    /**
     * 获取`APP`的配置信息, 包括已授权车场的扩展配置
     *
     * 本地缓存(5分钟)
     * @param ex 过期时间(秒)
     */
    getConfigInfoFromLocal(ex?: number): Promise<GetConfigInfoResponse>;
    /**
     * 从本地缓存 {@link getConfigInfoFromLocal} 查找车场扩展配置
     */
    findParkExtendConfigFromLocal(parkId: any): Promise<ParkExtendConfig>;
    /**
     * 从本地缓存 {@link getConfigInfoFromLocal} 获取车场扩展配置, 如果未匹配到则抛出异常
     *
     * @throws {@link Error}
     */
    getParkExtendConfigFromLocal(parkId: any): Promise<ParkExtendConfig>;
    /**
     * 根据第三方车场id thirdParkId来获取平台配置
     */
    getParkExtendConfigByThirdParkId(thirdParkId: any): Promise<ParkExtendConfig>;
}
export { AppService };
