/// import { EventEmitter } from 'events'; import * as stream from 'stream'; import { VKError, VKExecuteResponse, VKResponse } from './interfaces/APIResponses'; import UploadedPhoto from './interfaces/UploadedPhoto'; import Message from './interfaces/Message'; import UserEvent from './interfaces/UserEvent'; import MessageSendParams from './interfaces/MessageSendParams'; import Keyboard, { KeyboardColor } from './Keyboard'; export interface Options { token: string; api?: { lang?: string; v?: string; }; group_id: number; controllers?: string[]; } export declare type replyFunc = (text?: string, params?: MessageSendParams) => Promise; export declare class Bot extends EventEmitter { options: Options; _events: Object; _userEvents: UserEvent[]; _stop: boolean; constructor(options: Options); api(method: string, params?: any): Promise; send(text: string, peer: number, params?: MessageSendParams): Promise; processUpdate(res: any): boolean; start(poll_delay?: number): this; stop(): this; get(pattern: UserEvent['pattern'], listener: UserEvent['listener']): this; getPayload(jsonString: string, listener: (msg?: Message, reply?: replyFunc) => void): void; uploadPhoto(photo: string | stream.Stream): Promise; private _update; } export { Message, UploadedPhoto, VKError, VKExecuteResponse, VKResponse, UserEvent, MessageSendParams, Keyboard, KeyboardColor }; export * from './decorators';