1#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
4#[serde(rename_all = "camelCase")]
5pub struct ConvoViewData {
6 pub id: String,
7 #[serde(skip_serializing_if = "core::option::Option::is_none")]
8 pub last_message: core::option::Option<
9 crate::types::Union<ConvoViewLastMessageRefs>,
10 >,
11 #[serde(skip_serializing_if = "core::option::Option::is_none")]
12 pub last_reaction: core::option::Option<
13 crate::types::Union<ConvoViewLastReactionRefs>,
14 >,
15 pub members: Vec<crate::chat::bsky::actor::defs::ProfileViewBasic>,
16 pub muted: bool,
17 pub rev: String,
18 #[serde(skip_serializing_if = "core::option::Option::is_none")]
19 pub status: core::option::Option<String>,
20 pub unread_count: i64,
21}
22pub type ConvoView = crate::types::Object<ConvoViewData>;
23#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
24#[serde(rename_all = "camelCase")]
25pub struct DeletedMessageViewData {
26 pub id: String,
27 pub rev: String,
28 pub sender: MessageViewSender,
29 pub sent_at: crate::types::string::Datetime,
30}
31pub type DeletedMessageView = crate::types::Object<DeletedMessageViewData>;
32#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
33#[serde(rename_all = "camelCase")]
34pub struct LogAcceptConvoData {
35 pub convo_id: String,
36 pub rev: String,
37}
38pub type LogAcceptConvo = crate::types::Object<LogAcceptConvoData>;
39#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
40#[serde(rename_all = "camelCase")]
41pub struct LogAddReactionData {
42 pub convo_id: String,
43 pub message: crate::types::Union<LogAddReactionMessageRefs>,
44 pub reaction: ReactionView,
45 pub rev: String,
46}
47pub type LogAddReaction = crate::types::Object<LogAddReactionData>;
48#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
49#[serde(rename_all = "camelCase")]
50pub struct LogBeginConvoData {
51 pub convo_id: String,
52 pub rev: String,
53}
54pub type LogBeginConvo = crate::types::Object<LogBeginConvoData>;
55#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
56#[serde(rename_all = "camelCase")]
57pub struct LogCreateMessageData {
58 pub convo_id: String,
59 pub message: crate::types::Union<LogCreateMessageMessageRefs>,
60 pub rev: String,
61}
62pub type LogCreateMessage = crate::types::Object<LogCreateMessageData>;
63#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
64#[serde(rename_all = "camelCase")]
65pub struct LogDeleteMessageData {
66 pub convo_id: String,
67 pub message: crate::types::Union<LogDeleteMessageMessageRefs>,
68 pub rev: String,
69}
70pub type LogDeleteMessage = crate::types::Object<LogDeleteMessageData>;
71#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
72#[serde(rename_all = "camelCase")]
73pub struct LogLeaveConvoData {
74 pub convo_id: String,
75 pub rev: String,
76}
77pub type LogLeaveConvo = crate::types::Object<LogLeaveConvoData>;
78#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
79#[serde(rename_all = "camelCase")]
80pub struct LogMuteConvoData {
81 pub convo_id: String,
82 pub rev: String,
83}
84pub type LogMuteConvo = crate::types::Object<LogMuteConvoData>;
85#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
86#[serde(rename_all = "camelCase")]
87pub struct LogReadMessageData {
88 pub convo_id: String,
89 pub message: crate::types::Union<LogReadMessageMessageRefs>,
90 pub rev: String,
91}
92pub type LogReadMessage = crate::types::Object<LogReadMessageData>;
93#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
94#[serde(rename_all = "camelCase")]
95pub struct LogRemoveReactionData {
96 pub convo_id: String,
97 pub message: crate::types::Union<LogRemoveReactionMessageRefs>,
98 pub reaction: ReactionView,
99 pub rev: String,
100}
101pub type LogRemoveReaction = crate::types::Object<LogRemoveReactionData>;
102#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
103#[serde(rename_all = "camelCase")]
104pub struct LogUnmuteConvoData {
105 pub convo_id: String,
106 pub rev: String,
107}
108pub type LogUnmuteConvo = crate::types::Object<LogUnmuteConvoData>;
109#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
110#[serde(rename_all = "camelCase")]
111pub struct MessageAndReactionViewData {
112 pub message: MessageView,
113 pub reaction: ReactionView,
114}
115pub type MessageAndReactionView = crate::types::Object<MessageAndReactionViewData>;
116#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
117#[serde(rename_all = "camelCase")]
118pub struct MessageInputData {
119 #[serde(skip_serializing_if = "core::option::Option::is_none")]
120 pub embed: core::option::Option<crate::types::Union<MessageInputEmbedRefs>>,
121 #[serde(skip_serializing_if = "core::option::Option::is_none")]
123 pub facets: core::option::Option<Vec<crate::app::bsky::richtext::facet::Main>>,
124 pub text: String,
125}
126pub type MessageInput = crate::types::Object<MessageInputData>;
127#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
128#[serde(rename_all = "camelCase")]
129pub struct MessageRefData {
130 pub convo_id: String,
131 pub did: crate::types::string::Did,
132 pub message_id: String,
133}
134pub type MessageRef = crate::types::Object<MessageRefData>;
135#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
136#[serde(rename_all = "camelCase")]
137pub struct MessageViewData {
138 #[serde(skip_serializing_if = "core::option::Option::is_none")]
139 pub embed: core::option::Option<crate::types::Union<MessageViewEmbedRefs>>,
140 #[serde(skip_serializing_if = "core::option::Option::is_none")]
142 pub facets: core::option::Option<Vec<crate::app::bsky::richtext::facet::Main>>,
143 pub id: String,
144 #[serde(skip_serializing_if = "core::option::Option::is_none")]
146 pub reactions: core::option::Option<Vec<ReactionView>>,
147 pub rev: String,
148 pub sender: MessageViewSender,
149 pub sent_at: crate::types::string::Datetime,
150 pub text: String,
151}
152pub type MessageView = crate::types::Object<MessageViewData>;
153#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
154#[serde(rename_all = "camelCase")]
155pub struct MessageViewSenderData {
156 pub did: crate::types::string::Did,
157}
158pub type MessageViewSender = crate::types::Object<MessageViewSenderData>;
159#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
160#[serde(rename_all = "camelCase")]
161pub struct ReactionViewData {
162 pub created_at: crate::types::string::Datetime,
163 pub sender: ReactionViewSender,
164 pub value: String,
165}
166pub type ReactionView = crate::types::Object<ReactionViewData>;
167#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
168#[serde(rename_all = "camelCase")]
169pub struct ReactionViewSenderData {
170 pub did: crate::types::string::Did,
171}
172pub type ReactionViewSender = crate::types::Object<ReactionViewSenderData>;
173#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
174#[serde(tag = "$type")]
175pub enum ConvoViewLastMessageRefs {
176 #[serde(rename = "chat.bsky.convo.defs#messageView")]
177 MessageView(Box<MessageView>),
178 #[serde(rename = "chat.bsky.convo.defs#deletedMessageView")]
179 DeletedMessageView(Box<DeletedMessageView>),
180}
181#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
182#[serde(tag = "$type")]
183pub enum ConvoViewLastReactionRefs {
184 #[serde(rename = "chat.bsky.convo.defs#messageAndReactionView")]
185 MessageAndReactionView(Box<MessageAndReactionView>),
186}
187#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
188#[serde(tag = "$type")]
189pub enum LogAddReactionMessageRefs {
190 #[serde(rename = "chat.bsky.convo.defs#messageView")]
191 MessageView(Box<MessageView>),
192 #[serde(rename = "chat.bsky.convo.defs#deletedMessageView")]
193 DeletedMessageView(Box<DeletedMessageView>),
194}
195#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
196#[serde(tag = "$type")]
197pub enum LogCreateMessageMessageRefs {
198 #[serde(rename = "chat.bsky.convo.defs#messageView")]
199 MessageView(Box<MessageView>),
200 #[serde(rename = "chat.bsky.convo.defs#deletedMessageView")]
201 DeletedMessageView(Box<DeletedMessageView>),
202}
203#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
204#[serde(tag = "$type")]
205pub enum LogDeleteMessageMessageRefs {
206 #[serde(rename = "chat.bsky.convo.defs#messageView")]
207 MessageView(Box<MessageView>),
208 #[serde(rename = "chat.bsky.convo.defs#deletedMessageView")]
209 DeletedMessageView(Box<DeletedMessageView>),
210}
211#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
212#[serde(tag = "$type")]
213pub enum LogReadMessageMessageRefs {
214 #[serde(rename = "chat.bsky.convo.defs#messageView")]
215 MessageView(Box<MessageView>),
216 #[serde(rename = "chat.bsky.convo.defs#deletedMessageView")]
217 DeletedMessageView(Box<DeletedMessageView>),
218}
219#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
220#[serde(tag = "$type")]
221pub enum LogRemoveReactionMessageRefs {
222 #[serde(rename = "chat.bsky.convo.defs#messageView")]
223 MessageView(Box<MessageView>),
224 #[serde(rename = "chat.bsky.convo.defs#deletedMessageView")]
225 DeletedMessageView(Box<DeletedMessageView>),
226}
227#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
228#[serde(tag = "$type")]
229pub enum MessageInputEmbedRefs {
230 #[serde(rename = "app.bsky.embed.record")]
231 AppBskyEmbedRecordMain(Box<crate::app::bsky::embed::record::Main>),
232}
233#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
234#[serde(tag = "$type")]
235pub enum MessageViewEmbedRefs {
236 #[serde(rename = "app.bsky.embed.record#view")]
237 AppBskyEmbedRecordView(Box<crate::app::bsky::embed::record::View>),
238}