import { Message } from 'discord.js'; export declare type CommandHandler = (message: Message, args: any[], converse_result?: any) => Promise | boolean; export declare type CustomParser = (value: string) => any; export interface Command { name: string | string[]; description?: string; handler: CommandHandler; parse: (string | CustomParser)[]; } export interface ConverseHelp { example: string; description: string; } export interface ConverseCommand { intent: string | string[]; help?: ConverseHelp; handler: CommandHandler; } export declare type ErrorHandler = (message: Message, error: any) => string; export declare type DefaultCommandHandler = (message: Message, commands: Command[] | ConverseCommand[]) => Promise | boolean; export interface NlpOptions { min_confidence: number; must_include?: string[]; } export default class CommandParser { private commands; private converseCommands; private prefix; private split; private defaults; private errorHandler; nlp: NlpOptions; constructor(prefix: string, split?: string, commands?: Command[], defaults?: DefaultCommandHandler[], converseCommands?: ConverseCommand[]); error(handler: ErrorHandler): void; add(command: Command): void; addConverse(command: ConverseCommand): void; addDefault(handler: DefaultCommandHandler): void; private parseArguments; private call; private conversCall; process(message: Message): Promise; }