A better Rust ATProto crate
at main 2.8 kB view raw
1// @generated by jacquard-lexicon. DO NOT EDIT. 2// 3// Lexicon: com.atproto.admin.sendEmail 4// 5// This file was automatically generated from Lexicon schemas. 6// Any manual changes will be overwritten on the next regeneration. 7 8#[jacquard_derive::lexicon] 9#[derive( 10 serde::Serialize, 11 serde::Deserialize, 12 Debug, 13 Clone, 14 PartialEq, 15 Eq, 16 bon::Builder, 17 jacquard_derive::IntoStatic 18)] 19#[serde(rename_all = "camelCase")] 20#[builder(start_fn = new)] 21pub struct SendEmail<'a> { 22 /// Additional comment by the sender that won't be used in the email itself but helpful to provide more context for moderators/reviewers 23 #[serde(skip_serializing_if = "std::option::Option::is_none")] 24 #[builder(into)] 25 #[serde(borrow)] 26 pub comment: Option<jacquard_common::CowStr<'a>>, 27 #[serde(borrow)] 28 #[builder(into)] 29 pub content: jacquard_common::CowStr<'a>, 30 #[serde(borrow)] 31 pub recipient_did: jacquard_common::types::string::Did<'a>, 32 #[serde(borrow)] 33 pub sender_did: jacquard_common::types::string::Did<'a>, 34 #[serde(skip_serializing_if = "std::option::Option::is_none")] 35 #[builder(into)] 36 #[serde(borrow)] 37 pub subject: Option<jacquard_common::CowStr<'a>>, 38 #[serde(flatten)] 39 #[serde(borrow)] 40 #[builder(default)] 41 pub extra_data: ::std::collections::BTreeMap< 42 ::jacquard_common::smol_str::SmolStr, 43 ::jacquard_common::types::value::Data<'a>, 44 >, 45} 46 47#[jacquard_derive::lexicon] 48#[derive( 49 serde::Serialize, 50 serde::Deserialize, 51 Debug, 52 Clone, 53 PartialEq, 54 Eq, 55 jacquard_derive::IntoStatic 56)] 57#[serde(rename_all = "camelCase")] 58pub struct SendEmailOutput<'a> { 59 pub sent: bool, 60} 61 62///Response type for 63///com.atproto.admin.sendEmail 64pub struct SendEmailResponse; 65impl jacquard_common::xrpc::XrpcResp for SendEmailResponse { 66 const NSID: &'static str = "com.atproto.admin.sendEmail"; 67 const ENCODING: &'static str = "application/json"; 68 type Output<'de> = SendEmailOutput<'de>; 69 type Err<'de> = jacquard_common::xrpc::GenericError<'de>; 70} 71 72impl<'a> jacquard_common::xrpc::XrpcRequest for SendEmail<'a> { 73 const NSID: &'static str = "com.atproto.admin.sendEmail"; 74 const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure( 75 "application/json", 76 ); 77 type Response = SendEmailResponse; 78} 79 80///Endpoint type for 81///com.atproto.admin.sendEmail 82pub struct SendEmailRequest; 83impl jacquard_common::xrpc::XrpcEndpoint for SendEmailRequest { 84 const PATH: &'static str = "/xrpc/com.atproto.admin.sendEmail"; 85 const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure( 86 "application/json", 87 ); 88 type Request<'de> = SendEmail<'de>; 89 type Response = SendEmailResponse; 90}