Skip to main content

twilight_model/application/interaction/modal/
file_upload.rs

1use crate::id::Id;
2use crate::id::marker::AttachmentMarker;
3
4/// User filled in [`FileUpload`].
5///
6/// See [Discord Docs/File Upload Interaction Response Structure]
7///
8/// [`FileUpload`]: crate::channel::message::component::FileUpload
9/// [Discord Docs/File Upload Interaction Response Structure]: https://discord.com/developers/docs/components/reference#file-upload-file-upload-interaction-response-structure
10#[derive(Clone, Debug, Eq, PartialEq)]
11pub struct ModalInteractionFileUpload {
12    /// User defined identifier for the component.
13    ///
14    /// See [Discord Docs/Custom ID].
15    ///
16    /// [Discord Docs/Custom ID]: https://discord.com/developers/docs/components/reference#anatomy-of-a-component-custom-id
17    pub custom_id: String,
18    /// Unique identifier for the component.
19    pub id: i32,
20    /// IDs of the uploaded files found in [`ModalInteractionData::resolved`].
21    ///
22    /// [`ModalInteractionData::resolved`]: crate::application::interaction::modal::ModalInteractionData::resolved
23    pub values: Vec<Id<AttachmentMarker>>,
24}