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.