cx_api/generated/
com.coralogixapis.dashboards.v1.services.rs

1// This file is @generated by prost-build.
2#[derive(serde::Serialize, serde::Deserialize)]
3#[serde(rename_all = "snake_case")]
4#[derive(Clone, Copy, PartialEq, ::prost::Message)]
5pub struct GetDashboardCatalogRequest {}
6#[derive(serde::Serialize, serde::Deserialize)]
7#[serde(rename_all = "snake_case")]
8#[derive(Clone, PartialEq, ::prost::Message)]
9pub struct GetDashboardCatalogResponse {
10    #[prost(message, repeated, tag = "1")]
11    pub items: ::prost::alloc::vec::Vec<DashboardCatalogItem>,
12}
13#[derive(serde::Serialize, serde::Deserialize)]
14#[serde(rename_all = "snake_case")]
15#[derive(Clone, PartialEq, ::prost::Message)]
16pub struct DashboardCatalogItem {
17    /// Dashboard unique identifier
18    #[prost(message, optional, tag = "1")]
19    pub id: ::core::option::Option<::prost::alloc::string::String>,
20    #[prost(message, optional, tag = "2")]
21    pub name: ::core::option::Option<::prost::alloc::string::String>,
22    #[prost(message, optional, tag = "3")]
23    pub description: ::core::option::Option<::prost::alloc::string::String>,
24    #[prost(message, optional, tag = "4")]
25    pub is_default: ::core::option::Option<bool>,
26    #[prost(message, optional, tag = "5")]
27    pub is_pinned: ::core::option::Option<bool>,
28    #[prost(message, optional, tag = "6")]
29    pub create_time: ::core::option::Option<::prost_wkt_types::Timestamp>,
30    #[prost(message, optional, tag = "7")]
31    pub update_time: ::core::option::Option<::prost_wkt_types::Timestamp>,
32    #[prost(message, optional, tag = "8")]
33    pub folder: ::core::option::Option<super::common::DashboardFolder>,
34    #[prost(message, optional, tag = "9")]
35    pub author_id: ::core::option::Option<::prost::alloc::string::String>,
36    #[prost(message, optional, tag = "10")]
37    pub is_locked: ::core::option::Option<bool>,
38    #[prost(message, optional, tag = "11")]
39    pub locker_author_id: ::core::option::Option<::prost::alloc::string::String>,
40    #[prost(message, optional, tag = "12")]
41    pub slug_name: ::core::option::Option<::prost::alloc::string::String>,
42}
43/// Generated client implementations.
44pub mod dashboard_catalog_service_client {
45    #![allow(
46        unused_variables,
47        dead_code,
48        missing_docs,
49        clippy::wildcard_imports,
50        clippy::let_unit_value,
51    )]
52    use tonic::codegen::*;
53    use tonic::codegen::http::Uri;
54    #[derive(Debug, Clone)]
55    pub struct DashboardCatalogServiceClient<T> {
56        inner: tonic::client::Grpc<T>,
57    }
58    impl DashboardCatalogServiceClient<tonic::transport::Channel> {
59        /// Attempt to create a new client by connecting to a given endpoint.
60        pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
61        where
62            D: TryInto<tonic::transport::Endpoint>,
63            D::Error: Into<StdError>,
64        {
65            let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
66            Ok(Self::new(conn))
67        }
68    }
69    impl<T> DashboardCatalogServiceClient<T>
70    where
71        T: tonic::client::GrpcService<tonic::body::BoxBody>,
72        T::Error: Into<StdError>,
73        T::ResponseBody: Body<Data = Bytes> + std::marker::Send + 'static,
74        <T::ResponseBody as Body>::Error: Into<StdError> + std::marker::Send,
75    {
76        pub fn new(inner: T) -> Self {
77            let inner = tonic::client::Grpc::new(inner);
78            Self { inner }
79        }
80        pub fn with_origin(inner: T, origin: Uri) -> Self {
81            let inner = tonic::client::Grpc::with_origin(inner, origin);
82            Self { inner }
83        }
84        pub fn with_interceptor<F>(
85            inner: T,
86            interceptor: F,
87        ) -> DashboardCatalogServiceClient<InterceptedService<T, F>>
88        where
89            F: tonic::service::Interceptor,
90            T::ResponseBody: Default,
91            T: tonic::codegen::Service<
92                http::Request<tonic::body::BoxBody>,
93                Response = http::Response<
94                    <T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
95                >,
96            >,
97            <T as tonic::codegen::Service<
98                http::Request<tonic::body::BoxBody>,
99            >>::Error: Into<StdError> + std::marker::Send + std::marker::Sync,
100        {
101            DashboardCatalogServiceClient::new(
102                InterceptedService::new(inner, interceptor),
103            )
104        }
105        /// Compress requests with the given encoding.
106        ///
107        /// This requires the server to support it otherwise it might respond with an
108        /// error.
109        #[must_use]
110        pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
111            self.inner = self.inner.send_compressed(encoding);
112            self
113        }
114        /// Enable decompressing responses.
115        #[must_use]
116        pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
117            self.inner = self.inner.accept_compressed(encoding);
118            self
119        }
120        /// Limits the maximum size of a decoded message.
121        ///
122        /// Default: `4MB`
123        #[must_use]
124        pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
125            self.inner = self.inner.max_decoding_message_size(limit);
126            self
127        }
128        /// Limits the maximum size of an encoded message.
129        ///
130        /// Default: `usize::MAX`
131        #[must_use]
132        pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
133            self.inner = self.inner.max_encoding_message_size(limit);
134            self
135        }
136        pub async fn get_dashboard_catalog(
137            &mut self,
138            request: impl tonic::IntoRequest<super::GetDashboardCatalogRequest>,
139        ) -> std::result::Result<
140            tonic::Response<super::GetDashboardCatalogResponse>,
141            tonic::Status,
142        > {
143            self.inner
144                .ready()
145                .await
146                .map_err(|e| {
147                    tonic::Status::unknown(
148                        format!("Service was not ready: {}", e.into()),
149                    )
150                })?;
151            let codec = tonic::codec::ProstCodec::default();
152            let path = http::uri::PathAndQuery::from_static(
153                "/com.coralogixapis.dashboards.v1.services.DashboardCatalogService/GetDashboardCatalog",
154            );
155            let mut req = request.into_request();
156            req.extensions_mut()
157                .insert(
158                    GrpcMethod::new(
159                        "com.coralogixapis.dashboards.v1.services.DashboardCatalogService",
160                        "GetDashboardCatalog",
161                    ),
162                );
163            self.inner.unary(req, path, codec).await
164        }
165    }
166}
167#[derive(serde::Serialize, serde::Deserialize)]
168#[serde(rename_all = "snake_case")]
169#[derive(Clone, PartialEq, ::prost::Message)]
170pub struct CreateDashboardFolderRequest {
171    #[prost(message, optional, tag = "1")]
172    pub request_id: ::core::option::Option<::prost::alloc::string::String>,
173    #[prost(message, optional, tag = "2")]
174    pub folder: ::core::option::Option<super::common::DashboardFolder>,
175}
176#[derive(serde::Serialize, serde::Deserialize)]
177#[serde(rename_all = "snake_case")]
178#[derive(Clone, Copy, PartialEq, ::prost::Message)]
179pub struct CreateDashboardFolderResponse {}
180#[derive(serde::Serialize, serde::Deserialize)]
181#[serde(rename_all = "snake_case")]
182#[derive(Clone, PartialEq, ::prost::Message)]
183pub struct ReplaceDashboardFolderRequest {
184    #[prost(message, optional, tag = "1")]
185    pub request_id: ::core::option::Option<::prost::alloc::string::String>,
186    #[prost(message, optional, tag = "2")]
187    pub folder: ::core::option::Option<super::common::DashboardFolder>,
188}
189#[derive(serde::Serialize, serde::Deserialize)]
190#[serde(rename_all = "snake_case")]
191#[derive(Clone, Copy, PartialEq, ::prost::Message)]
192pub struct ReplaceDashboardFolderResponse {}
193#[derive(serde::Serialize, serde::Deserialize)]
194#[serde(rename_all = "snake_case")]
195#[derive(Clone, PartialEq, ::prost::Message)]
196pub struct DeleteDashboardFolderRequest {
197    #[prost(message, optional, tag = "1")]
198    pub request_id: ::core::option::Option<::prost::alloc::string::String>,
199    #[prost(message, optional, tag = "2")]
200    pub folder_id: ::core::option::Option<::prost::alloc::string::String>,
201}
202#[derive(serde::Serialize, serde::Deserialize)]
203#[serde(rename_all = "snake_case")]
204#[derive(Clone, Copy, PartialEq, ::prost::Message)]
205pub struct DeleteDashboardFolderResponse {}
206#[derive(serde::Serialize, serde::Deserialize)]
207#[serde(rename_all = "snake_case")]
208#[derive(Clone, Copy, PartialEq, ::prost::Message)]
209pub struct ListDashboardFoldersRequest {}
210#[derive(serde::Serialize, serde::Deserialize)]
211#[serde(rename_all = "snake_case")]
212#[derive(Clone, PartialEq, ::prost::Message)]
213pub struct ListDashboardFoldersResponse {
214    #[prost(message, repeated, tag = "1")]
215    pub folder: ::prost::alloc::vec::Vec<super::common::DashboardFolder>,
216}
217#[derive(serde::Serialize, serde::Deserialize)]
218#[serde(rename_all = "snake_case")]
219#[derive(Clone, PartialEq, ::prost::Message)]
220pub struct GetDashboardFolderRequest {
221    #[prost(message, optional, tag = "1")]
222    pub request_id: ::core::option::Option<::prost::alloc::string::String>,
223    #[prost(message, optional, tag = "2")]
224    pub folder_id: ::core::option::Option<::prost::alloc::string::String>,
225}
226#[derive(serde::Serialize, serde::Deserialize)]
227#[serde(rename_all = "snake_case")]
228#[derive(Clone, PartialEq, ::prost::Message)]
229pub struct GetDashboardFolderResponse {
230    #[prost(message, optional, tag = "1")]
231    pub folder: ::core::option::Option<super::common::DashboardFolder>,
232}
233/// Generated client implementations.
234pub mod dashboard_folders_service_client {
235    #![allow(
236        unused_variables,
237        dead_code,
238        missing_docs,
239        clippy::wildcard_imports,
240        clippy::let_unit_value,
241    )]
242    use tonic::codegen::*;
243    use tonic::codegen::http::Uri;
244    #[derive(Debug, Clone)]
245    pub struct DashboardFoldersServiceClient<T> {
246        inner: tonic::client::Grpc<T>,
247    }
248    impl DashboardFoldersServiceClient<tonic::transport::Channel> {
249        /// Attempt to create a new client by connecting to a given endpoint.
250        pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
251        where
252            D: TryInto<tonic::transport::Endpoint>,
253            D::Error: Into<StdError>,
254        {
255            let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
256            Ok(Self::new(conn))
257        }
258    }
259    impl<T> DashboardFoldersServiceClient<T>
260    where
261        T: tonic::client::GrpcService<tonic::body::BoxBody>,
262        T::Error: Into<StdError>,
263        T::ResponseBody: Body<Data = Bytes> + std::marker::Send + 'static,
264        <T::ResponseBody as Body>::Error: Into<StdError> + std::marker::Send,
265    {
266        pub fn new(inner: T) -> Self {
267            let inner = tonic::client::Grpc::new(inner);
268            Self { inner }
269        }
270        pub fn with_origin(inner: T, origin: Uri) -> Self {
271            let inner = tonic::client::Grpc::with_origin(inner, origin);
272            Self { inner }
273        }
274        pub fn with_interceptor<F>(
275            inner: T,
276            interceptor: F,
277        ) -> DashboardFoldersServiceClient<InterceptedService<T, F>>
278        where
279            F: tonic::service::Interceptor,
280            T::ResponseBody: Default,
281            T: tonic::codegen::Service<
282                http::Request<tonic::body::BoxBody>,
283                Response = http::Response<
284                    <T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
285                >,
286            >,
287            <T as tonic::codegen::Service<
288                http::Request<tonic::body::BoxBody>,
289            >>::Error: Into<StdError> + std::marker::Send + std::marker::Sync,
290        {
291            DashboardFoldersServiceClient::new(
292                InterceptedService::new(inner, interceptor),
293            )
294        }
295        /// Compress requests with the given encoding.
296        ///
297        /// This requires the server to support it otherwise it might respond with an
298        /// error.
299        #[must_use]
300        pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
301            self.inner = self.inner.send_compressed(encoding);
302            self
303        }
304        /// Enable decompressing responses.
305        #[must_use]
306        pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
307            self.inner = self.inner.accept_compressed(encoding);
308            self
309        }
310        /// Limits the maximum size of a decoded message.
311        ///
312        /// Default: `4MB`
313        #[must_use]
314        pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
315            self.inner = self.inner.max_decoding_message_size(limit);
316            self
317        }
318        /// Limits the maximum size of an encoded message.
319        ///
320        /// Default: `usize::MAX`
321        #[must_use]
322        pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
323            self.inner = self.inner.max_encoding_message_size(limit);
324            self
325        }
326        pub async fn list_dashboard_folders(
327            &mut self,
328            request: impl tonic::IntoRequest<super::ListDashboardFoldersRequest>,
329        ) -> std::result::Result<
330            tonic::Response<super::ListDashboardFoldersResponse>,
331            tonic::Status,
332        > {
333            self.inner
334                .ready()
335                .await
336                .map_err(|e| {
337                    tonic::Status::unknown(
338                        format!("Service was not ready: {}", e.into()),
339                    )
340                })?;
341            let codec = tonic::codec::ProstCodec::default();
342            let path = http::uri::PathAndQuery::from_static(
343                "/com.coralogixapis.dashboards.v1.services.DashboardFoldersService/ListDashboardFolders",
344            );
345            let mut req = request.into_request();
346            req.extensions_mut()
347                .insert(
348                    GrpcMethod::new(
349                        "com.coralogixapis.dashboards.v1.services.DashboardFoldersService",
350                        "ListDashboardFolders",
351                    ),
352                );
353            self.inner.unary(req, path, codec).await
354        }
355        pub async fn get_dashboard_folder(
356            &mut self,
357            request: impl tonic::IntoRequest<super::GetDashboardFolderRequest>,
358        ) -> std::result::Result<
359            tonic::Response<super::GetDashboardFolderResponse>,
360            tonic::Status,
361        > {
362            self.inner
363                .ready()
364                .await
365                .map_err(|e| {
366                    tonic::Status::unknown(
367                        format!("Service was not ready: {}", e.into()),
368                    )
369                })?;
370            let codec = tonic::codec::ProstCodec::default();
371            let path = http::uri::PathAndQuery::from_static(
372                "/com.coralogixapis.dashboards.v1.services.DashboardFoldersService/GetDashboardFolder",
373            );
374            let mut req = request.into_request();
375            req.extensions_mut()
376                .insert(
377                    GrpcMethod::new(
378                        "com.coralogixapis.dashboards.v1.services.DashboardFoldersService",
379                        "GetDashboardFolder",
380                    ),
381                );
382            self.inner.unary(req, path, codec).await
383        }
384        pub async fn create_dashboard_folder(
385            &mut self,
386            request: impl tonic::IntoRequest<super::CreateDashboardFolderRequest>,
387        ) -> std::result::Result<
388            tonic::Response<super::CreateDashboardFolderResponse>,
389            tonic::Status,
390        > {
391            self.inner
392                .ready()
393                .await
394                .map_err(|e| {
395                    tonic::Status::unknown(
396                        format!("Service was not ready: {}", e.into()),
397                    )
398                })?;
399            let codec = tonic::codec::ProstCodec::default();
400            let path = http::uri::PathAndQuery::from_static(
401                "/com.coralogixapis.dashboards.v1.services.DashboardFoldersService/CreateDashboardFolder",
402            );
403            let mut req = request.into_request();
404            req.extensions_mut()
405                .insert(
406                    GrpcMethod::new(
407                        "com.coralogixapis.dashboards.v1.services.DashboardFoldersService",
408                        "CreateDashboardFolder",
409                    ),
410                );
411            self.inner.unary(req, path, codec).await
412        }
413        pub async fn replace_dashboard_folder(
414            &mut self,
415            request: impl tonic::IntoRequest<super::ReplaceDashboardFolderRequest>,
416        ) -> std::result::Result<
417            tonic::Response<super::ReplaceDashboardFolderResponse>,
418            tonic::Status,
419        > {
420            self.inner
421                .ready()
422                .await
423                .map_err(|e| {
424                    tonic::Status::unknown(
425                        format!("Service was not ready: {}", e.into()),
426                    )
427                })?;
428            let codec = tonic::codec::ProstCodec::default();
429            let path = http::uri::PathAndQuery::from_static(
430                "/com.coralogixapis.dashboards.v1.services.DashboardFoldersService/ReplaceDashboardFolder",
431            );
432            let mut req = request.into_request();
433            req.extensions_mut()
434                .insert(
435                    GrpcMethod::new(
436                        "com.coralogixapis.dashboards.v1.services.DashboardFoldersService",
437                        "ReplaceDashboardFolder",
438                    ),
439                );
440            self.inner.unary(req, path, codec).await
441        }
442        pub async fn delete_dashboard_folder(
443            &mut self,
444            request: impl tonic::IntoRequest<super::DeleteDashboardFolderRequest>,
445        ) -> std::result::Result<
446            tonic::Response<super::DeleteDashboardFolderResponse>,
447            tonic::Status,
448        > {
449            self.inner
450                .ready()
451                .await
452                .map_err(|e| {
453                    tonic::Status::unknown(
454                        format!("Service was not ready: {}", e.into()),
455                    )
456                })?;
457            let codec = tonic::codec::ProstCodec::default();
458            let path = http::uri::PathAndQuery::from_static(
459                "/com.coralogixapis.dashboards.v1.services.DashboardFoldersService/DeleteDashboardFolder",
460            );
461            let mut req = request.into_request();
462            req.extensions_mut()
463                .insert(
464                    GrpcMethod::new(
465                        "com.coralogixapis.dashboards.v1.services.DashboardFoldersService",
466                        "DeleteDashboardFolder",
467                    ),
468                );
469            self.inner.unary(req, path, codec).await
470        }
471    }
472}
473#[derive(serde::Serialize, serde::Deserialize)]
474#[serde(rename_all = "snake_case")]
475#[derive(Clone, PartialEq, ::prost::Message)]
476pub struct CreateDashboardRequest {
477    #[prost(message, optional, tag = "1")]
478    pub request_id: ::core::option::Option<::prost::alloc::string::String>,
479    #[prost(message, optional, tag = "2")]
480    pub dashboard: ::core::option::Option<super::ast::Dashboard>,
481    #[prost(message, optional, tag = "3")]
482    pub is_locked: ::core::option::Option<bool>,
483}
484#[derive(serde::Serialize, serde::Deserialize)]
485#[serde(rename_all = "snake_case")]
486#[derive(Clone, PartialEq, ::prost::Message)]
487pub struct CreateDashboardResponse {
488    #[prost(message, optional, tag = "1")]
489    pub dashboard_id: ::core::option::Option<::prost::alloc::string::String>,
490}
491#[derive(serde::Serialize, serde::Deserialize)]
492#[serde(rename_all = "snake_case")]
493#[derive(Clone, PartialEq, ::prost::Message)]
494pub struct ReplaceDashboardRequest {
495    #[prost(message, optional, tag = "1")]
496    pub request_id: ::core::option::Option<::prost::alloc::string::String>,
497    #[prost(message, optional, tag = "2")]
498    pub dashboard: ::core::option::Option<super::ast::Dashboard>,
499    #[prost(message, optional, tag = "3")]
500    pub is_locked: ::core::option::Option<bool>,
501}
502#[derive(serde::Serialize, serde::Deserialize)]
503#[serde(rename_all = "snake_case")]
504#[derive(Clone, Copy, PartialEq, ::prost::Message)]
505pub struct ReplaceDashboardResponse {}
506#[derive(serde::Serialize, serde::Deserialize)]
507#[serde(rename_all = "snake_case")]
508#[derive(Clone, PartialEq, ::prost::Message)]
509pub struct DeleteDashboardRequest {
510    #[prost(message, optional, tag = "1")]
511    pub request_id: ::core::option::Option<::prost::alloc::string::String>,
512    #[prost(message, optional, tag = "2")]
513    pub dashboard_id: ::core::option::Option<::prost::alloc::string::String>,
514}
515#[derive(serde::Serialize, serde::Deserialize)]
516#[serde(rename_all = "snake_case")]
517#[derive(Clone, Copy, PartialEq, ::prost::Message)]
518pub struct DeleteDashboardResponse {}
519#[derive(serde::Serialize, serde::Deserialize)]
520#[serde(rename_all = "snake_case")]
521#[derive(Clone, PartialEq, ::prost::Message)]
522pub struct GetDashboardRequest {
523    #[prost(message, optional, tag = "1")]
524    pub dashboard_id: ::core::option::Option<::prost::alloc::string::String>,
525}
526#[derive(serde::Serialize, serde::Deserialize)]
527#[serde(rename_all = "snake_case")]
528#[derive(Clone, PartialEq, ::prost::Message)]
529pub struct GetDashboardBySlugRequest {
530    #[prost(message, optional, tag = "1")]
531    pub slug: ::core::option::Option<::prost::alloc::string::String>,
532}
533#[derive(serde::Serialize, serde::Deserialize)]
534#[serde(rename_all = "snake_case")]
535#[derive(Clone, PartialEq, ::prost::Message)]
536pub struct GetDashboardBySlugResponse {
537    #[prost(message, optional, tag = "1")]
538    pub dashboard: ::core::option::Option<super::ast::Dashboard>,
539    #[prost(message, optional, tag = "2")]
540    pub updated_at: ::core::option::Option<::prost_wkt_types::Timestamp>,
541    #[prost(message, optional, tag = "3")]
542    pub created_at: ::core::option::Option<::prost_wkt_types::Timestamp>,
543    #[prost(message, optional, tag = "4")]
544    pub updater_author_id: ::core::option::Option<::prost::alloc::string::String>,
545    #[prost(message, optional, tag = "8")]
546    pub updater_name: ::core::option::Option<::prost::alloc::string::String>,
547    #[prost(message, optional, tag = "5")]
548    pub author_id: ::core::option::Option<::prost::alloc::string::String>,
549    #[prost(message, optional, tag = "9")]
550    pub author_name: ::core::option::Option<::prost::alloc::string::String>,
551    #[prost(enumeration = "TokenOriginType", tag = "6")]
552    pub updated_origin_type: i32,
553    #[prost(enumeration = "TokenOriginType", tag = "7")]
554    pub created_origin_type: i32,
555    #[prost(message, optional, tag = "10")]
556    pub is_locked: ::core::option::Option<bool>,
557    #[prost(message, optional, tag = "11")]
558    pub locker_author_id: ::core::option::Option<::prost::alloc::string::String>,
559    #[prost(message, optional, tag = "12")]
560    pub locker_name: ::core::option::Option<::prost::alloc::string::String>,
561}
562#[derive(serde::Serialize, serde::Deserialize)]
563#[serde(rename_all = "snake_case")]
564#[derive(Clone, PartialEq, ::prost::Message)]
565pub struct GetDashboardResponse {
566    #[prost(message, optional, tag = "1")]
567    pub dashboard: ::core::option::Option<super::ast::Dashboard>,
568    #[prost(message, optional, tag = "2")]
569    pub updated_at: ::core::option::Option<::prost_wkt_types::Timestamp>,
570    #[prost(message, optional, tag = "3")]
571    pub created_at: ::core::option::Option<::prost_wkt_types::Timestamp>,
572    #[prost(message, optional, tag = "4")]
573    pub updater_author_id: ::core::option::Option<::prost::alloc::string::String>,
574    #[prost(message, optional, tag = "8")]
575    pub updater_name: ::core::option::Option<::prost::alloc::string::String>,
576    #[prost(message, optional, tag = "5")]
577    pub author_id: ::core::option::Option<::prost::alloc::string::String>,
578    #[prost(message, optional, tag = "9")]
579    pub author_name: ::core::option::Option<::prost::alloc::string::String>,
580    #[prost(enumeration = "TokenOriginType", tag = "6")]
581    pub updated_origin_type: i32,
582    #[prost(enumeration = "TokenOriginType", tag = "7")]
583    pub created_origin_type: i32,
584    #[prost(message, optional, tag = "10")]
585    pub is_locked: ::core::option::Option<bool>,
586    #[prost(message, optional, tag = "11")]
587    pub locker_author_id: ::core::option::Option<::prost::alloc::string::String>,
588    #[prost(message, optional, tag = "12")]
589    pub locker_name: ::core::option::Option<::prost::alloc::string::String>,
590}
591#[derive(serde::Serialize, serde::Deserialize)]
592#[serde(rename_all = "snake_case")]
593#[derive(Clone, PartialEq, ::prost::Message)]
594pub struct PinDashboardRequest {
595    #[prost(message, optional, tag = "1")]
596    pub request_id: ::core::option::Option<::prost::alloc::string::String>,
597    #[prost(message, optional, tag = "2")]
598    pub dashboard_id: ::core::option::Option<::prost::alloc::string::String>,
599}
600#[derive(serde::Serialize, serde::Deserialize)]
601#[serde(rename_all = "snake_case")]
602#[derive(Clone, Copy, PartialEq, ::prost::Message)]
603pub struct PinDashboardResponse {}
604#[derive(serde::Serialize, serde::Deserialize)]
605#[serde(rename_all = "snake_case")]
606#[derive(Clone, PartialEq, ::prost::Message)]
607pub struct UnpinDashboardRequest {
608    #[prost(message, optional, tag = "1")]
609    pub request_id: ::core::option::Option<::prost::alloc::string::String>,
610    #[prost(message, optional, tag = "2")]
611    pub dashboard_id: ::core::option::Option<::prost::alloc::string::String>,
612}
613#[derive(serde::Serialize, serde::Deserialize)]
614#[serde(rename_all = "snake_case")]
615#[derive(Clone, Copy, PartialEq, ::prost::Message)]
616pub struct UnpinDashboardResponse {}
617#[derive(serde::Serialize, serde::Deserialize)]
618#[serde(rename_all = "snake_case")]
619#[derive(Clone, PartialEq, ::prost::Message)]
620pub struct ReplaceDefaultDashboardRequest {
621    #[prost(message, optional, tag = "1")]
622    pub request_id: ::core::option::Option<::prost::alloc::string::String>,
623    #[prost(message, optional, tag = "2")]
624    pub dashboard_id: ::core::option::Option<::prost::alloc::string::String>,
625}
626#[derive(serde::Serialize, serde::Deserialize)]
627#[serde(rename_all = "snake_case")]
628#[derive(Clone, Copy, PartialEq, ::prost::Message)]
629pub struct ReplaceDefaultDashboardResponse {}
630#[derive(serde::Serialize, serde::Deserialize)]
631#[serde(rename_all = "snake_case")]
632#[derive(Clone, PartialEq, ::prost::Message)]
633pub struct AssignDashboardFolderRequest {
634    #[prost(message, optional, tag = "1")]
635    pub request_id: ::core::option::Option<::prost::alloc::string::String>,
636    #[prost(message, optional, tag = "2")]
637    pub dashboard_id: ::core::option::Option<::prost::alloc::string::String>,
638    /// could be null to assign the dashboard to root
639    #[prost(message, optional, tag = "3")]
640    pub folder_id: ::core::option::Option<::prost::alloc::string::String>,
641}
642#[derive(serde::Serialize, serde::Deserialize)]
643#[serde(rename_all = "snake_case")]
644#[derive(Clone, Copy, PartialEq, ::prost::Message)]
645pub struct AssignDashboardFolderResponse {}
646#[derive(serde::Serialize, serde::Deserialize)]
647#[serde(rename_all = "snake_case")]
648#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
649#[repr(i32)]
650pub enum TokenOriginType {
651    Unspecified = 0,
652    User = 1,
653    Api = 2,
654}
655impl TokenOriginType {
656    /// String value of the enum field names used in the ProtoBuf definition.
657    ///
658    /// The values are not transformed in any way and thus are considered stable
659    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
660    pub fn as_str_name(&self) -> &'static str {
661        match self {
662            Self::Unspecified => "TOKEN_ORIGIN_TYPE_UNSPECIFIED",
663            Self::User => "TOKEN_ORIGIN_TYPE_USER",
664            Self::Api => "TOKEN_ORIGIN_TYPE_API",
665        }
666    }
667    /// Creates an enum from field names used in the ProtoBuf definition.
668    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
669        match value {
670            "TOKEN_ORIGIN_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
671            "TOKEN_ORIGIN_TYPE_USER" => Some(Self::User),
672            "TOKEN_ORIGIN_TYPE_API" => Some(Self::Api),
673            _ => None,
674        }
675    }
676}
677/// Generated client implementations.
678pub mod dashboards_service_client {
679    #![allow(
680        unused_variables,
681        dead_code,
682        missing_docs,
683        clippy::wildcard_imports,
684        clippy::let_unit_value,
685    )]
686    use tonic::codegen::*;
687    use tonic::codegen::http::Uri;
688    #[derive(Debug, Clone)]
689    pub struct DashboardsServiceClient<T> {
690        inner: tonic::client::Grpc<T>,
691    }
692    impl DashboardsServiceClient<tonic::transport::Channel> {
693        /// Attempt to create a new client by connecting to a given endpoint.
694        pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
695        where
696            D: TryInto<tonic::transport::Endpoint>,
697            D::Error: Into<StdError>,
698        {
699            let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
700            Ok(Self::new(conn))
701        }
702    }
703    impl<T> DashboardsServiceClient<T>
704    where
705        T: tonic::client::GrpcService<tonic::body::BoxBody>,
706        T::Error: Into<StdError>,
707        T::ResponseBody: Body<Data = Bytes> + std::marker::Send + 'static,
708        <T::ResponseBody as Body>::Error: Into<StdError> + std::marker::Send,
709    {
710        pub fn new(inner: T) -> Self {
711            let inner = tonic::client::Grpc::new(inner);
712            Self { inner }
713        }
714        pub fn with_origin(inner: T, origin: Uri) -> Self {
715            let inner = tonic::client::Grpc::with_origin(inner, origin);
716            Self { inner }
717        }
718        pub fn with_interceptor<F>(
719            inner: T,
720            interceptor: F,
721        ) -> DashboardsServiceClient<InterceptedService<T, F>>
722        where
723            F: tonic::service::Interceptor,
724            T::ResponseBody: Default,
725            T: tonic::codegen::Service<
726                http::Request<tonic::body::BoxBody>,
727                Response = http::Response<
728                    <T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
729                >,
730            >,
731            <T as tonic::codegen::Service<
732                http::Request<tonic::body::BoxBody>,
733            >>::Error: Into<StdError> + std::marker::Send + std::marker::Sync,
734        {
735            DashboardsServiceClient::new(InterceptedService::new(inner, interceptor))
736        }
737        /// Compress requests with the given encoding.
738        ///
739        /// This requires the server to support it otherwise it might respond with an
740        /// error.
741        #[must_use]
742        pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
743            self.inner = self.inner.send_compressed(encoding);
744            self
745        }
746        /// Enable decompressing responses.
747        #[must_use]
748        pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
749            self.inner = self.inner.accept_compressed(encoding);
750            self
751        }
752        /// Limits the maximum size of a decoded message.
753        ///
754        /// Default: `4MB`
755        #[must_use]
756        pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
757            self.inner = self.inner.max_decoding_message_size(limit);
758            self
759        }
760        /// Limits the maximum size of an encoded message.
761        ///
762        /// Default: `usize::MAX`
763        #[must_use]
764        pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
765            self.inner = self.inner.max_encoding_message_size(limit);
766            self
767        }
768        pub async fn create_dashboard(
769            &mut self,
770            request: impl tonic::IntoRequest<super::CreateDashboardRequest>,
771        ) -> std::result::Result<
772            tonic::Response<super::CreateDashboardResponse>,
773            tonic::Status,
774        > {
775            self.inner
776                .ready()
777                .await
778                .map_err(|e| {
779                    tonic::Status::unknown(
780                        format!("Service was not ready: {}", e.into()),
781                    )
782                })?;
783            let codec = tonic::codec::ProstCodec::default();
784            let path = http::uri::PathAndQuery::from_static(
785                "/com.coralogixapis.dashboards.v1.services.DashboardsService/CreateDashboard",
786            );
787            let mut req = request.into_request();
788            req.extensions_mut()
789                .insert(
790                    GrpcMethod::new(
791                        "com.coralogixapis.dashboards.v1.services.DashboardsService",
792                        "CreateDashboard",
793                    ),
794                );
795            self.inner.unary(req, path, codec).await
796        }
797        pub async fn replace_dashboard(
798            &mut self,
799            request: impl tonic::IntoRequest<super::ReplaceDashboardRequest>,
800        ) -> std::result::Result<
801            tonic::Response<super::ReplaceDashboardResponse>,
802            tonic::Status,
803        > {
804            self.inner
805                .ready()
806                .await
807                .map_err(|e| {
808                    tonic::Status::unknown(
809                        format!("Service was not ready: {}", e.into()),
810                    )
811                })?;
812            let codec = tonic::codec::ProstCodec::default();
813            let path = http::uri::PathAndQuery::from_static(
814                "/com.coralogixapis.dashboards.v1.services.DashboardsService/ReplaceDashboard",
815            );
816            let mut req = request.into_request();
817            req.extensions_mut()
818                .insert(
819                    GrpcMethod::new(
820                        "com.coralogixapis.dashboards.v1.services.DashboardsService",
821                        "ReplaceDashboard",
822                    ),
823                );
824            self.inner.unary(req, path, codec).await
825        }
826        pub async fn delete_dashboard(
827            &mut self,
828            request: impl tonic::IntoRequest<super::DeleteDashboardRequest>,
829        ) -> std::result::Result<
830            tonic::Response<super::DeleteDashboardResponse>,
831            tonic::Status,
832        > {
833            self.inner
834                .ready()
835                .await
836                .map_err(|e| {
837                    tonic::Status::unknown(
838                        format!("Service was not ready: {}", e.into()),
839                    )
840                })?;
841            let codec = tonic::codec::ProstCodec::default();
842            let path = http::uri::PathAndQuery::from_static(
843                "/com.coralogixapis.dashboards.v1.services.DashboardsService/DeleteDashboard",
844            );
845            let mut req = request.into_request();
846            req.extensions_mut()
847                .insert(
848                    GrpcMethod::new(
849                        "com.coralogixapis.dashboards.v1.services.DashboardsService",
850                        "DeleteDashboard",
851                    ),
852                );
853            self.inner.unary(req, path, codec).await
854        }
855        pub async fn get_dashboard(
856            &mut self,
857            request: impl tonic::IntoRequest<super::GetDashboardRequest>,
858        ) -> std::result::Result<
859            tonic::Response<super::GetDashboardResponse>,
860            tonic::Status,
861        > {
862            self.inner
863                .ready()
864                .await
865                .map_err(|e| {
866                    tonic::Status::unknown(
867                        format!("Service was not ready: {}", e.into()),
868                    )
869                })?;
870            let codec = tonic::codec::ProstCodec::default();
871            let path = http::uri::PathAndQuery::from_static(
872                "/com.coralogixapis.dashboards.v1.services.DashboardsService/GetDashboard",
873            );
874            let mut req = request.into_request();
875            req.extensions_mut()
876                .insert(
877                    GrpcMethod::new(
878                        "com.coralogixapis.dashboards.v1.services.DashboardsService",
879                        "GetDashboard",
880                    ),
881                );
882            self.inner.unary(req, path, codec).await
883        }
884        pub async fn get_dashboard_by_slug(
885            &mut self,
886            request: impl tonic::IntoRequest<super::GetDashboardBySlugRequest>,
887        ) -> std::result::Result<
888            tonic::Response<super::GetDashboardBySlugResponse>,
889            tonic::Status,
890        > {
891            self.inner
892                .ready()
893                .await
894                .map_err(|e| {
895                    tonic::Status::unknown(
896                        format!("Service was not ready: {}", e.into()),
897                    )
898                })?;
899            let codec = tonic::codec::ProstCodec::default();
900            let path = http::uri::PathAndQuery::from_static(
901                "/com.coralogixapis.dashboards.v1.services.DashboardsService/GetDashboardBySlug",
902            );
903            let mut req = request.into_request();
904            req.extensions_mut()
905                .insert(
906                    GrpcMethod::new(
907                        "com.coralogixapis.dashboards.v1.services.DashboardsService",
908                        "GetDashboardBySlug",
909                    ),
910                );
911            self.inner.unary(req, path, codec).await
912        }
913        pub async fn pin_dashboard(
914            &mut self,
915            request: impl tonic::IntoRequest<super::PinDashboardRequest>,
916        ) -> std::result::Result<
917            tonic::Response<super::PinDashboardResponse>,
918            tonic::Status,
919        > {
920            self.inner
921                .ready()
922                .await
923                .map_err(|e| {
924                    tonic::Status::unknown(
925                        format!("Service was not ready: {}", e.into()),
926                    )
927                })?;
928            let codec = tonic::codec::ProstCodec::default();
929            let path = http::uri::PathAndQuery::from_static(
930                "/com.coralogixapis.dashboards.v1.services.DashboardsService/PinDashboard",
931            );
932            let mut req = request.into_request();
933            req.extensions_mut()
934                .insert(
935                    GrpcMethod::new(
936                        "com.coralogixapis.dashboards.v1.services.DashboardsService",
937                        "PinDashboard",
938                    ),
939                );
940            self.inner.unary(req, path, codec).await
941        }
942        pub async fn unpin_dashboard(
943            &mut self,
944            request: impl tonic::IntoRequest<super::UnpinDashboardRequest>,
945        ) -> std::result::Result<
946            tonic::Response<super::UnpinDashboardResponse>,
947            tonic::Status,
948        > {
949            self.inner
950                .ready()
951                .await
952                .map_err(|e| {
953                    tonic::Status::unknown(
954                        format!("Service was not ready: {}", e.into()),
955                    )
956                })?;
957            let codec = tonic::codec::ProstCodec::default();
958            let path = http::uri::PathAndQuery::from_static(
959                "/com.coralogixapis.dashboards.v1.services.DashboardsService/UnpinDashboard",
960            );
961            let mut req = request.into_request();
962            req.extensions_mut()
963                .insert(
964                    GrpcMethod::new(
965                        "com.coralogixapis.dashboards.v1.services.DashboardsService",
966                        "UnpinDashboard",
967                    ),
968                );
969            self.inner.unary(req, path, codec).await
970        }
971        pub async fn replace_default_dashboard(
972            &mut self,
973            request: impl tonic::IntoRequest<super::ReplaceDefaultDashboardRequest>,
974        ) -> std::result::Result<
975            tonic::Response<super::ReplaceDefaultDashboardResponse>,
976            tonic::Status,
977        > {
978            self.inner
979                .ready()
980                .await
981                .map_err(|e| {
982                    tonic::Status::unknown(
983                        format!("Service was not ready: {}", e.into()),
984                    )
985                })?;
986            let codec = tonic::codec::ProstCodec::default();
987            let path = http::uri::PathAndQuery::from_static(
988                "/com.coralogixapis.dashboards.v1.services.DashboardsService/ReplaceDefaultDashboard",
989            );
990            let mut req = request.into_request();
991            req.extensions_mut()
992                .insert(
993                    GrpcMethod::new(
994                        "com.coralogixapis.dashboards.v1.services.DashboardsService",
995                        "ReplaceDefaultDashboard",
996                    ),
997                );
998            self.inner.unary(req, path, codec).await
999        }
1000        pub async fn assign_dashboard_folder(
1001            &mut self,
1002            request: impl tonic::IntoRequest<super::AssignDashboardFolderRequest>,
1003        ) -> std::result::Result<
1004            tonic::Response<super::AssignDashboardFolderResponse>,
1005            tonic::Status,
1006        > {
1007            self.inner
1008                .ready()
1009                .await
1010                .map_err(|e| {
1011                    tonic::Status::unknown(
1012                        format!("Service was not ready: {}", e.into()),
1013                    )
1014                })?;
1015            let codec = tonic::codec::ProstCodec::default();
1016            let path = http::uri::PathAndQuery::from_static(
1017                "/com.coralogixapis.dashboards.v1.services.DashboardsService/AssignDashboardFolder",
1018            );
1019            let mut req = request.into_request();
1020            req.extensions_mut()
1021                .insert(
1022                    GrpcMethod::new(
1023                        "com.coralogixapis.dashboards.v1.services.DashboardsService",
1024                        "AssignDashboardFolder",
1025                    ),
1026                );
1027            self.inner.unary(req, path, codec).await
1028        }
1029    }
1030}