const { stripIndents } = require('common-tags'); const { Command } = require('../../../../interfaces/'); class PingCommand extends Command { constructor(client) { super(client, { name: 'arguments', module: 'utility', aliases: ['args', 'arg', 'argument'], arguments: [ { name: 'apple', type: 'BOOLEAN', types: ['VERBAL', 'FLAG'], default: true }, { name: 'banana', aliases: ['bans', 'bananas'], type: 'INTEGER', types: ['FLAG', 'VERBAL'], min: 0, max: 10, required: true }, { name: 'channels', aliases: ['cars', 'carrots'], type: 'CHANNEL', types: ['FLAG', 'VERBAL'], infinite: true, default: 'test' }, { name: 'format', type: 'STRING', types: ['VERBAL', 'FLAG'], options: [ 'webp', 'png', 'jpeg', 'jpg', 'gif' ], required: true }, { name: 'raw', aliases: ['json'], type: 'BOOLEAN', types: ['VERBAL', 'FLAG'], default: true }, { name: 'points', aliases: ['modpoints', 'modpoint', 'point', 'pt', 'pts'], types: ['FLAG', 'VERBAL'], type: 'INTEGER', usage: '', min: 0, max: 100 }, { name: 'prune', aliases: ['purge'], types: ['FLAG'], usage: '', type: 'INTEGER', min: 2, max: 50 } ], restricted: true, archivable: false }); this.client = client; } async execute(message, { args, params }) { await message.respond(stripIndents`**arguments:** ${Object.values(args).map((a) => `${a.name}: ${a.value}`) .join(' | ')} **words:** ${params.join(', ')}`, { emoji: 'success' }); } } module.exports = PingCommand;