twilight_model/application/interaction/callback/
resource.rs

1use serde::Deserialize;
2
3use crate::{channel::Message, http::interaction::InteractionResponseType};
4
5use super::activity_instance_resource::ActivityInstanceResource;
6
7/// Resource that was created by the interaction response.
8///
9/// See [Discord Docs/Interaction Callback Resource Object].
10///
11/// [Discord Docs/Interaction Callback Resource Object]: https://discord.com/developers/docs/interactions/receiving-and-responding#interaction-callback-interaction-callback-resource-object
12#[derive(Clone, Debug, Deserialize, PartialEq)]
13pub struct InteractionCallbackResource {
14    /// Represents the Activity launched by this interaction.
15    #[serde(skip_serializing_if = "Option::is_none")]
16    pub activity_instance: Option<ActivityInstanceResource>,
17    /// Interaction callback type
18    #[serde(rename = "type")]
19    pub kind: InteractionResponseType,
20    /// Message created by the interaction.
21    #[serde(skip_serializing_if = "Option::is_none")]
22    pub message: Option<Message>,
23}