Namespace Discord.Interactions
Classes
AutocompleteAttribute
Set the IsAutocomplete to true.
AutocompleteCommandAttribute
Create an Autocomplete Command.
AutocompleteCommandInfo
Represents the info class of an attribute based method for handling Autocomplete Interaction events.
AutocompleteHandler
Base class for creating Autocompleters. InteractionService uses Autocompleters to generate parameter suggestions.
ChannelTypesAttribute
Specify the target channel types for a Channel option.
ChoiceAttribute
Add a pre-determined argument value to a command parameter.
ChoiceDisplayAttribute
Customize the displayed value of a slash command choice enum. Only works with the default enum type converter.
CommandInfo<TParameter>
The base information class for InteractionService commands.
CommandParameterInfo
Represents the base parameter info class for InteractionService commands.
ComplexParameterAttribute
Registers a parameter as a complex parameter.
ComplexParameterCtorAttribute
Tag a type constructor as the preferred Complex command constructor.
ComponentCommandInfo
Represents the info class of an attribute based method for handling Component Interaction events.
ComponentCommandParameterInfo
Represents the parameter info class for ComponentCommandInfo commands.
ComponentInteractionAttribute
Create a Message Component interaction handler, CustomId represents the CustomId of the Message Component that will be handled.
ComponentTypeConverter
Base class for creating Component TypeConverters. InteractionService uses TypeConverters to interface with Slash Command parameters.
ComponentTypeConverter<T>
Base class for creating Component TypeConverters. InteractionService uses TypeConverters to interface with Slash Command parameters.
ContextCommandAttribute
Base attribute for creating a Context Commands.
ContextCommandInfo
Base information class for attribute based context command handlers.
DefaultMemberPermissionsAttribute
Sets the DefaultMemberPermissions of an application command or module.
DefaultPermissionAttribute
Set the "Default Permission" property of an Application Command.
DontAutoRegisterAttribute
InteractionModuleBase<T>s with this attribute will not be registered by the RegisterCommandsGloballyAsync(Boolean) or RegisterCommandsToGuildAsync(UInt64, Boolean) methods.
EnabledInDmAttribute
Sets the IsEnabledInDm property of an application command or module.
GroupAttribute
Create nested Slash Commands by marking a module as a command group.
HideAttribute
Enum values tagged with this attribute will not be displayed as a parameter choice
IDiscordInteractionExtentions
InputComponentInfo
Represents the base info class for IModal input components.
InputLabelAttribute
Creates a custom label for an modal input.
InteractionContext
Represents the context of an Interaction.
InteractionModuleBase
Provides a base class for a command module to inherit from.
InteractionModuleBase<T>
Provides a base class for a command module to inherit from.
InteractionService
Provides the framework for building and registering Discord Application Commands.
InteractionServiceConfig
Represents a configuration class for InteractionService.
InteractionUtility
Utility class containing helper methods for interacting with Discord Interactions.
JsonLocalizationManager
The default localization provider for Json resource files.
MaxLengthAttribute
Sets the maximum length allowed for a string type parameter.
MaxValueAttribute
Set the maximum value permitted for a number type parameter.
MessageCommandAttribute
Create a Message Context Command.
MessageCommandInfo
Represents the info class of an attribute based method for command type Message.
MinLengthAttribute
Sets the minimum length allowed for a string type parameter.
MinValueAttribute
Set the minimum value permitted for a number type parameter.
ModalCommandInfo
Represents the info class of an attribute based method for handling Modal Interaction events.
ModalCommandParameterInfo
Represents the base parameter info class for InteractionService modals.
ModalInfo
Represents the info class of an IModal form.
ModalInputAttribute
Mark an IModal property as a modal input field.
ModalInteractionAttribute
Create a Modal interaction handler. CustomId represents the CustomId of the Modal that will be handled.
ModalTextInputAttribute
Marks a IModal property as a text input.
ModuleInfo
Contains the information of a Interactions Module.
NsfwCommandAttribute
Sets the IsNsfw property of an application command or module.
ParameterChoice
Represents a Slash Command parameter choice.
ParameterPreconditionAttribute
Requires the parameter to pass the specified precondition before execution can begin.
PreconditionAttribute
Requires the module or class to pass the specified precondition before execution can begin.
PreconditionGroupResult
Represents a result type for grouped command preconditions.
PreconditionResult
Represents a result type for command preconditions.
RequireBotPermissionAttribute
Requires the bot to have a specific permission in the channel a command is invoked in.
RequireContextAttribute
Requires the command to be invoked in a specified context (e.g. in guild, DM).
RequiredInputAttribute
Sets the input as required or optional.
RequireNsfwAttribute
Requires the command to be invoked in a channel marked NSFW.
RequireOwnerAttribute
Requires the command to be invoked by the owner of the bot.
RequireRoleAttribute
Requires the user invoking the command to have a specified role.
RequireUserPermissionAttribute
Requires the user invoking the command to have a specified permission.
RestInteractionModuleBase<T>
Provides a base class for a Rest based command module to inherit from.
ResxLocalizationManager
The default localization provider for Resx files.
RuntimeResult
Represents the base class for creating command result containers.
ShardedInteractionContext
The sharded variant of SocketInteractionContext.
ShardedInteractionContext<TInteraction>
The sharded variant of SocketInteractionContext<TInteraction>.
SlashCommandAttribute
Create an Slash Application Command.
SlashCommandInfo
Represents the info class of an attribute based method for command type Slash.
SlashCommandParameterInfo
Represents the parameter info class for SlashCommandInfo commands.
SocketInteractionContext
Represents a Web-Socket based context of an IDiscordInteraction
SocketInteractionContext<TInteraction>
Represents a Web-Socket based context of an IDiscordInteraction.
SummaryAttribute
Customize the name and description of an Slash Application Command parameter.
TextInputComponentInfo
Represents the InputComponentInfo class for TextInput type.
TypeConverter
Base class for creating TypeConverters. InteractionService uses TypeConverters to interface with Slash Command parameters.
TypeConverter<T>
Base class for creating TypeConverters. InteractionService uses TypeConverters to interface with Slash Command parameters.
TypeReader
Base class for creating TypeConverters. InteractionService uses TypeConverters to interface with Slash Command parameters.
TypeReader<T>
Base class for creating TypeConverters. InteractionService uses TypeConverters to interface with Slash Command parameters.
UserCommandAttribute
Create an User Context Command.
UserCommandInfo
Represents the info class of an attribute based method for command type User.
Structs
AutocompletionResult
Contains the information of a Autocomplete Interaction result.
ExecuteResult
Contains information of the command's overall execution result.
ParseResult
SearchResult<T>
Contains information of a command search.
TypeConverterResult
Represents a result type for ReadAsync(IInteractionContext, IApplicationCommandInteractionDataOption, IServiceProvider).
Interfaces
IApplicationCommandInfo
Represents a InteractionService command that can be registered to Discord.
IAutocompleteHandler
Represent a Autocomplete handler object that can be executed to generate parameter suggestions.
ICommandInfo
Represent a command information object that can be executed.
IInteractionModuleBase
Represents a generic interaction module base.
ILocalizationManager
Represents a localization provider for Discord Application Commands.
IModal
Represents a generic Modal for use with the interaction service.
IParameterInfo
Represents a ICommandInfo parameter.
IResult
Contains information of the result related to a command.
Enums
ContextType
Defines the type of command context (i.e. where the command is being executed).
InteractionCommandError
Defines the type of error a command can throw.
LocalizationTarget
Resource targets for localization.
RunMode
Specifies the behavior of the command execution workflow.
SlashCommandChoiceType
Supported types of pre-defined parameter choices.
Delegates
ComplexParameterInitializer
Represents a cached argument constructor delegate.
ExecuteCallback
Represents a cached method execution delegate.
ModalInitializer
Represents a cached object initialization delegate.
RestResponseCallback
Represents a cached delegate for creating interaction responses to webhook based Discord Interactions.