import type { Message as APIMessage, SystemMessage, Embed, File } from 'revolt-api'; import { Base, DMChannel, GroupChannel, Mentions, Server, ServerMember, TextChannel, User } from './index'; import { Client } from '../client/Client'; export declare class Message extends Base { content: string; channelId: string; authorId: string; embeds: Embed[]; attachments: File[]; mentions: Mentions; type: Uppercase; editedAt: Date | null; constructor(client: Client, data: APIMessage); protected _patch(data: APIMessage): this; get createdAt(): Date; get createdTimestamp(): number; get editedTimestamp(): number | null; ack(): Promise; delete(): Promise; reply(content: string, mention?: boolean): Promise; edit(content: string): Promise; fetch(): Promise; get system(): boolean; inServer(): this is this & { serverId: string; server: Server; channel: TextChannel; }; get author(): User | null; get channel(): TextChannel | DMChannel | GroupChannel; get serverId(): string | null; get server(): Server | null; get member(): ServerMember | null; get url(): string; }