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