@joshbrucker/discordjs-utils
Version:
A set of utility classes and functions to aid with discord.js bot development. Paged embeds, emoji utilities, and more!
34 lines (33 loc) • 1.61 kB
TypeScript
import { CommandInteraction, InteractionCollector, Attachment, ButtonBuilder, ComponentEmojiResolvable, EmbedBuilder } from "discord.js";
import { ButtonStyle } from "discord-api-types/v10";
import { PagedEmbedOptions } from "./PagedEmbedOptions";
export declare class PagedEmbedSendError extends Error {
constructor(message: string);
}
export declare class PagedEmbed {
static readonly BACK_ID = "back";
static readonly FORWARD_ID = "forward";
timeout: number;
leftEmoji: ComponentEmojiResolvable;
rightEmoji: ComponentEmojiResolvable;
leftStyle: Exclude<ButtonStyle, ButtonStyle.Link>;
rightStyle: Exclude<ButtonStyle, ButtonStyle.Link>;
showPageNumbers: boolean;
wrapAround: boolean;
resetTimerOnPress: boolean;
collector: InteractionCollector<any> | undefined;
backButton: ButtonBuilder;
forwardButton: ButtonBuilder;
constructor(options: PagedEmbedOptions);
setTimeout(timeout: number): this;
setLeftEmoji(leftEmoji: ComponentEmojiResolvable): this;
setRightEmoji(rightEmoji: ComponentEmojiResolvable): this;
setLeftStyle(leftStyle: Exclude<ButtonStyle, ButtonStyle.Link>): this;
setRightStyle(rightStyle: Exclude<ButtonStyle, ButtonStyle.Link>): this;
withShowPageNumbers(showPageNumbers: boolean): this;
withWrapAround(wrapAround: boolean): this;
withResetTimerOnPress(resetTimerOnPress: boolean): this;
expire(): void;
resetTimer(newTimeout?: number): void;
send(interaction: CommandInteraction, embeds: EmbedBuilder[], attachments?: Attachment[] | string[], startIndex?: number): Promise<void>;
}