UNPKG

typed-wx-api

Version:
52 lines (51 loc) 2.05 kB
/// <reference types="node" /> import { APIBase } from './api_base'; /** * @internal */ export declare abstract class APICrypto extends APIBase { private cryptoConfig; /** * AES算法pkcs7 padding Decoder * @param buff 需要解码的Buffer * @returns {Blob|ArrayBuffer|Array.<T>|string|*} * @constructor */ pkcs7Decoder(buff: Buffer): Buffer; /** * AES算法pkcs7 padding Encoder * @param buff 需要编码码的Buffer * @returns {Blob|ArrayBuffer|Array.<T>|string|*} * @constructor */ pkcs7Encoder(buff: Buffer): Buffer; /** * 初始化AES解密的配置信息 * @param corpId 企业微信的corpId,当为第三方套件回调事件时,corpId的内容为suiteId * @param token 企业微信的token,当为第三方套件回调事件时,token的内容为套件的token * @param encodingAESKey 企业微信的encodingAESKey,当为第三方套件回调事件时,encodingAESKey的内容为套件的encodingAESKey */ initCrypto(corpId: string, token: string, encodingAESKey: string): void; /** * 生成签名 * @param timestamp String|Number 时间戳 * @param nonce String 随机串 * @param encrypt String 加密的数据 * @returns {*} String 排好序的签名 */ rawSignature(timestamp: number, nonce: string, encrypt: string): string; /** * 对给定的消息进行AES加密 * @param msg String 需要加密的明文 * @param corpId 可选 需要对比的corpId,如果第三方回调时默认是suiteId,也可自行传入作为匹配处理 * @returns {string} 加密后的结果 */ encrypt(message: string, corpId: string): string; /** * 对给定的密文进行AES解密 * @param str 需要解密的密文 * @param corpId 可选 需要对比的corpId,如果第三方回调时默认是suiteId,也可自行传入作为匹配处理 * @returns {string} 解密后的结果 */ decrypt(str: string, corpId: string): string; }