UNPKG

discord.js-better-embed

Version:

A npm package that helps you create better Discord Embeds using discord.js.

44 lines (43 loc) 1.1 kB
import type { Client, ColorResolvable, EmbedData } from 'discord.js'; export type AnyObject = Record<string, any>; export type Template<V extends AnyObject | undefined = AnyObject> = Partial<EmbedData> & (V extends undefined ? {} : { values?: V; }); export type CheckSizeKey = keyof Template | string; export type CheckSizeContent = Template[keyof Template]; export type TemplatesValues = { basic: BasicTemplate; color: ColorTemplate; complete: CompleteTemplate; image: ImageTemplate; [k: string]: Template; }; interface ColorTemplate extends Template<{ color?: ColorResolvable; }> { color: ColorResolvable; } interface BasicTemplate extends Template<{ client: Client; }> { footer: { text: string; iconURL: string; }; timestamp: Date; } type CompleteTemplate = BasicTemplate & ColorTemplate & Template<{ description?: string; title?: string; }> & { description: string; title: string; }; type ImageTemplate = CompleteTemplate & Template<{ url?: string; }> & { image: { url: string; }; }; export {};