import { Pubby } from "../../client";
import { PubbyModule } from "../../module";
import { PubbyMessage } from "../chat/message";
declare module "../../client" {
    interface Pubby {
        commands: CommandsModule;
    }
}
interface CommandsModuleOptions {
    prefix: string;
}
declare const $commands: unique symbol;
export declare class CommandsModule extends PubbyModule<CommandsModuleOptions> {
    [$commands]: Map<string, Function>;
    constructor(client: Pubby, options: CommandsModuleOptions);
    init(): void;
    private messageListener;
    add(name: string, handler: (message: PubbyMessage) => void): this;
    dispose(): void;
}
export {};
