detritus-client
Version:
A Typescript NodeJS library to interact with Discord's API, both Rest and Gateway.
110 lines (109 loc) • 3.53 kB
TypeScript
import { ShardClient } from '../client';
import { BaseCollection } from '../collections/basecollection';
import { BaseSet } from '../collections/baseset';
import { MessageEmbedTypes } from '../constants';
import { BaseStructure, BaseStructureData } from './basestructure';
/**
* Embed Structure, used for [Message] Structures
* @category Structure
*/
export declare class MessageEmbed extends BaseStructure {
readonly _keys: BaseSet<string>;
author?: MessageEmbedAuthor;
color?: number;
description?: string;
fields?: BaseCollection<number, MessageEmbedField>;
footer?: MessageEmbedFooter;
image?: MessageEmbedImage;
provider?: MessageEmbedProvider;
referenceId?: string;
thumbnail?: MessageEmbedThumbnail;
timestamp?: Date;
title?: string;
type: MessageEmbedTypes;
url?: string;
video?: MessageEmbedVideo;
constructor(client: ShardClient, data?: BaseStructureData, isClone?: boolean);
get hasAttachment(): boolean;
get isApplicationNews(): boolean;
get isArticle(): boolean;
get isGifV(): boolean;
get isImage(): boolean;
get isLink(): boolean;
get isRich(): boolean;
get isTweet(): boolean;
get isVideo(): boolean;
get length(): number;
get size(): number;
fetchApplicationNews(): Promise<import("./applicationnews").ApplicationNews>;
mergeValue(key: string, value: any): void;
}
/**
* Embed Author Structure, used for [MessageEmbed] Structures
* @category Structure
*/
export declare class MessageEmbedAuthor extends BaseStructure {
readonly _keys: BaseSet<string>;
iconUrl?: string;
name?: string;
proxyIconUrl?: string;
url?: string;
constructor(client: ShardClient, data?: BaseStructureData, isClone?: boolean);
}
/**
* Embed Field Structure, used for [MessageEmbed] Structures
* @category Structure
*/
export declare class MessageEmbedField extends BaseStructure {
readonly _keys: BaseSet<string>;
inline: boolean;
name: string;
value: string;
constructor(client: ShardClient, data?: BaseStructureData, isClone?: boolean);
}
/**
* Embed Footer Structure, used for [ApplicationNews] and [MessageEmbed] Structures
* @category Structure
*/
export declare class MessageEmbedFooter extends BaseStructure {
readonly _keys: BaseSet<string>;
iconUrl?: string;
proxyIconUrl?: string;
text: string;
constructor(client: ShardClient, data?: BaseStructureData, isClone?: boolean);
}
/**
* Embed Image Structure, used for [MessageEmbed] Structures
* @category Structure
*/
export declare class MessageEmbedImage extends BaseStructure {
readonly _keys: BaseSet<string>;
height: number;
proxyUrl?: string;
url: string;
width: number;
constructor(client: ShardClient, data?: BaseStructureData, isClone?: boolean);
get hasAttachment(): boolean;
}
/**
* Embed Provider Structure, used for [MessageEmbed] Structures
* @category Structure
*/
export declare class MessageEmbedProvider extends BaseStructure {
readonly _keys: BaseSet<string>;
name?: string;
url?: string;
constructor(client: ShardClient, data?: BaseStructureData, isClone?: boolean);
}
/**
* Embed Thumbnail Structure, used for [ApplicationNews] and [MessageEmbed] Structures
* @category Structure
*/
export declare class MessageEmbedThumbnail extends MessageEmbedImage {
}
/**
* Embed Video Structure, used for [MessageEmbed] Structures
* @category Structure
*/
export declare class MessageEmbedVideo extends MessageEmbedImage {
}