import { EntityAPI } from '@ayanaware/bento';
import { CommandInteraction, ComponentInteraction, FileContent, InteractionContent, Message } from 'eris';
import { BaseContext } from './BaseContext';
export declare class InteractionContext<C = string | InteractionContent> extends BaseContext<C> {
    interaction: CommandInteraction | ComponentInteraction;
    constructor(api: EntityAPI, interaction: CommandInteraction | ComponentInteraction);
    prepare(): Promise<void>;
    defer(flags?: number): Promise<void>;
    getResponse(): Promise<Message>;
    createResponse(response: C, files?: Array<FileContent>): Promise<void>;
    editResponse(response: C, files?: Array<FileContent>): Promise<void>;
    deleteResponse(): Promise<void>;
    createMessage(content: C, files?: Array<FileContent>): Promise<Message>;
    editMessage(messageId: string, content: C, files?: Array<FileContent>): Promise<Message>;
    deleteMessage(messageId: string): Promise<void>;
}
