import {adminId, SubcommandData} from "../types" import { ActivityType, ApplicationCommandOptionType, ApplicationCommandSubCommandData, ChatInputCommandInteraction, } from "discord.js" import {wrappedRestart} from "../../ipc/restart" class RestartCommand extends SubcommandData { readonly definition: ApplicationCommandSubCommandData = { name: "restart", type: ApplicationCommandOptionType.Subcommand, description: "Tells the bot to restart.", } async execute(b: ChatInputCommandInteraction): Promise { const user = b.user || b.member if (!!user && user.id === adminId) { await b.reply({ ephemeral: true, content: "Yaaaawwn... Okay... Just a quick nap then...", }) const self = b.client.user self.setPresence({ status: "idle", afk: true, activities: [ { type: ActivityType.Listening, name: "A New Day", }, ], }) await wrappedRestart(b) } else { await b.reply({ ephemeral: true, content: "Heeey... I don't gotta do what you say...", }) } } } export const commandBotRestart = new RestartCommand()