aboutsummaryrefslogtreecommitdiff
path: root/discord
diff options
context:
space:
mode:
Diffstat (limited to 'discord')
-rw-r--r--discord/types/interactions.py48
1 files changed, 42 insertions, 6 deletions
diff --git a/discord/types/interactions.py b/discord/types/interactions.py
index 466e4192..ddf4f601 100644
--- a/discord/types/interactions.py
+++ b/discord/types/interactions.py
@@ -93,16 +93,52 @@ class GuildApplicationCommandPermissions(PartialGuildApplicationCommandPermissio
InteractionType = Literal[1, 2, 3]
-class _ApplicationCommandInteractionDataOptionOptional(TypedDict, total=False):
- value: ApplicationCommandOptionType
+class _ApplicationCommandInteractionDataOption(TypedDict):
+ name: str
+
+
+class _ApplicationCommandInteractionDataOptionSubcommand(
+ _ApplicationCommandInteractionDataOption
+):
+ type: Literal[1, 2]
options: List[ApplicationCommandInteractionDataOption]
-class ApplicationCommandInteractionDataOption(
- _ApplicationCommandInteractionDataOptionOptional
+class _ApplicationCommandInteractionDataOptionString(
+ _ApplicationCommandInteractionDataOption
):
- name: str
- type: ApplicationCommandOptionType
+ type: Literal[3]
+ value: str
+
+
+class _ApplicationCommandInteractionDataOptionInteger(
+ _ApplicationCommandInteractionDataOption
+):
+ type: Literal[4]
+ value: int
+
+
+class _ApplicationCommandInteractionDataOptionBoolean(
+ _ApplicationCommandInteractionDataOption
+):
+ type: Literal[5]
+ value: bool
+
+
+class _ApplicationCommandInteractionDataOptionSnowflake(
+ _ApplicationCommandInteractionDataOption
+):
+ type: Literal[6, 7, 8, 9]
+ value: Snowflake
+
+
+ApplicationCommandInteractionDataOption = Union[
+ _ApplicationCommandInteractionDataOptionString,
+ _ApplicationCommandInteractionDataOptionInteger,
+ _ApplicationCommandInteractionDataOptionSubcommand,
+ _ApplicationCommandInteractionDataOptionBoolean,
+ _ApplicationCommandInteractionDataOptionSnowflake,
+]
class ApplicationCommandResolvedPartialChannel(TypedDict):