jacquard_api/com_atproto/admin/
send_email.rs

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    #[serde(borrow)]
25    #[builder(into)]
26    pub comment: std::option::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    #[serde(borrow)]
36    #[builder(into)]
37    pub subject: std::option::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<'de> jacquard_common::xrpc::XrpcRequest<'de> for SendEmail<'de> {
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}