jacquard_api/chat_bsky/
convo.rs

1// @generated by jacquard-lexicon. DO NOT EDIT.
2//
3// Lexicon: chat.bsky.convo.defs
4//
5// This file was automatically generated from Lexicon schemas.
6// Any manual changes will be overwritten on the next regeneration.
7
8pub mod accept_convo;
9pub mod add_reaction;
10pub mod delete_message_for_self;
11pub mod get_convo;
12pub mod get_convo_availability;
13pub mod get_convo_for_members;
14pub mod get_log;
15pub mod get_messages;
16pub mod leave_convo;
17pub mod list_convos;
18pub mod mute_convo;
19pub mod remove_reaction;
20pub mod send_message;
21pub mod send_message_batch;
22pub mod unmute_convo;
23pub mod update_all_read;
24pub mod update_read;
25
26#[jacquard_derive::lexicon]
27#[derive(
28    serde::Serialize,
29    serde::Deserialize,
30    Debug,
31    Clone,
32    PartialEq,
33    Eq,
34    jacquard_derive::IntoStatic
35)]
36#[serde(rename_all = "camelCase")]
37pub struct ConvoView<'a> {
38    #[serde(borrow)]
39    pub id: jacquard_common::CowStr<'a>,
40    #[serde(skip_serializing_if = "std::option::Option::is_none")]
41    #[serde(borrow)]
42    pub last_message: std::option::Option<ConvoViewLastMessage<'a>>,
43    #[serde(skip_serializing_if = "std::option::Option::is_none")]
44    #[serde(borrow)]
45    pub last_reaction: std::option::Option<
46        crate::chat_bsky::convo::MessageAndReactionView<'a>,
47    >,
48    #[serde(borrow)]
49    pub members: Vec<crate::chat_bsky::actor::ProfileViewBasic<'a>>,
50    pub muted: bool,
51    #[serde(borrow)]
52    pub rev: jacquard_common::CowStr<'a>,
53    #[serde(skip_serializing_if = "std::option::Option::is_none")]
54    #[serde(borrow)]
55    pub status: std::option::Option<jacquard_common::CowStr<'a>>,
56    pub unread_count: i64,
57}
58
59#[jacquard_derive::open_union]
60#[derive(
61    serde::Serialize,
62    serde::Deserialize,
63    Debug,
64    Clone,
65    PartialEq,
66    Eq,
67    jacquard_derive::IntoStatic
68)]
69#[serde(tag = "$type")]
70#[serde(bound(deserialize = "'de: 'a"))]
71pub enum ConvoViewLastMessage<'a> {
72    #[serde(rename = "chat.bsky.convo.defs#messageView")]
73    MessageView(Box<crate::chat_bsky::convo::MessageView<'a>>),
74    #[serde(rename = "chat.bsky.convo.defs#deletedMessageView")]
75    DeletedMessageView(Box<crate::chat_bsky::convo::DeletedMessageView<'a>>),
76}
77
78#[jacquard_derive::lexicon]
79#[derive(
80    serde::Serialize,
81    serde::Deserialize,
82    Debug,
83    Clone,
84    PartialEq,
85    Eq,
86    jacquard_derive::IntoStatic
87)]
88#[serde(rename_all = "camelCase")]
89pub struct DeletedMessageView<'a> {
90    #[serde(borrow)]
91    pub id: jacquard_common::CowStr<'a>,
92    #[serde(borrow)]
93    pub rev: jacquard_common::CowStr<'a>,
94    #[serde(borrow)]
95    pub sender: crate::chat_bsky::convo::MessageViewSender<'a>,
96    pub sent_at: jacquard_common::types::string::Datetime,
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 LogAcceptConvo<'a> {
111    #[serde(borrow)]
112    pub convo_id: jacquard_common::CowStr<'a>,
113    #[serde(borrow)]
114    pub rev: jacquard_common::CowStr<'a>,
115}
116
117#[jacquard_derive::lexicon]
118#[derive(
119    serde::Serialize,
120    serde::Deserialize,
121    Debug,
122    Clone,
123    PartialEq,
124    Eq,
125    jacquard_derive::IntoStatic
126)]
127#[serde(rename_all = "camelCase")]
128pub struct LogAddReaction<'a> {
129    #[serde(borrow)]
130    pub convo_id: jacquard_common::CowStr<'a>,
131    #[serde(borrow)]
132    pub message: LogAddReactionMessage<'a>,
133    #[serde(borrow)]
134    pub reaction: crate::chat_bsky::convo::ReactionView<'a>,
135    #[serde(borrow)]
136    pub rev: jacquard_common::CowStr<'a>,
137}
138
139#[jacquard_derive::open_union]
140#[derive(
141    serde::Serialize,
142    serde::Deserialize,
143    Debug,
144    Clone,
145    PartialEq,
146    Eq,
147    jacquard_derive::IntoStatic
148)]
149#[serde(tag = "$type")]
150#[serde(bound(deserialize = "'de: 'a"))]
151pub enum LogAddReactionMessage<'a> {
152    #[serde(rename = "chat.bsky.convo.defs#messageView")]
153    MessageView(Box<crate::chat_bsky::convo::MessageView<'a>>),
154    #[serde(rename = "chat.bsky.convo.defs#deletedMessageView")]
155    DeletedMessageView(Box<crate::chat_bsky::convo::DeletedMessageView<'a>>),
156}
157
158#[jacquard_derive::lexicon]
159#[derive(
160    serde::Serialize,
161    serde::Deserialize,
162    Debug,
163    Clone,
164    PartialEq,
165    Eq,
166    jacquard_derive::IntoStatic
167)]
168#[serde(rename_all = "camelCase")]
169pub struct LogBeginConvo<'a> {
170    #[serde(borrow)]
171    pub convo_id: jacquard_common::CowStr<'a>,
172    #[serde(borrow)]
173    pub rev: jacquard_common::CowStr<'a>,
174}
175
176#[jacquard_derive::lexicon]
177#[derive(
178    serde::Serialize,
179    serde::Deserialize,
180    Debug,
181    Clone,
182    PartialEq,
183    Eq,
184    jacquard_derive::IntoStatic
185)]
186#[serde(rename_all = "camelCase")]
187pub struct LogCreateMessage<'a> {
188    #[serde(borrow)]
189    pub convo_id: jacquard_common::CowStr<'a>,
190    #[serde(borrow)]
191    pub message: LogCreateMessageMessage<'a>,
192    #[serde(borrow)]
193    pub rev: jacquard_common::CowStr<'a>,
194}
195
196#[jacquard_derive::open_union]
197#[derive(
198    serde::Serialize,
199    serde::Deserialize,
200    Debug,
201    Clone,
202    PartialEq,
203    Eq,
204    jacquard_derive::IntoStatic
205)]
206#[serde(tag = "$type")]
207#[serde(bound(deserialize = "'de: 'a"))]
208pub enum LogCreateMessageMessage<'a> {
209    #[serde(rename = "chat.bsky.convo.defs#messageView")]
210    MessageView(Box<crate::chat_bsky::convo::MessageView<'a>>),
211    #[serde(rename = "chat.bsky.convo.defs#deletedMessageView")]
212    DeletedMessageView(Box<crate::chat_bsky::convo::DeletedMessageView<'a>>),
213}
214
215#[jacquard_derive::lexicon]
216#[derive(
217    serde::Serialize,
218    serde::Deserialize,
219    Debug,
220    Clone,
221    PartialEq,
222    Eq,
223    jacquard_derive::IntoStatic
224)]
225#[serde(rename_all = "camelCase")]
226pub struct LogDeleteMessage<'a> {
227    #[serde(borrow)]
228    pub convo_id: jacquard_common::CowStr<'a>,
229    #[serde(borrow)]
230    pub message: LogDeleteMessageMessage<'a>,
231    #[serde(borrow)]
232    pub rev: jacquard_common::CowStr<'a>,
233}
234
235#[jacquard_derive::open_union]
236#[derive(
237    serde::Serialize,
238    serde::Deserialize,
239    Debug,
240    Clone,
241    PartialEq,
242    Eq,
243    jacquard_derive::IntoStatic
244)]
245#[serde(tag = "$type")]
246#[serde(bound(deserialize = "'de: 'a"))]
247pub enum LogDeleteMessageMessage<'a> {
248    #[serde(rename = "chat.bsky.convo.defs#messageView")]
249    MessageView(Box<crate::chat_bsky::convo::MessageView<'a>>),
250    #[serde(rename = "chat.bsky.convo.defs#deletedMessageView")]
251    DeletedMessageView(Box<crate::chat_bsky::convo::DeletedMessageView<'a>>),
252}
253
254#[jacquard_derive::lexicon]
255#[derive(
256    serde::Serialize,
257    serde::Deserialize,
258    Debug,
259    Clone,
260    PartialEq,
261    Eq,
262    jacquard_derive::IntoStatic
263)]
264#[serde(rename_all = "camelCase")]
265pub struct LogLeaveConvo<'a> {
266    #[serde(borrow)]
267    pub convo_id: jacquard_common::CowStr<'a>,
268    #[serde(borrow)]
269    pub rev: jacquard_common::CowStr<'a>,
270}
271
272#[jacquard_derive::lexicon]
273#[derive(
274    serde::Serialize,
275    serde::Deserialize,
276    Debug,
277    Clone,
278    PartialEq,
279    Eq,
280    jacquard_derive::IntoStatic
281)]
282#[serde(rename_all = "camelCase")]
283pub struct LogMuteConvo<'a> {
284    #[serde(borrow)]
285    pub convo_id: jacquard_common::CowStr<'a>,
286    #[serde(borrow)]
287    pub rev: jacquard_common::CowStr<'a>,
288}
289
290#[jacquard_derive::lexicon]
291#[derive(
292    serde::Serialize,
293    serde::Deserialize,
294    Debug,
295    Clone,
296    PartialEq,
297    Eq,
298    jacquard_derive::IntoStatic
299)]
300#[serde(rename_all = "camelCase")]
301pub struct LogReadMessage<'a> {
302    #[serde(borrow)]
303    pub convo_id: jacquard_common::CowStr<'a>,
304    #[serde(borrow)]
305    pub message: LogReadMessageMessage<'a>,
306    #[serde(borrow)]
307    pub rev: jacquard_common::CowStr<'a>,
308}
309
310#[jacquard_derive::open_union]
311#[derive(
312    serde::Serialize,
313    serde::Deserialize,
314    Debug,
315    Clone,
316    PartialEq,
317    Eq,
318    jacquard_derive::IntoStatic
319)]
320#[serde(tag = "$type")]
321#[serde(bound(deserialize = "'de: 'a"))]
322pub enum LogReadMessageMessage<'a> {
323    #[serde(rename = "chat.bsky.convo.defs#messageView")]
324    MessageView(Box<crate::chat_bsky::convo::MessageView<'a>>),
325    #[serde(rename = "chat.bsky.convo.defs#deletedMessageView")]
326    DeletedMessageView(Box<crate::chat_bsky::convo::DeletedMessageView<'a>>),
327}
328
329#[jacquard_derive::lexicon]
330#[derive(
331    serde::Serialize,
332    serde::Deserialize,
333    Debug,
334    Clone,
335    PartialEq,
336    Eq,
337    jacquard_derive::IntoStatic
338)]
339#[serde(rename_all = "camelCase")]
340pub struct LogRemoveReaction<'a> {
341    #[serde(borrow)]
342    pub convo_id: jacquard_common::CowStr<'a>,
343    #[serde(borrow)]
344    pub message: LogRemoveReactionMessage<'a>,
345    #[serde(borrow)]
346    pub reaction: crate::chat_bsky::convo::ReactionView<'a>,
347    #[serde(borrow)]
348    pub rev: jacquard_common::CowStr<'a>,
349}
350
351#[jacquard_derive::open_union]
352#[derive(
353    serde::Serialize,
354    serde::Deserialize,
355    Debug,
356    Clone,
357    PartialEq,
358    Eq,
359    jacquard_derive::IntoStatic
360)]
361#[serde(tag = "$type")]
362#[serde(bound(deserialize = "'de: 'a"))]
363pub enum LogRemoveReactionMessage<'a> {
364    #[serde(rename = "chat.bsky.convo.defs#messageView")]
365    MessageView(Box<crate::chat_bsky::convo::MessageView<'a>>),
366    #[serde(rename = "chat.bsky.convo.defs#deletedMessageView")]
367    DeletedMessageView(Box<crate::chat_bsky::convo::DeletedMessageView<'a>>),
368}
369
370#[jacquard_derive::lexicon]
371#[derive(
372    serde::Serialize,
373    serde::Deserialize,
374    Debug,
375    Clone,
376    PartialEq,
377    Eq,
378    jacquard_derive::IntoStatic
379)]
380#[serde(rename_all = "camelCase")]
381pub struct LogUnmuteConvo<'a> {
382    #[serde(borrow)]
383    pub convo_id: jacquard_common::CowStr<'a>,
384    #[serde(borrow)]
385    pub rev: jacquard_common::CowStr<'a>,
386}
387
388#[jacquard_derive::lexicon]
389#[derive(
390    serde::Serialize,
391    serde::Deserialize,
392    Debug,
393    Clone,
394    PartialEq,
395    Eq,
396    jacquard_derive::IntoStatic
397)]
398#[serde(rename_all = "camelCase")]
399pub struct MessageAndReactionView<'a> {
400    #[serde(borrow)]
401    pub message: crate::chat_bsky::convo::MessageView<'a>,
402    #[serde(borrow)]
403    pub reaction: crate::chat_bsky::convo::ReactionView<'a>,
404}
405
406#[jacquard_derive::lexicon]
407#[derive(
408    serde::Serialize,
409    serde::Deserialize,
410    Debug,
411    Clone,
412    PartialEq,
413    Eq,
414    jacquard_derive::IntoStatic
415)]
416#[serde(rename_all = "camelCase")]
417pub struct MessageInput<'a> {
418    #[serde(skip_serializing_if = "std::option::Option::is_none")]
419    #[serde(borrow)]
420    pub embed: std::option::Option<crate::app_bsky::embed::record::Record<'a>>,
421    ///Annotations of text (mentions, URLs, hashtags, etc)
422    #[serde(skip_serializing_if = "std::option::Option::is_none")]
423    #[serde(borrow)]
424    pub facets: std::option::Option<Vec<crate::app_bsky::richtext::facet::Facet<'a>>>,
425    #[serde(borrow)]
426    pub text: jacquard_common::CowStr<'a>,
427}
428
429#[jacquard_derive::lexicon]
430#[derive(
431    serde::Serialize,
432    serde::Deserialize,
433    Debug,
434    Clone,
435    PartialEq,
436    Eq,
437    jacquard_derive::IntoStatic
438)]
439#[serde(rename_all = "camelCase")]
440pub struct MessageRef<'a> {
441    #[serde(borrow)]
442    pub convo_id: jacquard_common::CowStr<'a>,
443    #[serde(borrow)]
444    pub did: jacquard_common::types::string::Did<'a>,
445    #[serde(borrow)]
446    pub message_id: jacquard_common::CowStr<'a>,
447}
448
449#[jacquard_derive::lexicon]
450#[derive(
451    serde::Serialize,
452    serde::Deserialize,
453    Debug,
454    Clone,
455    PartialEq,
456    Eq,
457    jacquard_derive::IntoStatic
458)]
459#[serde(rename_all = "camelCase")]
460pub struct MessageView<'a> {
461    #[serde(skip_serializing_if = "std::option::Option::is_none")]
462    #[serde(borrow)]
463    pub embed: std::option::Option<crate::app_bsky::embed::record::View<'a>>,
464    ///Annotations of text (mentions, URLs, hashtags, etc)
465    #[serde(skip_serializing_if = "std::option::Option::is_none")]
466    #[serde(borrow)]
467    pub facets: std::option::Option<Vec<crate::app_bsky::richtext::facet::Facet<'a>>>,
468    #[serde(borrow)]
469    pub id: jacquard_common::CowStr<'a>,
470    ///Reactions to this message, in ascending order of creation time.
471    #[serde(skip_serializing_if = "std::option::Option::is_none")]
472    #[serde(borrow)]
473    pub reactions: std::option::Option<Vec<crate::chat_bsky::convo::ReactionView<'a>>>,
474    #[serde(borrow)]
475    pub rev: jacquard_common::CowStr<'a>,
476    #[serde(borrow)]
477    pub sender: crate::chat_bsky::convo::MessageViewSender<'a>,
478    pub sent_at: jacquard_common::types::string::Datetime,
479    #[serde(borrow)]
480    pub text: jacquard_common::CowStr<'a>,
481}
482
483#[jacquard_derive::lexicon]
484#[derive(
485    serde::Serialize,
486    serde::Deserialize,
487    Debug,
488    Clone,
489    PartialEq,
490    Eq,
491    jacquard_derive::IntoStatic
492)]
493#[serde(rename_all = "camelCase")]
494pub struct MessageViewSender<'a> {
495    #[serde(borrow)]
496    pub did: jacquard_common::types::string::Did<'a>,
497}
498
499#[jacquard_derive::lexicon]
500#[derive(
501    serde::Serialize,
502    serde::Deserialize,
503    Debug,
504    Clone,
505    PartialEq,
506    Eq,
507    jacquard_derive::IntoStatic
508)]
509#[serde(rename_all = "camelCase")]
510pub struct ReactionView<'a> {
511    pub created_at: jacquard_common::types::string::Datetime,
512    #[serde(borrow)]
513    pub sender: crate::chat_bsky::convo::ReactionViewSender<'a>,
514    #[serde(borrow)]
515    pub value: jacquard_common::CowStr<'a>,
516}
517
518#[jacquard_derive::lexicon]
519#[derive(
520    serde::Serialize,
521    serde::Deserialize,
522    Debug,
523    Clone,
524    PartialEq,
525    Eq,
526    jacquard_derive::IntoStatic
527)]
528#[serde(rename_all = "camelCase")]
529pub struct ReactionViewSender<'a> {
530    #[serde(borrow)]
531    pub did: jacquard_common::types::string::Did<'a>,
532}