Skip to main content

atrium_api/app/bsky/embed/
video.rs

1// @generated - This file is generated by atrium-codegen. DO NOT EDIT.
2//!Definitions for the `app.bsky.embed.video` namespace.
3//!A video embedded in a Bluesky record (eg, a post).
4#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
5#[serde(rename_all = "camelCase")]
6pub struct MainData {
7    ///Alt text description of the video, for accessibility.
8    #[serde(skip_serializing_if = "core::option::Option::is_none")]
9    pub alt: core::option::Option<String>,
10    #[serde(skip_serializing_if = "core::option::Option::is_none")]
11    pub aspect_ratio: core::option::Option<crate::app::bsky::embed::defs::AspectRatio>,
12    #[serde(skip_serializing_if = "core::option::Option::is_none")]
13    pub captions: core::option::Option<Vec<Caption>>,
14    ///A hint to the client about how to present the video.
15    #[serde(skip_serializing_if = "core::option::Option::is_none")]
16    pub presentation: core::option::Option<String>,
17    ///The mp4 video file. May be up to 300mb, formerly limited to 100mb.
18    pub video: crate::types::BlobRef,
19}
20pub type Main = crate::types::Object<MainData>;
21#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
22#[serde(rename_all = "camelCase")]
23pub struct CaptionData {
24    pub file: crate::types::BlobRef,
25    pub lang: crate::types::string::Language,
26}
27pub type Caption = crate::types::Object<CaptionData>;
28#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
29#[serde(rename_all = "camelCase")]
30pub struct ViewData {
31    #[serde(skip_serializing_if = "core::option::Option::is_none")]
32    pub alt: core::option::Option<String>,
33    #[serde(skip_serializing_if = "core::option::Option::is_none")]
34    pub aspect_ratio: core::option::Option<crate::app::bsky::embed::defs::AspectRatio>,
35    pub cid: crate::types::string::Cid,
36    pub playlist: String,
37    ///A hint to the client about how to present the video.
38    #[serde(skip_serializing_if = "core::option::Option::is_none")]
39    pub presentation: core::option::Option<String>,
40    #[serde(skip_serializing_if = "core::option::Option::is_none")]
41    pub thumbnail: core::option::Option<String>,
42}
43pub type View = crate::types::Object<ViewData>;