node-napcat-ts
Version:
napcat SDK for Node
31 lines (30 loc) • 2.13 kB
TypeScript
import { EventHandleMap, EventKey, HandlerResMap, type MessageHandler, type MessageSentHandler, type MetaEventHandler, type NoticeHandler, type RequestHandler, type WSReceiveHandler } from './Interfaces.js';
import type { NCWebsocketBase } from './NCWebsocketBase.js';
export declare class NCEventBus {
#private;
constructor(ws: NCWebsocketBase);
on<T extends EventKey>(event: T, handler: EventHandleMap[T]): this;
off<T extends EventKey>(event: T, handler: EventHandleMap[T]): this;
once<T extends EventKey>(event: T, handler: EventHandleMap[T]): this;
emit<T extends EventKey>(event: T, context: HandlerResMap[T]): boolean;
parseMessage(json: WSReceiveHandler[keyof WSReceiveHandler]): boolean;
meta_event(json: MetaEventHandler[keyof MetaEventHandler]): boolean;
life_cycle(json: MetaEventHandler['meta_event.lifecycle']): boolean;
message(json: MessageHandler[keyof MessageHandler]): boolean;
message_private(json: MessageHandler['message.private']): boolean;
message_group(json: MessageHandler['message.group']): boolean;
message_sent(json: MessageSentHandler[keyof MessageSentHandler]): boolean;
message_sent_private(json: MessageSentHandler['message_sent.private']): boolean;
message_sent_group(json: MessageSentHandler['message_sent.group']): boolean;
request(json: RequestHandler[keyof RequestHandler]): boolean;
request_group(json: RequestHandler['request.group']): boolean;
notice(json: NoticeHandler[keyof NoticeHandler]): boolean;
notice_group_admin(json: NoticeHandler['notice.group_admin']): boolean;
notice_group_ban(json: NoticeHandler['notice.group_ban']): boolean;
notice_group_decrease(json: NoticeHandler['notice.group_decrease']): boolean;
notice_group_increase(json: NoticeHandler['notice.group_increase']): boolean;
notice_essence(json: NoticeHandler['notice.essence']): boolean;
notice_notify(json: NoticeHandler['notice.notify']): boolean;
notice_notify_input_status(json: NoticeHandler['notice.notify.input_status']): boolean;
notice_notify_poke(json: NoticeHandler['notice.notify.poke']): boolean;
}