Skip to main content

nominal_api_proto/proto/
nominal.authentication.users.v1.rs

1// This file is @generated by prost-build.
2#[derive(Clone, PartialEq, ::prost::Message)]
3pub struct User {
4    #[prost(string, tag = "1")]
5    pub rid: ::prost::alloc::string::String,
6    #[prost(string, tag = "2")]
7    pub org_rid: ::prost::alloc::string::String,
8    #[prost(string, tag = "3")]
9    pub email: ::prost::alloc::string::String,
10    #[prost(string, tag = "4")]
11    pub display_name: ::prost::alloc::string::String,
12    #[prost(string, tag = "5")]
13    pub avatar_url: ::prost::alloc::string::String,
14    #[prost(message, optional, tag = "6")]
15    pub create_time: ::core::option::Option<
16        super::super::super::super::google::protobuf::Timestamp,
17    >,
18}
19#[derive(Clone, PartialEq, ::prost::Message)]
20pub struct GetUserRequest {
21    #[prost(string, tag = "1")]
22    pub user_rid: ::prost::alloc::string::String,
23}
24#[derive(Clone, PartialEq, ::prost::Message)]
25pub struct GetUserResponse {
26    #[prost(message, optional, tag = "1")]
27    pub user: ::core::option::Option<User>,
28}
29#[derive(Clone, PartialEq, ::prost::Message)]
30pub struct BatchGetUsersRequest {
31    #[prost(string, repeated, tag = "1")]
32    pub user_rids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
33}
34#[derive(Clone, PartialEq, ::prost::Message)]
35pub struct BatchGetUsersResponse {
36    #[prost(message, repeated, tag = "1")]
37    pub users: ::prost::alloc::vec::Vec<User>,
38}
39#[derive(Clone, PartialEq, ::prost::Message)]
40pub struct SearchUsersQuery {
41    #[prost(oneof = "search_users_query::Query", tags = "1, 2, 3, 4")]
42    pub query: ::core::option::Option<search_users_query::Query>,
43}
44/// Nested message and enum types in `SearchUsersQuery`.
45pub mod search_users_query {
46    #[derive(Clone, PartialEq, ::prost::Oneof)]
47    pub enum Query {
48        #[prost(message, tag = "1")]
49        And(super::SearchUsersQueries),
50        #[prost(message, tag = "2")]
51        Or(super::SearchUsersQueries),
52        #[prost(string, tag = "3")]
53        ExactEmail(::prost::alloc::string::String),
54        #[prost(string, tag = "4")]
55        SearchText(::prost::alloc::string::String),
56    }
57}
58#[derive(Clone, PartialEq, ::prost::Message)]
59pub struct SearchUsersQueries {
60    #[prost(message, repeated, tag = "1")]
61    pub queries: ::prost::alloc::vec::Vec<SearchUsersQuery>,
62}
63#[derive(Clone, Copy, PartialEq, ::prost::Message)]
64pub struct UserSort {
65    #[prost(enumeration = "UserSortField", tag = "1")]
66    pub field: i32,
67    #[prost(bool, tag = "2")]
68    pub is_descending: bool,
69}
70#[derive(Clone, PartialEq, ::prost::Message)]
71pub struct SearchUsersRequest {
72    #[prost(message, optional, tag = "1")]
73    pub query: ::core::option::Option<SearchUsersQuery>,
74    #[prost(message, optional, tag = "2")]
75    pub sort: ::core::option::Option<UserSort>,
76    #[prost(int32, optional, tag = "3")]
77    pub page_size: ::core::option::Option<i32>,
78    #[prost(string, tag = "4")]
79    pub page_token: ::prost::alloc::string::String,
80}
81#[derive(Clone, PartialEq, ::prost::Message)]
82pub struct SearchUsersResponse {
83    #[prost(message, repeated, tag = "1")]
84    pub users: ::prost::alloc::vec::Vec<User>,
85    #[prost(string, tag = "2")]
86    pub next_page_token: ::prost::alloc::string::String,
87}
88#[derive(Clone, Copy, PartialEq, ::prost::Message)]
89pub struct GetCurrentUserRequest {}
90#[derive(Clone, PartialEq, ::prost::Message)]
91pub struct GetCurrentUserResponse {
92    #[prost(message, optional, tag = "1")]
93    pub user: ::core::option::Option<User>,
94}
95#[derive(Clone, PartialEq, ::prost::Message)]
96pub struct UpdateCurrentUserRequest {
97    #[prost(message, optional, tag = "1")]
98    pub user: ::core::option::Option<User>,
99}
100#[derive(Clone, PartialEq, ::prost::Message)]
101pub struct UpdateCurrentUserResponse {
102    #[prost(message, optional, tag = "1")]
103    pub user: ::core::option::Option<User>,
104}
105#[derive(Clone, Copy, PartialEq, ::prost::Message)]
106pub struct NumberFormat {
107    #[prost(int32, optional, tag = "1")]
108    pub significant_figures: ::core::option::Option<i32>,
109    #[prost(enumeration = "NumberDisplayOption", optional, tag = "2")]
110    pub display_option: ::core::option::Option<i32>,
111    #[deprecated]
112    #[prost(int32, optional, tag = "3")]
113    pub fixed_decimal_places: ::core::option::Option<i32>,
114    #[prost(message, optional, tag = "4")]
115    pub decimal_places: ::core::option::Option<DecimalPlaces>,
116}
117#[derive(Clone, Copy, PartialEq, ::prost::Message)]
118pub struct DecimalPlaces {
119    #[prost(oneof = "decimal_places::Places", tags = "1, 2")]
120    pub places: ::core::option::Option<decimal_places::Places>,
121}
122/// Nested message and enum types in `DecimalPlaces`.
123pub mod decimal_places {
124    #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
125    pub enum Places {
126        #[prost(int32, tag = "1")]
127        Fixed(i32),
128        #[prost(int32, tag = "2")]
129        Max(i32),
130    }
131}
132#[derive(Clone, Copy, PartialEq, ::prost::Message)]
133pub struct UserSettings {
134    #[prost(enumeration = "DefaultTimeRangeType", tag = "1")]
135    pub default_time_range_type: i32,
136    #[prost(enumeration = "Appearance", tag = "2")]
137    pub appearance: i32,
138    #[prost(enumeration = "Timezone", tag = "3")]
139    pub timezone: i32,
140    #[deprecated]
141    #[prost(bool, tag = "4")]
142    pub time_series_hover_tooltip_concise: bool,
143    #[prost(enumeration = "ChartTooltipMode", tag = "5")]
144    pub chart_tooltip_mode: i32,
145    #[prost(message, optional, tag = "6")]
146    pub data_number_format: ::core::option::Option<NumberFormat>,
147    #[prost(enumeration = "RelativeTimestampFormat", tag = "7")]
148    pub relative_timestamp_format: i32,
149    #[prost(bool, tag = "8")]
150    pub vim_mode_enabled: bool,
151    #[prost(bool, optional, tag = "9")]
152    pub default_workbook_visible_in_search: ::core::option::Option<bool>,
153}
154#[derive(Clone, Copy, PartialEq, ::prost::Message)]
155pub struct GetCurrentUserSettingsRequest {}
156#[derive(Clone, Copy, PartialEq, ::prost::Message)]
157pub struct GetCurrentUserSettingsResponse {
158    #[prost(message, optional, tag = "1")]
159    pub settings: ::core::option::Option<UserSettings>,
160}
161#[derive(Clone, Copy, PartialEq, ::prost::Message)]
162pub struct UpdateCurrentUserSettingsRequest {
163    #[prost(message, optional, tag = "1")]
164    pub settings: ::core::option::Option<UserSettings>,
165}
166#[derive(Clone, Copy, PartialEq, ::prost::Message)]
167pub struct UpdateCurrentUserSettingsResponse {
168    #[prost(message, optional, tag = "1")]
169    pub settings: ::core::option::Option<UserSettings>,
170}
171#[derive(Clone, PartialEq, ::prost::Message)]
172pub struct PreregisterUsersRequest {
173    #[prost(string, repeated, tag = "1")]
174    pub emails: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
175}
176#[derive(Clone, PartialEq, ::prost::Message)]
177pub struct PreregisterUsersResponse {
178    #[prost(message, repeated, tag = "1")]
179    pub users: ::prost::alloc::vec::Vec<User>,
180}
181#[derive(Clone, PartialEq, ::prost::Message)]
182pub struct DeactivateUserRequest {
183    #[prost(string, tag = "1")]
184    pub user_rid: ::prost::alloc::string::String,
185}
186#[derive(Clone, Copy, PartialEq, ::prost::Message)]
187pub struct DeactivateUserResponse {}
188#[derive(Clone, PartialEq, ::prost::Message)]
189pub struct ReactivateUserRequest {
190    #[prost(string, tag = "1")]
191    pub user_rid: ::prost::alloc::string::String,
192}
193#[derive(Clone, Copy, PartialEq, ::prost::Message)]
194pub struct ReactivateUserResponse {}
195#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
196#[repr(i32)]
197pub enum UserSortField {
198    Unspecified = 0,
199    Name = 1,
200    Email = 2,
201    CreateTime = 3,
202    UpdateTime = 4,
203}
204impl UserSortField {
205    /// String value of the enum field names used in the ProtoBuf definition.
206    ///
207    /// The values are not transformed in any way and thus are considered stable
208    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
209    pub fn as_str_name(&self) -> &'static str {
210        match self {
211            Self::Unspecified => "USER_SORT_FIELD_UNSPECIFIED",
212            Self::Name => "USER_SORT_FIELD_NAME",
213            Self::Email => "USER_SORT_FIELD_EMAIL",
214            Self::CreateTime => "USER_SORT_FIELD_CREATE_TIME",
215            Self::UpdateTime => "USER_SORT_FIELD_UPDATE_TIME",
216        }
217    }
218    /// Creates an enum from field names used in the ProtoBuf definition.
219    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
220        match value {
221            "USER_SORT_FIELD_UNSPECIFIED" => Some(Self::Unspecified),
222            "USER_SORT_FIELD_NAME" => Some(Self::Name),
223            "USER_SORT_FIELD_EMAIL" => Some(Self::Email),
224            "USER_SORT_FIELD_CREATE_TIME" => Some(Self::CreateTime),
225            "USER_SORT_FIELD_UPDATE_TIME" => Some(Self::UpdateTime),
226            _ => None,
227        }
228    }
229}
230#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
231#[repr(i32)]
232pub enum DefaultTimeRangeType {
233    Unspecified = 0,
234    Default = 1,
235    Absolute = 2,
236    Relative = 3,
237}
238impl DefaultTimeRangeType {
239    /// String value of the enum field names used in the ProtoBuf definition.
240    ///
241    /// The values are not transformed in any way and thus are considered stable
242    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
243    pub fn as_str_name(&self) -> &'static str {
244        match self {
245            Self::Unspecified => "DEFAULT_TIME_RANGE_TYPE_UNSPECIFIED",
246            Self::Default => "DEFAULT_TIME_RANGE_TYPE_DEFAULT",
247            Self::Absolute => "DEFAULT_TIME_RANGE_TYPE_ABSOLUTE",
248            Self::Relative => "DEFAULT_TIME_RANGE_TYPE_RELATIVE",
249        }
250    }
251    /// Creates an enum from field names used in the ProtoBuf definition.
252    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
253        match value {
254            "DEFAULT_TIME_RANGE_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
255            "DEFAULT_TIME_RANGE_TYPE_DEFAULT" => Some(Self::Default),
256            "DEFAULT_TIME_RANGE_TYPE_ABSOLUTE" => Some(Self::Absolute),
257            "DEFAULT_TIME_RANGE_TYPE_RELATIVE" => Some(Self::Relative),
258            _ => None,
259        }
260    }
261}
262#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
263#[repr(i32)]
264pub enum Appearance {
265    Unspecified = 0,
266    System = 1,
267    Light = 2,
268    Dark = 3,
269}
270impl Appearance {
271    /// String value of the enum field names used in the ProtoBuf definition.
272    ///
273    /// The values are not transformed in any way and thus are considered stable
274    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
275    pub fn as_str_name(&self) -> &'static str {
276        match self {
277            Self::Unspecified => "APPEARANCE_UNSPECIFIED",
278            Self::System => "APPEARANCE_SYSTEM",
279            Self::Light => "APPEARANCE_LIGHT",
280            Self::Dark => "APPEARANCE_DARK",
281        }
282    }
283    /// Creates an enum from field names used in the ProtoBuf definition.
284    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
285        match value {
286            "APPEARANCE_UNSPECIFIED" => Some(Self::Unspecified),
287            "APPEARANCE_SYSTEM" => Some(Self::System),
288            "APPEARANCE_LIGHT" => Some(Self::Light),
289            "APPEARANCE_DARK" => Some(Self::Dark),
290            _ => None,
291        }
292    }
293}
294#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
295#[repr(i32)]
296pub enum Timezone {
297    Unspecified = 0,
298    Local = 1,
299    Utc = 2,
300}
301impl Timezone {
302    /// String value of the enum field names used in the ProtoBuf definition.
303    ///
304    /// The values are not transformed in any way and thus are considered stable
305    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
306    pub fn as_str_name(&self) -> &'static str {
307        match self {
308            Self::Unspecified => "TIMEZONE_UNSPECIFIED",
309            Self::Local => "TIMEZONE_LOCAL",
310            Self::Utc => "TIMEZONE_UTC",
311        }
312    }
313    /// Creates an enum from field names used in the ProtoBuf definition.
314    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
315        match value {
316            "TIMEZONE_UNSPECIFIED" => Some(Self::Unspecified),
317            "TIMEZONE_LOCAL" => Some(Self::Local),
318            "TIMEZONE_UTC" => Some(Self::Utc),
319            _ => None,
320        }
321    }
322}
323#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
324#[repr(i32)]
325pub enum ChartTooltipMode {
326    Unspecified = 0,
327    Verbose = 1,
328    Concise = 2,
329    MultiRowConcise = 3,
330    Single = 4,
331    None = 5,
332}
333impl ChartTooltipMode {
334    /// String value of the enum field names used in the ProtoBuf definition.
335    ///
336    /// The values are not transformed in any way and thus are considered stable
337    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
338    pub fn as_str_name(&self) -> &'static str {
339        match self {
340            Self::Unspecified => "CHART_TOOLTIP_MODE_UNSPECIFIED",
341            Self::Verbose => "CHART_TOOLTIP_MODE_VERBOSE",
342            Self::Concise => "CHART_TOOLTIP_MODE_CONCISE",
343            Self::MultiRowConcise => "CHART_TOOLTIP_MODE_MULTI_ROW_CONCISE",
344            Self::Single => "CHART_TOOLTIP_MODE_SINGLE",
345            Self::None => "CHART_TOOLTIP_MODE_NONE",
346        }
347    }
348    /// Creates an enum from field names used in the ProtoBuf definition.
349    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
350        match value {
351            "CHART_TOOLTIP_MODE_UNSPECIFIED" => Some(Self::Unspecified),
352            "CHART_TOOLTIP_MODE_VERBOSE" => Some(Self::Verbose),
353            "CHART_TOOLTIP_MODE_CONCISE" => Some(Self::Concise),
354            "CHART_TOOLTIP_MODE_MULTI_ROW_CONCISE" => Some(Self::MultiRowConcise),
355            "CHART_TOOLTIP_MODE_SINGLE" => Some(Self::Single),
356            "CHART_TOOLTIP_MODE_NONE" => Some(Self::None),
357            _ => None,
358        }
359    }
360}
361#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
362#[repr(i32)]
363pub enum RelativeTimestampFormat {
364    Unspecified = 0,
365    TemporalSubunits = 1,
366    TotalSeconds = 2,
367}
368impl RelativeTimestampFormat {
369    /// String value of the enum field names used in the ProtoBuf definition.
370    ///
371    /// The values are not transformed in any way and thus are considered stable
372    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
373    pub fn as_str_name(&self) -> &'static str {
374        match self {
375            Self::Unspecified => "RELATIVE_TIMESTAMP_FORMAT_UNSPECIFIED",
376            Self::TemporalSubunits => "RELATIVE_TIMESTAMP_FORMAT_TEMPORAL_SUBUNITS",
377            Self::TotalSeconds => "RELATIVE_TIMESTAMP_FORMAT_TOTAL_SECONDS",
378        }
379    }
380    /// Creates an enum from field names used in the ProtoBuf definition.
381    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
382        match value {
383            "RELATIVE_TIMESTAMP_FORMAT_UNSPECIFIED" => Some(Self::Unspecified),
384            "RELATIVE_TIMESTAMP_FORMAT_TEMPORAL_SUBUNITS" => Some(Self::TemporalSubunits),
385            "RELATIVE_TIMESTAMP_FORMAT_TOTAL_SECONDS" => Some(Self::TotalSeconds),
386            _ => None,
387        }
388    }
389}
390#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
391#[repr(i32)]
392pub enum NumberDisplayOption {
393    Unspecified = 0,
394    Scientific = 1,
395    Succinct = 2,
396    Locale = 3,
397    Plain = 4,
398}
399impl NumberDisplayOption {
400    /// String value of the enum field names used in the ProtoBuf definition.
401    ///
402    /// The values are not transformed in any way and thus are considered stable
403    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
404    pub fn as_str_name(&self) -> &'static str {
405        match self {
406            Self::Unspecified => "NUMBER_DISPLAY_OPTION_UNSPECIFIED",
407            Self::Scientific => "NUMBER_DISPLAY_OPTION_SCIENTIFIC",
408            Self::Succinct => "NUMBER_DISPLAY_OPTION_SUCCINCT",
409            Self::Locale => "NUMBER_DISPLAY_OPTION_LOCALE",
410            Self::Plain => "NUMBER_DISPLAY_OPTION_PLAIN",
411        }
412    }
413    /// Creates an enum from field names used in the ProtoBuf definition.
414    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
415        match value {
416            "NUMBER_DISPLAY_OPTION_UNSPECIFIED" => Some(Self::Unspecified),
417            "NUMBER_DISPLAY_OPTION_SCIENTIFIC" => Some(Self::Scientific),
418            "NUMBER_DISPLAY_OPTION_SUCCINCT" => Some(Self::Succinct),
419            "NUMBER_DISPLAY_OPTION_LOCALE" => Some(Self::Locale),
420            "NUMBER_DISPLAY_OPTION_PLAIN" => Some(Self::Plain),
421            _ => None,
422        }
423    }
424}
425#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
426#[repr(i32)]
427pub enum UserError {
428    Unspecified = 0,
429    InvalidUserRid = 1,
430    OneofNotSet = 2,
431    InvalidEnumValue = 3,
432    TooManyUserRids = 4,
433    QueryTooComplex = 5,
434}
435impl UserError {
436    /// String value of the enum field names used in the ProtoBuf definition.
437    ///
438    /// The values are not transformed in any way and thus are considered stable
439    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
440    pub fn as_str_name(&self) -> &'static str {
441        match self {
442            Self::Unspecified => "USER_ERROR_UNSPECIFIED",
443            Self::InvalidUserRid => "USER_ERROR_INVALID_USER_RID",
444            Self::OneofNotSet => "USER_ERROR_ONEOF_NOT_SET",
445            Self::InvalidEnumValue => "USER_ERROR_INVALID_ENUM_VALUE",
446            Self::TooManyUserRids => "USER_ERROR_TOO_MANY_USER_RIDS",
447            Self::QueryTooComplex => "USER_ERROR_QUERY_TOO_COMPLEX",
448        }
449    }
450    /// Creates an enum from field names used in the ProtoBuf definition.
451    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
452        match value {
453            "USER_ERROR_UNSPECIFIED" => Some(Self::Unspecified),
454            "USER_ERROR_INVALID_USER_RID" => Some(Self::InvalidUserRid),
455            "USER_ERROR_ONEOF_NOT_SET" => Some(Self::OneofNotSet),
456            "USER_ERROR_INVALID_ENUM_VALUE" => Some(Self::InvalidEnumValue),
457            "USER_ERROR_TOO_MANY_USER_RIDS" => Some(Self::TooManyUserRids),
458            "USER_ERROR_QUERY_TOO_COMPLEX" => Some(Self::QueryTooComplex),
459            _ => None,
460        }
461    }
462}
463/// Generated client implementations.
464pub mod user_service_client {
465    #![allow(
466        unused_variables,
467        dead_code,
468        missing_docs,
469        clippy::wildcard_imports,
470        clippy::let_unit_value,
471    )]
472    use tonic::codegen::*;
473    use tonic::codegen::http::Uri;
474    #[derive(Debug, Clone)]
475    pub struct UserServiceClient<T> {
476        inner: tonic::client::Grpc<T>,
477    }
478    impl UserServiceClient<tonic::transport::Channel> {
479        /// Attempt to create a new client by connecting to a given endpoint.
480        pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
481        where
482            D: TryInto<tonic::transport::Endpoint>,
483            D::Error: Into<StdError>,
484        {
485            let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
486            Ok(Self::new(conn))
487        }
488    }
489    impl<T> UserServiceClient<T>
490    where
491        T: tonic::client::GrpcService<tonic::body::Body>,
492        T::Error: Into<StdError>,
493        T::ResponseBody: Body<Data = Bytes> + std::marker::Send + 'static,
494        <T::ResponseBody as Body>::Error: Into<StdError> + std::marker::Send,
495    {
496        pub fn new(inner: T) -> Self {
497            let inner = tonic::client::Grpc::new(inner);
498            Self { inner }
499        }
500        pub fn with_origin(inner: T, origin: Uri) -> Self {
501            let inner = tonic::client::Grpc::with_origin(inner, origin);
502            Self { inner }
503        }
504        pub fn with_interceptor<F>(
505            inner: T,
506            interceptor: F,
507        ) -> UserServiceClient<InterceptedService<T, F>>
508        where
509            F: tonic::service::Interceptor,
510            T::ResponseBody: Default,
511            T: tonic::codegen::Service<
512                http::Request<tonic::body::Body>,
513                Response = http::Response<
514                    <T as tonic::client::GrpcService<tonic::body::Body>>::ResponseBody,
515                >,
516            >,
517            <T as tonic::codegen::Service<
518                http::Request<tonic::body::Body>,
519            >>::Error: Into<StdError> + std::marker::Send + std::marker::Sync,
520        {
521            UserServiceClient::new(InterceptedService::new(inner, interceptor))
522        }
523        /// Compress requests with the given encoding.
524        ///
525        /// This requires the server to support it otherwise it might respond with an
526        /// error.
527        #[must_use]
528        pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
529            self.inner = self.inner.send_compressed(encoding);
530            self
531        }
532        /// Enable decompressing responses.
533        #[must_use]
534        pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
535            self.inner = self.inner.accept_compressed(encoding);
536            self
537        }
538        /// Limits the maximum size of a decoded message.
539        ///
540        /// Default: `4MB`
541        #[must_use]
542        pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
543            self.inner = self.inner.max_decoding_message_size(limit);
544            self
545        }
546        /// Limits the maximum size of an encoded message.
547        ///
548        /// Default: `usize::MAX`
549        #[must_use]
550        pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
551            self.inner = self.inner.max_encoding_message_size(limit);
552            self
553        }
554        pub async fn get_user(
555            &mut self,
556            request: impl tonic::IntoRequest<super::GetUserRequest>,
557        ) -> std::result::Result<
558            tonic::Response<super::GetUserResponse>,
559            tonic::Status,
560        > {
561            self.inner
562                .ready()
563                .await
564                .map_err(|e| {
565                    tonic::Status::unknown(
566                        format!("Service was not ready: {}", e.into()),
567                    )
568                })?;
569            let codec = tonic::codec::ProstCodec::default();
570            let path = http::uri::PathAndQuery::from_static(
571                "/nominal.authentication.users.v1.UserService/GetUser",
572            );
573            let mut req = request.into_request();
574            req.extensions_mut()
575                .insert(
576                    GrpcMethod::new(
577                        "nominal.authentication.users.v1.UserService",
578                        "GetUser",
579                    ),
580                );
581            self.inner.unary(req, path, codec).await
582        }
583        pub async fn batch_get_users(
584            &mut self,
585            request: impl tonic::IntoRequest<super::BatchGetUsersRequest>,
586        ) -> std::result::Result<
587            tonic::Response<super::BatchGetUsersResponse>,
588            tonic::Status,
589        > {
590            self.inner
591                .ready()
592                .await
593                .map_err(|e| {
594                    tonic::Status::unknown(
595                        format!("Service was not ready: {}", e.into()),
596                    )
597                })?;
598            let codec = tonic::codec::ProstCodec::default();
599            let path = http::uri::PathAndQuery::from_static(
600                "/nominal.authentication.users.v1.UserService/BatchGetUsers",
601            );
602            let mut req = request.into_request();
603            req.extensions_mut()
604                .insert(
605                    GrpcMethod::new(
606                        "nominal.authentication.users.v1.UserService",
607                        "BatchGetUsers",
608                    ),
609                );
610            self.inner.unary(req, path, codec).await
611        }
612        pub async fn search_users(
613            &mut self,
614            request: impl tonic::IntoRequest<super::SearchUsersRequest>,
615        ) -> std::result::Result<
616            tonic::Response<super::SearchUsersResponse>,
617            tonic::Status,
618        > {
619            self.inner
620                .ready()
621                .await
622                .map_err(|e| {
623                    tonic::Status::unknown(
624                        format!("Service was not ready: {}", e.into()),
625                    )
626                })?;
627            let codec = tonic::codec::ProstCodec::default();
628            let path = http::uri::PathAndQuery::from_static(
629                "/nominal.authentication.users.v1.UserService/SearchUsers",
630            );
631            let mut req = request.into_request();
632            req.extensions_mut()
633                .insert(
634                    GrpcMethod::new(
635                        "nominal.authentication.users.v1.UserService",
636                        "SearchUsers",
637                    ),
638                );
639            self.inner.unary(req, path, codec).await
640        }
641        pub async fn get_current_user(
642            &mut self,
643            request: impl tonic::IntoRequest<super::GetCurrentUserRequest>,
644        ) -> std::result::Result<
645            tonic::Response<super::GetCurrentUserResponse>,
646            tonic::Status,
647        > {
648            self.inner
649                .ready()
650                .await
651                .map_err(|e| {
652                    tonic::Status::unknown(
653                        format!("Service was not ready: {}", e.into()),
654                    )
655                })?;
656            let codec = tonic::codec::ProstCodec::default();
657            let path = http::uri::PathAndQuery::from_static(
658                "/nominal.authentication.users.v1.UserService/GetCurrentUser",
659            );
660            let mut req = request.into_request();
661            req.extensions_mut()
662                .insert(
663                    GrpcMethod::new(
664                        "nominal.authentication.users.v1.UserService",
665                        "GetCurrentUser",
666                    ),
667                );
668            self.inner.unary(req, path, codec).await
669        }
670        pub async fn update_current_user(
671            &mut self,
672            request: impl tonic::IntoRequest<super::UpdateCurrentUserRequest>,
673        ) -> std::result::Result<
674            tonic::Response<super::UpdateCurrentUserResponse>,
675            tonic::Status,
676        > {
677            self.inner
678                .ready()
679                .await
680                .map_err(|e| {
681                    tonic::Status::unknown(
682                        format!("Service was not ready: {}", e.into()),
683                    )
684                })?;
685            let codec = tonic::codec::ProstCodec::default();
686            let path = http::uri::PathAndQuery::from_static(
687                "/nominal.authentication.users.v1.UserService/UpdateCurrentUser",
688            );
689            let mut req = request.into_request();
690            req.extensions_mut()
691                .insert(
692                    GrpcMethod::new(
693                        "nominal.authentication.users.v1.UserService",
694                        "UpdateCurrentUser",
695                    ),
696                );
697            self.inner.unary(req, path, codec).await
698        }
699        pub async fn get_current_user_settings(
700            &mut self,
701            request: impl tonic::IntoRequest<super::GetCurrentUserSettingsRequest>,
702        ) -> std::result::Result<
703            tonic::Response<super::GetCurrentUserSettingsResponse>,
704            tonic::Status,
705        > {
706            self.inner
707                .ready()
708                .await
709                .map_err(|e| {
710                    tonic::Status::unknown(
711                        format!("Service was not ready: {}", e.into()),
712                    )
713                })?;
714            let codec = tonic::codec::ProstCodec::default();
715            let path = http::uri::PathAndQuery::from_static(
716                "/nominal.authentication.users.v1.UserService/GetCurrentUserSettings",
717            );
718            let mut req = request.into_request();
719            req.extensions_mut()
720                .insert(
721                    GrpcMethod::new(
722                        "nominal.authentication.users.v1.UserService",
723                        "GetCurrentUserSettings",
724                    ),
725                );
726            self.inner.unary(req, path, codec).await
727        }
728        pub async fn update_current_user_settings(
729            &mut self,
730            request: impl tonic::IntoRequest<super::UpdateCurrentUserSettingsRequest>,
731        ) -> std::result::Result<
732            tonic::Response<super::UpdateCurrentUserSettingsResponse>,
733            tonic::Status,
734        > {
735            self.inner
736                .ready()
737                .await
738                .map_err(|e| {
739                    tonic::Status::unknown(
740                        format!("Service was not ready: {}", e.into()),
741                    )
742                })?;
743            let codec = tonic::codec::ProstCodec::default();
744            let path = http::uri::PathAndQuery::from_static(
745                "/nominal.authentication.users.v1.UserService/UpdateCurrentUserSettings",
746            );
747            let mut req = request.into_request();
748            req.extensions_mut()
749                .insert(
750                    GrpcMethod::new(
751                        "nominal.authentication.users.v1.UserService",
752                        "UpdateCurrentUserSettings",
753                    ),
754                );
755            self.inner.unary(req, path, codec).await
756        }
757        pub async fn preregister_users(
758            &mut self,
759            request: impl tonic::IntoRequest<super::PreregisterUsersRequest>,
760        ) -> std::result::Result<
761            tonic::Response<super::PreregisterUsersResponse>,
762            tonic::Status,
763        > {
764            self.inner
765                .ready()
766                .await
767                .map_err(|e| {
768                    tonic::Status::unknown(
769                        format!("Service was not ready: {}", e.into()),
770                    )
771                })?;
772            let codec = tonic::codec::ProstCodec::default();
773            let path = http::uri::PathAndQuery::from_static(
774                "/nominal.authentication.users.v1.UserService/PreregisterUsers",
775            );
776            let mut req = request.into_request();
777            req.extensions_mut()
778                .insert(
779                    GrpcMethod::new(
780                        "nominal.authentication.users.v1.UserService",
781                        "PreregisterUsers",
782                    ),
783                );
784            self.inner.unary(req, path, codec).await
785        }
786        pub async fn deactivate_user(
787            &mut self,
788            request: impl tonic::IntoRequest<super::DeactivateUserRequest>,
789        ) -> std::result::Result<
790            tonic::Response<super::DeactivateUserResponse>,
791            tonic::Status,
792        > {
793            self.inner
794                .ready()
795                .await
796                .map_err(|e| {
797                    tonic::Status::unknown(
798                        format!("Service was not ready: {}", e.into()),
799                    )
800                })?;
801            let codec = tonic::codec::ProstCodec::default();
802            let path = http::uri::PathAndQuery::from_static(
803                "/nominal.authentication.users.v1.UserService/DeactivateUser",
804            );
805            let mut req = request.into_request();
806            req.extensions_mut()
807                .insert(
808                    GrpcMethod::new(
809                        "nominal.authentication.users.v1.UserService",
810                        "DeactivateUser",
811                    ),
812                );
813            self.inner.unary(req, path, codec).await
814        }
815        pub async fn reactivate_user(
816            &mut self,
817            request: impl tonic::IntoRequest<super::ReactivateUserRequest>,
818        ) -> std::result::Result<
819            tonic::Response<super::ReactivateUserResponse>,
820            tonic::Status,
821        > {
822            self.inner
823                .ready()
824                .await
825                .map_err(|e| {
826                    tonic::Status::unknown(
827                        format!("Service was not ready: {}", e.into()),
828                    )
829                })?;
830            let codec = tonic::codec::ProstCodec::default();
831            let path = http::uri::PathAndQuery::from_static(
832                "/nominal.authentication.users.v1.UserService/ReactivateUser",
833            );
834            let mut req = request.into_request();
835            req.extensions_mut()
836                .insert(
837                    GrpcMethod::new(
838                        "nominal.authentication.users.v1.UserService",
839                        "ReactivateUser",
840                    ),
841                );
842            self.inner.unary(req, path, codec).await
843        }
844    }
845}