Estoy usando Discord.js V13 (Node JS v16.8.0) y quería eliminar todos los comandos globales registrados, estoy usando el módulo @discordjs/rest , pero no estoy seguro de cómo
Aquí está mi archivo deployment-commands.js:
const fs = require('fs'); const { REST } = require('@discordjs/rest'); const { Routes } = require('discord-api-types/v9'); const { clientId, guildId, token } = require('./config.json'); const commands = []; const commandFiles = fs.readdirSync('./commands').filter(file => file.endsWith('.js')); for (const file of commandFiles) { const command = require(`./commands/${file}`); commands.push(command.data.toJSON()); } const rest = new REST({ version: '9' }).setToken(token); (async () => { try { console.log('Started refreshing application (/) commands.'); await rest.put( Routes.applicationGuildCommands(clientId, guildId), { body: commands }, ); console.log('Successfully reloaded application (/) commands.'); } catch (error) { console.error(error); } })();Para eliminar todos los comandos globales, use Client.application.commands.set() y pase una matriz vacía
client.application.commands.set([])Me las arreglé para resolverlo, resulta que necesitas poner esta línea de código entre la función asíncrona
await rest.put(Routes.applicationGuildCommands(clientId, guildId), { body: commands, });