jacquard_api/app_blebbit/authr/folder/
create_folder.rs

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