1// @generated by jacquard-lexicon. DO NOT EDIT.
2//
3// Lexicon: app.blebbit.authr.group.getGroups
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 GetGroups<'a> {
21 #[serde(skip_serializing_if = "std::option::Option::is_none")]
22 #[serde(borrow)]
23 #[builder(into)]
24 pub cursor: std::option::Option<jacquard_common::CowStr<'a>>,
25 #[serde(skip_serializing_if = "std::option::Option::is_none")]
26 pub limit: std::option::Option<i64>,
27}
28
29#[jacquard_derive::lexicon]
30#[derive(
31 serde::Serialize,
32 serde::Deserialize,
33 Debug,
34 Clone,
35 PartialEq,
36 Eq,
37 jacquard_derive::IntoStatic
38)]
39#[serde(rename_all = "camelCase")]
40pub struct GetGroupsOutput<'a> {
41 #[serde(skip_serializing_if = "std::option::Option::is_none")]
42 #[serde(borrow)]
43 pub groups: std::option::Option<
44 Vec<crate::app_blebbit::authr::group::GroupView<'a>>,
45 >,
46}
47
48///Response type for
49///app.blebbit.authr.group.getGroups
50pub struct GetGroupsResponse;
51impl jacquard_common::xrpc::XrpcResp for GetGroupsResponse {
52 const NSID: &'static str = "app.blebbit.authr.group.getGroups";
53 const ENCODING: &'static str = "application/json";
54 type Output<'de> = GetGroupsOutput<'de>;
55 type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
56}
57
58impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetGroups<'de> {
59 const NSID: &'static str = "app.blebbit.authr.group.getGroups";
60 const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
61 type Response = GetGroupsResponse;
62}
63
64///Endpoint type for
65///app.blebbit.authr.group.getGroups
66pub struct GetGroupsRequest;
67impl jacquard_common::xrpc::XrpcEndpoint for GetGroupsRequest {
68 const PATH: &'static str = "/xrpc/app.blebbit.authr.group.getGroups";
69 const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
70 type Request<'de> = GetGroups<'de>;
71 type Response = GetGroupsResponse;
72}