import { BasicEmbed, BasicEmbedFooter, BasicEmbedImage, BasicEmbedThumbnail, BasicEmbedVideo, BasicEmbedProvider, BasicEmbedAuthor, BasicEmbedField } from "@wilsonjs/models"; import { EmbedType, ISOTimestamp } from "@wilsonjs/constants"; import { User } from "./User"; import { GuildMember } from "./GuildMember"; declare type RGB = [number, number, number]; export declare class RichEmbed implements BasicEmbed { basic: Partial; title?: string; type?: EmbedType; description?: string; url?: string; timestamp?: ISOTimestamp; color?: number; footer?: BasicEmbedFooter; image?: BasicEmbedImage; thumbnail?: BasicEmbedThumbnail; video?: BasicEmbedVideo; provider?: BasicEmbedProvider; author?: BasicEmbedAuthor; fields?: BasicEmbedField[]; constructor(basic?: Partial); get hexColor(): string | undefined; toJSON(): BasicEmbed; update(basic: Partial): void; setTitle(title: string): this; setBody(description: string): this; setUrl(url: string): this; setTimestamp(timestamp: string): this; setColor(color: string | number | RGB): this; setFooter(footer: BasicEmbedFooter): this; setImage(url: string): this; setThumbnail(filename: string): any; setVideo(url: string): this; setProvider(name: string, url: string): this; setAuthor(user: User): any; setAuthor(member: GuildMember): any; addField(title: string, body: string, inline?: boolean): this; addInline(title: string, body: string): this; clearFields(): this; } export {};