-
Notifications
You must be signed in to change notification settings - Fork 0
/
EmbedThumbnail.ts
25 lines (18 loc) · 1003 Bytes
/
EmbedThumbnail.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import { RawEmbedThumbnail } from '../raw/RawEmbedThumbnail.ts';
import { toApiCasing, fromApiCasing } from '../internals/casing.ts';
import { integer } from '../internals/type-aliases.ts';
// https://discord.com/developers/docs/resources/channel#embed-object-embed-thumbnail-structure
export interface EmbedThumbnail {
/** source url of thumbnail (only supports http(s) and attachments) */
url?: string;
/** a proxied url of the thumbnail */
proxyUrl?: string;
/** height of thumbnail */
height?: integer;
/** width of thumbnail */
width?: integer;
}
export const wrapEmbedThumbnail = fromApiCasing as (x: RawEmbedThumbnail) => EmbedThumbnail;
export const unwrapEmbedThumbnail = toApiCasing as (x: EmbedThumbnail) => RawEmbedThumbnail;
export const wrapEmbedThumbnailPartial = wrapEmbedThumbnail as (x: Partial<RawEmbedThumbnail>) => Partial<EmbedThumbnail>;
export const unwrapEmbedThumbnailPartial = unwrapEmbedThumbnail as (x: Partial<EmbedThumbnail>) => Partial<RawEmbedThumbnail>;