forked from Galactic/galactic-bot
44 lines
1.5 KiB
TypeScript
44 lines
1.5 KiB
TypeScript
import { APIEmbed, ActionRowData, Attachment, AttachmentBuilder, AttachmentPayload, ChannelSelectMenuInteraction, EmbedBuilder, MentionableSelectMenuInteraction, MessageActionRowComponentBuilder, MessageActionRowComponentData, MessageComponent, MessageComponentType, RoleSelectMenuInteraction, StringSelectMenuInteraction, UserSelectMenuInteraction } from 'discord.js';
|
|
import { FormatOpts, FormatParams } from './Client.ts';
|
|
|
|
export type MessageOptions = {
|
|
index?: string,
|
|
content?: string,
|
|
params?: FormatParams,
|
|
formatOpts?: FormatOpts,
|
|
emoji?: string,
|
|
embed?: APIEmbed | EmbedBuilder | null,
|
|
embeds?: (APIEmbed | EmbedBuilder)[],
|
|
files?: (Attachment | AttachmentBuilder | AttachmentPayload)[]
|
|
}
|
|
|
|
export type PromptMessageOptions = {
|
|
files?: Buffer[],
|
|
editReply?: boolean,
|
|
delete?: boolean,
|
|
time?: number,
|
|
// disableMentions?: Mention
|
|
} & MessageOptions
|
|
|
|
export type PromptInteractionOptions = {
|
|
components: ActionRowData<MessageActionRowComponentData | MessageActionRowComponentBuilder>[]
|
|
componentType?: MessageComponentType
|
|
} & ReplyOptions
|
|
|
|
export type ReplyOptions = {
|
|
edit?: boolean,
|
|
dm?: boolean,
|
|
ephemeral?: boolean,
|
|
// _edit?: boolean,
|
|
} & MessageOptions
|
|
|
|
export type EditReplyOptions = {
|
|
components?: ActionRowData<MessageActionRowComponentData | MessageActionRowComponentBuilder>[]
|
|
} & ReplyOptions
|
|
|
|
export type SelectMenuInteraction =
|
|
| StringSelectMenuInteraction
|
|
| UserSelectMenuInteraction
|
|
| RoleSelectMenuInteraction
|
|
| MentionableSelectMenuInteraction
|
|
| ChannelSelectMenuInteraction |