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}