atrium_api/chat/bsky/convo/
defs.rs

1// @generated - This file is generated by atrium-codegen. DO NOT EDIT.
2//!Definitions for the `chat.bsky.convo.defs` namespace.
3#[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    ///Annotations of text (mentions, URLs, hashtags, etc)
122    #[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    ///Annotations of text (mentions, URLs, hashtags, etc)
141    #[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    ///Reactions to this message, in ascending order of creation time.
145    #[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}