1// @generated by jacquard-lexicon. DO NOT EDIT.
2//
3// Lexicon: app.ocho.auth.authorize
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 Authorize<'a> {
22 #[serde(borrow)]
23 pub authorize_options: jacquard_common::types::value::Data<'a>,
24 #[serde(borrow)]
25 #[builder(into)]
26 pub input: jacquard_common::CowStr<'a>,
27 #[serde(flatten)]
28 #[serde(borrow)]
29 #[builder(default)]
30 pub extra_data: ::std::collections::BTreeMap<
31 ::jacquard_common::smol_str::SmolStr,
32 ::jacquard_common::types::value::Data<'a>,
33 >,
34}
35
36#[jacquard_derive::lexicon]
37#[derive(
38 serde::Serialize,
39 serde::Deserialize,
40 Debug,
41 Clone,
42 PartialEq,
43 Eq,
44 jacquard_derive::IntoStatic
45)]
46#[serde(rename_all = "camelCase")]
47pub struct AuthorizeOutput<'a> {
48 #[serde(borrow)]
49 pub url: jacquard_common::CowStr<'a>,
50}
51
52///Response type for
53///app.ocho.auth.authorize
54pub struct AuthorizeResponse;
55impl jacquard_common::xrpc::XrpcResp for AuthorizeResponse {
56 const NSID: &'static str = "app.ocho.auth.authorize";
57 const ENCODING: &'static str = "application/json";
58 type Output<'de> = AuthorizeOutput<'de>;
59 type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
60}
61
62impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for Authorize<'de> {
63 const NSID: &'static str = "app.ocho.auth.authorize";
64 const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
65 "application/json",
66 );
67 type Response = AuthorizeResponse;
68}
69
70///Endpoint type for
71///app.ocho.auth.authorize
72pub struct AuthorizeRequest;
73impl jacquard_common::xrpc::XrpcEndpoint for AuthorizeRequest {
74 const PATH: &'static str = "/xrpc/app.ocho.auth.authorize";
75 const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
76 "application/json",
77 );
78 type Request<'de> = Authorize<'de>;
79 type Response = AuthorizeResponse;
80}