Source code for interactions.api.models.flags

from enum import Enum, IntFlag

__all__ = ("Intents", "AppFlags", "StatusType", "UserFlags", "Permissions", "MessageFlags")


[docs]class Intents(IntFlag): """An integer flag bitshift object representing flags respective for each gateway intent type.""" GUILDS = 1 << 0 GUILD_MEMBERS = 1 << 1 GUILD_BANS = 1 << 2 GUILD_EMOJIS_AND_STICKERS = 1 << 3 GUILD_INTEGRATIONS = 1 << 4 GUILD_WEBHOOKS = 1 << 5 GUILD_INVITES = 1 << 6 GUILD_VOICE_STATES = 1 << 7 GUILD_PRESENCES = 1 << 8 GUILD_MESSAGES = 1 << 9 GUILD_MESSAGE_REACTIONS = 1 << 10 GUILD_MESSAGE_TYPING = 1 << 11 DIRECT_MESSAGES = 1 << 12 DIRECT_MESSAGE_REACTIONS = 1 << 13 DIRECT_MESSAGE_TYPING = 1 << 14 GUILD_MESSAGE_CONTENT = 1 << 15 GUILD_SCHEDULED_EVENTS = 1 << 16 AUTO_MODERATION_CONFIGURATION = 1 << 20 AUTO_MODERATION_EXECUTION = 1 << 21 PRIVILEGED = GUILD_PRESENCES | GUILD_MEMBERS | GUILD_MESSAGE_CONTENT DEFAULT = ( GUILDS | GUILD_BANS | GUILD_EMOJIS_AND_STICKERS | GUILD_INTEGRATIONS | GUILD_WEBHOOKS | GUILD_INVITES | GUILD_VOICE_STATES | GUILD_MESSAGES | GUILD_MESSAGE_REACTIONS | GUILD_MESSAGE_TYPING | DIRECT_MESSAGES | DIRECT_MESSAGE_REACTIONS | DIRECT_MESSAGE_TYPING | GUILD_SCHEDULED_EVENTS | AUTO_MODERATION_CONFIGURATION | AUTO_MODERATION_EXECUTION ) ALL = DEFAULT | PRIVILEGED
[docs]class Permissions(IntFlag): """An integer flag bitshift object representing the different member permissions given by Discord.""" CREATE_INSTANT_INVITE = 1 << 0 KICK_MEMBERS = 1 << 1 BAN_MEMBERS = 1 << 2 ADMINISTRATOR = 1 << 3 MANAGE_CHANNELS = 1 << 4 MANAGE_GUILD = 1 << 5 ADD_REACTIONS = 1 << 6 VIEW_AUDIT_LOG = 1 << 7 PRIORITY_SPEAKER = 1 << 8 STREAM = 1 << 9 VIEW_CHANNEL = 1 << 10 SEND_MESSAGES = 1 << 11 SEND_TTS_MESSAGES = 1 << 12 MANAGE_MESSAGES = 1 << 13 EMBED_LINKS = 1 << 14 ATTACH_FILES = 1 << 15 READ_MESSAGE_HISTORY = 1 << 16 MENTION_EVERYONE = 1 << 17 USE_EXTERNAL_EMOJIS = 1 << 18 VIEW_GUILD_INSIGHTS = 1 << 19 CONNECT = 1 << 20 SPEAK = 1 << 21 MUTE_MEMBERS = 1 << 22 DEAFEN_MEMBERS = 1 << 23 MOVE_MEMBERS = 1 << 24 USE_VAD = 1 << 25 CHANGE_NICKNAME = 1 << 26 MANAGE_NICKNAMES = 1 << 27 MANAGE_ROLES = 1 << 28 MANAGE_WEBHOOKS = 1 << 29 MANAGE_EMOJIS_AND_STICKERS = 1 << 30 USE_APPLICATION_COMMANDS = 1 << 31 REQUEST_TO_SPEAK = 1 << 32 MANAGE_EVENTS = 1 << 33 MANAGE_THREADS = 1 << 34 CREATE_PUBLIC_THREADS = 1 << 35 CREATE_PRIVATE_THREADS = 1 << 36 USE_EXTERNAL_STICKERS = 1 << 37 SEND_MESSAGES_IN_THREADS = 1 << 38 START_EMBEDDED_ACTIVITIES = 1 << 39 MODERATE_MEMBERS = 1 << 40 DEFAULT = ( ADD_REACTIONS | VIEW_CHANNEL | SEND_MESSAGES | EMBED_LINKS | ATTACH_FILES | READ_MESSAGE_HISTORY | MENTION_EVERYONE | USE_EXTERNAL_EMOJIS ) ALL = ( DEFAULT | CREATE_INSTANT_INVITE | KICK_MEMBERS | BAN_MEMBERS | ADMINISTRATOR | MANAGE_CHANNELS | MANAGE_GUILD | VIEW_AUDIT_LOG | PRIORITY_SPEAKER | STREAM | SEND_TTS_MESSAGES | MANAGE_MESSAGES | VIEW_GUILD_INSIGHTS | CONNECT | SPEAK | MUTE_MEMBERS | DEAFEN_MEMBERS | MOVE_MEMBERS | USE_VAD | CHANGE_NICKNAME | MANAGE_NICKNAMES | MANAGE_ROLES | MANAGE_WEBHOOKS | MANAGE_EMOJIS_AND_STICKERS | USE_APPLICATION_COMMANDS | REQUEST_TO_SPEAK | MANAGE_EVENTS | MANAGE_THREADS | CREATE_PUBLIC_THREADS | CREATE_PRIVATE_THREADS | USE_EXTERNAL_STICKERS | SEND_MESSAGES_IN_THREADS | START_EMBEDDED_ACTIVITIES | MODERATE_MEMBERS )
[docs]class UserFlags(IntFlag): """An integer flag bitshift object representing the different user flags given by Discord.""" STAFF = 1 PARTNER = 1 << 1 HYPESQUAD = 1 << 2 BUG_HUNTER_LEVEL_1 = 1 << 3 HYPESQUAD_HOUSE_1 = 1 << 6 HYPESQUAD_HOUSE_2 = 1 << 7 HYPESQUAD_HOUSE_3 = 1 << 8 PREMIUM_EARLY_SUPPORTER = 1 << 9 TEAM_PSEUDO_USER = 1 << 10 SYSTEM = 1 << 12 BUG_HUNTER_LEVEL_2 = 1 << 14 VERIFIED_BOT = 1 << 16 VERIFIED_DEVELOPER = 1 << 17 DISCORD_CERTIFIED_MODERATOR = 1 << 18 BOT_HTTP_INTERACTIONS = 1 << 19 ACTIVE_DEVELOPER = 1 << 22
[docs]class AppFlags(IntFlag): """An integer flag bitshift object representing the different application flags given by Discord.""" GATEWAY_PRESENCE = 1 << 12 GATEWAY_PRESENCE_LIMITED = 1 << 13 GATEWAY_GUILD_MEMBERS = 1 << 14 GATEWAY_GUILD_MEMBERS_LIMITED = 1 << 15 VERIFICATION_PENDING_GUILD_LIMIT = 1 << 16 EMBEDDED = 1 << 17 GATEWAY_MESSAGE_CONTENT = 1 << 18 GATEWAY_MESSAGE_CONTENT_LIMITED = 1 << 19 APPLICATION_COMMAND_BADGE = 1 << 23
[docs]class StatusType(str, Enum): """ An enumerable object representing Discord status icons that a user may have. """ ONLINE = "online" DND = "dnd" IDLE = "idle" INVISIBLE = "invisible" OFFLINE = "offline"
[docs]class MessageFlags(IntFlag): """ .. versionadded:: 4.4.0 An integer flag bitshift object representing the different message flags given by Discord. :ivar int CROSSPOSTED: this message has been published to subscribed channels (via Channel Following) :ivar int IS_CROSSPOST: this message originated from a message in another channel (via Channel Following) :ivar int SUPPRESS_EMBEDS: do not include any embeds when serializing this message :ivar int SOURCE_MESSAGE_DELETED: the source message for this crosspost has been deleted (via Channel Following) :ivar int URGENT: this message came from the urgent message system :ivar int HAS_THREAD: this message has an associated thread, with the same id as the message :ivar int EPHEMERAL: this message is only visible to the user who invoked the Interaction :ivar int LOADING: this message is an Interaction Response and the bot is thinking :ivar int FAILED_TO_MENTION_SOME_ROLES_IN_THREAD: this message failed to mention some roles and add their members to the thread """ CROSSPOSTED = 1 << 0 IS_CROSSPOST = 1 << 1 SUPPRESS_EMBEDS = 1 << 2 SOURCE_MESSAGE_DELETED = 1 << 3 URGENT = 1 << 4 HAS_THREAD = 1 << 5 EPHEMERAL = 1 << 6 LOADING = 1 << 7 FAILED_TO_MENTION_SOME_ROLES_IN_THREAD = 1 << 8