Skip to main content

proto_blue_api/generated/app/bsky/embed/
record.rs

1// Generated by atproto-codegen. Do not edit.
2//! Lexicon: app.bsky.embed.record
3#![allow(clippy::pedantic, clippy::nursery, clippy::all)]
4
5use serde::{Deserialize, Serialize};
6
7#[derive(Debug, Clone, Serialize, Deserialize)]
8#[serde(rename_all = "camelCase")]
9pub struct Main {
10    pub record: crate::com::atproto::repo::strong_ref::Main,
11}
12
13#[derive(Debug, Clone, Serialize, Deserialize)]
14#[serde(tag = "$type")]
15pub enum ViewRecordRefs {
16    #[serde(rename = "app.bsky.embed.record#viewRecord")]
17    BskyEmbedRecordViewRecord(Box<ViewRecord>),
18    #[serde(rename = "app.bsky.embed.record#viewNotFound")]
19    BskyEmbedRecordViewNotFound(Box<ViewNotFound>),
20    #[serde(rename = "app.bsky.embed.record#viewBlocked")]
21    BskyEmbedRecordViewBlocked(Box<ViewBlocked>),
22    #[serde(rename = "app.bsky.embed.record#viewDetached")]
23    BskyEmbedRecordViewDetached(Box<ViewDetached>),
24    #[serde(rename = "app.bsky.feed.defs#generatorView")]
25    BskyFeedDefsGeneratorView(Box<crate::app::bsky::feed::defs::GeneratorView>),
26    #[serde(rename = "app.bsky.graph.defs#listView")]
27    BskyGraphDefsListView(Box<crate::app::bsky::graph::defs::ListView>),
28    #[serde(rename = "app.bsky.labeler.defs#labelerView")]
29    BskyLabelerDefsLabelerView(Box<crate::app::bsky::labeler::defs::LabelerView>),
30    #[serde(rename = "app.bsky.graph.defs#starterPackViewBasic")]
31    BskyGraphDefsStarterPackViewBasic(Box<crate::app::bsky::graph::defs::StarterPackViewBasic>),
32    #[serde(other)]
33    Other,
34}
35
36#[derive(Debug, Clone, Serialize, Deserialize)]
37#[serde(rename_all = "camelCase")]
38pub struct View {
39    pub record: ViewRecordRefs,
40}
41
42#[derive(Debug, Clone, Serialize, Deserialize)]
43#[serde(rename_all = "camelCase")]
44pub struct ViewBlocked {
45    pub author: crate::app::bsky::feed::defs::BlockedAuthor,
46    pub blocked: bool,
47    pub uri: proto_blue_syntax::AtUri,
48}
49
50#[derive(Debug, Clone, Serialize, Deserialize)]
51#[serde(rename_all = "camelCase")]
52pub struct ViewDetached {
53    pub detached: bool,
54    pub uri: proto_blue_syntax::AtUri,
55}
56
57#[derive(Debug, Clone, Serialize, Deserialize)]
58#[serde(rename_all = "camelCase")]
59pub struct ViewNotFound {
60    pub not_found: bool,
61    pub uri: proto_blue_syntax::AtUri,
62}
63
64#[derive(Debug, Clone, Serialize, Deserialize)]
65#[serde(tag = "$type")]
66pub enum ViewRecordEmbedsItemRefs {
67    #[serde(rename = "app.bsky.embed.images#view")]
68    BskyEmbedImagesView(Box<crate::app::bsky::embed::images::View>),
69    #[serde(rename = "app.bsky.embed.video#view")]
70    BskyEmbedVideoView(Box<crate::app::bsky::embed::video::View>),
71    #[serde(rename = "app.bsky.embed.external#view")]
72    BskyEmbedExternalView(Box<crate::app::bsky::embed::external::View>),
73    #[serde(rename = "app.bsky.embed.record#view")]
74    BskyEmbedRecordView(Box<View>),
75    #[serde(rename = "app.bsky.embed.recordWithMedia#view")]
76    BskyEmbedRecordWithMediaView(Box<crate::app::bsky::embed::record_with_media::View>),
77    #[serde(other)]
78    Other,
79}
80
81#[derive(Debug, Clone, Serialize, Deserialize)]
82#[serde(rename_all = "camelCase")]
83pub struct ViewRecord {
84    pub author: crate::app::bsky::actor::defs::ProfileViewBasic,
85    pub cid: String,
86    #[serde(skip_serializing_if = "Option::is_none")]
87    pub embeds: Option<Vec<ViewRecordEmbedsItemRefs>>,
88    pub indexed_at: proto_blue_syntax::Datetime,
89    #[serde(skip_serializing_if = "Option::is_none")]
90    pub labels: Option<Vec<crate::com::atproto::label::defs::Label>>,
91    #[serde(skip_serializing_if = "Option::is_none")]
92    pub like_count: Option<i64>,
93    #[serde(skip_serializing_if = "Option::is_none")]
94    pub quote_count: Option<i64>,
95    #[serde(skip_serializing_if = "Option::is_none")]
96    pub reply_count: Option<i64>,
97    #[serde(skip_serializing_if = "Option::is_none")]
98    pub repost_count: Option<i64>,
99    pub uri: proto_blue_syntax::AtUri,
100    pub value: serde_json::Value,
101}