jacquard_api/tools_ozone/
team.rs

1// @generated by jacquard-lexicon. DO NOT EDIT.
2//
3// Lexicon: tools.ozone.team.defs
4//
5// This file was automatically generated from Lexicon schemas.
6// Any manual changes will be overwritten on the next regeneration.
7
8pub mod add_member;
9pub mod delete_member;
10pub mod list_members;
11pub mod update_member;
12
13#[jacquard_derive::lexicon]
14#[derive(
15    serde::Serialize,
16    serde::Deserialize,
17    Debug,
18    Clone,
19    PartialEq,
20    Eq,
21    jacquard_derive::IntoStatic,
22    bon::Builder
23)]
24#[serde(rename_all = "camelCase")]
25pub struct Member<'a> {
26    #[serde(skip_serializing_if = "std::option::Option::is_none")]
27    #[builder(into)]
28    pub created_at: Option<jacquard_common::types::string::Datetime>,
29    #[serde(borrow)]
30    pub did: jacquard_common::types::string::Did<'a>,
31    #[serde(skip_serializing_if = "std::option::Option::is_none")]
32    #[builder(into)]
33    pub disabled: Option<bool>,
34    #[serde(skip_serializing_if = "std::option::Option::is_none")]
35    #[builder(into)]
36    #[serde(borrow)]
37    pub last_updated_by: Option<jacquard_common::CowStr<'a>>,
38    #[serde(skip_serializing_if = "std::option::Option::is_none")]
39    #[builder(into)]
40    #[serde(borrow)]
41    pub profile: Option<crate::app_bsky::actor::ProfileViewDetailed<'a>>,
42    #[serde(borrow)]
43    #[builder(into)]
44    pub role: jacquard_common::CowStr<'a>,
45    #[serde(skip_serializing_if = "std::option::Option::is_none")]
46    #[builder(into)]
47    pub updated_at: Option<jacquard_common::types::string::Datetime>,
48}
49
50/// Admin role. Highest level of access, can perform all actions.
51#[derive(
52    serde::Serialize,
53    serde::Deserialize,
54    Debug,
55    Clone,
56    PartialEq,
57    Eq,
58    Hash,
59    jacquard_derive::IntoStatic
60)]
61pub struct RoleAdmin;
62impl std::fmt::Display for RoleAdmin {
63    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
64        write!(f, "roleAdmin")
65    }
66}
67
68/// Moderator role. Can perform most actions.
69#[derive(
70    serde::Serialize,
71    serde::Deserialize,
72    Debug,
73    Clone,
74    PartialEq,
75    Eq,
76    Hash,
77    jacquard_derive::IntoStatic
78)]
79pub struct RoleModerator;
80impl std::fmt::Display for RoleModerator {
81    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
82        write!(f, "roleModerator")
83    }
84}
85
86/// Triage role. Mostly intended for monitoring and escalating issues.
87#[derive(
88    serde::Serialize,
89    serde::Deserialize,
90    Debug,
91    Clone,
92    PartialEq,
93    Eq,
94    Hash,
95    jacquard_derive::IntoStatic
96)]
97pub struct RoleTriage;
98impl std::fmt::Display for RoleTriage {
99    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
100        write!(f, "roleTriage")
101    }
102}
103
104/// Verifier role. Only allowed to issue verifications.
105#[derive(
106    serde::Serialize,
107    serde::Deserialize,
108    Debug,
109    Clone,
110    PartialEq,
111    Eq,
112    Hash,
113    jacquard_derive::IntoStatic
114)]
115pub struct RoleVerifier;
116impl std::fmt::Display for RoleVerifier {
117    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
118        write!(f, "roleVerifier")
119    }
120}