@@ -324,6 +324,50 @@ pub struct SoundboardSoundsEvent {
324324 pub soundboard_sounds : Vec < Soundboard > ,
325325}
326326
327+ /// Requires no gateway intents.
328+ ///
329+ /// [Discord docs](https://discord.com/developers/docs/events/gateway-events#guild-soundboard-sound-create).
330+ #[ cfg_attr( feature = "typesize" , derive( typesize:: derive:: TypeSize ) ) ]
331+ #[ derive( Clone , Debug , Deserialize , Serialize ) ]
332+ #[ serde( transparent) ]
333+ #[ non_exhaustive]
334+ pub struct SoundboardSoundCreateEvent {
335+ pub soundboard : Soundboard ,
336+ }
337+
338+ /// Requires no gateway intents.
339+ ///
340+ /// [Discord docs](https://discord.com/developers/docs/events/gateway-events#guild-soundboard-sound-update).
341+ #[ cfg_attr( feature = "typesize" , derive( typesize:: derive:: TypeSize ) ) ]
342+ #[ derive( Clone , Debug , Deserialize , Serialize ) ]
343+ #[ serde( transparent) ]
344+ #[ non_exhaustive]
345+ pub struct SoundboardSoundUpdateEvent {
346+ pub soundboard : Soundboard ,
347+ }
348+
349+ /// Requires no gateway intents.
350+ ///
351+ /// [Discord docs](https://discord.com/developers/docs/events/gateway-events#guild-soundboard-sounds-update).
352+ #[ cfg_attr( feature = "typesize" , derive( typesize:: derive:: TypeSize ) ) ]
353+ #[ derive( Clone , Debug , Deserialize , Serialize ) ]
354+ #[ non_exhaustive]
355+ pub struct SoundboardSoundsUpdateEvent {
356+ pub guild_id : GuildId ,
357+ pub soundboard_sounds : Vec < Soundboard > ,
358+ }
359+
360+ /// Requires no gateway intents.
361+ ///
362+ /// [Discord docs](https://discord.com/developers/docs/events/gateway-events#guild-soundboard-sound-delete).
363+ #[ cfg_attr( feature = "typesize" , derive( typesize:: derive:: TypeSize ) ) ]
364+ #[ derive( Clone , Debug , Deserialize , Serialize ) ]
365+ #[ non_exhaustive]
366+ pub struct SoundboardSoundDeleteEvent {
367+ pub guild_id : GuildId ,
368+ pub sound_id : SoundId ,
369+ }
370+
327371/// Helper to deserialize `GuildRoleCreateEvent` and `GuildRoleUpdateEvent`.
328372#[ cfg_attr( feature = "typesize" , derive( typesize:: derive:: TypeSize ) ) ]
329373#[ derive( Deserialize ) ]
@@ -1309,6 +1353,14 @@ pub enum Event {
13091353 /// The connection has successfully resumed after a disconnect.
13101354 Resumed ( ResumedEvent ) ,
13111355 SoundboardSounds ( SoundboardSoundsEvent ) ,
1356+ #[ serde( rename = "GUILD_SOUNDBOARD_SOUND_CREATE" ) ]
1357+ SoundboardSoundCreate ( SoundboardSoundCreateEvent ) ,
1358+ #[ serde( rename = "GUILD_SOUNDBOARD_SOUND_UPDATE" ) ]
1359+ SoundboardSoundUpdate ( SoundboardSoundUpdateEvent ) ,
1360+ #[ serde( rename = "GUILD_SOUNDBOARD_SOUNDS_UPDATE" ) ]
1361+ SoundboardSoundsUpdate ( SoundboardSoundsUpdateEvent ) ,
1362+ #[ serde( rename = "GUILD_SOUNDBOARD_SOUND_DELETE" ) ]
1363+ SoundboardSoundDelete ( SoundboardSoundDeleteEvent ) ,
13121364 /// A user is typing; considered to last 5 seconds
13131365 TypingStart ( TypingStartEvent ) ,
13141366 /// Update to the logged-in user's information
0 commit comments