All Classes and Interfaces
Class
Description
Type adapter for JDAs
AudioChannel
.Methods annotated with AutoComplete will be registered as a handler for
AutoCompleteEvent
s for the given
SlashCommand
s.Representation of an auto complete handler.
This class is a subclass of
Event
.Type adapter for boolean values.
Methods annotated with
Button
will be registered as a button at startup.Representation of a button.
Type adapter for byte values.
Type adapter for character values.
Annotation used to add choices to parameters.
A
Description
that describes a class.Common interface for command interaction definitions.
This class is a subclass of
Event
.Enum describing the two possible scopes a command can be registered for.
A tree data structure representing slash commands sorted into Subcommands and SubcommandGroups.
Represents a component, namely
Button
, StringSelectMenu
or EntitySelectMenu
, that should be added to a reply.Common interface for component interaction definitions.
This class is a subclass of
Event
.Subtype of
ConfigurableReply
that allows replying only with a name without a message.Subtype of
MessageReply
that supports adding components to messages and changing the ReplyConfig
.Indicates that an annotation type can be used for parameter validation.
A
Middleware
implementation that will check the parameter constraints a SlashCommandDefinition
might have.Methods annotated with ContextMenu will be registered as a context menu command.
Representation of a context command.
Commands annotated with Cooldown will have a per-user cooldown.
A
Middleware
implementation that contains the business logic behind command cooldowns.Representation of a custom id used in modals, buttons or select menus.
Indicates that the implementing
Definition
can be transformed into a JDA entity that has a CustomId
.Default implementation of
DependencyInjector
.Implementation of
ErrorMessageFactory
with default embeds.Default implementation of
GuildScopeProvider
.Default implementation of
PermissionsProvider
with the following behaviour:The common interface for all interaction definitions and their sub parts, such as parameters or text inputs, etc.
Central registry for dependencies and producing methods.
The common interface of all
Description
types.A collection of classes relevant for
EventHandler
s.Type adapter for double values.
This class loads and caches embeds from a json file.
This class is a DTO to serialize and deserialize JDAs embed objects to json.
Methods annotated with EntitySelectMenu will be registered as a EntitySelectMenu at startup.
Representation of an entity select menu.
Generic interface for factory classes that generate error messages.
Holds the respective
GenericInteractionCreateEvent
and InteractionDefinition
of an error.Abstract base event for all interaction events, like
CommandEvent
.Implementations of this class are handling specific
GenericInteractionCreateEvent
s.Classes implementing
ExpirationStrategy
define a strategy when a Runtime
should be closed.ExpirationStrategy
that closes a Runtime
after the passed amount of time.Type adapter for float values.
Type adapter for JDAs
GuildChannel
.Type adapter for JDAs
GuildMessageChannel
.Interface for declaring on which Guilds a guild scoped command should be registered.
Collection of helper methods that are used inside the framework.
Indicates that the annotated class is a custom implementation that should replace the default implementation.
Fields annotated with Inject will be assigned a value that is provided by a
Produces
method.Type adapter for integer values.
Classes annotated with
Interaction
are responsible for defining and handling interactions.Common interface for all definitions that represent an interaction.
Stores the configuration values for sending replies.
Central registry for all
InteractionDefinition
s.Bundles data that is important for the execution of an interaction, especially for invoking the user defined method.
Indicates that the implementing
Definition
is bound to a method that can be invoked.A functional interface, that allows the invocation of a
MethodDescription
.The main entry point of the JDA-Commands framework.
This builder is used to build instances of
JDACommands
.Wrapper class for
JDA
and ShardManager
.Indicates that the implementing
Definition
can be transformed into a JDA entity.Handles incoming
GenericInteractionCreateEvent
s and maps them to their corresponding Runtime
, creating new ones if needed.Subtype of
DefaultErrorMessageFactory
that can load the embeds from an EmbedCache
.A simple key-value-store to store variables between events.
Type adapter for long values.
The annotated element must be a number whose value must be less or equal to the specified maximum.
Type adapter for JDAs
Member
.Simple builder for sending text messages based on a
GenericInteractionCreateEvent
.Holds all objects needed to create an
InteractionDefinition
.A
Description
that describes a method.Middlewares run just before an interaction event gets dispatched.
Central registry for all
Middleware
s.The annotated element must be a number whose value must be greater or equal to the specified minimum.
Methods annotated with
Modal
will be registered as a modal at startup.Representation of a modal.
Representation of a modal text input defined by
TextInput
This class is a subclass of
Event
.Subtype of
ReplyableEvent
that also supports replying with a Modal
.Type adapter for JDAs
NewsChannel
.The annotated element must be a user or member that doesn't have the specified discord permission.
The annotated element must be member that doesn't have the specified guild role.
The annotated element must not be the specified user or member.
Parameters annotated with Optional are as the name says optional.
Representation of a slash command parameter.
Representation of a parameter constraint defined by a constraint annotation.
Annotation used to add a name and description to slash command parameters.
A
Description
that describes a parameter.The annotated element must be a user or member that have the specified discord permission.
Interaction
classes or
interaction methods (commands, components or modals) annotated with Permission will
require the user to have the given permissions in order to execute the command.A
Middleware
implementation that will check permissions.Interface for performing permission checks.
Enum to define with witch priority a
Middleware
should be executed.Methods annotated with Produces will be used to get the instance of a dependency.
Common interface for classes that support simple message replies to
GenericInteractionCreateEvent
.Subtype of
Event
that supports replying to the GenericInteractionCreateEvent
with text messages.Used to configure the reply behaviour of interaction replies.
The annotated element must be member that have the specified guild role.
Type adapter for JDAs
Role
.A
Runtime
delegates the jda events to their corresponding EventHandler
and manages the used virtual threads.Common interface for select menu definitions.
Used to define
SelectOptions
for StringSelectMenu
s.Internal wrapper for repeating
SelectOption
s.Type adapter for short values.
Methods annotated with SlashCommand will be registered as a slash command at startup.
Representation of a slash command.
Representation of a cooldown definition defined by
Cooldown
.Class that sends the
CommandData
to Discord.Type adapter for JDAs
StageChannel
.Methods annotated with StringSelectMenu will be registered as a StringSelectMenu at startup.
Representation of a string select menu.
Representation of a select option for a string select menu defined by a
SelectOption
.Type adapter for JDAs
TextChannel
.Annotation used to add TextInputs to
Modal
s.Type adapter for JDAs
ThreadChannel
.Single node inside the
CommandTree
.Generic top level interface for type adapting.
Central registry for all type adapters.
The annotated element must be the specified user or member.
Type adapter for JDAs
User
.Generic top level interface for validators.
Central registry for all
Validator
s.Type adapter for JDAs
VoiceChannel
.