UNPKG

typed-wx-api

Version:
130 lines (129 loc) 3.24 kB
export interface WxMpUserMessage { ToUserName: string; FromUserName: string; CreateTime: string; MsgId: string; /**消息的数据ID(消息如果来自文章时才有)*/ MsgDataId?: string; /** 多图文时第几篇文章,从1开始(消息如果来自文章时才有)*/ Idx?: string; } export interface WxMpEventMessage { ToUserName: string; FromUserName: string; CreateTime: string; MsgId: string; MsgType: 'event'; } export interface WxMpMessages { text: WxMpUserMessage & { MsgType: 'text'; Content: string; }; image: WxMpUserMessage & { MsgType: 'image'; PicUrl: string; MediaId: string; }; voice: WxMpUserMessage & { MsgType: 'voice'; Format: string; MediaId: string; }; video: WxMpUserMessage & { MsgType: 'video'; ThumbMediaId: string; MediaId: string; }; shortvideo: WxMpUserMessage & { MsgType: 'shortvideo'; ThumbMediaId: string; MediaId: string; }; location: WxMpUserMessage & { MsgType: 'location'; Location_X: string; Location_Y: string; Scale: string; Label: string; }; link: WxMpUserMessage & { MsgType: 'link'; Title: string; Description?: string; Url: string; }; subscribe: WxMpEventMessage & { Event: 'event'; EventKey?: string; Ticket?: string; }; unsubscribe: WxMpEventMessage & { Event: 'unsubscribe'; }; SCAN: WxMpEventMessage & { Event: 'SCAN'; EventKey: string; Ticket: string; }; LOCATION: WxMpEventMessage & { Event: 'LOCATION'; Latitude: string; Longitude: string; Precision: string; }; CLICK: WxMpEventMessage & { Event: 'CLICK'; EventKey: string; }; VIEW: WxMpEventMessage & { Event: 'VIEW'; EventKey: string; }; /**成功: status =success , 失败: failed:user block failed: system failed*/ TEMPLATESENDJOBFINISH: WxMpEventMessage & { Event: 'TEMPLATESENDJOBFINISH'; Status: string; }; } export declare class WxMpCrypto { private readonly wxCrypto; constructor(config: { token: string; encodingAESKey: string; appid: string; }); decrypt(params: { msg_signature: string; timestamp: string; nonce: string; }, encrypt: string): Promise<{ errMessage: string; message?: undefined; } | { errMessage: undefined; message: string; }>; private formatXmlObj; decryptMessageXML(params: { msg_signature: string; timestamp: string; nonce: string; }, xmlStr: string): Promise<{ errMessage: string; } | { errMessage: undefined; Decrypt: WxMpMessages[keyof WxMpMessages]; }>; decryptXML<T>(params: { msg_signature: string; timestamp: string; nonce: string; }, xmlStr: string): Promise<{ errMessage: string; message?: undefined; } | { errMessage: undefined; Decrypt: T; }>; }