1// @generated by jacquard-lexicon. DO NOT EDIT.
2//
3// Lexicon: com.atproto.repo.describeRepo
4//
5// This file was automatically generated from Lexicon schemas.
6// Any manual changes will be overwritten on the next regeneration.
7
8#[derive(
9 serde::Serialize,
10 serde::Deserialize,
11 Debug,
12 Clone,
13 PartialEq,
14 Eq,
15 bon::Builder,
16 jacquard_derive::IntoStatic
17)]
18#[builder(start_fn = new)]
19#[serde(rename_all = "camelCase")]
20pub struct DescribeRepo<'a> {
21 #[serde(borrow)]
22 pub repo: jacquard_common::types::ident::AtIdentifier<'a>,
23}
24
25#[jacquard_derive::lexicon]
26#[derive(
27 serde::Serialize,
28 serde::Deserialize,
29 Debug,
30 Clone,
31 PartialEq,
32 Eq,
33 jacquard_derive::IntoStatic
34)]
35#[serde(rename_all = "camelCase")]
36pub struct DescribeRepoOutput<'a> {
37 /// List of all the collections (NSIDs) for which this repo contains at least one record.
38 #[serde(borrow)]
39 pub collections: Vec<jacquard_common::types::string::Nsid<'a>>,
40 #[serde(borrow)]
41 pub did: jacquard_common::types::string::Did<'a>,
42 /// The complete DID document for this account.
43 #[serde(borrow)]
44 pub did_doc: jacquard_common::types::value::Data<'a>,
45 #[serde(borrow)]
46 pub handle: jacquard_common::types::string::Handle<'a>,
47 /// Indicates if handle is currently valid (resolves bi-directionally)
48 pub handle_is_correct: bool,
49}
50
51///Response type for
52///com.atproto.repo.describeRepo
53pub struct DescribeRepoResponse;
54impl jacquard_common::xrpc::XrpcResp for DescribeRepoResponse {
55 const NSID: &'static str = "com.atproto.repo.describeRepo";
56 const ENCODING: &'static str = "application/json";
57 type Output<'de> = DescribeRepoOutput<'de>;
58 type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
59}
60
61impl<'a> jacquard_common::xrpc::XrpcRequest for DescribeRepo<'a> {
62 const NSID: &'static str = "com.atproto.repo.describeRepo";
63 const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
64 type Response = DescribeRepoResponse;
65}
66
67///Endpoint type for
68///com.atproto.repo.describeRepo
69pub struct DescribeRepoRequest;
70impl jacquard_common::xrpc::XrpcEndpoint for DescribeRepoRequest {
71 const PATH: &'static str = "/xrpc/com.atproto.repo.describeRepo";
72 const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
73 type Request<'de> = DescribeRepo<'de>;
74 type Response = DescribeRepoResponse;
75}