From ccf3b3738e101aa9e0a2e4c01bc36934472804c8 Mon Sep 17 00:00:00 2001 From: Pierce Date: Tue, 25 May 2021 22:06:38 -0400 Subject: [PATCH] add ApplicationCommandInteractionDataResolved struct (#919) * add ApplicationCommandInteractionDataResolved struct * add comment to ApplicationCommandInteractionDataResolved * change wording of comment for ApplicationCommandInteractionDataResolved --- interactions.go | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/interactions.go b/interactions.go index 161115566..5910159c4 100644 --- a/interactions.go +++ b/interactions.go @@ -92,9 +92,20 @@ type Interaction struct { // ApplicationCommandInteractionData contains data received in an interaction event. type ApplicationCommandInteractionData struct { - ID string `json:"id"` - Name string `json:"name"` - Options []*ApplicationCommandInteractionDataOption `json:"options"` + ID string `json:"id"` + Name string `json:"name"` + Resolved *ApplicationCommandInteractionDataResolved `json:"resolved"` + Options []*ApplicationCommandInteractionDataOption `json:"options"` +} + +// ApplicationCommandInteractionDataResolved contains resolved data for command arguments. +// Partial Member objects are missing user, deaf and mute fields. +// Partial Channel objects only have id, name, type and permissions fields. +type ApplicationCommandInteractionDataResolved struct { + Users map[string]*User `json:"users"` + Members map[string]*Member `json:"members"` + Roles map[string]*Role `json:"roles"` + Channels map[string]*Channel `json:"channels"` } // ApplicationCommandInteractionDataOption represents an option of a slash command.