37 lines
770 B
Java
37 lines
770 B
Java
|
package net.Broken;
|
||
|
|
||
|
import net.dv8tion.jda.api.events.interaction.SlashCommandEvent;
|
||
|
import net.dv8tion.jda.api.interactions.commands.build.OptionData;
|
||
|
|
||
|
import java.util.List;
|
||
|
|
||
|
/**
|
||
|
* Interface that define command structure.
|
||
|
*/
|
||
|
public interface SlashCommand {
|
||
|
/**
|
||
|
* Main action of command
|
||
|
* @param args Command args.
|
||
|
* @param event Command MessageReceivedEvent
|
||
|
*/
|
||
|
void action(SlashCommandEvent event);
|
||
|
|
||
|
String getDescription();
|
||
|
|
||
|
List<OptionData> getOptions();
|
||
|
|
||
|
/**
|
||
|
* Determines if the command is usable only by bot level admin user
|
||
|
* @return boolean
|
||
|
*/
|
||
|
boolean isBotAdminCmd();
|
||
|
|
||
|
/**
|
||
|
* Determines if the command is only usable on NSFW channels
|
||
|
* @return boolean
|
||
|
*/
|
||
|
boolean isNSFW();
|
||
|
|
||
|
|
||
|
}
|