import { Client, TextableChannel } from 'eris'; import { Container } from 'inversify'; import { Connection, Repository } from 'typeorm'; import { Logger } from 'winston'; import MessageBuffer from './Buffer/MessageBuffer'; import CommandContext from './CommandContext'; import Configuration from './Configuration'; import { Interfaces } from './Interfaces'; import Embed from './Model/Embed'; export default abstract class AbstractPlugin implements Interfaces.PluginInterface { static Name: string; static Config: any; static addToContainer(container: Container, types: any): void; static getEntities(): any[]; protected static rgbToHex(r: number, g: number, b: number): number; protected get prefix(): string; client: Client; configuration: Configuration; messageBuffer: MessageBuffer; database: Connection; logger: Logger; context: CommandContext; initialize(): Promise; protected getDefaultColor(): number; protected reactOk(): Promise; protected reactNotOk(): Promise; protected reply(content: string): Promise; protected sendMessage(channel: TextableChannel, content: string): Promise; protected sendEmbed(embed: Embed): Promise; protected embedMessage(action: ((x: Embed) => any)): Promise; protected getRepository(entityClass: any): Repository | null; } //# sourceMappingURL=AbstractPlugin.d.ts.map