vk-chat-bot
Version:
Package for easy creation of chat bots for VK communities (uses Callback API).
44 lines (43 loc) • 1.4 kB
TypeScript
import Context from './api/context';
import API from './api/api';
import Stats from './extra/stats';
export declare type Handler = ($: Context) => void | Promise<void>;
export declare type Payload = any;
export declare type Tester = (payloadJson: string, payload?: Payload) => boolean;
export default class Core {
readonly api: API;
readonly stats: Stats;
private cmdPrefix;
private groupId;
private escapedCmdPrefix;
private locked;
private eventHandlers;
private exactPayloadHandlers;
private dynPayloadHandlers;
private commandHandlers;
private regexHandlers;
private eventWarnings;
private helpMessage;
constructor(api: API, stats: Stats, cmdPrefix: string, groupId: string | number);
noEventWarnings(): void;
lock(): void;
on(event: string, handler: Handler): void;
payload(payload: Payload, handler: Handler): void;
cmd(command: string, handler: Handler, description?: string): void;
regex(regex: RegExp, handler: Handler): void;
parseRequest(body: any): Promise<void>;
help(): string;
private isLocked;
private event;
private registerMessageNewHandler;
private tryHandlePayload;
private tryHandleCommand;
private tryHandleRegex;
private generateHelpMessage;
getHandlerCounts(): {
evt: number;
cmd: number;
reg: number;
pld: number;
};
}