const Discord = require("discord.js"); const adminGuildCommands = [ { name: "add", description: "Add a bad actor to the list", options: [ { name: "user", type: 6, // USER type description: "The user to add", required: true }, { name: "comment", type: 3, // STRING type description: "Comment, reason, or any other context for the addition", required: true }, { name: "attachment1", type: 11, // ATTACHMENT type description: "Optional attachment 1", required: false }, { name: "attachment2", type: 11, description: "Optional attachment 2", required: false }, { name: "attachment3", type: 11, description: "Optional attachment 3", required: false }, { name: "attachment4", type: 11, description: "Optional attachment 4", required: false } ] }, { name: "remove", description: "Remove a bad actor from the list", options: [ { name: "user", type: 6, // USER type description: "The user to remove", required: true }, { name: "confirmation", type: Discord.ApplicationCommandOptionType.String, description: "Type 'yes im absolutely sure' to confirm removal", required: true } ] } ] const globalCommands = [ { name: "lookup", description: "Look up a bad actor by their User ID", options: [ { name: "user", type: 6, // USER type description: "The user to look up", required: true } ] }, { name: "export", description: "Export the list of bad actors as a JSON file", type: 1 // CHAT_INPUT type }, { name: "serverconfig", description: "Configure server settings for bad actor management", type: 1, // CHAT_INPUT type default_member_permissions: Discord.PermissionFlagsBits.Administrator.toString(), options: [ { name: "mode", description: "Set the mode for bad actor management in this server", type: 1, // SUB_COMMAND type options: [ { name: "mode", type: 3, // STRING type description: "Choose 'strict' or 'lenient' mode", required: true, choices: [ { name: "Auto-Kick", value: "kick" }, { name: "Auto-Ban", value: "ban" }, { name: "Warn Only", value: "warn" }, { name: "No Action", value: "none" } ] } ] }, { name: "logchannel", description: "Set the channel for logging bad actor actions", type: 1, // SUB_COMMAND type options: [ { name: "channel", type: 7, // CHANNEL type description: "The channel to log actions in", required: true } ] }, { name: "view", description: "View the current server configuration for bad actor management", type: 1 // SUB_COMMAND type }, { name: "fullscan", description: "Perform a full scan of the server for bad actors", type: 1 // SUB_COMMAND type } ] } ] // Define commands module.exports = { adminGuildCommands: adminGuildCommands, globalCommands: globalCommands }