import { AccessToken } from '@tnwx/accesstoken';
/**
 * @author Javen
 * @copyright javendev@126.com
 * @description 微信卡券相关接口
 */
export declare class CardApi {
    private static cardCreateUrl;
    /**
     * 创建会员卡接口
     * @param jsonStr
     * @param accessToken
     */
    static create(jsonStr: string, accessToken?: AccessToken): Promise<any>;
    private static setPayCellUrl;
    /**
     * 设置买单接口
     * @param cardId
     * @param isOpen
     * @param accessToken
     */
    static setPayCell(cardId: string, isOpen: boolean, accessToken?: AccessToken): Promise<any>;
    private static setSelfConsumeCellUrl;
    /**
     * 设置自助核销接口
     * @param cardId  卡券ID
     * @param isOpen  是否开启自助核销功能，填true/false，默认为false
     * @param needVerifyCod 用户核销时是否需要输入验证码， 填true/false， 默认为false
     * @param needRemarkAmount 用户核销时是否需要备注核销金额， 填true/false， 默认为false
     * @param accessToken
     */
    static setSelfConsumeCell(cardId: string, isOpen?: boolean, needVerifyCod?: boolean, needRemarkAmount?: boolean, accessToken?: AccessToken): Promise<any>;
    private static createQrcodeCardUrl;
    /**
     * 创建二维码接口
     * @param jsonStr
     * @param accessToken
     */
    static createQrcodeCard(jsonStr: string, accessToken?: AccessToken): Promise<any>;
    private static createLandingPageCardUrl;
    /**
     * 创建货架接口
     * @param jsonStr
     * @param accessToken
     */
    static createLandingPageCard(jsonStr: string, accessToken?: AccessToken): Promise<any>;
    private static getHtmlMpNewsUrl;
    /**
     * 图文消息群发卡券
     * @param cardId
     * @param accessToken
     */
    static getHtmlMpNews(cardId: string, accessToken?: AccessToken): Promise<any>;
    private static setTestWhiteListUrl;
    /**
     * 设置测试白名单
     * @param jsonStr
     * @param accessToken
     */
    static setTestWhiteList(jsonStr: string, accessToken?: AccessToken): Promise<any>;
    private static getCodeUrl;
    /**
     * 查询Code接口
     * @param code 单张卡券的唯一标准
     * @param cardId 卡券ID代表一类卡券。自定义code卡券必填。
     * @param checkConsume 是否校验code核销状态
     * @param accessToken
     */
    static getCode(code: string, cardId?: string, checkConsume?: boolean, accessToken?: AccessToken): Promise<any>;
    private static consumeCodeUrl;
    /**
     * 核销Code接口
     * @param code 需核销的Code码
     * @param cardId 卡券ID。创建卡券时use_custom_code填写true时必填。非自定义Code不必填写。
     * @param accessToken
     */
    static consume(code: string, cardId?: string, accessToken?: AccessToken): Promise<any>;
    /**
     * 线上核销Code接口
     * @param code 需核销的Code码
     * @param openid 当前卡券使用者的openid，通常通过网页授权登录或自定义url跳转参数获得。
     * @param accessToken
     */
    static consumeOnline(code: string, openid: string, accessToken?: AccessToken): Promise<any>;
    private static decryptCodeUrl;
    /**
     * Code解码接口
     * @param encryptCode 经过加密的Code码
     * @param accessToken
     */
    static decryptCode(encryptCode: string, accessToken?: AccessToken): Promise<any>;
    private static setDepositUrl;
    /**
     * 导入自定义code
     * @param cardId  需要进行导入code的卡券ID
     * @param codeList 需导入微信卡券后台的自定义code，上限为100个。
     * @param accessToken
     */
    static setDeposit(cardId: string, codeList: [], accessToken?: AccessToken): Promise<any>;
    private static getDepositCountUrl;
    /**
     * 查询导入code数目接口
     * @param cardId
     * @param accessToken
     */
    static getDepositCount(cardId: string, accessToken?: AccessToken): Promise<any>;
    private static checkCodeUrl;
    /**
     * 核查code接口
     * @param cardId 进行导入code的卡券ID
     * @param codeList 已经微信卡券后台的自定义code，上限为100个
     * @param accessToken
     */
    static checkCode(cardId: string, codeList: [], accessToken?: AccessToken): Promise<any>;
    private static getUserCardListUrl;
    /**
     * 获取用户已领取卡券接口
     * @param openid 需要查询的用户openid
     * @param cardId 卡券ID 不填写时默认查询当前appid下的卡券
     * @param accessToken
     */
    static getUserCardList(openid: string, cardId?: string, accessToken?: AccessToken): Promise<any>;
    private static getCardUrl;
    /**
     * 查看卡券详情
     * @param cardId 卡券ID
     * @param accessToken
     */
    static getCard(cardId: string, accessToken?: AccessToken): Promise<any>;
    private static getBatchUrl;
    /**
     * 批量查询卡券列表
     * @param offset 查询卡列表的起始偏移量，从0开始，即offset: 5是指从从列表里的第六个开始读取
     * @param count 需要查询的卡片的数量（数量最大50）
     * @param statusList  支持开发者拉出指定状态的卡券列表
     * @param accessToken
     *
     * “CARD_STATUS_NOT_VERIFY”, 待审核 ；
     * “CARD_STATUS_VERIFY_FAIL”, 审核失败；
     * “CARD_STATUS_VERIFY_OK”， 通过审核；
     * “CARD_STATUS_DELETE”， 卡券被商户删除；
     * “CARD_STATUS_DISPATCH”，在公众平台投放过的卡券
     */
    static getBatch(offset: number, count: number, statusList?: [], accessToken?: AccessToken): Promise<any>;
    private static updateUrl;
    /**
     * 更改卡券信息接口
     * @param jsonStr
     * @param accessToken
     */
    static update(jsonStr: string, accessToken?: AccessToken): Promise<any>;
    private static modifyStockUrl;
    /**
     * 修改库存接口
     * @param cardId 卡券ID
     * @param increase 增加多少库存，支持不填或填0
     * @param reduce 减少多少库存，可以不填或填0
     * @param accessToken
     */
    static modifyStock(cardId: string, increase?: number, reduce?: number, accessToken?: AccessToken): Promise<any>;
    private static updateCodeUrl;
    /**
     * 更改Code接口
     * @param code 需变更的Code码
     * @param newCode 变更后的有效Code码
     * @param cardId 卡券ID。自定义Code码卡券为必填
     * @param accessToken
     */
    static updateCode(code: string, newCode: string, cardId?: string, accessToken?: AccessToken): Promise<any>;
    private static deleteUrl;
    /**
     * 删除卡券接口
     * @param cardId 卡券ID
     * @param accessToken
     */
    static delete(cardId: string, accessToken?: AccessToken): Promise<any>;
    private static unavailableUrl;
    /**
     * 设置卡券失效接口
     * @param cardId 卡券ID
     * @param code 设置失效的Code码
     * @param reason 失效理由
     * @param accessToken
     */
    static unavailable(cardId?: string, code?: string, reason?: string, accessToken?: AccessToken): Promise<any>;
    private static getCardBizUinInfoUrl;
    /**
     * 拉取卡券概况数据接口
     * @param beginDate 查询数据的起始时间
     * @param endDate 查询数据的截至时间
     * @param condSource 卡券来源，0为公众平台创建的卡券数据 、1是API创建的卡券数据
     * @param accessToken
     */
    static getCardBizUinInfo(beginDate: string, endDate: string, condSource?: number, accessToken?: AccessToken): Promise<any>;
    private static getFreeCardInfoUrl;
    /**
     * 获取免费券数据接口
     * @param beginDate 查询数据的起始时间
     * @param endDate 查询数据的截至时间
     * @param condSource 卡券来源，0为公众平台创建的卡券数据、1是API创建的卡券数据
     * @param cardId 卡券ID 填写后，指定拉出该卡券的相关数据
     * @param accessToken
     */
    static getFreeCardInfo(beginDate: string, endDate: string, condSource?: number, cardId?: string, accessToken?: AccessToken): Promise<any>;
    private static subMerchantSubmitUrl;
    /**
     * 创建子商户接口
     * @param data
     * @param accessToken
     */
    static subMerchantSubmit(data: string, accessToken?: AccessToken): Promise<any>;
    private static subMerchantUpdateUrl;
    /**
     * 更新子商户接口
     * @param data
     * @param accessToken
     */
    static subMerchantUpdate(data: string, accessToken?: AccessToken): Promise<any>;
    private static getSubMerchantUrl;
    /**
     * 拉取单个子商户信息接口
     * @param merchantId
     * @param accessToken
     */
    static getSubMerchant(merchantId: string, accessToken?: AccessToken): Promise<any>;
    private static batchGetSubMerchantUrl;
    /**
     * 批量拉取子商户信息接口
     * @param beginId     起始的子商户id
     * @param limit       拉取的子商户的个数，最大值为100
     * @param status      子商户审核状态，填入后，只会拉出当前状态的子商户
     * @param accessToken accessToken
     */
    static batchGetSubMerchant(beginId: string, limit: number, status: string, accessToken?: AccessToken): Promise<any>;
    private static getApplyProtocolUrl;
    /**
     * 卡券开放类目查询接口
     * @param accessToken
     */
    static getApplyProtocol(accessToken?: AccessToken): Promise<any>;
}
