jacquard_api/app_bsky/embed/
record.rs

1// @generated by jacquard-lexicon. DO NOT EDIT.
2//
3// Lexicon: app.bsky.embed.record
4//
5// This file was automatically generated from Lexicon schemas.
6// Any manual changes will be overwritten on the next regeneration.
7
8#[jacquard_derive::lexicon]
9#[derive(
10    serde::Serialize,
11    serde::Deserialize,
12    Debug,
13    Clone,
14    PartialEq,
15    Eq,
16    jacquard_derive::IntoStatic
17)]
18#[serde(rename_all = "camelCase")]
19pub struct Record<'a> {
20    #[serde(borrow)]
21    pub record: crate::com_atproto::repo::strong_ref::StrongRef<'a>,
22}
23
24#[jacquard_derive::lexicon]
25#[derive(
26    serde::Serialize,
27    serde::Deserialize,
28    Debug,
29    Clone,
30    PartialEq,
31    Eq,
32    jacquard_derive::IntoStatic
33)]
34#[serde(rename_all = "camelCase")]
35pub struct View<'a> {
36    #[serde(borrow)]
37    pub record: ViewRecordRecord<'a>,
38}
39
40#[jacquard_derive::open_union]
41#[derive(
42    serde::Serialize,
43    serde::Deserialize,
44    Debug,
45    Clone,
46    PartialEq,
47    Eq,
48    jacquard_derive::IntoStatic
49)]
50#[serde(tag = "$type")]
51#[serde(bound(deserialize = "'de: 'a"))]
52pub enum ViewRecordRecord<'a> {
53    #[serde(rename = "app.bsky.feed.defs#generatorView")]
54    DefsGeneratorView(Box<crate::app_bsky::feed::GeneratorView<'a>>),
55    #[serde(rename = "app.bsky.graph.defs#listView")]
56    DefsListView(Box<crate::app_bsky::graph::ListView<'a>>),
57    #[serde(rename = "app.bsky.labeler.defs#labelerView")]
58    DefsLabelerView(Box<crate::app_bsky::labeler::LabelerView<'a>>),
59    #[serde(rename = "app.bsky.graph.defs#starterPackViewBasic")]
60    DefsStarterPackViewBasic(Box<crate::app_bsky::graph::StarterPackViewBasic<'a>>),
61}
62
63#[jacquard_derive::lexicon]
64#[derive(
65    serde::Serialize,
66    serde::Deserialize,
67    Debug,
68    Clone,
69    PartialEq,
70    Eq,
71    jacquard_derive::IntoStatic
72)]
73#[serde(rename_all = "camelCase")]
74pub struct ViewBlocked<'a> {
75    #[serde(borrow)]
76    pub author: crate::app_bsky::feed::BlockedAuthor<'a>,
77    pub blocked: bool,
78    #[serde(borrow)]
79    pub uri: jacquard_common::types::string::AtUri<'a>,
80}
81
82#[jacquard_derive::lexicon]
83#[derive(
84    serde::Serialize,
85    serde::Deserialize,
86    Debug,
87    Clone,
88    PartialEq,
89    Eq,
90    jacquard_derive::IntoStatic
91)]
92#[serde(rename_all = "camelCase")]
93pub struct ViewDetached<'a> {
94    pub detached: bool,
95    #[serde(borrow)]
96    pub uri: jacquard_common::types::string::AtUri<'a>,
97}
98
99#[jacquard_derive::lexicon]
100#[derive(
101    serde::Serialize,
102    serde::Deserialize,
103    Debug,
104    Clone,
105    PartialEq,
106    Eq,
107    jacquard_derive::IntoStatic
108)]
109#[serde(rename_all = "camelCase")]
110pub struct ViewNotFound<'a> {
111    pub not_found: bool,
112    #[serde(borrow)]
113    pub uri: jacquard_common::types::string::AtUri<'a>,
114}
115
116#[jacquard_derive::lexicon]
117#[derive(
118    serde::Serialize,
119    serde::Deserialize,
120    Debug,
121    Clone,
122    PartialEq,
123    Eq,
124    jacquard_derive::IntoStatic
125)]
126#[serde(rename_all = "camelCase")]
127pub struct ViewRecord<'a> {
128    #[serde(borrow)]
129    pub author: crate::app_bsky::actor::ProfileViewBasic<'a>,
130    #[serde(borrow)]
131    pub cid: jacquard_common::types::string::Cid<'a>,
132    #[serde(skip_serializing_if = "std::option::Option::is_none")]
133    #[serde(borrow)]
134    pub embeds: std::option::Option<Vec<jacquard_common::types::value::Data<'a>>>,
135    pub indexed_at: jacquard_common::types::string::Datetime,
136    #[serde(skip_serializing_if = "std::option::Option::is_none")]
137    #[serde(borrow)]
138    pub labels: std::option::Option<Vec<crate::com_atproto::label::Label<'a>>>,
139    #[serde(skip_serializing_if = "std::option::Option::is_none")]
140    pub like_count: std::option::Option<i64>,
141    #[serde(skip_serializing_if = "std::option::Option::is_none")]
142    pub quote_count: std::option::Option<i64>,
143    #[serde(skip_serializing_if = "std::option::Option::is_none")]
144    pub reply_count: std::option::Option<i64>,
145    #[serde(skip_serializing_if = "std::option::Option::is_none")]
146    pub repost_count: std::option::Option<i64>,
147    #[serde(borrow)]
148    pub uri: jacquard_common::types::string::AtUri<'a>,
149    ///The record data itself.
150    #[serde(borrow)]
151    pub value: jacquard_common::types::value::Data<'a>,
152}