UNPKG

lib-wechat

Version:
96 lines (95 loc) 2.8 kB
import { MessageElem, Parser, Sendable } from "./elements"; import { Client } from "./client"; import { Dict } from "./types"; import { OriginMessage } from "./core/constanst"; export declare class Message { c: Client; private original; message_id: string; raw_message: string; message: MessageElem[]; create_time: number; time: number; parser: Parser; static genMsgId(): number; constructor(c: Client, original: Message.Original); parse(): Promise<void>; forward(user_id: string): Promise<string | string[]>; [Symbol.unscopables](): { parser: boolean; c: boolean; }; static from(this: Client, original: Message.Original): GroupMessageEvent | PrivateMessageEvent; } export declare namespace Message { interface Sender { user_id: string; nickname: string; card?: string; } interface Original { MsgId: string; FromUserName: string; ToUserName: string; MsgType: OriginMessage; Content: string; Status: number; ImgStatus: number; CreateTime: number; VoiceLength: number; PlayLength: number; FineName: string; FileSize: string; MediaId: string; Url: string; AppMsgType: number; StatusNotifyCode: number; StatusNotifyUserName: string; RecommendInfo: Dict; ForwardFlag: number; AppInfo: Dict; HasProductId: number; Ticket: string; ImgHeight: number; ImgWidth: number; SubMsgType: number; NewMsgId: number; OriContent: string; EncryFileName: string; } } export interface Message { toJSON(): any; } export interface MessageEvent { c: Client; sender: Message.Sender; post_type: 'message'; message_type: 'group' | 'private'; reply(message: Sendable): Promise<string | string[]>; recall(message_id: string): Promise<boolean>; } export declare class PrivateMessageEvent extends Message implements MessageEvent { c: Client; post_type: "message"; message_type: "private"; get user_id(): string; is_self: boolean; sender: Message.Sender; constructor(c: Client, original: Message.Original); reply(message: Sendable): Promise<string | string[]>; recall(): Promise<boolean>; } export declare class GroupMessageEvent extends Message implements MessageEvent { c: Client; group_id: string; get group_name(): string; post_type: "message"; message_type: "group"; sender: Message.Sender; get group(): import(".").Group; get member(): any; constructor(c: Client, original: Message.Original); reply(message: Sendable): Promise<string | string[]>; recall(): Promise<boolean>; }