Bat/src/main/java/cc/fascinated/bat/command/CommandInfo.java

50 lines
1.1 KiB
Java
Raw Normal View History

2024-06-27 18:36:52 +00:00
package cc.fascinated.bat.command;
import net.dv8tion.jda.api.Permission;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
* @author Fascinated (fascinated7)
*/
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
public @interface CommandInfo {
/**
* The name of the command
*
* @return the name of the command
*/
String name();
/**
* The description of the command
*
* @return the description of the command
*/
String description() default "No description provided.";
/**
* If the command is guild only
*
* @return if the command is guild only
*/
boolean guildOnly() default true;
/**
* The required permissions for the command
*
* @return the required permissions for the command
*/
Permission[] requiredPermissions() default {};
/**
* The category of the command
*
* @return the category of the command
*/
Category category() default Category.GENERAL;
}