jacquard_api/chat_bsky/actor/
export_account_data.rs1#[allow(unused_imports)]
9use alloc::collections::BTreeMap;
10
11#[allow(unused_imports)]
12use core::marker::PhantomData;
13use jacquard_common::{BosStr, DefaultStr, FromStaticStr};
14use jacquard_common::deps::bytes::Bytes;
15use jacquard_common::deps::smol_str::SmolStr;
16use jacquard_common::types::value::Data;
17use jacquard_derive::IntoStatic;
18use serde::{Serialize, Deserialize};
19
20#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Eq, IntoStatic)]
21#[serde(rename_all = "camelCase")]
22pub struct ExportAccountDataOutput {
23 pub body: Bytes,
24}
25
26#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Eq, IntoStatic, Copy)]
31pub struct ExportAccountData;
32pub struct ExportAccountDataResponse;
36impl jacquard_common::xrpc::XrpcResp for ExportAccountDataResponse {
37 const NSID: &'static str = "chat.bsky.actor.exportAccountData";
38 const ENCODING: &'static str = "application/jsonl";
39 type Output<S: BosStr> = ExportAccountDataOutput;
40 type Err = jacquard_common::xrpc::GenericError;
41 fn encode_output<S: BosStr>(
42 output: &Self::Output<S>,
43 ) -> Result<Vec<u8>, jacquard_common::xrpc::EncodeError>
44 where
45 Self::Output<S>: Serialize,
46 {
47 Ok(output.body.to_vec())
48 }
49 fn decode_output<'de, S>(
50 body: &'de [u8],
51 ) -> Result<Self::Output<S>, jacquard_common::error::DecodeError>
52 where
53 S: BosStr + Deserialize<'de>,
54 Self::Output<S>: Deserialize<'de>,
55 {
56 Ok(ExportAccountDataOutput {
57 body: jacquard_common::deps::bytes::Bytes::copy_from_slice(body),
58 })
59 }
60}
61
62impl jacquard_common::xrpc::XrpcRequest for ExportAccountData {
63 const NSID: &'static str = "chat.bsky.actor.exportAccountData";
64 const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
65 type Response = ExportAccountDataResponse;
66}
67
68pub struct ExportAccountDataRequest;
72impl jacquard_common::xrpc::XrpcEndpoint for ExportAccountDataRequest {
73 const PATH: &'static str = "/xrpc/chat.bsky.actor.exportAccountData";
74 const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
75 type Request<S: BosStr> = ExportAccountData;
76 type Response = ExportAccountDataResponse;
77}