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; /** * If the command is bot owner only * * @return if the command is bot owner only */ boolean botOwnerOnly() default false; }