import { AccessToken } from '@tnwx/accesstoken';
/**
 * @author Javen
 * @copyright javendev@126.com
 * @description 电子发票相关接口
 */
export declare class QyInvoiceApi {
    private static getUrl;
    /**
     * 查询电子发票
     * @param cardId 发票id
     * @param encryptCode 加密code
     * @param accessToken AccessToken
     */
    static get(cardId: string, encryptCode: string, accessToken?: AccessToken): Promise<any>;
    private static updateUrl;
    /**
     * 更新发票状态
     * @param cardId 发票id
     * @param encryptCode 加密code
     * @param reimburseStatus 发报销状态 INVOICE_REIMBURSE_INIT:发票初始状态，未锁定; INVOICE_REIMBURSE_LOCK:发票已锁定，无法重复提交报销;INVOICE_REIMBURSE_CLOSURE:发票已核销，从用户卡包中移除
     * @param accessToken AccessToken
     */
    static update(cardId: string, encryptCode: string, reimburseStatus: string, accessToken?: AccessToken): Promise<any>;
    private static batchUpdateUrl;
    /**
     * 批量更新发票状态
     * @param openId 用户 openId
     * @param reimburseStatus 发报销状态 INVOICE_REIMBURSE_INIT:发票初始状态，未锁定; INVOICE_REIMBURSE_LOCK:发票已锁定，无法重复提交报销;INVOICE_REIMBURSE_CLOSURE:发票已核销，从用户卡包中移除
     * @param invoiceList 发票列表
     * @param accessToken AccessToken
     */
    static batchUpdate(openId: string, reimburseStatus: string, invoiceList: Array<QyInvoice>, accessToken?: AccessToken): Promise<any>;
    private static batchGetUrl;
    /**
     * 批量查询电子发票
     * @param itemList 发票列表
     * @param accessToken AccessToken
     */
    static batchGet(itemList: Array<QyInvoice>, accessToken?: AccessToken): Promise<any>;
}
export declare class QyInvoice {
    private card_id;
    private encrypt_code;
    constructor(cardId: string, encryptCode: string);
    set cardId(cardId: string);
    get cardId(): string;
    set encryptCode(encryptCode: string);
    get encryptCode(): string;
}
