import { Base } from '../Base';
import type { ChatBot } from '../ChatBot';
import { BaseMessage } from '../BaseMessage';
import type { EventSubConnection } from '../../enums';
/**
 * The message manager of the chatbot.
 */
export declare class ChatBotMessageManager<T extends EventSubConnection> extends Base<T> {
    /**
     * Creates a new instance of the message manager.
     * @param chatbot The current instance of the chatbot.
     */
    constructor(chatbot: ChatBot<T>);
    /**
     * Deletes a specific message from a chatroom.
     * @param chatroomId The id of the chatroom where the message will be deleted.
     * @param id The id of the message to delete.
     * @returns
     */
    delete(chatroomId: string, id: string): Promise<void>;
    /**
     *
     * @param chatroomId The id of the chatroom where the message will be sent.
     * @param message The message to send.
     * @param options The options to send the message. See {@link MessageOptions}.
     * @returns A class representation of the message. See {@link BaseMessage}.
     */
    send(chatroomId: string, message: string, options?: MessageOptions): Promise<BaseMessage<T>>;
}
/**
 * The options to send a message.
 */
export interface MessageOptions {
    /**
     * The id of the message to reply.
     */
    replyMessageId?: string;
}
