import { MessageType, Snowflake } from "@wilsonjs/constants"; import { BasicMessage } from "@wilsonjs/models"; import { MaskedCache } from "../cache/Cache"; import { ReactionCache } from "../cache/ReactionCache"; import { WilsonClient } from "../Client"; import { AttachmentInfo, MessageOptions } from "../models/MessageOptions"; import { GuildMember } from "./GuildMember"; import { Identifiable } from "./Identifiable"; import { RichEmbed } from "./RichEmbed"; import { Role } from "./Role"; import { TextChannel } from "./TextChannel"; import { User } from "./User"; export interface MessageMentions { users: MaskedCache; members: MaskedCache; roles: MaskedCache; channels: MaskedCache; everyone: boolean; } export declare class Message extends Identifiable { protected client: WilsonClient; private channel_id; private guild_id; author: User; member: GuildMember; content: string; created_at: Date; edited_at: Date; tts: boolean; mentions: MessageMentions; attachments: MaskedCache; embeds: unknown[]; reactions: ReactionCache; nonce: number | string; pinned: boolean; webhook_id: Snowflake; type: MessageType; replied_to: Message | null; deleted: boolean; constructor(client: WilsonClient, message: Partial); get channel(): TextChannel; get guild(): import("./Guild").Guild | undefined; patch(basic: Partial): void; reply(content: string | RichEmbed | MessageOptions, files?: AttachmentInfo[]): Promise; delete(): Promise; }