DiscordCoreAPI
A Discord bot library written in C++, with custom asynchronous coroutines.
Loading...
Searching...
No Matches
DiscordCoreAPI Namespace Reference

The main namespace for this library. More...

Classes and Structures

class  AccountData
 Account data. More...
 
struct  ActionData
 For representing a single auto-moderation-rule-action. More...
 
struct  ActionMetaData
 Action metadata for auto-moderation-rules. More...
 
class  ActionRowData
 Action row data of Message components. More...
 
struct  ActiveThreadsData
 Data representing an active Thread. More...
 
struct  ActivityData
 Activity data. More...
 
struct  AddGuildMemberData
 For adding a new GuildMember to a chosen Guild. More...
 
struct  AddGuildMemberRoleData
 For adding a Role to a GuildMember. More...
 
struct  AddRecipientToGroupDMData
 For adding a user to a group Dm. More...
 
struct  AddThreadMemberData
 For adding a chosen User to a chosen Thread. More...
 
class  AllowedMentionsData
 Allowable mentions for a Message. More...
 
class  ApplicationCommand
 A single ApplicationCommand. More...
 
class  ApplicationCommandData
 Data structure representing an ApplicationCommand. More...
 
class  ApplicationCommandInteractionData
 ApplicationCommand Interaction data. More...
 
struct  ApplicationCommandInteractionDataOption
 ApplicationCommand Interaction data option. More...
 
class  ApplicationCommandOptionChoiceData
 Data structure representing an ApplicationCommand's option choice. More...
 
struct  ApplicationCommandOptionData
 Data structure representing an ApplicationCommand's option. More...
 
class  ApplicationCommandPermissionData
 Permissions data for an ApplicationCommand. More...
 
class  ApplicationCommands
 An interface class for the ApplicationCommand related Discord endpoints. More...
 
class  ApplicationData
 Application data. More...
 
struct  ArchivedThreadsData
 Data representing an archived Thread. More...
 
struct  AssetsData
 Assets data. More...
 
class  AttachmentData
 Attachment data. More...
 
struct  AudioFrameData
 Represents a single frame of audio data. More...
 
struct  AuditLogChangeData
 Audit log change data. More...
 
class  AuditLogData
 Audit log data. More...
 
class  AuditLogEntryData
 Audit log entry data. More...
 
struct  AuthorizationInfoData
 Authorization info structure. More...
 
struct  AutoModerationActionExecutionEventData
 For when an auto-moderation-rule is executed. More...
 
class  AutoModerationRule
 Represents an auto-moderation-rule. More...
 
class  AutoModerationRuleData
 Represents an auto-moderation-rule. More...
 
class  AutoModerationRules
 An interface class for the AutoModerationRule related Discord endpoints. More...
 
struct  BanData
 Ban data. More...
 
struct  BaseFunction
 Base class for the command classes. More...
 
struct  BaseFunctionArguments
 Base arguments for the command classes. More...
 
struct  BatchEditGuildApplicationCommandPermissionsData
 For batch editing the permissions of a collection of Guild ApplicationCommands. More...
 
struct  BeginGuildPruneData
 For pruning a number of GuildMembers from the Guild. More...
 
class  BotUser
 A type of User, to represent the Bot and some of its associated endpoints. More...
 
struct  BulkOverwriteGlobalApplicationCommandsData
 For bulk-overwriting a collection of global ApplicationCommands. More...
 
struct  BulkOverwriteGuildApplicationCommandsData
 For bulk-overwriting a collection of Guild ApplicationCommands. More...
 
class  ButtonCollector
 ButtonCollector, for collecting button input from one or more Users. More...
 
struct  ButtonData
 Button data. More...
 
struct  ButtonResponseData
 Button response data. More...
 
struct  CacheOptions
 For selecting the caching style of the library. More...
 
class  Channel
 A Channel object. More...
 
class  ChannelData
 Data structure representing a single Channel. More...
 
class  ChannelMentionData
 Channel mention data. More...
 
struct  ChannelPinsUpdateEventData
 Data for when some Channel pins are updated. More...
 
class  Channels
 An interface class for the Channel related endpoints. More...
 
class  CommandController
 A class for handling commands from user input. More...
 
class  CommandData
 Command data, for functions executed by the CommandController. More...
 
struct  ComponentData
 Represents a single Message-component. More...
 
struct  ComponentInteractionData
 Component Interaction data. More...
 
struct  ConnectionData
 Represents a single User Connection. More...
 
class  CoRoutine
 A CoRoutine - representing a potentially asynchronous operation/function. More...
 
class  CoRoutine< void >
 A CoRoutine - representing a potentially asynchronous operation/function. More...
 
struct  CoRoutineError
 An error type for CoRoutines. More...
 
struct  CreateApplicationCommandData
 For creating an application command. More...
 
struct  CreateAutoModerationRuleData
 For creating an auto-moderation-rule. More...
 
struct  CreateChannelInviteData
 For creating an invite to a given Channel. More...
 
class  CreateDeferredInteractionResponseData
 For creating a deferred Interaction response. More...
 
struct  CreateDMChannelData
 For collecting a direct-messaging Channel. More...
 
class  CreateEphemeralFollowUpMessageData
 For creating an ephemeral follow up Message. More...
 
class  CreateEphemeralInteractionResponseData
 For creating an ephemeral Interaction response. More...
 
class  CreateFollowUpMessageData
 For creating a follow up Message. More...
 
struct  CreateGlobalApplicationCommandData
 For creating a single global ApplicationCommand. More...
 
struct  CreateGuildApplicationCommandData
 For creating a single Guild ApplicationCommand. More...
 
struct  CreateGuildBanData
 For banning a current GuildMember. More...
 
struct  CreateGuildChannelData
 For creating a new Channel within a chosen Guild. More...
 
struct  CreateGuildData
 For creating a Guild. More...
 
struct  CreateGuildEmojiData
 For creating a new Guild Emoji. More...
 
struct  CreateGuildFromGuildTemplateData
 For creating a Guild from a Guild template. More...
 
struct  CreateGuildRoleData
 For creating a new Role within a chosen Guild. More...
 
struct  CreateGuildScheduledEventData
 For creating a GuildScheduledEvent. More...
 
struct  CreateGuildStickerData
 For creating a single Sticker. More...
 
struct  CreateGuildTemplateData
 For creating a Guild Template. More...
 
class  CreateInteractionResponseData
 For creating an Interaction response. More...
 
class  CreateMessageData
 For creating a Message. More...
 
struct  CreateReactionData
 For creating a single Reaction. More...
 
struct  CreateStageInstanceData
 For creating a StageInstance. More...
 
struct  CreateWebHookData
 For creating a new WebHook. More...
 
struct  CrosspostMessageData
 For crossposting a Message. More...
 
struct  DeleteAllReactionsData
 For deleting all of the Reactions on a particular Message. More...
 
struct  DeleteAutoModerationRuleData
 For deleting an auto-moderation-rule. More...
 
struct  DeleteChannelPermissionOverwritesData
 For deleting the PermissionTypes overwrites of a given Channel for a given Role or User. More...
 
struct  DeleteFollowUpMessageData
 For deleting a follow up Message. More...
 
struct  DeleteGlobalApplicationCommandData
 For deleting a single global ApplicationCommand. More...
 
struct  DeleteGuildApplicationCommandData
 For deleting a single Guild ApplicationCommand. More...
 
struct  DeleteGuildData
 For deleting a Guild. More...
 
struct  DeleteGuildEmojiData
 For deleting a Guild Emoji. More...
 
struct  DeleteGuildIntegrationData
 For deleting a Guild integration. More...
 
struct  DeleteGuildScheduledEventData
 For deleting a single Guild Scheduled Event. More...
 
struct  DeleteGuildStickerData
 For deleting a single Sticker. More...
 
struct  DeleteGuildTemplateData
 For deleting a Guild Template. More...
 
struct  DeleteInteractionResponseData
 For deleting an Interaction response. More...
 
struct  DeleteInviteData
 For deleting a single Guild Invite. More...
 
struct  DeleteMessageData
 For deleting a Message. More...
 
struct  DeleteMessagesBulkData
 For deleting a bulk of Messages. More...
 
struct  DeleteOrCloseChannelData
 For deleting or closing a Channel. More...
 
struct  DeleteOwnReactionData
 For deleting one's own Reaction. More...
 
struct  DeleteReactionsByEmojiData
 For deleting all of the Reactions of a particular Emoji. More...
 
struct  DeleteStageInstanceData
 For deleting a single StageInstance. More...
 
struct  DeleteUserReactionData
 For deleting a reaction, by User. More...
 
struct  DeleteWebHookData
 For deleting a WebHook. More...
 
struct  DeleteWebHookMessageData
 For deleting a WebHook Message. More...
 
struct  DeleteWebHookWithTokenData
 For deleting a WebHook, using its Token. More...
 
class  DiscordCoreClient
 DiscordCoreClient - The main class for this library. More...
 
struct  DiscordCoreClientConfig
 Configuration data for the library's main class, DiscordCoreClient. More...
 
class  DiscordEntity
 Base class for all Discord entities. More...
 
struct  DownloadUrl
 Represents a download Url. More...
 
struct  EditChannelPermissionOverwritesData
 For editing the PermissionTypes overwrites of a given Channel, for a given Role or User. More...
 
class  EditFollowUpMessageData
 For editing a follow up Message. More...
 
struct  EditGlobalApplicationCommandData
 For editing a single global ApplicationCommand. More...
 
struct  EditGuildApplicationCommandData
 For editing a single Guild ApplicationCommand. More...
 
struct  EditGuildApplicationCommandPermissionsData
 For editing the permissions of a single Guild ApplicationCommand. More...
 
class  EditInteractionResponseData
 For editing an Interaction response. More...
 
class  EditMessageData
 For editing a Message. More...
 
class  EditWebHookData
 For editing a WebHook Message. More...
 
struct  EmbedAuthorData
 Embed author data. More...
 
class  EmbedData
 Embed data. More...
 
struct  EmbedFieldData
 Embed field data. More...
 
struct  EmbedFooterData
 Embed footer data. More...
 
struct  EmbedImageData
 Embed image data. More...
 
struct  EmbedProviderData
 Embed provider data. More...
 
struct  EmbedThumbnailData
 Embed thumbnail data. More...
 
struct  EmbedVideoData
 Embed video data. More...
 
class  EmojiData
 Data structure representing a single emoji. More...
 
class  EventManager
 Class for handling the assignment of event-handling functions. More...
 
class  ExecuteWebHookData
 For executing a WebHook. More...
 
struct  File
 Data representing a file to be sent via multipart-form data. More...
 
struct  FollowNewsChannelData
 For following a news Channel. More...
 
struct  ForumThreadMessageData
 Represents a forum thread message. More...
 
struct  GatewayBotData
 Data from the GetGatewayBot endpoint. More...
 
struct  GetActiveGuildThreadsData
 For listing the active Threads in a chosen Guild. More...
 
struct  GetActiveThreadsData
 For collecting the list of active Threads. More...
 
struct  GetApplicationCommandPermissionsData
 For acquiring the permissions of a single Guild ApplicationCommand. More...
 
struct  GetAutoModerationRuleData
 For collecting an auto-moderation-rule for a particular AutoModerationRule. More...
 
struct  GetChannelData
 For collecting a Channel from Discord's servers. More...
 
struct  GetChannelInvitesData
 For collecting the invites to a given Channel. More...
 
struct  GetChannelWebHooksData
 For collecting a list of WebHooks from a chosen Channel. More...
 
struct  GetCurrentUserGuildsData
 For collecting a list of Guild's that the Bot is in. More...
 
struct  GetEmojiListData
 For collecting a list of Emoji from a Guild. More...
 
struct  GetFollowUpMessageData
 For getting a follow-up Message. More...
 
struct  GetGlobalApplicationCommandData
 For collecting a single global ApplicationCommand. More...
 
struct  GetGlobalApplicationCommandsData
 For getting all of the Global Application Commands. More...
 
struct  GetGuildApplicationCommandData
 For acquiring a single Guild ApplicationCommand. More...
 
struct  GetGuildApplicationCommandPermissionsData
 For acquiring the permissions of a collection of Guild ApplicationCommands. More...
 
struct  GetGuildApplicationCommandsData
 For acquiring all of the Guild ApplicationCommands of a single Guild. More...
 
struct  GetGuildAuditLogsData
 For geting a Guild's audit logs. More...
 
struct  GetGuildBanData
 For getting a single Guild Ban. More...
 
struct  GetGuildBansData
 For getting a list of Guild bans. More...
 
struct  GetGuildChannelsData
 For acquiring a list of Channels from a chosen Guild. More...
 
struct  GetGuildData
 For getting a Guild from the library's cache or a Discord server. More...
 
struct  GetGuildEmojiData
 For collecting a single Guild Emoji. More...
 
struct  GetGuildIntegrationsData
 For collecting a list of Guild voice integrations. More...
 
struct  GetGuildInvitesData
 For geting all of the current invites from a Guild. More...
 
struct  GetGuildMemberData
 For getting a GuildMember, from the library's cache or Discord server. More...
 
struct  GetGuildMemberRolesData
 For getting a chosen GuildMember's Roles. More...
 
struct  GetGuildPreviewData
 For acquiring a Guild preview of a chosen Guild. More...
 
struct  GetGuildPruneCountData
 For collecting the Guild prune count. More...
 
struct  GetGuildRolesData
 For getting a chosen Guild's Roles. More...
 
struct  GetGuildScheduledEventData
 For collecting a single Guild scheduled event. More...
 
struct  GetGuildScheduledEventsData
 For collecting a list of a Guild's scheduled events. More...
 
struct  GetGuildScheduledEventUsersData
 For collecting a list of Guild Scheduled Event Users. More...
 
struct  GetGuildStickersData
 For collecting a list of Stickers from a chosen Guild. More...
 
struct  GetGuildTemplateData
 For collecting a Guild's template. More...
 
struct  GetGuildTemplatesData
 For collecting a list of Guild Templates from a chosen Guild. More...
 
struct  GetGuildVanityInviteData
 For geting the vanity invite responseData of a Guild. More...
 
struct  GetGuildVoiceRegionsData
 For collecting a list of Guild voice regions. More...
 
struct  GetGuildWebHooksData
 For collecting a list of WebHooks from a chosen Guild. More...
 
struct  GetGuildWelcomeScreenData
 For collecting a Guild's welcome screen. More...
 
struct  GetGuildWidgetData
 For collecting a Guild's widget. More...
 
struct  GetGuildWidgetImageData
 For collecting a Guild's widget image. More...
 
struct  GetGuildWidgetObjectData
 Get Guild Widget Data. More...
 
struct  GetGuildWidgetSettingsData
 For collecting a Guild's widget settings. More...
 
struct  GetInteractionResponseData
 For getting an Interaction response. More...
 
struct  GetInviteData
 For geting a single invite's responseData from a Guild. More...
 
struct  GetJoinedPrivateArchivedThreadsData
 For collecting joined private archived Threads from a given Channel. More...
 
struct  GetMessageData
 For getting a Message. More...
 
struct  GetMessagesData
 For getting a collection of Messages. More...
 
struct  GetPinnedMessagesData
 For getting a collection of pinned Messages. More...
 
struct  GetPrivateArchivedThreadsData
 For collecting private archived Threads from a given Channel. More...
 
struct  GetPublicArchivedThreadsData
 For collecting puiblic archived Threads from a given Channel. More...
 
struct  GetReactionsData
 For getting all of the Reactions. More...
 
struct  GetRoleData
 For getting a Role from the library's cache, or the Discord server. More...
 
struct  GetStageInstanceData
 For collecting a single StageInstance. More...
 
struct  GetStickerData
 For getting a Sticker object for the given sticker ID. More...
 
struct  GetThreadMemberData
 For collecting a ThreadMember responseData structure for a given ThreadMember. More...
 
struct  GetThreadMembersData
 For collecting the list of ThreadMembers from a Thread. More...
 
struct  GetUserData
 For getting User responseData from the library's cache or the Discord server. More...
 
struct  GetWebHookData
 Collects a single WebHook. More...
 
struct  GetWebHookMessageData
 For getting a WebHook Message. More...
 
struct  GetWebHookWithTokenData
 Collects a single WebHook, using the Token and Id. More...
 
class  Guild
 A discord Guild. Used to connect to/disconnect from voice. More...
 
class  GuildApplicationCommandPermissionData
 Guild application command permissions data. More...
 
class  GuildApplicationCommandPermissionsData
 Represents the Permissions for accessing an ApplicationCommand from within a Guild. More...
 
class  GuildData
 Data structure representing a single Guild. More...
 
struct  GuildEmojisUpdateEventData
 Data representing a Guild Emoji Update event. More...
 
class  GuildMember
 A single GuildMember. More...
 
class  GuildMemberData
 Data structure representing a single GuildMember. Data structure representing a single Guild. More...
 
class  GuildMembers
 An interface class for the GuildMember related Discord endpoints. More...
 
struct  GuildPreviewData
 Data representing a single Guild preview. More...
 
struct  GuildPruneCountData
 Guild prune count data. More...
 
class  Guilds
 An interface class for the Guild related Discord endpoints. More...
 
class  GuildScheduledEvent
 A single GuildScheduledEvent responseData structure. More...
 
class  GuildScheduledEventData
 Data representing a Guild Scheduled Event. More...
 
struct  GuildScheduledEventMetadata
 Guild scheduled event entity metadata. More...
 
class  GuildScheduledEvents
 An interface class for the GuildScheduledEvent related Discord endpoints. More...
 
struct  GuildScheduledEventUserData
 Data representing a single GuildScheduledEventUser. More...
 
struct  GuildStickersUpdateEventData
 Data representing a Guild Sticker Update event. More...
 
struct  GuildTemplateData
 Represents a Guild Template. More...
 
struct  GuildWidgetData
 Guild Widget Data. More...
 
struct  GuildWidgetImageData
 Guild widget image data. More...
 
class  InputEventData
 Data representing an input-event, which is any Message or Interaction that is coming into the bot as an input. More...
 
class  InputEvents
 For handling User input - Messages or Interactions. More...
 
struct  InstallParamsData
 Install params data, for application data. More...
 
class  IntegrationData
 Integration data. More...
 
struct  Interaction
 A single Interaction. More...
 
struct  InteractionCallbackData
 Interaction ApplicationCommand callback data. More...
 
class  InteractionData
 Interaction data. More...
 
struct  InteractionDataData
 Interaction data data. More...
 
struct  InteractionPackageData
 For storing Interaction-related values. More...
 
struct  InteractionResponseData
 Interaction response data. More...
 
class  Interactions
 An interface class for the Interaction related Discord endpoints. More...
 
struct  InviteData
 Invite data. More...
 
struct  JoinThreadData
 For joining a Thread. More...
 
struct  LeaveGuildData
 For leaving a particular Guild. More...
 
struct  LeaveThreadData
 For leaving a Thread. More...
 
struct  ListAutoModerationRulesForGuildData
 For listing all of the auto-moderation-rules for a particular Guild. More...
 
struct  ListGuildMembersData
 For listing the GuildMembers of a chosen Guild. More...
 
struct  LoggingOptions
 Logging options for the library. More...
 
class  Message
 A single Message. More...
 
struct  MessageActivityData
 Message activity data. More...
 
struct  MessageCommandInteractionData
 Message command interacction data. More...
 
class  MessageData
 Data structure representing a single Message. More...
 
class  MessageDataOld
 The core of a Message's data structure. More...
 
class  MessageInteractionData
 Message Interaction data. More...
 
struct  MessagePackageData
 For storing Message-related values. More...
 
struct  MessageReferenceData
 Message reference data. More...
 
class  MessageResponseBase
 Message response base, for responding to messages. More...
 
class  Messages
 An interface class for the Message related Discord endpoints. More...
 
class  ModalCollector
 ModalCollector, for collecting modal text input from one or more Users. More...
 
struct  ModalInteractionData
 Modal interaction data, for inputs from text modals. More...
 
struct  ModalResponseData
 Button response data. More...
 
struct  ModifyAutoModerationRuleData
 For modifying an auto-moderation-rule. More...
 
struct  ModifyChannelData
 For modifying a Channel's properties. More...
 
struct  ModifyCurrentGuildMemberData
 For modifying the Current GuildMember's values. More...
 
struct  ModifyCurrentUserData
 For modifying the Bot's User responseData. More...
 
struct  ModifyCurrentUserVoiceStateData
 For updating the bot's current voice state. More...
 
struct  ModifyGuildChannelPositionData
 For modifying the Channel position responseData of a single Channel. More...
 
struct  ModifyGuildChannelPositionsData
 For modifying the current positions of one or more Channels in the Guild. More...
 
struct  ModifyGuildData
 For modifying the properties of a chosen Guild. More...
 
struct  ModifyGuildEmojiData
 For modifying a Guild Emoji. More...
 
struct  ModifyGuildMemberData
 For modifying a GuildMember's values. More...
 
struct  ModifyGuildRoleData
 For updating a Role's options within a chosen Guild. More...
 
struct  ModifyGuildRolePositionsData
 For updating the Role positions. More...
 
struct  ModifyGuildScheduledEventData
 For modifying a single Guild Scheduled Event. More...
 
struct  ModifyGuildStickerData
 For modifying a single Sticker. More...
 
struct  ModifyGuildTemplateData
 For modifying a Guild Template. More...
 
struct  ModifyGuildWelcomeScreenData
 For modifying a Guild's welcome screen. More...
 
struct  ModifyGuildWidgetData
 For modifying a Guild's widget. More...
 
struct  ModifyStageInstanceData
 For modifying a single StageInstance. More...
 
struct  ModifyUserVoiceStateData
 For modifying a User's voice state. More...
 
struct  ModifyWebHookData
 For modifying a WebHook. More...
 
struct  ModifyWebHookWithTokenData
 For modifying a WebHook. More...
 
class  NewThreadAwaiter
 An awaitable that can be used to launch the CoRoutine onto a new thread - as well as return the handle for stoppping its execution. More...
 
class  ObjectCollector
 ObjectCollector, for collecting Objects from a Channel. More...
 
class  ObjectCollector< Message >
 ObjectCollector, for collecting Objects from a Channel. More...
 
struct  ObjectCollectorReturnData
 ObjectCollectorReturnData responseData. More...
 
struct  ObjectCollectorReturnData< Message >
 ObjectCollectorReturnData responseData. More...
 
struct  OnApplicationCommandPermissionsUpdateData
 Data that is received as part of an ApplicationCommandPermissions update event. More...
 
struct  OnAutoCompleteEntryData
 Data that is received upon the bot receiving an autocomplete entry. More...
 
struct  OnAutoModerationActionExecutionData
 Data that is received as part of an AutoModerationAction execution event. More...
 
struct  OnAutoModerationRuleCreationData
 Data that is received as part of an AutoModerationRule creation event. More...
 
struct  OnAutoModerationRuleDeletionData
 Data that is received as part of an AutoModerationRule delete event. More...
 
struct  OnAutoModerationRuleUpdateData
 Data that is received as part of an AutoModerationRule update event. More...
 
struct  OnChannelCreationData
 Data that is received as part of a Channel creation event. More...
 
struct  OnChannelDeletionData
 Data that is received as part of a Channel deletion event. More...
 
struct  OnChannelPinsUpdateData
 Data that is received as part of a Channel pins update event. More...
 
struct  OnChannelUpdateData
 Data that is received as part of a Channel update event. More...
 
struct  OnGuildBanAddData
 Data that is received as part of a Guild ban add event. More...
 
struct  OnGuildBanRemoveData
 Data that is received as part of a Guild ban remove event. More...
 
struct  OnGuildCreationData
 Data that is received as part of a Guild creation event. More...
 
struct  OnGuildDeletionData
 Data that is received as part of a Guild deletion event. More...
 
struct  OnGuildEmojisUpdateData
 Data that is received as part of a Guild emojis update event. More...
 
struct  OnGuildIntegrationsUpdateData
 Data that is received as part of a Guild Integration update event. More...
 
struct  OnGuildMemberAddData
 Data that is received as part of a GuildMember add event. More...
 
struct  OnGuildMemberRemoveData
 Data that is received as part of a GuildMember remove event. More...
 
struct  OnGuildMembersChunkData
 Data that is received as part of a GuildMembers chunk event. More...
 
struct  OnGuildMemberUpdateData
 Data that is received as part of a GuildMember update event. More...
 
struct  OnGuildScheduledEventCreationData
 Data that is received as part of a GuildScheduledEvent creation event. More...
 
struct  OnGuildScheduledEventDeletionData
 Data that is received as part of a GuildScheduledEvent delete event. More...
 
struct  OnGuildScheduledEventUpdateData
 Data that is received as part of a GuildScheduledEvent update event. More...
 
struct  OnGuildScheduledEventUserAddData
 Data that is received as part of a GuildScheduledEvent User add event. More...
 
struct  OnGuildScheduledEventUserRemoveData
 Data that is received as part of a GuildScheduledEvent User remove event. More...
 
struct  OnGuildStickersUpdateData
 Data that is received as part of a Guild sticker update event. More...
 
struct  OnGuildUpdateData
 Data that is received as part of a Guild update event. More...
 
struct  OnInputEventCreationData
 Data that is received as part of an InputEvent creation event. More...
 
struct  OnIntegrationCreationData
 Data that is received as part of an Integration creation event. More...
 
struct  OnIntegrationDeletionData
 Data that is received as part of an Integration deletion event. More...
 
struct  OnIntegrationUpdateData
 Data that is received as part of an Integration update event. More...
 
struct  OnInteractionCreationData
 Data that is received as part of an Interaction creation event. More...
 
struct  OnInviteCreationData
 Data that is received as part of an Invite creation event. More...
 
struct  OnInviteDeletionData
 Data that is received as part of an Invite deletion event. More...
 
struct  OnMessageCreationData
 Data that is received as part of a Message creation event. More...
 
struct  OnMessageDeleteBulkData
 Data that is received as part of a Message delete bulk event. More...
 
struct  OnMessageDeletionData
 Data that is received as part of a Message deletion event. More...
 
struct  OnMessageUpdateData
 Data that is received as part of a Message update event. More...
 
struct  OnPresenceUpdateData
 Data that is received as part of a presence update event. More...
 
struct  OnReactionAddData
 Data that is received as part of a Reaction add event. More...
 
struct  OnReactionRemoveAllData
 Data that is received as part of a Reaction remove all event. More...
 
struct  OnReactionRemoveData
 Data that is received as part of a Reaction remove event. More...
 
struct  OnReactionRemoveEmojiData
 Data that is received as part of a Reaction remove emoji event. More...
 
struct  OnRoleCreationData
 Data that is received as part of a Role creation event. More...
 
struct  OnRoleDeletionData
 Data that is received as part of a Role deletion event. More...
 
struct  OnRoleUpdateData
 Data that is received as part of a Role update event. More...
 
struct  OnStageInstanceCreationData
 Data that is received as part of a StageInstance creation event. More...
 
struct  OnStageInstanceDeletionData
 Data that is received as part of a StageInstance deletion event. More...
 
struct  OnStageInstanceUpdateData
 Data that is received as part of a StageInstance update event. More...
 
struct  OnThreadCreationData
 Data that is received as part of a Thread creation event. More...
 
struct  OnThreadDeletionData
 Data that is received as part of a Thread deletion event. More...
 
struct  OnThreadListSyncData
 Data that is received as part of a Thread list sync event. More...
 
struct  OnThreadMembersUpdateData
 Data that is received as part of a Thread members update event. More...
 
struct  OnThreadMemberUpdateData
 Data that is received as part of a Thread member update event. More...
 
struct  OnThreadUpdateData
 Data that is received as part of a Thread update event. More...
 
struct  OnTypingStartData
 Data that is received as part of a typing start event. More...
 
struct  OnUserUpdateData
 Data that is received as part of a User update event. More...
 
struct  OnVoiceServerUpdateData
 Data that is received as part of a voice server update event. More...
 
struct  OnVoiceStateUpdateData
 Data that is received as part of a voice state update event. More...
 
struct  OnWebhookUpdateData
 Data that is received as part of a WebHook update event. More...
 
class  OptionalAuditEntryInfoData
 Audit log entry info data. More...
 
class  OverWriteData
 A PermissionTypes overwrite, for a given Channel. More...
 
class  PartyData
 Party data. More...
 
class  Permissions
 Permissions class, for representing and manipulating Permission values. More...
 
struct  PinMessageData
 For pinning a single Message. More...
 
struct  Playlist
 Playlist of songs and other variables. More...
 
struct  PresenceUpdateData
 Presence update data. More...
 
class  Reaction
 A single Reaction. More...
 
class  ReactionData
 Data structure representing a single reaction. More...
 
struct  ReactionRemoveData
 For removing a reaction. More...
 
class  Reactions
 An interface class for the Reaction related Discord endpoints. More...
 
struct  RemoveGuildBanData
 For removing a previous created Ban. More...
 
struct  RemoveGuildMemberData
 For removing a GuildMember from a chosen Guild. More...
 
struct  RemoveGuildMemberRoleData
 For removing a Role from a GuildMember. More...
 
struct  RemoveGuildRoleData
 For removing a Role from a chosen Guild. More...
 
struct  RemoveRecipientFromGroupDMData
 For removing a User from a group Dm. More...
 
struct  RemoveThreadMemberData
 For removing a chosen User from a Thread. More...
 
struct  RepeatedFunctionData
 Function data for repeated functions to be loaded. More...
 
struct  ResolvedData
 Resolved data. More...
 
class  RespondToInputEventData
 Data for responding to an input-event. More...
 
class  Role
 A single Role. More...
 
class  RoleData
 Data structure representing a single Role. More...
 
struct  RolePositionData
 For updating the positions of the roles. More...
 
class  Roles
 An interface class for the Role related Discord endpoints. More...
 
struct  RoleTagsData
 Role tags data. More...
 
struct  SearchGuildMembersData
 For searching for one or more GuildMembers within a chosen Guild. More...
 
struct  SecretsData
 Secrets data. More...
 
class  SelectMenuCollector
 SelectMenuCollector, for collecting select-menu input from one or more Users. More...
 
struct  SelectMenuResponseData
 Select menu response data. More...
 
class  SelectOptionData
 Represents a single selection from a select-menu. More...
 
class  SendDMData
 For sending a direct-message. More...
 
struct  SessionStartData
 Data from the SessionStart info. More...
 
struct  ShardingOptions
 Sharding options for the library. More...
 
class  Song
 A song from the various platforms. More...
 
class  SongAPI
 A class representing the Song APIs. More...
 
struct  SongCompletionEventData
 Song completion event data. More...
 
class  StageInstance
 A single StageInstance. More...
 
class  StageInstanceData
 Stage instance data. More...
 
class  StageInstances
 An interface class for the StageInstance related Discord endpoints. More...
 
struct  StartThreadInForumChannelData
 For starting a Thread, in a forum channel. More...
 
struct  StartThreadWithMessageData
 For starting a Thread, based on a Message. More...
 
struct  StartThreadWithoutMessageData
 For starting a Thread, not based on a Message. More...
 
class  Sticker
 A single Sticker. More...
 
class  StickerData
 Data representing a single Sticker. More...
 
class  StickerItemData
 Message Sticker item data. More...
 
struct  StickerPackData
 Represents a Sticker pack. More...
 
class  Stickers
 An interface class for the Sticker related Discord endpoints. More...
 
struct  StreamInfo
 For connecting two bots to stream the VC contents between the two. More...
 
struct  SyncGuildTemplateData
 For syncing a Guild Template. More...
 
struct  TeamMembersObjectData
 Team members object data. More...
 
class  TeamObjectData
 Team object data. More...
 
class  Thread
 Represents a single Thread. More...
 
struct  ThreadListSyncData
 Data for when threads are synced. More...
 
class  ThreadMemberData
 Data for a single member of a Thread. More...
 
class  ThreadMembersUpdateData
 Represents a Thread-members-update. More...
 
struct  ThreadMetadataData
 Meta data for a Thread type of Channel. More...
 
class  Threads
 An interface class for the Thread related endpoints. More...
 
struct  TimeoutGuildMemberData
 For timing out a GuildMember. More...
 
class  TimeStamp
 Class for representing a timestamp, as well as working with time-related values. More...
 
struct  TimestampData
 Timestamp data. More...
 
struct  TriggerMetaData
 Trigger metadata for auto-moderation-rules. More...
 
struct  TriggerTypingIndicatorData
 For triggering the typing indicator in a given Channel. More...
 
struct  TypingStartData
 Representing "TypingStart" data. More...
 
class  UnboundedMessageBlock
 A thread-safe messaging block for data-structures. More...
 
struct  UnpinMessageData
 For unpinning a single Message. More...
 
struct  UpdateChannelData
 For updating/modifying a given Channel's properties. More...
 
struct  UpdateVoiceStateData
 For updating the current voice state. More...
 
class  User
 A single User. More...
 
struct  UserCommandInteractionData
 User command Interaction data. More...
 
class  UserData
 Data structure representing a single User. More...
 
class  Users
 An interface class for the User related Discord endpoints. More...
 
class  VoiceConnection
 VoiceConnection class - represents the connection to a given voice Channel. More...
 
struct  VoiceRegionData
 Structure representing Voice Region Data. More...
 
struct  VoiceStateData
 Voice state data. More...
 
class  WebHook
 A single WebHook. More...
 
class  WebHookData
 WebHook data. More...
 
class  WebHooks
 An interface class for the WebHook related Discord endpoints. More...
 
struct  WelcomeScreenChannelData
 Welcome screen Channel data. More...
 
struct  WelcomeScreenData
 Welcome screen data. More...
 
class  YouTubeFormatVector
 YouTube format data. More...
 

Typedefs

template<typename Object >
using ObjectFilter = std::function< Bool(Object)>
 Typedef for the message filter. More...
 

Enumerations

enum class  ActionType : Uint8 { ActionType::Block_Message = 1 , ActionType::Send_Alert_Message = 2 , ActionType::Timeout = 3 }
 Action types for auto-moderation. More...
 
enum class  ActivityType : Uint8 {
  ActivityType::Game = 0 , ActivityType::Streaming = 1 , ActivityType::Listening = 2 , ActivityType::Watching = 3 ,
  ActivityType::Custom = 4 , ActivityType::Competing = 5
}
 Activity types. More...
 
enum class  AfkTimeOutDurations : Int16 {
  AfkTimeOutDurations::Shortest = 60 , AfkTimeOutDurations::Short = 300 , AfkTimeOutDurations::Medium = 900 , AfkTimeOutDurations::Long = 1800 ,
  AfkTimeOutDurations::Longest = 3600
}
 Afk timeout durations. More...
 
enum class  ApplicationCommandOptionType : Uint8 {
  ApplicationCommandOptionType::Sub_Command = 1 , ApplicationCommandOptionType::Sub_Command_Group = 2 , ApplicationCommandOptionType::String = 3 , ApplicationCommandOptionType::Integer = 4 ,
  ApplicationCommandOptionType::Boolean = 5 , ApplicationCommandOptionType::User = 6 , ApplicationCommandOptionType::Channel = 7 , ApplicationCommandOptionType::Role = 8 ,
  ApplicationCommandOptionType::Mentionable = 9 , ApplicationCommandOptionType::Number = 10 , ApplicationCommandOptionType::Attachment = 11
}
 Application command-option types. More...
 
enum class  ApplicationCommandPermissionType : Uint8 { ApplicationCommandPermissionType::Role = 1 , ApplicationCommandPermissionType::User = 2 , ApplicationCommandPermissionType::Channel = 3 }
 Application command permission-types. More...
 
enum class  ApplicationCommandType : Uint8 { ApplicationCommandType::Chat_Input = 1 , ApplicationCommandType::User = 2 , ApplicationCommandType::Message = 3 }
 Application command types. More...
 
enum class  ApplicationFlags : Int32 {
  ApplicationFlags::Gateway_Presence = 1 << 12 , ApplicationFlags::Gateway_Presence_Limited = 1 << 13 , ApplicationFlags::Gateway_Guild_Members = 1 << 14 , ApplicationFlags::Gateway_Guild_Members_Limited = 1 << 15 ,
  ApplicationFlags::Verificatino_Pending_Guild_Limit = 1 << 16 , ApplicationFlags::Embedded = 1 << 17 , ApplicationFlags::Gateway_Message_Content = 1 << 18 , ApplicationFlags::Gateway_Message_Content_Limited = 1 << 19
}
 Application flags, for the ApplicationData structure. More...
 
enum class  AudioFrameType : Int8 { AudioFrameType::Unset = 0 , AudioFrameType::Encoded = 1 , AudioFrameType::RawPCM = 2 , AudioFrameType::Skip = 3 }
 Audio frame types. More...
 
enum class  AuditLogEvent : Uint8 {
  AuditLogEvent::Guild_Update = 1 , AuditLogEvent::Channel_Create = 10 , AuditLogEvent::Channel_Update = 11 , AuditLogEvent::Channel_Delete = 12 ,
  AuditLogEvent::Channel_Overwrite_Create = 13 , AuditLogEvent::Channel_Overwrite_Update = 14 , AuditLogEvent::Channel_Overwrite_Delete = 15 , AuditLogEvent::Member_Kick = 20 ,
  AuditLogEvent::Member_Prune = 21 , AuditLogEvent::Member_Ban_Add = 22 , AuditLogEvent::Member_Ban_Remove = 23 , AuditLogEvent::Member_Update = 24 ,
  AuditLogEvent::Member_Role_Update = 25 , AuditLogEvent::Member_Move = 26 , AuditLogEvent::Member_Disconnect = 27 , AuditLogEvent::Bot_Add = 28 ,
  AuditLogEvent::Role_Create = 30 , AuditLogEvent::Role_Update = 31 , AuditLogEvent::Role_Delete = 32 , AuditLogEvent::Invite_Create = 40 ,
  AuditLogEvent::Invite_Update = 41 , AuditLogEvent::Invite_Delete = 42 , AuditLogEvent::Webhook_Create = 50 , AuditLogEvent::Webhook_Update = 51 ,
  AuditLogEvent::Webhook_Delete = 52 , AuditLogEvent::Emoji_Create = 60 , AuditLogEvent::Emoji_Update = 61 , AuditLogEvent::Emoji_Delete = 62 ,
  AuditLogEvent::Message_Delete = 72 , AuditLogEvent::Message_Bulk_Delete = 73 , AuditLogEvent::Message_Pin = 74 , AuditLogEvent::Message_Unpin = 75 ,
  AuditLogEvent::Integration_Create = 80 , AuditLogEvent::Integration_Update = 81 , AuditLogEvent::Integration_Delete = 82 , AuditLogEvent::Stage_Instance_Create = 83 ,
  AuditLogEvent::Stage_Instance_Update = 84 , AuditLogEvent::Stage_Instance_Delete = 85 , AuditLogEvent::Sticker_Create = 90 , AuditLogEvent::Sticker_Update = 91 ,
  AuditLogEvent::Sticker_Delete = 92 , AuditLogEvent::Guild_Scheduled_Event_Create = 100 , AuditLogEvent::Guild_Scheduled_Event_Update = 101 , AuditLogEvent::Guild_Scheduled_Event_Delete = 102 ,
  AuditLogEvent::Thread_Create = 110 , AuditLogEvent::Thread_Update = 111 , AuditLogEvent::Thread_Delete = 112 , AuditLogEvent::Application_Command_Permission_Update = 121 ,
  AuditLogEvent::Auto_Moderation_Rule_Create = 140 , AuditLogEvent::Auto_Moderation_Rule_Update = 141 , AuditLogEvent::Auto_Moderation_Rule_Delete = 142 , AuditLogEvent::Auto_Moderation_Block_Message = 143
}
 Audit log events. More...
 
enum class  ButtonStyle : Uint8 {
  ButtonStyle::Primary = 1 , ButtonStyle::Success = 3 , ButtonStyle::Secondary = 2 , ButtonStyle::Danger = 4 ,
  ButtonStyle::Link = 5
}
 Button styles. More...
 
enum class  ChannelType : Uint8 {
  ChannelType::Guild_Text = 0 , ChannelType::Dm = 1 , Guild_Voice = 2 , ChannelType::Group_Dm = 3 ,
  ChannelType::Guild_Category = 4 , ChannelType::Guild_News = 5 , ChannelType::Guild_Store = 6 , ChannelType::Guild_News_Thread = 10 ,
  ChannelType::Guild_Public_Thread = 11 , ChannelType::Guild_Private_Thread = 12 , ChannelType::Guild_Stage_Voice = 13 , ChannelType::Guild_Directory = 14 ,
  ChannelType::Guild_Forum = 15
}
 Channel types. More...
 
enum class  ComponentType : Uint8 { ComponentType::ActionRow = 1 , ComponentType::Button = 2 , ComponentType::SelectMenu = 3 , ComponentType::TextInput = 4 }
 Component types. More...
 
enum class  ConnectionVisibilityTypes : Uint8 { ConnectionVisibilityTypes::None = 0 , ConnectionVisibilityTypes::Everyone = 1 }
 Connection visibility types. More...
 
enum class  CoRoutineStatus { CoRoutineStatus::Idle = 0 , CoRoutineStatus::Running = 1 , CoRoutineStatus::Complete = 2 , CoRoutineStatus::Cancelled = 3 }
 The current status of the associated CoRoutine. More...
 
enum class  DefaultMessageNotificationLevel : Uint8 { DefaultMessageNotificationLevel::All_Messages = 0 , DefaultMessageNotificationLevel::Only_Mentions = 1 }
 Default Message notification levels. More...
 
enum class  EmbedType : Uint8 {
  EmbedType::Rich = 0 , EmbedType::Image = 1 , EmbedType::Video = 2 , EmbedType::Gifv = 3 ,
  EmbedType::Article = 4 , EmbedType::link = 5
}
 Embed types. More...
 
enum class  EventType : Uint8 { EventType::Message_Send = 1 }
 Event types for auto-moderation. More...
 
enum class  ExplicitContentFilterLevel : Uint8 { ExplicitContentFilterLevel::Disabled = 0 , ExplicitContentFilterLevel::Members_Without_Roles = 1 , ExplicitContentFilterLevel::All_Members = 2 }
 Explicit content filter levels. More...
 
enum class  GatewayIntents : Int32 {
  GatewayIntents::Guilds = 1 << 0 , GatewayIntents::Guild_Members = 1 << 1 , GatewayIntents::Guild_Bans = 1 << 2 , GatewayIntents::Guild_Emojis = 1 << 3 ,
  GatewayIntents::Guild_Integrations = 1 << 4 , GatewayIntents::Guild_Webhooks = 1 << 5 , GatewayIntents::Guild_Invites = 1 << 6 , GatewayIntents::Guild_VoiceStates = 1 << 7 ,
  GatewayIntents::Guild_Presences = 1 << 8 , GatewayIntents::Guild_Messages = 1 << 9 , GatewayIntents::Guild_Message_Reactions = 1 << 10 , GatewayIntents::Guild_Message_Typing = 1 << 11 ,
  GatewayIntents::Direct_Messages = 1 << 12 , GatewayIntents::Direct_Message_Reactions = 1 << 13 , GatewayIntents::Direct_Message_Typing = 1 << 14 , GatewayIntents::Message_Content = 1 << 15 ,
  GatewayIntents::Guild_Scheduled_Events = 1 << 16 , GatewayIntents::Default_Intents , GatewayIntents::Privileged_Intents = Guild_Members | Guild_Presences | Message_Content , GatewayIntents::All_Intents = Default_Intents | Privileged_Intents
}
 Gateway intents. More...
 
enum class  GuildFlags : Uint8 {
  GuildFlags::WidgetEnabled = 1 << 0 , GuildFlags::Unavailable = 1 << 1 , GuildFlags::Owner = 1 << 2 , GuildFlags::Large = 1 << 3 ,
  GuildFlags::Premium_Progress_Bar_Enabled = 1 << 4
}
 Guild flags. More...
 
enum class  GuildNSFWLevel : Uint8 { GuildNSFWLevel::Default = 0 , GuildNSFWLevel::Explicit = 1 , GuildNSFWLevel::Safe = 2 , GuildNSFWLevel::Age_Restricted = 3 }
 Guild NSFW level. More...
 
enum class  GuildScheduledEventEntityType : Uint8 { GuildScheduledEventEntityType::None = 0 , GuildScheduledEventEntityType::State_Instance = 1 , GuildScheduledEventEntityType::Voice = 2 , GuildScheduledEventEntityType::External = 3 }
 Guild scheduled event entity types. More...
 
enum class  GuildScheduledEventPrivacyLevel : Uint8 { GuildScheduledEventPrivacyLevel::Public = 1 , GuildScheduledEventPrivacyLevel::Guild_Only = 2 }
 Guild scheduled event privacy levels. More...
 
enum class  GuildScheduledEventStatus : Uint8 { GuildScheduledEventStatus::Scheduled = 1 , GuildScheduledEventStatus::Active = 2 , GuildScheduledEventStatus::Completed = 3 , GuildScheduledEventStatus::Canceled = 4 }
 GuildScheduledEventStatus. More...
 
enum class  InputEventResponseType : Int8 {
  InputEventResponseType::Unset = 0 , Deferred_Response = 1 , InputEventResponseType::Ephemeral_Deferred_Response = 2 , InputEventResponseType::Interaction_Response = 3 ,
  InputEventResponseType::Ephemeral_Interaction_Response = 4 , InputEventResponseType::Edit_Interaction_Response = 5 , InputEventResponseType::Follow_Up_Message = 6 , InputEventResponseType::Ephemeral_Follow_Up_Message = 7 ,
  InputEventResponseType::Edit_Follow_Up_Message = 8 , InputEventResponseType::Application_Command_AutoComplete_Result = 9 , InputEventResponseType::Modal_Interaction_Response = 10
}
 Input event response types. More...
 
enum class  InteractionCallbackType : Uint8 {
  InteractionCallbackType::Pong = 1 , InteractionCallbackType::Channel_Message_With_Source = 4 , InteractionCallbackType::Deferred_Channel_Message_With_Source = 5 , InteractionCallbackType::Deferred_Update_Message = 6 ,
  InteractionCallbackType::Update_Message = 7 , InteractionCallbackType::Application_Command_Autocomplete_Result = 8 , InteractionCallbackType::Modal = 9
}
 Interaction callback types. More...
 
enum class  InteractionType : Uint8 {
  InteractionType::Ping = 1 , InteractionType::Application_Command = 2 , InteractionType::Message_Component = 3 , InteractionType::Application_Command_Autocomplete = 4 ,
  InteractionType::Modal_Submit = 5
}
 Interaction types. More...
 
enum class  InviteTargetTypes : Uint8 { InviteTargetTypes::Stream = 1 , InviteTargetTypes::Embedded_Application = 2 }
 Invite target types. More...
 
enum class  KeywordPresetType : Uint8 { KeywordPresetType::Profanity = 1 , KeywordPresetType::Sexual_Content = 2 , KeywordPresetType::Slurs = 3 }
 Keyword preset types for auto-moderation. More...
 
enum class  MessageActivityType : Uint8 { MessageActivityType::Join = 1 , MessageActivityType::Spectate = 2 , MessageActivityType::Listen = 3 , MessageActivityType::Join_Request = 5 }
 Message activity types. More...
 
enum class  MessageFlags : Uint8 {
  MessageFlags::Crossposted = 1 << 0 , MessageFlags::Is_Crosspost = 1 << 1 , MessageFlags::Suppress_Embeds = 1 << 2 , MessageFlags::Source_Message_Deleted = 1 << 3 ,
  MessageFlags::Urgent = 1 << 4 , MessageFlags::Has_Thread = 1 << 5 , MessageFlags::Ephemeral = 1 << 6 , MessageFlags::Loading = 1 << 7
}
 Message flags. More...
 
enum class  MessageType : Uint8 {
  MessageType::Default = 0 , MessageType::Recipient_Add = 1 , MessageType::Recipient_Remove = 2 , MessageType::Call = 3 ,
  MessageType::Channel_Name_Change = 4 , MessageType::Channel_Icon_Change = 5 , MessageType::Channel_Pinned_Message = 6 , MessageType::Guild_Member_Join = 7 ,
  MessageType::User_Premium_Guild_Subscription = 8 , MessageType::User_Premium_Guild_Subscription_Tier_1 = 9 , MessageType::User_Premium_Guild_Subscription_Tier_2 = 10 , MessageType::User_Premium_Guild_Subscription_Tier_3 = 11 ,
  MessageType::Channel_Follow_Add = 12 , MessageType::Guild_Discovery_Disqualified = 14 , MessageType::Guild_Discovery_Requalified = 15 , MessageType::Guild_Discovery_Grace_Period_Initial_Warning = 16 ,
  MessageType::Guild_Discovery_Grace_Period_Final_Warning = 17 , MessageType::Thread_Created = 18 , MessageType::Reply = 19 , MessageType::Chat_Input_Command = 20 ,
  MessageType::Thread_Starter_Message = 21 , MessageType::Guild_Invite_Reminder = 22 , MessageType::Context_Menu_Command = 23
}
 Message types. More...
 
enum class  MFALevel : Uint8 { MFALevel::None = 0 , MFALevel::Elevated = 1 }
 MFA levels. More...
 
enum class  Permission : Uint64 {
  Permission::Create_Instant_Invite = 1ull << 0 , Permission::Kick_Members = 1ull << 1 , Permission::Ban_Members = 1ull << 2 , Permission::Administrator = 1ull << 3 ,
  Permission::Manage_Channels = 1ull << 4 , Permission::Manage_Guild = 1ull << 5 , Permission::Add_Reactions = 1ull << 6 , Permission::View_Audit_Log = 1ull << 7 ,
  Permission::Priority_Speaker = 1ull << 8 , Permission::Stream = 1ull << 9 , Permission::View_Channel = 1ull << 10 , Permission::Send_Messages = 1ull << 11 ,
  Permission::Send_Tts_Messages = 1ull << 12 , Permission::Manage_Messages = 1ull << 13 , Permission::Embed_Links = 1ull << 14 , Permission::Attach_Files = 1ull << 15 ,
  Permission::Read_Message_History = 1ull << 16 , Permission::Mention_Everyone = 1ull << 17 , Permission::Use_External_Emojis = 1ull << 18 , Permission::View_Guild_Insights = 1ull << 19 ,
  Permission::Connect = 1ull << 20 , Permission::Speak = 1ull << 21 , Permission::Mute_Members = 1ull << 22 , Permission::Deafen_Members = 1ull << 23 ,
  Permission::Move_Members = 1ull << 24 , Permission::Use_Vad = 1ull << 25 , Permission::Change_Nickname = 1ull << 26 , Permission::Manage_Nicknames = 1ull << 27 ,
  Permission::Manage_Roles = 1ull << 28 , Permission::Manage_Webhooks = 1ull << 29 , Permission::Manage_Emojis_And_Stickers = 1ull << 30 , Permission::Use_Application_Commands = 1ull << 31 ,
  Permission::Request_To_Speak = 1ull << 32 , Permission::Manage_Events = 1ull << 33 , Permission::Manage_Threads = 1ull << 34 , Permission::Create_Public_Threads = 1ull << 35 ,
  Permission::Create_Private_Threads = 1ull << 36 , Permission::Use_External_Stickers = 1ull << 37 , Permission::Send_Messages_In_Threads = 1ull << 38 , Permission::Start_Embedded_Activities = 1ull << 39 ,
  Permission::Moderate_Members = 1ull << 40
}
 Permission values, for a given Channel, by Role or GuildMember. More...
 
enum class  PermissionOverwritesType : Uint8 { PermissionOverwritesType::Role = 0 , PermissionOverwritesType::User = 1 }
 PermissionTypes overwrites types. More...
 
enum class  PremiumTier : Uint8 { PremiumTier::None = 0 , PremiumTier::Tier_1 = 1 , PremiumTier::Tier_2 = 2 , PremiumTier::Tier_3 = 3 }
 Premium tier levels. More...
 
enum class  PremiumType : Uint8 { PremiumType::None = 0 , PremiumType::Nitro_Classic = 1 , PremiumType::Nitro = 2 }
 Premium types denote the level of premium a user has. More...
 
enum class  SongType : Uint8 { YouTube = 0 , SoundCloud = 1 }
 Song types. More...
 
enum class  StageInstancePrivacyLevel : Uint8 { StageInstancePrivacyLevel::Public = 1 , StageInstancePrivacyLevel::Guild_Only = 2 }
 Stage instance privacy levels. More...
 
enum class  StickerFormatType : Uint8 { StickerFormatType::Png = 1 , StickerFormatType::Apng = 2 , StickerFormatType::Lottie = 3 }
 Sticker format types. More...
 
enum class  StickerItemType : Uint8 { StickerItemType::Png = 1 , StickerItemType::Apng = 2 , StickerItemType::Lottie = 3 }
 Sticker item types. More...
 
enum class  StickerType : Uint8 { StickerType::Standard = 1 , StickerType::Guild = 2 }
 Sticker types. More...
 
enum class  StreamType
 For selecting the type of streamer that the given bot is, one must be one server and one of client per connection. More...
 
enum class  SystemChannelFlags : Uint8 { SystemChannelFlags::Suppress_Join_Notifications = 1 << 0 , SystemChannelFlags::Suppress_Premium_Subscriptions = 1 << 1 , SystemChannelFlags::Suppress_Guild_Reminder_Notifications = 1 << 2 , SystemChannelFlags::Suppress_Join_Notification_Replies = 1 << 3 }
 System channel flags. More...
 
enum class  TextFormat : Int8 { TextFormat::Etf = 0x00 , TextFormat::Json = 0x01 }
 Represents which text format to use for websocket transfer. More...
 
enum class  TextInputStyle : Uint8 { TextInputStyle::Short = 1 , TextInputStyle::Paragraph = 2 }
 Text input style for modals. More...
 
enum class  ThreadAutoArchiveDuration : Int16 { ThreadAutoArchiveDuration::Shortest = 60 , ThreadAutoArchiveDuration::Short = 1440 , ThreadAutoArchiveDuration::Long = 4320 , ThreadAutoArchiveDuration::Longest = 10080 }
 Automatic Thread archiving durations. More...
 
enum class  ThreadType : Uint8 { ThreadType::Guild_News_Thread = 10 , ThreadType::Guild_Public_Thread = 11 , ThreadType::Guild_Private_Thread = 12 }
 Thread types. More...
 
enum class  TimeFormat : char {
  TimeFormat::LongDate = 'D' , TimeFormat::LongDateTime = 'F' , TimeFormat::LongTime = 'T' , TimeFormat::ShortDate = 'd' ,
  TimeFormat::ShortDateTime = 'f' , TimeFormat::ShortTime = 't'
}
 Time formatting methods. More...
 
enum class  TimeoutDurations : Int16 {
  TimeoutDurations::None = 0 , TimeoutDurations::Minute = 1 , TimeoutDurations::Five_Minutes = 5 , TimeoutDurations::Ten_Minutes = 10 ,
  TimeoutDurations::Hour = 60 , TimeoutDurations::Day = 1440 , TimeoutDurations::Week = 10080
}
 Timeout durations for the timeout command. More...
 
enum class  TriggerType : Uint8 { TriggerType::Keyword = 1 , TriggerType::Harmful_Link = 2 , TriggerType::Spam = 3 , TriggerType::Keyword_Preset = 4 }
 Trigger types for auto-moderation. More...
 
enum class  UserFlags : Int32 {
  UserFlags::Staff = 1 << 0 , UserFlags::Partner = 1 << 1 , UserFlags::Hypesquad = 1 << 2 , UserFlags::Bug_Hunter_Level_1 = 1 << 3 ,
  UserFlags::Hypesquad_Online_House_1 = 1 << 6 , UserFlags::Hypesquad_Online_House_2 = 1 << 7 , UserFlags::Hypesquad_Online_House_3 = 1 << 8 , UserFlags::Premium_Early_Suppoerter = 1 << 9 ,
  UserFlags::Team_Pseudo_User = 1 << 10 , UserFlags::Bug_Hunter_Level_2 = 1 << 14 , UserFlags::Verified_Bot = 1 << 16 , UserFlags::Verified_Developer = 1 << 17 ,
  UserFlags::Certified_Moderator = 1 << 18 , UserFlags::Bot_Http_Interactions = 1 << 19 , UserFlags::Bot = 1 << 20 , UserFlags::MFAEnabled = 1 << 21 ,
  UserFlags::System = 1 << 22 , UserFlags::Verified = 1 << 23
}
 User flags. More...
 
enum class  VerificationLevel : Uint8 {
  VerificationLevel::None = 0 , VerificationLevel::Low = 1 , VerificationLevel::Medium = 2 , VerificationLevel::High = 3 ,
  VerificationLevel::Very_High = 4
}
 Verification levels. More...
 
enum class  VoiceActiveState : Int8 {
  Connecting = -1 , Playing = 1 , Stopped = 2 , Paused = 3 ,
  Exiting = 4
}
 For the various active states of the VoiceConnection class. More...
 
enum class  VoiceConnectionState : Int8 {
  Collecting_Init_Data = 0 , Initializing_WebSocket = 1 , Collecting_Hello = 2 , Sending_Identify = 3 ,
  Collecting_Ready = 4 , Initializing_DatagramSocket = 5 , Sending_Select_Protocol = 7 , Collecting_Session_Description = 8
}
 For the various connection states of the VoiceConnection class. More...
 
enum class  WebHookType : Uint8 { WebHookType::Incoming = 1 , WebHookType::Channel_Follower = 2 , WebHookType::Application = 3 }
 WebHook types. More...
 
enum class  WidgetStyleOptions : Uint8 {
  WidgetStyleOptions::Shield = 0 , WidgetStyleOptions::Banner1 = 1 , WidgetStyleOptions::Banner2 = 2 , WidgetStyleOptions::Banner3 = 3 ,
  WidgetStyleOptions::Banner4 = 4
}
 Widget style options. More...
 

Functions

DiscordCoreAPI_Dll String getTimeAndDate ()
 Acquires a timestamp with the current time and date - suitable for use in message-embeds. More...
 
template<typename ReturnType >
auto NewThreadAwaitable ()
 An awaitable that can be used to launch the CoRoutine onto a new thread - as well as return the handle for stoppping its execution. More...
 
DiscordCoreAPI_Dll void reportException (const String &currentFunctionName, std::source_location theLocation=std::source_location::current())
 Prints the current file, line, and column from which the function is being called - typically from within an exception's "catch" block. More...
 

Enumeration Type Documentation

◆ SongType

enum class DiscordCoreAPI::SongType : Uint8
strong

Song types.

Enumerator
YouTube 

YouTube.

SoundCloud 

SoundCloud.

Definition at line 3203 of file FoundationEntities.hpp.

◆ VoiceActiveState

enum class DiscordCoreAPI::VoiceActiveState : Int8
strong

For the various active states of the VoiceConnection class.

Enumerator
Connecting 

Connecting - it hasn't started or it's reconnecting.

Playing 

Playing.

Stopped 

Stopped.

Paused 

Paused.

Exiting 

Exiting.

Definition at line 115 of file VoiceConnection.hpp.

◆ VoiceConnectionState

enum class DiscordCoreAPI::VoiceConnectionState : Int8
strong

For the various connection states of the VoiceConnection class.

Enumerator
Collecting_Init_Data 

Collecting initialization data.

Initializing_WebSocket 

Initializing the WebSocket.

Collecting_Hello 

Collecting the client hello.

Sending_Identify 

Sending the identify payload.

Collecting_Ready 

Collecting the client ready.

Initializing_DatagramSocket 

Initializing the datagram udp socket.

Sending_Select_Protocol 

Sending the select-protocol payload.

Collecting_Session_Description 

Collecting the session-description payload.

Definition at line 103 of file VoiceConnection.hpp.