A better Rust ATProto crate
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}