UNPKG

cyberbot-next

Version:

cyberbot, 基于napcat-ts, nodejs,轻量qq机器人框架。

78 lines (77 loc) 3.56 kB
import { PluginManager, CybePlugin } from './pluginManager.js'; import { logger, Logger } from './logger.js'; import { Plugin, MessageContext, Config, NCWebsocket, Structs, type Send, type AllHandlers, FsSizeData } from './types.js'; import { createEventHandlers } from './event.js'; import axios from 'axios'; export type { Plugin, MessageContext, Config, Send, AllHandlers, FsSizeData }; export { CybePlugin, PluginManager, NCWebsocket, Structs }; export declare class NapcatConnector extends NCWebsocket { private static instance; private messageHandlers; private singleMessageHandler; constructor(configPath?: string); static getInstance(configPath?: string): NapcatConnector; onMessage(handler: (e: MessageContext) => void): void; removeMessageListener(handler: (e: MessageContext) => void): boolean; connect(): Promise<void>; disconnect(): void; setConfig(config: Config): void; getConfig(): Config; } export declare class NapcatClient { private connector; pluginManager: PluginManager; logger: Logger; events: ReturnType<typeof createEventHandlers>; bot_uin: number; napcat: NapcatConnector; constructor(connector?: NapcatConnector); onMessage(handler: (e: MessageContext) => void): void; removeMessageListener(handler: (e: MessageContext) => void): boolean; connect(): Promise<void>; disconnect(): void; loadPlugin(plugin: Plugin): void; unloadPlugin(pluginName: string): boolean; getLoadedPlugins(): string[]; setConfig(config: Config): void; getConfig(): Config; sendPrivateMessage(userId: number, content: any): Promise<{ message_id: number; }>; sendGroupMessage(groupId: number, content: any): Promise<{ message_id: number; }>; deleteMessage(message_id: number): Promise<void>; kickMember(group_id: number, user_id: number, reject_add_request?: boolean): Promise<void>; banMember(group_id: number, user_id: number, duration?: number): Promise<void>; banAllMembers(group_id: number, enable: boolean): Promise<void>; setGroupNameEx(group_id: number, name: string): Promise<void>; setAdminEx(group_id: number, user_id: number, enable: boolean): Promise<void>; setMemberTitle(group_id: number, user_id: number, title: string): Promise<void>; isMaster(id: number): Promise<boolean>; isAdmin(id: number): Promise<boolean>; hasRight(user_id: number): Promise<boolean>; aprroveGroup(flag: string): Promise<void>; rejectGroup(flag: string): Promise<void>; isGroupAdmin(group_id: number, user_id: number): Promise<boolean>; isGroupOwner(group_id: number, user_id: number): Promise<boolean>; md5(text: string): string; randomInt(min: number, max: number): number; randomItem<T>(array: T[]): T; getGroupAvatarLink(group_id: number, size?: number): string; getQQAvatarLink(user_id: number, size?: number): string; getImageLink(raw_message: string): string; getDirectLink(url: string): Promise<string>; getMessageId(raw_message: string): string; getMessageAt(raw_message: string): number[]; getText(raw_message: string): string; getQuotedText(raw_message: string): Promise<string>; fakeMessage(target_id: number, message: Send['node'][], isGroup: boolean): Promise<{ message_id: number; res_id: string; }>; } declare const connector: NapcatConnector; declare const client: NapcatClient; declare function BootStrap(): Promise<void>; export { BootStrap, logger, connector, client, axios as http };