napcat-node-ts-sdk
Version:
napcat SDK for Node
31 lines (30 loc) • 2.1 kB
TypeScript
import type { EventHandleMap, EventKey, HandlerResMap, MessageHandler, MessageSentHandler, MetaEventHandler, NoticeHandler, RequestHandler, WSReceiveHandler } from './Interfaces';
import type { NCWebsocketBase } from './NCWebsocketBase';
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;
}