import { Base } from '../Base';
import type { ChatBot } from '../ChatBot';
import type { ChatRoom } from '../ChatRoom';
import type { EventSubConnection } from '../../enums';
/**
 * Represents the manager for the messages of a chatroom.
 */
export declare class MessageManager<T extends EventSubConnection> extends Base<T> {
    /**
     * The chatroom instance.
     */
    readonly chatroom: ChatRoom<T>;
    /**
     * Creates a new instance of the message manager.
     * @param chatbot The current instance of the chatbot.
     * @param chatroom The chatroom instance.
     */
    constructor(chatbot: ChatBot<T>, chatroom: ChatRoom<T>);
    /**
     * Deletes a message from the chatroom.
     * @param id The id of the message to delete.
     * @returns
     */
    delete(id: string): Promise<void>;
    /**
     * Sends a message to the chatroom.
     * @param message The message to send.
     * @returns The message which was sent.
     */
    send(message: string): Promise<import("structures").BaseMessage<T>>;
}
