1// @generated by jacquard-lexicon. DO NOT EDIT.
2//
3// Lexicon: com.atproto.server.deactivateAccount
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)]
18#[serde(rename_all = "camelCase")]
19#[builder(start_fn = new)]
20pub struct DeactivateAccount<'a> {
21 ///A recommendation to server as to how long they should hold onto the deactivated account before deleting.
22 #[serde(skip_serializing_if = "std::option::Option::is_none")]
23 pub delete_after: std::option::Option<jacquard_common::types::string::Datetime>,
24 #[serde(flatten)]
25 #[serde(borrow)]
26 #[builder(default)]
27 pub extra_data: ::std::collections::BTreeMap<
28 ::jacquard_common::smol_str::SmolStr,
29 ::jacquard_common::types::value::Data<'a>,
30 >,
31}
32
33impl jacquard_common::IntoStatic for DeactivateAccount<'_> {
34 type Output = DeactivateAccount<'static>;
35 fn into_static(self) -> Self::Output {
36 DeactivateAccount {
37 delete_after: self.delete_after.into_static(),
38 extra_data: self.extra_data.into_static(),
39 }
40 }
41}
42
43impl jacquard_common::types::xrpc::XrpcRequest for DeactivateAccount<'_> {
44 const NSID: &'static str = "com.atproto.server.deactivateAccount";
45 const METHOD: jacquard_common::types::xrpc::XrpcMethod = jacquard_common::types::xrpc::XrpcMethod::Procedure(
46 "application/json",
47 );
48 const OUTPUT_ENCODING: &'static str = "application/json";
49 type Output<'de> = ();
50 type Err<'de> = jacquard_common::types::xrpc::GenericError<'de>;
51}