google_cloud_aiplatform_v1/
stub.rs

1// Copyright 2025 Google LLC
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     https://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14//
15// Code generated by sidekick. DO NOT EDIT.
16
17//! Traits to mock the clients in this library.
18//!
19//! Application developers may need to mock the clients in this library to test
20//! how their application works with different (and sometimes hard to trigger)
21//! client and service behavior. Such test can define mocks implementing the
22//! trait(s) defined in this module, initialize the client with an instance of
23//! this mock in their tests, and verify their application responds as expected.
24
25#![allow(rustdoc::broken_intra_doc_links)]
26
27pub(crate) mod dynamic;
28
29/// Defines the trait used to implement [super::client::DataFoundryService].
30///
31/// Application developers may need to implement this trait to mock
32/// `client::DataFoundryService`.  In other use-cases, application developers only
33/// use `client::DataFoundryService` and need not be concerned with this trait or
34/// its implementations.
35///
36/// Services gain new RPCs routinely. Consequently, this trait gains new methods
37/// too. To avoid breaking applications the trait provides a default
38/// implementation of each method. Most of these implementations just return an
39/// error.
40#[cfg(feature = "data-foundry-service")]
41#[cfg_attr(docsrs, doc(cfg(feature = "data-foundry-service")))]
42pub trait DataFoundryService: std::fmt::Debug + Send + Sync {
43    /// Implements [super::client::DataFoundryService::generate_synthetic_data].
44    fn generate_synthetic_data(
45        &self,
46        _req: crate::model::GenerateSyntheticDataRequest,
47        _options: gax::options::RequestOptions,
48    ) -> impl std::future::Future<
49        Output = crate::Result<
50            gax::response::Response<crate::model::GenerateSyntheticDataResponse>,
51        >,
52    > + Send {
53        gaxi::unimplemented::unimplemented_stub()
54    }
55
56    /// Implements [super::client::DataFoundryService::list_locations].
57    fn list_locations(
58        &self,
59        _req: location::model::ListLocationsRequest,
60        _options: gax::options::RequestOptions,
61    ) -> impl std::future::Future<
62        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
63    > + Send {
64        gaxi::unimplemented::unimplemented_stub()
65    }
66
67    /// Implements [super::client::DataFoundryService::get_location].
68    fn get_location(
69        &self,
70        _req: location::model::GetLocationRequest,
71        _options: gax::options::RequestOptions,
72    ) -> impl std::future::Future<
73        Output = crate::Result<gax::response::Response<location::model::Location>>,
74    > + Send {
75        gaxi::unimplemented::unimplemented_stub()
76    }
77
78    /// Implements [super::client::DataFoundryService::set_iam_policy].
79    fn set_iam_policy(
80        &self,
81        _req: iam_v1::model::SetIamPolicyRequest,
82        _options: gax::options::RequestOptions,
83    ) -> impl std::future::Future<
84        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
85    > + Send {
86        gaxi::unimplemented::unimplemented_stub()
87    }
88
89    /// Implements [super::client::DataFoundryService::get_iam_policy].
90    fn get_iam_policy(
91        &self,
92        _req: iam_v1::model::GetIamPolicyRequest,
93        _options: gax::options::RequestOptions,
94    ) -> impl std::future::Future<
95        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
96    > + Send {
97        gaxi::unimplemented::unimplemented_stub()
98    }
99
100    /// Implements [super::client::DataFoundryService::test_iam_permissions].
101    fn test_iam_permissions(
102        &self,
103        _req: iam_v1::model::TestIamPermissionsRequest,
104        _options: gax::options::RequestOptions,
105    ) -> impl std::future::Future<
106        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
107    > + Send {
108        gaxi::unimplemented::unimplemented_stub()
109    }
110
111    /// Implements [super::client::DataFoundryService::list_operations].
112    fn list_operations(
113        &self,
114        _req: longrunning::model::ListOperationsRequest,
115        _options: gax::options::RequestOptions,
116    ) -> impl std::future::Future<
117        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
118    > + Send {
119        gaxi::unimplemented::unimplemented_stub()
120    }
121
122    /// Implements [super::client::DataFoundryService::get_operation].
123    fn get_operation(
124        &self,
125        _req: longrunning::model::GetOperationRequest,
126        _options: gax::options::RequestOptions,
127    ) -> impl std::future::Future<
128        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
129    > + Send {
130        gaxi::unimplemented::unimplemented_stub()
131    }
132
133    /// Implements [super::client::DataFoundryService::delete_operation].
134    fn delete_operation(
135        &self,
136        _req: longrunning::model::DeleteOperationRequest,
137        _options: gax::options::RequestOptions,
138    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
139        gaxi::unimplemented::unimplemented_stub()
140    }
141
142    /// Implements [super::client::DataFoundryService::cancel_operation].
143    fn cancel_operation(
144        &self,
145        _req: longrunning::model::CancelOperationRequest,
146        _options: gax::options::RequestOptions,
147    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
148        gaxi::unimplemented::unimplemented_stub()
149    }
150
151    /// Implements [super::client::DataFoundryService::wait_operation].
152    fn wait_operation(
153        &self,
154        _req: longrunning::model::WaitOperationRequest,
155        _options: gax::options::RequestOptions,
156    ) -> impl std::future::Future<
157        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
158    > + Send {
159        gaxi::unimplemented::unimplemented_stub()
160    }
161}
162
163/// Defines the trait used to implement [super::client::DatasetService].
164///
165/// Application developers may need to implement this trait to mock
166/// `client::DatasetService`.  In other use-cases, application developers only
167/// use `client::DatasetService` and need not be concerned with this trait or
168/// its implementations.
169///
170/// Services gain new RPCs routinely. Consequently, this trait gains new methods
171/// too. To avoid breaking applications the trait provides a default
172/// implementation of each method. Most of these implementations just return an
173/// error.
174#[cfg(feature = "dataset-service")]
175#[cfg_attr(docsrs, doc(cfg(feature = "dataset-service")))]
176pub trait DatasetService: std::fmt::Debug + Send + Sync {
177    /// Implements [super::client::DatasetService::create_dataset].
178    fn create_dataset(
179        &self,
180        _req: crate::model::CreateDatasetRequest,
181        _options: gax::options::RequestOptions,
182    ) -> impl std::future::Future<
183        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
184    > + Send {
185        gaxi::unimplemented::unimplemented_stub()
186    }
187
188    /// Implements [super::client::DatasetService::get_dataset].
189    fn get_dataset(
190        &self,
191        _req: crate::model::GetDatasetRequest,
192        _options: gax::options::RequestOptions,
193    ) -> impl std::future::Future<
194        Output = crate::Result<gax::response::Response<crate::model::Dataset>>,
195    > + Send {
196        gaxi::unimplemented::unimplemented_stub()
197    }
198
199    /// Implements [super::client::DatasetService::update_dataset].
200    fn update_dataset(
201        &self,
202        _req: crate::model::UpdateDatasetRequest,
203        _options: gax::options::RequestOptions,
204    ) -> impl std::future::Future<
205        Output = crate::Result<gax::response::Response<crate::model::Dataset>>,
206    > + Send {
207        gaxi::unimplemented::unimplemented_stub()
208    }
209
210    /// Implements [super::client::DatasetService::list_datasets].
211    fn list_datasets(
212        &self,
213        _req: crate::model::ListDatasetsRequest,
214        _options: gax::options::RequestOptions,
215    ) -> impl std::future::Future<
216        Output = crate::Result<gax::response::Response<crate::model::ListDatasetsResponse>>,
217    > + Send {
218        gaxi::unimplemented::unimplemented_stub()
219    }
220
221    /// Implements [super::client::DatasetService::delete_dataset].
222    fn delete_dataset(
223        &self,
224        _req: crate::model::DeleteDatasetRequest,
225        _options: gax::options::RequestOptions,
226    ) -> impl std::future::Future<
227        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
228    > + Send {
229        gaxi::unimplemented::unimplemented_stub()
230    }
231
232    /// Implements [super::client::DatasetService::import_data].
233    fn import_data(
234        &self,
235        _req: crate::model::ImportDataRequest,
236        _options: gax::options::RequestOptions,
237    ) -> impl std::future::Future<
238        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
239    > + Send {
240        gaxi::unimplemented::unimplemented_stub()
241    }
242
243    /// Implements [super::client::DatasetService::export_data].
244    fn export_data(
245        &self,
246        _req: crate::model::ExportDataRequest,
247        _options: gax::options::RequestOptions,
248    ) -> impl std::future::Future<
249        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
250    > + Send {
251        gaxi::unimplemented::unimplemented_stub()
252    }
253
254    /// Implements [super::client::DatasetService::create_dataset_version].
255    fn create_dataset_version(
256        &self,
257        _req: crate::model::CreateDatasetVersionRequest,
258        _options: gax::options::RequestOptions,
259    ) -> impl std::future::Future<
260        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
261    > + Send {
262        gaxi::unimplemented::unimplemented_stub()
263    }
264
265    /// Implements [super::client::DatasetService::update_dataset_version].
266    fn update_dataset_version(
267        &self,
268        _req: crate::model::UpdateDatasetVersionRequest,
269        _options: gax::options::RequestOptions,
270    ) -> impl std::future::Future<
271        Output = crate::Result<gax::response::Response<crate::model::DatasetVersion>>,
272    > + Send {
273        gaxi::unimplemented::unimplemented_stub()
274    }
275
276    /// Implements [super::client::DatasetService::delete_dataset_version].
277    fn delete_dataset_version(
278        &self,
279        _req: crate::model::DeleteDatasetVersionRequest,
280        _options: gax::options::RequestOptions,
281    ) -> impl std::future::Future<
282        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
283    > + Send {
284        gaxi::unimplemented::unimplemented_stub()
285    }
286
287    /// Implements [super::client::DatasetService::get_dataset_version].
288    fn get_dataset_version(
289        &self,
290        _req: crate::model::GetDatasetVersionRequest,
291        _options: gax::options::RequestOptions,
292    ) -> impl std::future::Future<
293        Output = crate::Result<gax::response::Response<crate::model::DatasetVersion>>,
294    > + Send {
295        gaxi::unimplemented::unimplemented_stub()
296    }
297
298    /// Implements [super::client::DatasetService::list_dataset_versions].
299    fn list_dataset_versions(
300        &self,
301        _req: crate::model::ListDatasetVersionsRequest,
302        _options: gax::options::RequestOptions,
303    ) -> impl std::future::Future<
304        Output = crate::Result<gax::response::Response<crate::model::ListDatasetVersionsResponse>>,
305    > + Send {
306        gaxi::unimplemented::unimplemented_stub()
307    }
308
309    /// Implements [super::client::DatasetService::restore_dataset_version].
310    fn restore_dataset_version(
311        &self,
312        _req: crate::model::RestoreDatasetVersionRequest,
313        _options: gax::options::RequestOptions,
314    ) -> impl std::future::Future<
315        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
316    > + Send {
317        gaxi::unimplemented::unimplemented_stub()
318    }
319
320    /// Implements [super::client::DatasetService::list_data_items].
321    fn list_data_items(
322        &self,
323        _req: crate::model::ListDataItemsRequest,
324        _options: gax::options::RequestOptions,
325    ) -> impl std::future::Future<
326        Output = crate::Result<gax::response::Response<crate::model::ListDataItemsResponse>>,
327    > + Send {
328        gaxi::unimplemented::unimplemented_stub()
329    }
330
331    /// Implements [super::client::DatasetService::search_data_items].
332    fn search_data_items(
333        &self,
334        _req: crate::model::SearchDataItemsRequest,
335        _options: gax::options::RequestOptions,
336    ) -> impl std::future::Future<
337        Output = crate::Result<gax::response::Response<crate::model::SearchDataItemsResponse>>,
338    > + Send {
339        gaxi::unimplemented::unimplemented_stub()
340    }
341
342    /// Implements [super::client::DatasetService::list_saved_queries].
343    fn list_saved_queries(
344        &self,
345        _req: crate::model::ListSavedQueriesRequest,
346        _options: gax::options::RequestOptions,
347    ) -> impl std::future::Future<
348        Output = crate::Result<gax::response::Response<crate::model::ListSavedQueriesResponse>>,
349    > + Send {
350        gaxi::unimplemented::unimplemented_stub()
351    }
352
353    /// Implements [super::client::DatasetService::delete_saved_query].
354    fn delete_saved_query(
355        &self,
356        _req: crate::model::DeleteSavedQueryRequest,
357        _options: gax::options::RequestOptions,
358    ) -> impl std::future::Future<
359        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
360    > + Send {
361        gaxi::unimplemented::unimplemented_stub()
362    }
363
364    /// Implements [super::client::DatasetService::get_annotation_spec].
365    fn get_annotation_spec(
366        &self,
367        _req: crate::model::GetAnnotationSpecRequest,
368        _options: gax::options::RequestOptions,
369    ) -> impl std::future::Future<
370        Output = crate::Result<gax::response::Response<crate::model::AnnotationSpec>>,
371    > + Send {
372        gaxi::unimplemented::unimplemented_stub()
373    }
374
375    /// Implements [super::client::DatasetService::list_annotations].
376    fn list_annotations(
377        &self,
378        _req: crate::model::ListAnnotationsRequest,
379        _options: gax::options::RequestOptions,
380    ) -> impl std::future::Future<
381        Output = crate::Result<gax::response::Response<crate::model::ListAnnotationsResponse>>,
382    > + Send {
383        gaxi::unimplemented::unimplemented_stub()
384    }
385
386    /// Implements [super::client::DatasetService::list_locations].
387    fn list_locations(
388        &self,
389        _req: location::model::ListLocationsRequest,
390        _options: gax::options::RequestOptions,
391    ) -> impl std::future::Future<
392        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
393    > + Send {
394        gaxi::unimplemented::unimplemented_stub()
395    }
396
397    /// Implements [super::client::DatasetService::get_location].
398    fn get_location(
399        &self,
400        _req: location::model::GetLocationRequest,
401        _options: gax::options::RequestOptions,
402    ) -> impl std::future::Future<
403        Output = crate::Result<gax::response::Response<location::model::Location>>,
404    > + Send {
405        gaxi::unimplemented::unimplemented_stub()
406    }
407
408    /// Implements [super::client::DatasetService::set_iam_policy].
409    fn set_iam_policy(
410        &self,
411        _req: iam_v1::model::SetIamPolicyRequest,
412        _options: gax::options::RequestOptions,
413    ) -> impl std::future::Future<
414        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
415    > + Send {
416        gaxi::unimplemented::unimplemented_stub()
417    }
418
419    /// Implements [super::client::DatasetService::get_iam_policy].
420    fn get_iam_policy(
421        &self,
422        _req: iam_v1::model::GetIamPolicyRequest,
423        _options: gax::options::RequestOptions,
424    ) -> impl std::future::Future<
425        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
426    > + Send {
427        gaxi::unimplemented::unimplemented_stub()
428    }
429
430    /// Implements [super::client::DatasetService::test_iam_permissions].
431    fn test_iam_permissions(
432        &self,
433        _req: iam_v1::model::TestIamPermissionsRequest,
434        _options: gax::options::RequestOptions,
435    ) -> impl std::future::Future<
436        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
437    > + Send {
438        gaxi::unimplemented::unimplemented_stub()
439    }
440
441    /// Implements [super::client::DatasetService::list_operations].
442    fn list_operations(
443        &self,
444        _req: longrunning::model::ListOperationsRequest,
445        _options: gax::options::RequestOptions,
446    ) -> impl std::future::Future<
447        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
448    > + Send {
449        gaxi::unimplemented::unimplemented_stub()
450    }
451
452    /// Implements [super::client::DatasetService::get_operation].
453    fn get_operation(
454        &self,
455        _req: longrunning::model::GetOperationRequest,
456        _options: gax::options::RequestOptions,
457    ) -> impl std::future::Future<
458        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
459    > + Send {
460        gaxi::unimplemented::unimplemented_stub()
461    }
462
463    /// Implements [super::client::DatasetService::delete_operation].
464    fn delete_operation(
465        &self,
466        _req: longrunning::model::DeleteOperationRequest,
467        _options: gax::options::RequestOptions,
468    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
469        gaxi::unimplemented::unimplemented_stub()
470    }
471
472    /// Implements [super::client::DatasetService::cancel_operation].
473    fn cancel_operation(
474        &self,
475        _req: longrunning::model::CancelOperationRequest,
476        _options: gax::options::RequestOptions,
477    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
478        gaxi::unimplemented::unimplemented_stub()
479    }
480
481    /// Implements [super::client::DatasetService::wait_operation].
482    fn wait_operation(
483        &self,
484        _req: longrunning::model::WaitOperationRequest,
485        _options: gax::options::RequestOptions,
486    ) -> impl std::future::Future<
487        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
488    > + Send {
489        gaxi::unimplemented::unimplemented_stub()
490    }
491
492    /// Returns the polling error policy.
493    ///
494    /// When mocking, this method is typically irrelevant. Do not try to verify
495    /// it is called by your mocks.
496    fn get_polling_error_policy(
497        &self,
498        _options: &gax::options::RequestOptions,
499    ) -> std::sync::Arc<dyn gax::polling_error_policy::PollingErrorPolicy> {
500        std::sync::Arc::new(gax::polling_error_policy::Aip194Strict)
501    }
502
503    /// Returns the polling backoff policy.
504    ///
505    /// When mocking, this method is typically irrelevant. Do not try to verify
506    /// it is called by your mocks.
507    fn get_polling_backoff_policy(
508        &self,
509        _options: &gax::options::RequestOptions,
510    ) -> std::sync::Arc<dyn gax::polling_backoff_policy::PollingBackoffPolicy> {
511        std::sync::Arc::new(gax::exponential_backoff::ExponentialBackoff::default())
512    }
513}
514
515/// Defines the trait used to implement [super::client::DeploymentResourcePoolService].
516///
517/// Application developers may need to implement this trait to mock
518/// `client::DeploymentResourcePoolService`.  In other use-cases, application developers only
519/// use `client::DeploymentResourcePoolService` and need not be concerned with this trait or
520/// its implementations.
521///
522/// Services gain new RPCs routinely. Consequently, this trait gains new methods
523/// too. To avoid breaking applications the trait provides a default
524/// implementation of each method. Most of these implementations just return an
525/// error.
526#[cfg(feature = "deployment-resource-pool-service")]
527#[cfg_attr(docsrs, doc(cfg(feature = "deployment-resource-pool-service")))]
528pub trait DeploymentResourcePoolService: std::fmt::Debug + Send + Sync {
529    /// Implements [super::client::DeploymentResourcePoolService::create_deployment_resource_pool].
530    fn create_deployment_resource_pool(
531        &self,
532        _req: crate::model::CreateDeploymentResourcePoolRequest,
533        _options: gax::options::RequestOptions,
534    ) -> impl std::future::Future<
535        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
536    > + Send {
537        gaxi::unimplemented::unimplemented_stub()
538    }
539
540    /// Implements [super::client::DeploymentResourcePoolService::get_deployment_resource_pool].
541    fn get_deployment_resource_pool(
542        &self,
543        _req: crate::model::GetDeploymentResourcePoolRequest,
544        _options: gax::options::RequestOptions,
545    ) -> impl std::future::Future<
546        Output = crate::Result<gax::response::Response<crate::model::DeploymentResourcePool>>,
547    > + Send {
548        gaxi::unimplemented::unimplemented_stub()
549    }
550
551    /// Implements [super::client::DeploymentResourcePoolService::list_deployment_resource_pools].
552    fn list_deployment_resource_pools(
553        &self,
554        _req: crate::model::ListDeploymentResourcePoolsRequest,
555        _options: gax::options::RequestOptions,
556    ) -> impl std::future::Future<
557        Output = crate::Result<
558            gax::response::Response<crate::model::ListDeploymentResourcePoolsResponse>,
559        >,
560    > + Send {
561        gaxi::unimplemented::unimplemented_stub()
562    }
563
564    /// Implements [super::client::DeploymentResourcePoolService::update_deployment_resource_pool].
565    fn update_deployment_resource_pool(
566        &self,
567        _req: crate::model::UpdateDeploymentResourcePoolRequest,
568        _options: gax::options::RequestOptions,
569    ) -> impl std::future::Future<
570        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
571    > + Send {
572        gaxi::unimplemented::unimplemented_stub()
573    }
574
575    /// Implements [super::client::DeploymentResourcePoolService::delete_deployment_resource_pool].
576    fn delete_deployment_resource_pool(
577        &self,
578        _req: crate::model::DeleteDeploymentResourcePoolRequest,
579        _options: gax::options::RequestOptions,
580    ) -> impl std::future::Future<
581        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
582    > + Send {
583        gaxi::unimplemented::unimplemented_stub()
584    }
585
586    /// Implements [super::client::DeploymentResourcePoolService::query_deployed_models].
587    fn query_deployed_models(
588        &self,
589        _req: crate::model::QueryDeployedModelsRequest,
590        _options: gax::options::RequestOptions,
591    ) -> impl std::future::Future<
592        Output = crate::Result<gax::response::Response<crate::model::QueryDeployedModelsResponse>>,
593    > + Send {
594        gaxi::unimplemented::unimplemented_stub()
595    }
596
597    /// Implements [super::client::DeploymentResourcePoolService::list_locations].
598    fn list_locations(
599        &self,
600        _req: location::model::ListLocationsRequest,
601        _options: gax::options::RequestOptions,
602    ) -> impl std::future::Future<
603        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
604    > + Send {
605        gaxi::unimplemented::unimplemented_stub()
606    }
607
608    /// Implements [super::client::DeploymentResourcePoolService::get_location].
609    fn get_location(
610        &self,
611        _req: location::model::GetLocationRequest,
612        _options: gax::options::RequestOptions,
613    ) -> impl std::future::Future<
614        Output = crate::Result<gax::response::Response<location::model::Location>>,
615    > + Send {
616        gaxi::unimplemented::unimplemented_stub()
617    }
618
619    /// Implements [super::client::DeploymentResourcePoolService::set_iam_policy].
620    fn set_iam_policy(
621        &self,
622        _req: iam_v1::model::SetIamPolicyRequest,
623        _options: gax::options::RequestOptions,
624    ) -> impl std::future::Future<
625        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
626    > + Send {
627        gaxi::unimplemented::unimplemented_stub()
628    }
629
630    /// Implements [super::client::DeploymentResourcePoolService::get_iam_policy].
631    fn get_iam_policy(
632        &self,
633        _req: iam_v1::model::GetIamPolicyRequest,
634        _options: gax::options::RequestOptions,
635    ) -> impl std::future::Future<
636        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
637    > + Send {
638        gaxi::unimplemented::unimplemented_stub()
639    }
640
641    /// Implements [super::client::DeploymentResourcePoolService::test_iam_permissions].
642    fn test_iam_permissions(
643        &self,
644        _req: iam_v1::model::TestIamPermissionsRequest,
645        _options: gax::options::RequestOptions,
646    ) -> impl std::future::Future<
647        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
648    > + Send {
649        gaxi::unimplemented::unimplemented_stub()
650    }
651
652    /// Implements [super::client::DeploymentResourcePoolService::list_operations].
653    fn list_operations(
654        &self,
655        _req: longrunning::model::ListOperationsRequest,
656        _options: gax::options::RequestOptions,
657    ) -> impl std::future::Future<
658        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
659    > + Send {
660        gaxi::unimplemented::unimplemented_stub()
661    }
662
663    /// Implements [super::client::DeploymentResourcePoolService::get_operation].
664    fn get_operation(
665        &self,
666        _req: longrunning::model::GetOperationRequest,
667        _options: gax::options::RequestOptions,
668    ) -> impl std::future::Future<
669        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
670    > + Send {
671        gaxi::unimplemented::unimplemented_stub()
672    }
673
674    /// Implements [super::client::DeploymentResourcePoolService::delete_operation].
675    fn delete_operation(
676        &self,
677        _req: longrunning::model::DeleteOperationRequest,
678        _options: gax::options::RequestOptions,
679    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
680        gaxi::unimplemented::unimplemented_stub()
681    }
682
683    /// Implements [super::client::DeploymentResourcePoolService::cancel_operation].
684    fn cancel_operation(
685        &self,
686        _req: longrunning::model::CancelOperationRequest,
687        _options: gax::options::RequestOptions,
688    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
689        gaxi::unimplemented::unimplemented_stub()
690    }
691
692    /// Implements [super::client::DeploymentResourcePoolService::wait_operation].
693    fn wait_operation(
694        &self,
695        _req: longrunning::model::WaitOperationRequest,
696        _options: gax::options::RequestOptions,
697    ) -> impl std::future::Future<
698        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
699    > + Send {
700        gaxi::unimplemented::unimplemented_stub()
701    }
702
703    /// Returns the polling error policy.
704    ///
705    /// When mocking, this method is typically irrelevant. Do not try to verify
706    /// it is called by your mocks.
707    fn get_polling_error_policy(
708        &self,
709        _options: &gax::options::RequestOptions,
710    ) -> std::sync::Arc<dyn gax::polling_error_policy::PollingErrorPolicy> {
711        std::sync::Arc::new(gax::polling_error_policy::Aip194Strict)
712    }
713
714    /// Returns the polling backoff policy.
715    ///
716    /// When mocking, this method is typically irrelevant. Do not try to verify
717    /// it is called by your mocks.
718    fn get_polling_backoff_policy(
719        &self,
720        _options: &gax::options::RequestOptions,
721    ) -> std::sync::Arc<dyn gax::polling_backoff_policy::PollingBackoffPolicy> {
722        std::sync::Arc::new(gax::exponential_backoff::ExponentialBackoff::default())
723    }
724}
725
726/// Defines the trait used to implement [super::client::EndpointService].
727///
728/// Application developers may need to implement this trait to mock
729/// `client::EndpointService`.  In other use-cases, application developers only
730/// use `client::EndpointService` and need not be concerned with this trait or
731/// its implementations.
732///
733/// Services gain new RPCs routinely. Consequently, this trait gains new methods
734/// too. To avoid breaking applications the trait provides a default
735/// implementation of each method. Most of these implementations just return an
736/// error.
737#[cfg(feature = "endpoint-service")]
738#[cfg_attr(docsrs, doc(cfg(feature = "endpoint-service")))]
739pub trait EndpointService: std::fmt::Debug + Send + Sync {
740    /// Implements [super::client::EndpointService::create_endpoint].
741    fn create_endpoint(
742        &self,
743        _req: crate::model::CreateEndpointRequest,
744        _options: gax::options::RequestOptions,
745    ) -> impl std::future::Future<
746        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
747    > + Send {
748        gaxi::unimplemented::unimplemented_stub()
749    }
750
751    /// Implements [super::client::EndpointService::get_endpoint].
752    fn get_endpoint(
753        &self,
754        _req: crate::model::GetEndpointRequest,
755        _options: gax::options::RequestOptions,
756    ) -> impl std::future::Future<
757        Output = crate::Result<gax::response::Response<crate::model::Endpoint>>,
758    > + Send {
759        gaxi::unimplemented::unimplemented_stub()
760    }
761
762    /// Implements [super::client::EndpointService::list_endpoints].
763    fn list_endpoints(
764        &self,
765        _req: crate::model::ListEndpointsRequest,
766        _options: gax::options::RequestOptions,
767    ) -> impl std::future::Future<
768        Output = crate::Result<gax::response::Response<crate::model::ListEndpointsResponse>>,
769    > + Send {
770        gaxi::unimplemented::unimplemented_stub()
771    }
772
773    /// Implements [super::client::EndpointService::update_endpoint].
774    fn update_endpoint(
775        &self,
776        _req: crate::model::UpdateEndpointRequest,
777        _options: gax::options::RequestOptions,
778    ) -> impl std::future::Future<
779        Output = crate::Result<gax::response::Response<crate::model::Endpoint>>,
780    > + Send {
781        gaxi::unimplemented::unimplemented_stub()
782    }
783
784    /// Implements [super::client::EndpointService::update_endpoint_long_running].
785    fn update_endpoint_long_running(
786        &self,
787        _req: crate::model::UpdateEndpointLongRunningRequest,
788        _options: gax::options::RequestOptions,
789    ) -> impl std::future::Future<
790        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
791    > + Send {
792        gaxi::unimplemented::unimplemented_stub()
793    }
794
795    /// Implements [super::client::EndpointService::delete_endpoint].
796    fn delete_endpoint(
797        &self,
798        _req: crate::model::DeleteEndpointRequest,
799        _options: gax::options::RequestOptions,
800    ) -> impl std::future::Future<
801        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
802    > + Send {
803        gaxi::unimplemented::unimplemented_stub()
804    }
805
806    /// Implements [super::client::EndpointService::deploy_model].
807    fn deploy_model(
808        &self,
809        _req: crate::model::DeployModelRequest,
810        _options: gax::options::RequestOptions,
811    ) -> impl std::future::Future<
812        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
813    > + Send {
814        gaxi::unimplemented::unimplemented_stub()
815    }
816
817    /// Implements [super::client::EndpointService::undeploy_model].
818    fn undeploy_model(
819        &self,
820        _req: crate::model::UndeployModelRequest,
821        _options: gax::options::RequestOptions,
822    ) -> impl std::future::Future<
823        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
824    > + Send {
825        gaxi::unimplemented::unimplemented_stub()
826    }
827
828    /// Implements [super::client::EndpointService::mutate_deployed_model].
829    fn mutate_deployed_model(
830        &self,
831        _req: crate::model::MutateDeployedModelRequest,
832        _options: gax::options::RequestOptions,
833    ) -> impl std::future::Future<
834        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
835    > + Send {
836        gaxi::unimplemented::unimplemented_stub()
837    }
838
839    /// Implements [super::client::EndpointService::list_locations].
840    fn list_locations(
841        &self,
842        _req: location::model::ListLocationsRequest,
843        _options: gax::options::RequestOptions,
844    ) -> impl std::future::Future<
845        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
846    > + Send {
847        gaxi::unimplemented::unimplemented_stub()
848    }
849
850    /// Implements [super::client::EndpointService::get_location].
851    fn get_location(
852        &self,
853        _req: location::model::GetLocationRequest,
854        _options: gax::options::RequestOptions,
855    ) -> impl std::future::Future<
856        Output = crate::Result<gax::response::Response<location::model::Location>>,
857    > + Send {
858        gaxi::unimplemented::unimplemented_stub()
859    }
860
861    /// Implements [super::client::EndpointService::set_iam_policy].
862    fn set_iam_policy(
863        &self,
864        _req: iam_v1::model::SetIamPolicyRequest,
865        _options: gax::options::RequestOptions,
866    ) -> impl std::future::Future<
867        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
868    > + Send {
869        gaxi::unimplemented::unimplemented_stub()
870    }
871
872    /// Implements [super::client::EndpointService::get_iam_policy].
873    fn get_iam_policy(
874        &self,
875        _req: iam_v1::model::GetIamPolicyRequest,
876        _options: gax::options::RequestOptions,
877    ) -> impl std::future::Future<
878        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
879    > + Send {
880        gaxi::unimplemented::unimplemented_stub()
881    }
882
883    /// Implements [super::client::EndpointService::test_iam_permissions].
884    fn test_iam_permissions(
885        &self,
886        _req: iam_v1::model::TestIamPermissionsRequest,
887        _options: gax::options::RequestOptions,
888    ) -> impl std::future::Future<
889        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
890    > + Send {
891        gaxi::unimplemented::unimplemented_stub()
892    }
893
894    /// Implements [super::client::EndpointService::list_operations].
895    fn list_operations(
896        &self,
897        _req: longrunning::model::ListOperationsRequest,
898        _options: gax::options::RequestOptions,
899    ) -> impl std::future::Future<
900        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
901    > + Send {
902        gaxi::unimplemented::unimplemented_stub()
903    }
904
905    /// Implements [super::client::EndpointService::get_operation].
906    fn get_operation(
907        &self,
908        _req: longrunning::model::GetOperationRequest,
909        _options: gax::options::RequestOptions,
910    ) -> impl std::future::Future<
911        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
912    > + Send {
913        gaxi::unimplemented::unimplemented_stub()
914    }
915
916    /// Implements [super::client::EndpointService::delete_operation].
917    fn delete_operation(
918        &self,
919        _req: longrunning::model::DeleteOperationRequest,
920        _options: gax::options::RequestOptions,
921    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
922        gaxi::unimplemented::unimplemented_stub()
923    }
924
925    /// Implements [super::client::EndpointService::cancel_operation].
926    fn cancel_operation(
927        &self,
928        _req: longrunning::model::CancelOperationRequest,
929        _options: gax::options::RequestOptions,
930    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
931        gaxi::unimplemented::unimplemented_stub()
932    }
933
934    /// Implements [super::client::EndpointService::wait_operation].
935    fn wait_operation(
936        &self,
937        _req: longrunning::model::WaitOperationRequest,
938        _options: gax::options::RequestOptions,
939    ) -> impl std::future::Future<
940        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
941    > + Send {
942        gaxi::unimplemented::unimplemented_stub()
943    }
944
945    /// Returns the polling error policy.
946    ///
947    /// When mocking, this method is typically irrelevant. Do not try to verify
948    /// it is called by your mocks.
949    fn get_polling_error_policy(
950        &self,
951        _options: &gax::options::RequestOptions,
952    ) -> std::sync::Arc<dyn gax::polling_error_policy::PollingErrorPolicy> {
953        std::sync::Arc::new(gax::polling_error_policy::Aip194Strict)
954    }
955
956    /// Returns the polling backoff policy.
957    ///
958    /// When mocking, this method is typically irrelevant. Do not try to verify
959    /// it is called by your mocks.
960    fn get_polling_backoff_policy(
961        &self,
962        _options: &gax::options::RequestOptions,
963    ) -> std::sync::Arc<dyn gax::polling_backoff_policy::PollingBackoffPolicy> {
964        std::sync::Arc::new(gax::exponential_backoff::ExponentialBackoff::default())
965    }
966}
967
968/// Defines the trait used to implement [super::client::EvaluationService].
969///
970/// Application developers may need to implement this trait to mock
971/// `client::EvaluationService`.  In other use-cases, application developers only
972/// use `client::EvaluationService` and need not be concerned with this trait or
973/// its implementations.
974///
975/// Services gain new RPCs routinely. Consequently, this trait gains new methods
976/// too. To avoid breaking applications the trait provides a default
977/// implementation of each method. Most of these implementations just return an
978/// error.
979#[cfg(feature = "evaluation-service")]
980#[cfg_attr(docsrs, doc(cfg(feature = "evaluation-service")))]
981pub trait EvaluationService: std::fmt::Debug + Send + Sync {
982    /// Implements [super::client::EvaluationService::evaluate_instances].
983    fn evaluate_instances(
984        &self,
985        _req: crate::model::EvaluateInstancesRequest,
986        _options: gax::options::RequestOptions,
987    ) -> impl std::future::Future<
988        Output = crate::Result<gax::response::Response<crate::model::EvaluateInstancesResponse>>,
989    > + Send {
990        gaxi::unimplemented::unimplemented_stub()
991    }
992
993    /// Implements [super::client::EvaluationService::list_locations].
994    fn list_locations(
995        &self,
996        _req: location::model::ListLocationsRequest,
997        _options: gax::options::RequestOptions,
998    ) -> impl std::future::Future<
999        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
1000    > + Send {
1001        gaxi::unimplemented::unimplemented_stub()
1002    }
1003
1004    /// Implements [super::client::EvaluationService::get_location].
1005    fn get_location(
1006        &self,
1007        _req: location::model::GetLocationRequest,
1008        _options: gax::options::RequestOptions,
1009    ) -> impl std::future::Future<
1010        Output = crate::Result<gax::response::Response<location::model::Location>>,
1011    > + Send {
1012        gaxi::unimplemented::unimplemented_stub()
1013    }
1014
1015    /// Implements [super::client::EvaluationService::set_iam_policy].
1016    fn set_iam_policy(
1017        &self,
1018        _req: iam_v1::model::SetIamPolicyRequest,
1019        _options: gax::options::RequestOptions,
1020    ) -> impl std::future::Future<
1021        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
1022    > + Send {
1023        gaxi::unimplemented::unimplemented_stub()
1024    }
1025
1026    /// Implements [super::client::EvaluationService::get_iam_policy].
1027    fn get_iam_policy(
1028        &self,
1029        _req: iam_v1::model::GetIamPolicyRequest,
1030        _options: gax::options::RequestOptions,
1031    ) -> impl std::future::Future<
1032        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
1033    > + Send {
1034        gaxi::unimplemented::unimplemented_stub()
1035    }
1036
1037    /// Implements [super::client::EvaluationService::test_iam_permissions].
1038    fn test_iam_permissions(
1039        &self,
1040        _req: iam_v1::model::TestIamPermissionsRequest,
1041        _options: gax::options::RequestOptions,
1042    ) -> impl std::future::Future<
1043        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
1044    > + Send {
1045        gaxi::unimplemented::unimplemented_stub()
1046    }
1047
1048    /// Implements [super::client::EvaluationService::list_operations].
1049    fn list_operations(
1050        &self,
1051        _req: longrunning::model::ListOperationsRequest,
1052        _options: gax::options::RequestOptions,
1053    ) -> impl std::future::Future<
1054        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
1055    > + Send {
1056        gaxi::unimplemented::unimplemented_stub()
1057    }
1058
1059    /// Implements [super::client::EvaluationService::get_operation].
1060    fn get_operation(
1061        &self,
1062        _req: longrunning::model::GetOperationRequest,
1063        _options: gax::options::RequestOptions,
1064    ) -> impl std::future::Future<
1065        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
1066    > + Send {
1067        gaxi::unimplemented::unimplemented_stub()
1068    }
1069
1070    /// Implements [super::client::EvaluationService::delete_operation].
1071    fn delete_operation(
1072        &self,
1073        _req: longrunning::model::DeleteOperationRequest,
1074        _options: gax::options::RequestOptions,
1075    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
1076        gaxi::unimplemented::unimplemented_stub()
1077    }
1078
1079    /// Implements [super::client::EvaluationService::cancel_operation].
1080    fn cancel_operation(
1081        &self,
1082        _req: longrunning::model::CancelOperationRequest,
1083        _options: gax::options::RequestOptions,
1084    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
1085        gaxi::unimplemented::unimplemented_stub()
1086    }
1087
1088    /// Implements [super::client::EvaluationService::wait_operation].
1089    fn wait_operation(
1090        &self,
1091        _req: longrunning::model::WaitOperationRequest,
1092        _options: gax::options::RequestOptions,
1093    ) -> impl std::future::Future<
1094        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
1095    > + Send {
1096        gaxi::unimplemented::unimplemented_stub()
1097    }
1098}
1099
1100/// Defines the trait used to implement [super::client::FeatureOnlineStoreAdminService].
1101///
1102/// Application developers may need to implement this trait to mock
1103/// `client::FeatureOnlineStoreAdminService`.  In other use-cases, application developers only
1104/// use `client::FeatureOnlineStoreAdminService` and need not be concerned with this trait or
1105/// its implementations.
1106///
1107/// Services gain new RPCs routinely. Consequently, this trait gains new methods
1108/// too. To avoid breaking applications the trait provides a default
1109/// implementation of each method. Most of these implementations just return an
1110/// error.
1111#[cfg(feature = "feature-online-store-admin-service")]
1112#[cfg_attr(docsrs, doc(cfg(feature = "feature-online-store-admin-service")))]
1113pub trait FeatureOnlineStoreAdminService: std::fmt::Debug + Send + Sync {
1114    /// Implements [super::client::FeatureOnlineStoreAdminService::create_feature_online_store].
1115    fn create_feature_online_store(
1116        &self,
1117        _req: crate::model::CreateFeatureOnlineStoreRequest,
1118        _options: gax::options::RequestOptions,
1119    ) -> impl std::future::Future<
1120        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
1121    > + Send {
1122        gaxi::unimplemented::unimplemented_stub()
1123    }
1124
1125    /// Implements [super::client::FeatureOnlineStoreAdminService::get_feature_online_store].
1126    fn get_feature_online_store(
1127        &self,
1128        _req: crate::model::GetFeatureOnlineStoreRequest,
1129        _options: gax::options::RequestOptions,
1130    ) -> impl std::future::Future<
1131        Output = crate::Result<gax::response::Response<crate::model::FeatureOnlineStore>>,
1132    > + Send {
1133        gaxi::unimplemented::unimplemented_stub()
1134    }
1135
1136    /// Implements [super::client::FeatureOnlineStoreAdminService::list_feature_online_stores].
1137    fn list_feature_online_stores(
1138        &self,
1139        _req: crate::model::ListFeatureOnlineStoresRequest,
1140        _options: gax::options::RequestOptions,
1141    ) -> impl std::future::Future<
1142        Output = crate::Result<
1143            gax::response::Response<crate::model::ListFeatureOnlineStoresResponse>,
1144        >,
1145    > + Send {
1146        gaxi::unimplemented::unimplemented_stub()
1147    }
1148
1149    /// Implements [super::client::FeatureOnlineStoreAdminService::update_feature_online_store].
1150    fn update_feature_online_store(
1151        &self,
1152        _req: crate::model::UpdateFeatureOnlineStoreRequest,
1153        _options: gax::options::RequestOptions,
1154    ) -> impl std::future::Future<
1155        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
1156    > + Send {
1157        gaxi::unimplemented::unimplemented_stub()
1158    }
1159
1160    /// Implements [super::client::FeatureOnlineStoreAdminService::delete_feature_online_store].
1161    fn delete_feature_online_store(
1162        &self,
1163        _req: crate::model::DeleteFeatureOnlineStoreRequest,
1164        _options: gax::options::RequestOptions,
1165    ) -> impl std::future::Future<
1166        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
1167    > + Send {
1168        gaxi::unimplemented::unimplemented_stub()
1169    }
1170
1171    /// Implements [super::client::FeatureOnlineStoreAdminService::create_feature_view].
1172    fn create_feature_view(
1173        &self,
1174        _req: crate::model::CreateFeatureViewRequest,
1175        _options: gax::options::RequestOptions,
1176    ) -> impl std::future::Future<
1177        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
1178    > + Send {
1179        gaxi::unimplemented::unimplemented_stub()
1180    }
1181
1182    /// Implements [super::client::FeatureOnlineStoreAdminService::get_feature_view].
1183    fn get_feature_view(
1184        &self,
1185        _req: crate::model::GetFeatureViewRequest,
1186        _options: gax::options::RequestOptions,
1187    ) -> impl std::future::Future<
1188        Output = crate::Result<gax::response::Response<crate::model::FeatureView>>,
1189    > + Send {
1190        gaxi::unimplemented::unimplemented_stub()
1191    }
1192
1193    /// Implements [super::client::FeatureOnlineStoreAdminService::list_feature_views].
1194    fn list_feature_views(
1195        &self,
1196        _req: crate::model::ListFeatureViewsRequest,
1197        _options: gax::options::RequestOptions,
1198    ) -> impl std::future::Future<
1199        Output = crate::Result<gax::response::Response<crate::model::ListFeatureViewsResponse>>,
1200    > + Send {
1201        gaxi::unimplemented::unimplemented_stub()
1202    }
1203
1204    /// Implements [super::client::FeatureOnlineStoreAdminService::update_feature_view].
1205    fn update_feature_view(
1206        &self,
1207        _req: crate::model::UpdateFeatureViewRequest,
1208        _options: gax::options::RequestOptions,
1209    ) -> impl std::future::Future<
1210        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
1211    > + Send {
1212        gaxi::unimplemented::unimplemented_stub()
1213    }
1214
1215    /// Implements [super::client::FeatureOnlineStoreAdminService::delete_feature_view].
1216    fn delete_feature_view(
1217        &self,
1218        _req: crate::model::DeleteFeatureViewRequest,
1219        _options: gax::options::RequestOptions,
1220    ) -> impl std::future::Future<
1221        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
1222    > + Send {
1223        gaxi::unimplemented::unimplemented_stub()
1224    }
1225
1226    /// Implements [super::client::FeatureOnlineStoreAdminService::sync_feature_view].
1227    fn sync_feature_view(
1228        &self,
1229        _req: crate::model::SyncFeatureViewRequest,
1230        _options: gax::options::RequestOptions,
1231    ) -> impl std::future::Future<
1232        Output = crate::Result<gax::response::Response<crate::model::SyncFeatureViewResponse>>,
1233    > + Send {
1234        gaxi::unimplemented::unimplemented_stub()
1235    }
1236
1237    /// Implements [super::client::FeatureOnlineStoreAdminService::get_feature_view_sync].
1238    fn get_feature_view_sync(
1239        &self,
1240        _req: crate::model::GetFeatureViewSyncRequest,
1241        _options: gax::options::RequestOptions,
1242    ) -> impl std::future::Future<
1243        Output = crate::Result<gax::response::Response<crate::model::FeatureViewSync>>,
1244    > + Send {
1245        gaxi::unimplemented::unimplemented_stub()
1246    }
1247
1248    /// Implements [super::client::FeatureOnlineStoreAdminService::list_feature_view_syncs].
1249    fn list_feature_view_syncs(
1250        &self,
1251        _req: crate::model::ListFeatureViewSyncsRequest,
1252        _options: gax::options::RequestOptions,
1253    ) -> impl std::future::Future<
1254        Output = crate::Result<gax::response::Response<crate::model::ListFeatureViewSyncsResponse>>,
1255    > + Send {
1256        gaxi::unimplemented::unimplemented_stub()
1257    }
1258
1259    /// Implements [super::client::FeatureOnlineStoreAdminService::list_locations].
1260    fn list_locations(
1261        &self,
1262        _req: location::model::ListLocationsRequest,
1263        _options: gax::options::RequestOptions,
1264    ) -> impl std::future::Future<
1265        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
1266    > + Send {
1267        gaxi::unimplemented::unimplemented_stub()
1268    }
1269
1270    /// Implements [super::client::FeatureOnlineStoreAdminService::get_location].
1271    fn get_location(
1272        &self,
1273        _req: location::model::GetLocationRequest,
1274        _options: gax::options::RequestOptions,
1275    ) -> impl std::future::Future<
1276        Output = crate::Result<gax::response::Response<location::model::Location>>,
1277    > + Send {
1278        gaxi::unimplemented::unimplemented_stub()
1279    }
1280
1281    /// Implements [super::client::FeatureOnlineStoreAdminService::set_iam_policy].
1282    fn set_iam_policy(
1283        &self,
1284        _req: iam_v1::model::SetIamPolicyRequest,
1285        _options: gax::options::RequestOptions,
1286    ) -> impl std::future::Future<
1287        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
1288    > + Send {
1289        gaxi::unimplemented::unimplemented_stub()
1290    }
1291
1292    /// Implements [super::client::FeatureOnlineStoreAdminService::get_iam_policy].
1293    fn get_iam_policy(
1294        &self,
1295        _req: iam_v1::model::GetIamPolicyRequest,
1296        _options: gax::options::RequestOptions,
1297    ) -> impl std::future::Future<
1298        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
1299    > + Send {
1300        gaxi::unimplemented::unimplemented_stub()
1301    }
1302
1303    /// Implements [super::client::FeatureOnlineStoreAdminService::test_iam_permissions].
1304    fn test_iam_permissions(
1305        &self,
1306        _req: iam_v1::model::TestIamPermissionsRequest,
1307        _options: gax::options::RequestOptions,
1308    ) -> impl std::future::Future<
1309        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
1310    > + Send {
1311        gaxi::unimplemented::unimplemented_stub()
1312    }
1313
1314    /// Implements [super::client::FeatureOnlineStoreAdminService::list_operations].
1315    fn list_operations(
1316        &self,
1317        _req: longrunning::model::ListOperationsRequest,
1318        _options: gax::options::RequestOptions,
1319    ) -> impl std::future::Future<
1320        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
1321    > + Send {
1322        gaxi::unimplemented::unimplemented_stub()
1323    }
1324
1325    /// Implements [super::client::FeatureOnlineStoreAdminService::get_operation].
1326    fn get_operation(
1327        &self,
1328        _req: longrunning::model::GetOperationRequest,
1329        _options: gax::options::RequestOptions,
1330    ) -> impl std::future::Future<
1331        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
1332    > + Send {
1333        gaxi::unimplemented::unimplemented_stub()
1334    }
1335
1336    /// Implements [super::client::FeatureOnlineStoreAdminService::delete_operation].
1337    fn delete_operation(
1338        &self,
1339        _req: longrunning::model::DeleteOperationRequest,
1340        _options: gax::options::RequestOptions,
1341    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
1342        gaxi::unimplemented::unimplemented_stub()
1343    }
1344
1345    /// Implements [super::client::FeatureOnlineStoreAdminService::cancel_operation].
1346    fn cancel_operation(
1347        &self,
1348        _req: longrunning::model::CancelOperationRequest,
1349        _options: gax::options::RequestOptions,
1350    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
1351        gaxi::unimplemented::unimplemented_stub()
1352    }
1353
1354    /// Implements [super::client::FeatureOnlineStoreAdminService::wait_operation].
1355    fn wait_operation(
1356        &self,
1357        _req: longrunning::model::WaitOperationRequest,
1358        _options: gax::options::RequestOptions,
1359    ) -> impl std::future::Future<
1360        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
1361    > + Send {
1362        gaxi::unimplemented::unimplemented_stub()
1363    }
1364
1365    /// Returns the polling error policy.
1366    ///
1367    /// When mocking, this method is typically irrelevant. Do not try to verify
1368    /// it is called by your mocks.
1369    fn get_polling_error_policy(
1370        &self,
1371        _options: &gax::options::RequestOptions,
1372    ) -> std::sync::Arc<dyn gax::polling_error_policy::PollingErrorPolicy> {
1373        std::sync::Arc::new(gax::polling_error_policy::Aip194Strict)
1374    }
1375
1376    /// Returns the polling backoff policy.
1377    ///
1378    /// When mocking, this method is typically irrelevant. Do not try to verify
1379    /// it is called by your mocks.
1380    fn get_polling_backoff_policy(
1381        &self,
1382        _options: &gax::options::RequestOptions,
1383    ) -> std::sync::Arc<dyn gax::polling_backoff_policy::PollingBackoffPolicy> {
1384        std::sync::Arc::new(gax::exponential_backoff::ExponentialBackoff::default())
1385    }
1386}
1387
1388/// Defines the trait used to implement [super::client::FeatureOnlineStoreService].
1389///
1390/// Application developers may need to implement this trait to mock
1391/// `client::FeatureOnlineStoreService`.  In other use-cases, application developers only
1392/// use `client::FeatureOnlineStoreService` and need not be concerned with this trait or
1393/// its implementations.
1394///
1395/// Services gain new RPCs routinely. Consequently, this trait gains new methods
1396/// too. To avoid breaking applications the trait provides a default
1397/// implementation of each method. Most of these implementations just return an
1398/// error.
1399#[cfg(feature = "feature-online-store-service")]
1400#[cfg_attr(docsrs, doc(cfg(feature = "feature-online-store-service")))]
1401pub trait FeatureOnlineStoreService: std::fmt::Debug + Send + Sync {
1402    /// Implements [super::client::FeatureOnlineStoreService::fetch_feature_values].
1403    fn fetch_feature_values(
1404        &self,
1405        _req: crate::model::FetchFeatureValuesRequest,
1406        _options: gax::options::RequestOptions,
1407    ) -> impl std::future::Future<
1408        Output = crate::Result<gax::response::Response<crate::model::FetchFeatureValuesResponse>>,
1409    > + Send {
1410        gaxi::unimplemented::unimplemented_stub()
1411    }
1412
1413    /// Implements [super::client::FeatureOnlineStoreService::search_nearest_entities].
1414    fn search_nearest_entities(
1415        &self,
1416        _req: crate::model::SearchNearestEntitiesRequest,
1417        _options: gax::options::RequestOptions,
1418    ) -> impl std::future::Future<
1419        Output = crate::Result<
1420            gax::response::Response<crate::model::SearchNearestEntitiesResponse>,
1421        >,
1422    > + Send {
1423        gaxi::unimplemented::unimplemented_stub()
1424    }
1425
1426    /// Implements [super::client::FeatureOnlineStoreService::generate_fetch_access_token].
1427    fn generate_fetch_access_token(
1428        &self,
1429        _req: crate::model::GenerateFetchAccessTokenRequest,
1430        _options: gax::options::RequestOptions,
1431    ) -> impl std::future::Future<
1432        Output = crate::Result<
1433            gax::response::Response<crate::model::GenerateFetchAccessTokenResponse>,
1434        >,
1435    > + Send {
1436        gaxi::unimplemented::unimplemented_stub()
1437    }
1438
1439    /// Implements [super::client::FeatureOnlineStoreService::list_locations].
1440    fn list_locations(
1441        &self,
1442        _req: location::model::ListLocationsRequest,
1443        _options: gax::options::RequestOptions,
1444    ) -> impl std::future::Future<
1445        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
1446    > + Send {
1447        gaxi::unimplemented::unimplemented_stub()
1448    }
1449
1450    /// Implements [super::client::FeatureOnlineStoreService::get_location].
1451    fn get_location(
1452        &self,
1453        _req: location::model::GetLocationRequest,
1454        _options: gax::options::RequestOptions,
1455    ) -> impl std::future::Future<
1456        Output = crate::Result<gax::response::Response<location::model::Location>>,
1457    > + Send {
1458        gaxi::unimplemented::unimplemented_stub()
1459    }
1460
1461    /// Implements [super::client::FeatureOnlineStoreService::set_iam_policy].
1462    fn set_iam_policy(
1463        &self,
1464        _req: iam_v1::model::SetIamPolicyRequest,
1465        _options: gax::options::RequestOptions,
1466    ) -> impl std::future::Future<
1467        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
1468    > + Send {
1469        gaxi::unimplemented::unimplemented_stub()
1470    }
1471
1472    /// Implements [super::client::FeatureOnlineStoreService::get_iam_policy].
1473    fn get_iam_policy(
1474        &self,
1475        _req: iam_v1::model::GetIamPolicyRequest,
1476        _options: gax::options::RequestOptions,
1477    ) -> impl std::future::Future<
1478        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
1479    > + Send {
1480        gaxi::unimplemented::unimplemented_stub()
1481    }
1482
1483    /// Implements [super::client::FeatureOnlineStoreService::test_iam_permissions].
1484    fn test_iam_permissions(
1485        &self,
1486        _req: iam_v1::model::TestIamPermissionsRequest,
1487        _options: gax::options::RequestOptions,
1488    ) -> impl std::future::Future<
1489        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
1490    > + Send {
1491        gaxi::unimplemented::unimplemented_stub()
1492    }
1493
1494    /// Implements [super::client::FeatureOnlineStoreService::list_operations].
1495    fn list_operations(
1496        &self,
1497        _req: longrunning::model::ListOperationsRequest,
1498        _options: gax::options::RequestOptions,
1499    ) -> impl std::future::Future<
1500        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
1501    > + Send {
1502        gaxi::unimplemented::unimplemented_stub()
1503    }
1504
1505    /// Implements [super::client::FeatureOnlineStoreService::get_operation].
1506    fn get_operation(
1507        &self,
1508        _req: longrunning::model::GetOperationRequest,
1509        _options: gax::options::RequestOptions,
1510    ) -> impl std::future::Future<
1511        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
1512    > + Send {
1513        gaxi::unimplemented::unimplemented_stub()
1514    }
1515
1516    /// Implements [super::client::FeatureOnlineStoreService::delete_operation].
1517    fn delete_operation(
1518        &self,
1519        _req: longrunning::model::DeleteOperationRequest,
1520        _options: gax::options::RequestOptions,
1521    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
1522        gaxi::unimplemented::unimplemented_stub()
1523    }
1524
1525    /// Implements [super::client::FeatureOnlineStoreService::cancel_operation].
1526    fn cancel_operation(
1527        &self,
1528        _req: longrunning::model::CancelOperationRequest,
1529        _options: gax::options::RequestOptions,
1530    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
1531        gaxi::unimplemented::unimplemented_stub()
1532    }
1533
1534    /// Implements [super::client::FeatureOnlineStoreService::wait_operation].
1535    fn wait_operation(
1536        &self,
1537        _req: longrunning::model::WaitOperationRequest,
1538        _options: gax::options::RequestOptions,
1539    ) -> impl std::future::Future<
1540        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
1541    > + Send {
1542        gaxi::unimplemented::unimplemented_stub()
1543    }
1544}
1545
1546/// Defines the trait used to implement [super::client::FeatureRegistryService].
1547///
1548/// Application developers may need to implement this trait to mock
1549/// `client::FeatureRegistryService`.  In other use-cases, application developers only
1550/// use `client::FeatureRegistryService` and need not be concerned with this trait or
1551/// its implementations.
1552///
1553/// Services gain new RPCs routinely. Consequently, this trait gains new methods
1554/// too. To avoid breaking applications the trait provides a default
1555/// implementation of each method. Most of these implementations just return an
1556/// error.
1557#[cfg(feature = "feature-registry-service")]
1558#[cfg_attr(docsrs, doc(cfg(feature = "feature-registry-service")))]
1559pub trait FeatureRegistryService: std::fmt::Debug + Send + Sync {
1560    /// Implements [super::client::FeatureRegistryService::create_feature_group].
1561    fn create_feature_group(
1562        &self,
1563        _req: crate::model::CreateFeatureGroupRequest,
1564        _options: gax::options::RequestOptions,
1565    ) -> impl std::future::Future<
1566        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
1567    > + Send {
1568        gaxi::unimplemented::unimplemented_stub()
1569    }
1570
1571    /// Implements [super::client::FeatureRegistryService::get_feature_group].
1572    fn get_feature_group(
1573        &self,
1574        _req: crate::model::GetFeatureGroupRequest,
1575        _options: gax::options::RequestOptions,
1576    ) -> impl std::future::Future<
1577        Output = crate::Result<gax::response::Response<crate::model::FeatureGroup>>,
1578    > + Send {
1579        gaxi::unimplemented::unimplemented_stub()
1580    }
1581
1582    /// Implements [super::client::FeatureRegistryService::list_feature_groups].
1583    fn list_feature_groups(
1584        &self,
1585        _req: crate::model::ListFeatureGroupsRequest,
1586        _options: gax::options::RequestOptions,
1587    ) -> impl std::future::Future<
1588        Output = crate::Result<gax::response::Response<crate::model::ListFeatureGroupsResponse>>,
1589    > + Send {
1590        gaxi::unimplemented::unimplemented_stub()
1591    }
1592
1593    /// Implements [super::client::FeatureRegistryService::update_feature_group].
1594    fn update_feature_group(
1595        &self,
1596        _req: crate::model::UpdateFeatureGroupRequest,
1597        _options: gax::options::RequestOptions,
1598    ) -> impl std::future::Future<
1599        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
1600    > + Send {
1601        gaxi::unimplemented::unimplemented_stub()
1602    }
1603
1604    /// Implements [super::client::FeatureRegistryService::delete_feature_group].
1605    fn delete_feature_group(
1606        &self,
1607        _req: crate::model::DeleteFeatureGroupRequest,
1608        _options: gax::options::RequestOptions,
1609    ) -> impl std::future::Future<
1610        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
1611    > + Send {
1612        gaxi::unimplemented::unimplemented_stub()
1613    }
1614
1615    /// Implements [super::client::FeatureRegistryService::create_feature].
1616    fn create_feature(
1617        &self,
1618        _req: crate::model::CreateFeatureRequest,
1619        _options: gax::options::RequestOptions,
1620    ) -> impl std::future::Future<
1621        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
1622    > + Send {
1623        gaxi::unimplemented::unimplemented_stub()
1624    }
1625
1626    /// Implements [super::client::FeatureRegistryService::batch_create_features].
1627    fn batch_create_features(
1628        &self,
1629        _req: crate::model::BatchCreateFeaturesRequest,
1630        _options: gax::options::RequestOptions,
1631    ) -> impl std::future::Future<
1632        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
1633    > + Send {
1634        gaxi::unimplemented::unimplemented_stub()
1635    }
1636
1637    /// Implements [super::client::FeatureRegistryService::get_feature].
1638    fn get_feature(
1639        &self,
1640        _req: crate::model::GetFeatureRequest,
1641        _options: gax::options::RequestOptions,
1642    ) -> impl std::future::Future<
1643        Output = crate::Result<gax::response::Response<crate::model::Feature>>,
1644    > + Send {
1645        gaxi::unimplemented::unimplemented_stub()
1646    }
1647
1648    /// Implements [super::client::FeatureRegistryService::list_features].
1649    fn list_features(
1650        &self,
1651        _req: crate::model::ListFeaturesRequest,
1652        _options: gax::options::RequestOptions,
1653    ) -> impl std::future::Future<
1654        Output = crate::Result<gax::response::Response<crate::model::ListFeaturesResponse>>,
1655    > + Send {
1656        gaxi::unimplemented::unimplemented_stub()
1657    }
1658
1659    /// Implements [super::client::FeatureRegistryService::update_feature].
1660    fn update_feature(
1661        &self,
1662        _req: crate::model::UpdateFeatureRequest,
1663        _options: gax::options::RequestOptions,
1664    ) -> impl std::future::Future<
1665        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
1666    > + Send {
1667        gaxi::unimplemented::unimplemented_stub()
1668    }
1669
1670    /// Implements [super::client::FeatureRegistryService::delete_feature].
1671    fn delete_feature(
1672        &self,
1673        _req: crate::model::DeleteFeatureRequest,
1674        _options: gax::options::RequestOptions,
1675    ) -> impl std::future::Future<
1676        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
1677    > + Send {
1678        gaxi::unimplemented::unimplemented_stub()
1679    }
1680
1681    /// Implements [super::client::FeatureRegistryService::list_locations].
1682    fn list_locations(
1683        &self,
1684        _req: location::model::ListLocationsRequest,
1685        _options: gax::options::RequestOptions,
1686    ) -> impl std::future::Future<
1687        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
1688    > + Send {
1689        gaxi::unimplemented::unimplemented_stub()
1690    }
1691
1692    /// Implements [super::client::FeatureRegistryService::get_location].
1693    fn get_location(
1694        &self,
1695        _req: location::model::GetLocationRequest,
1696        _options: gax::options::RequestOptions,
1697    ) -> impl std::future::Future<
1698        Output = crate::Result<gax::response::Response<location::model::Location>>,
1699    > + Send {
1700        gaxi::unimplemented::unimplemented_stub()
1701    }
1702
1703    /// Implements [super::client::FeatureRegistryService::set_iam_policy].
1704    fn set_iam_policy(
1705        &self,
1706        _req: iam_v1::model::SetIamPolicyRequest,
1707        _options: gax::options::RequestOptions,
1708    ) -> impl std::future::Future<
1709        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
1710    > + Send {
1711        gaxi::unimplemented::unimplemented_stub()
1712    }
1713
1714    /// Implements [super::client::FeatureRegistryService::get_iam_policy].
1715    fn get_iam_policy(
1716        &self,
1717        _req: iam_v1::model::GetIamPolicyRequest,
1718        _options: gax::options::RequestOptions,
1719    ) -> impl std::future::Future<
1720        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
1721    > + Send {
1722        gaxi::unimplemented::unimplemented_stub()
1723    }
1724
1725    /// Implements [super::client::FeatureRegistryService::test_iam_permissions].
1726    fn test_iam_permissions(
1727        &self,
1728        _req: iam_v1::model::TestIamPermissionsRequest,
1729        _options: gax::options::RequestOptions,
1730    ) -> impl std::future::Future<
1731        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
1732    > + Send {
1733        gaxi::unimplemented::unimplemented_stub()
1734    }
1735
1736    /// Implements [super::client::FeatureRegistryService::list_operations].
1737    fn list_operations(
1738        &self,
1739        _req: longrunning::model::ListOperationsRequest,
1740        _options: gax::options::RequestOptions,
1741    ) -> impl std::future::Future<
1742        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
1743    > + Send {
1744        gaxi::unimplemented::unimplemented_stub()
1745    }
1746
1747    /// Implements [super::client::FeatureRegistryService::get_operation].
1748    fn get_operation(
1749        &self,
1750        _req: longrunning::model::GetOperationRequest,
1751        _options: gax::options::RequestOptions,
1752    ) -> impl std::future::Future<
1753        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
1754    > + Send {
1755        gaxi::unimplemented::unimplemented_stub()
1756    }
1757
1758    /// Implements [super::client::FeatureRegistryService::delete_operation].
1759    fn delete_operation(
1760        &self,
1761        _req: longrunning::model::DeleteOperationRequest,
1762        _options: gax::options::RequestOptions,
1763    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
1764        gaxi::unimplemented::unimplemented_stub()
1765    }
1766
1767    /// Implements [super::client::FeatureRegistryService::cancel_operation].
1768    fn cancel_operation(
1769        &self,
1770        _req: longrunning::model::CancelOperationRequest,
1771        _options: gax::options::RequestOptions,
1772    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
1773        gaxi::unimplemented::unimplemented_stub()
1774    }
1775
1776    /// Implements [super::client::FeatureRegistryService::wait_operation].
1777    fn wait_operation(
1778        &self,
1779        _req: longrunning::model::WaitOperationRequest,
1780        _options: gax::options::RequestOptions,
1781    ) -> impl std::future::Future<
1782        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
1783    > + Send {
1784        gaxi::unimplemented::unimplemented_stub()
1785    }
1786
1787    /// Returns the polling error policy.
1788    ///
1789    /// When mocking, this method is typically irrelevant. Do not try to verify
1790    /// it is called by your mocks.
1791    fn get_polling_error_policy(
1792        &self,
1793        _options: &gax::options::RequestOptions,
1794    ) -> std::sync::Arc<dyn gax::polling_error_policy::PollingErrorPolicy> {
1795        std::sync::Arc::new(gax::polling_error_policy::Aip194Strict)
1796    }
1797
1798    /// Returns the polling backoff policy.
1799    ///
1800    /// When mocking, this method is typically irrelevant. Do not try to verify
1801    /// it is called by your mocks.
1802    fn get_polling_backoff_policy(
1803        &self,
1804        _options: &gax::options::RequestOptions,
1805    ) -> std::sync::Arc<dyn gax::polling_backoff_policy::PollingBackoffPolicy> {
1806        std::sync::Arc::new(gax::exponential_backoff::ExponentialBackoff::default())
1807    }
1808}
1809
1810/// Defines the trait used to implement [super::client::FeaturestoreOnlineServingService].
1811///
1812/// Application developers may need to implement this trait to mock
1813/// `client::FeaturestoreOnlineServingService`.  In other use-cases, application developers only
1814/// use `client::FeaturestoreOnlineServingService` and need not be concerned with this trait or
1815/// its implementations.
1816///
1817/// Services gain new RPCs routinely. Consequently, this trait gains new methods
1818/// too. To avoid breaking applications the trait provides a default
1819/// implementation of each method. Most of these implementations just return an
1820/// error.
1821#[cfg(feature = "featurestore-online-serving-service")]
1822#[cfg_attr(docsrs, doc(cfg(feature = "featurestore-online-serving-service")))]
1823pub trait FeaturestoreOnlineServingService: std::fmt::Debug + Send + Sync {
1824    /// Implements [super::client::FeaturestoreOnlineServingService::read_feature_values].
1825    fn read_feature_values(
1826        &self,
1827        _req: crate::model::ReadFeatureValuesRequest,
1828        _options: gax::options::RequestOptions,
1829    ) -> impl std::future::Future<
1830        Output = crate::Result<gax::response::Response<crate::model::ReadFeatureValuesResponse>>,
1831    > + Send {
1832        gaxi::unimplemented::unimplemented_stub()
1833    }
1834
1835    /// Implements [super::client::FeaturestoreOnlineServingService::write_feature_values].
1836    fn write_feature_values(
1837        &self,
1838        _req: crate::model::WriteFeatureValuesRequest,
1839        _options: gax::options::RequestOptions,
1840    ) -> impl std::future::Future<
1841        Output = crate::Result<gax::response::Response<crate::model::WriteFeatureValuesResponse>>,
1842    > + Send {
1843        gaxi::unimplemented::unimplemented_stub()
1844    }
1845
1846    /// Implements [super::client::FeaturestoreOnlineServingService::list_locations].
1847    fn list_locations(
1848        &self,
1849        _req: location::model::ListLocationsRequest,
1850        _options: gax::options::RequestOptions,
1851    ) -> impl std::future::Future<
1852        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
1853    > + Send {
1854        gaxi::unimplemented::unimplemented_stub()
1855    }
1856
1857    /// Implements [super::client::FeaturestoreOnlineServingService::get_location].
1858    fn get_location(
1859        &self,
1860        _req: location::model::GetLocationRequest,
1861        _options: gax::options::RequestOptions,
1862    ) -> impl std::future::Future<
1863        Output = crate::Result<gax::response::Response<location::model::Location>>,
1864    > + Send {
1865        gaxi::unimplemented::unimplemented_stub()
1866    }
1867
1868    /// Implements [super::client::FeaturestoreOnlineServingService::set_iam_policy].
1869    fn set_iam_policy(
1870        &self,
1871        _req: iam_v1::model::SetIamPolicyRequest,
1872        _options: gax::options::RequestOptions,
1873    ) -> impl std::future::Future<
1874        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
1875    > + Send {
1876        gaxi::unimplemented::unimplemented_stub()
1877    }
1878
1879    /// Implements [super::client::FeaturestoreOnlineServingService::get_iam_policy].
1880    fn get_iam_policy(
1881        &self,
1882        _req: iam_v1::model::GetIamPolicyRequest,
1883        _options: gax::options::RequestOptions,
1884    ) -> impl std::future::Future<
1885        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
1886    > + Send {
1887        gaxi::unimplemented::unimplemented_stub()
1888    }
1889
1890    /// Implements [super::client::FeaturestoreOnlineServingService::test_iam_permissions].
1891    fn test_iam_permissions(
1892        &self,
1893        _req: iam_v1::model::TestIamPermissionsRequest,
1894        _options: gax::options::RequestOptions,
1895    ) -> impl std::future::Future<
1896        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
1897    > + Send {
1898        gaxi::unimplemented::unimplemented_stub()
1899    }
1900
1901    /// Implements [super::client::FeaturestoreOnlineServingService::list_operations].
1902    fn list_operations(
1903        &self,
1904        _req: longrunning::model::ListOperationsRequest,
1905        _options: gax::options::RequestOptions,
1906    ) -> impl std::future::Future<
1907        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
1908    > + Send {
1909        gaxi::unimplemented::unimplemented_stub()
1910    }
1911
1912    /// Implements [super::client::FeaturestoreOnlineServingService::get_operation].
1913    fn get_operation(
1914        &self,
1915        _req: longrunning::model::GetOperationRequest,
1916        _options: gax::options::RequestOptions,
1917    ) -> impl std::future::Future<
1918        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
1919    > + Send {
1920        gaxi::unimplemented::unimplemented_stub()
1921    }
1922
1923    /// Implements [super::client::FeaturestoreOnlineServingService::delete_operation].
1924    fn delete_operation(
1925        &self,
1926        _req: longrunning::model::DeleteOperationRequest,
1927        _options: gax::options::RequestOptions,
1928    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
1929        gaxi::unimplemented::unimplemented_stub()
1930    }
1931
1932    /// Implements [super::client::FeaturestoreOnlineServingService::cancel_operation].
1933    fn cancel_operation(
1934        &self,
1935        _req: longrunning::model::CancelOperationRequest,
1936        _options: gax::options::RequestOptions,
1937    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
1938        gaxi::unimplemented::unimplemented_stub()
1939    }
1940
1941    /// Implements [super::client::FeaturestoreOnlineServingService::wait_operation].
1942    fn wait_operation(
1943        &self,
1944        _req: longrunning::model::WaitOperationRequest,
1945        _options: gax::options::RequestOptions,
1946    ) -> impl std::future::Future<
1947        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
1948    > + Send {
1949        gaxi::unimplemented::unimplemented_stub()
1950    }
1951}
1952
1953/// Defines the trait used to implement [super::client::FeaturestoreService].
1954///
1955/// Application developers may need to implement this trait to mock
1956/// `client::FeaturestoreService`.  In other use-cases, application developers only
1957/// use `client::FeaturestoreService` and need not be concerned with this trait or
1958/// its implementations.
1959///
1960/// Services gain new RPCs routinely. Consequently, this trait gains new methods
1961/// too. To avoid breaking applications the trait provides a default
1962/// implementation of each method. Most of these implementations just return an
1963/// error.
1964#[cfg(feature = "featurestore-service")]
1965#[cfg_attr(docsrs, doc(cfg(feature = "featurestore-service")))]
1966pub trait FeaturestoreService: std::fmt::Debug + Send + Sync {
1967    /// Implements [super::client::FeaturestoreService::create_featurestore].
1968    fn create_featurestore(
1969        &self,
1970        _req: crate::model::CreateFeaturestoreRequest,
1971        _options: gax::options::RequestOptions,
1972    ) -> impl std::future::Future<
1973        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
1974    > + Send {
1975        gaxi::unimplemented::unimplemented_stub()
1976    }
1977
1978    /// Implements [super::client::FeaturestoreService::get_featurestore].
1979    fn get_featurestore(
1980        &self,
1981        _req: crate::model::GetFeaturestoreRequest,
1982        _options: gax::options::RequestOptions,
1983    ) -> impl std::future::Future<
1984        Output = crate::Result<gax::response::Response<crate::model::Featurestore>>,
1985    > + Send {
1986        gaxi::unimplemented::unimplemented_stub()
1987    }
1988
1989    /// Implements [super::client::FeaturestoreService::list_featurestores].
1990    fn list_featurestores(
1991        &self,
1992        _req: crate::model::ListFeaturestoresRequest,
1993        _options: gax::options::RequestOptions,
1994    ) -> impl std::future::Future<
1995        Output = crate::Result<gax::response::Response<crate::model::ListFeaturestoresResponse>>,
1996    > + Send {
1997        gaxi::unimplemented::unimplemented_stub()
1998    }
1999
2000    /// Implements [super::client::FeaturestoreService::update_featurestore].
2001    fn update_featurestore(
2002        &self,
2003        _req: crate::model::UpdateFeaturestoreRequest,
2004        _options: gax::options::RequestOptions,
2005    ) -> impl std::future::Future<
2006        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
2007    > + Send {
2008        gaxi::unimplemented::unimplemented_stub()
2009    }
2010
2011    /// Implements [super::client::FeaturestoreService::delete_featurestore].
2012    fn delete_featurestore(
2013        &self,
2014        _req: crate::model::DeleteFeaturestoreRequest,
2015        _options: gax::options::RequestOptions,
2016    ) -> impl std::future::Future<
2017        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
2018    > + Send {
2019        gaxi::unimplemented::unimplemented_stub()
2020    }
2021
2022    /// Implements [super::client::FeaturestoreService::create_entity_type].
2023    fn create_entity_type(
2024        &self,
2025        _req: crate::model::CreateEntityTypeRequest,
2026        _options: gax::options::RequestOptions,
2027    ) -> impl std::future::Future<
2028        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
2029    > + Send {
2030        gaxi::unimplemented::unimplemented_stub()
2031    }
2032
2033    /// Implements [super::client::FeaturestoreService::get_entity_type].
2034    fn get_entity_type(
2035        &self,
2036        _req: crate::model::GetEntityTypeRequest,
2037        _options: gax::options::RequestOptions,
2038    ) -> impl std::future::Future<
2039        Output = crate::Result<gax::response::Response<crate::model::EntityType>>,
2040    > + Send {
2041        gaxi::unimplemented::unimplemented_stub()
2042    }
2043
2044    /// Implements [super::client::FeaturestoreService::list_entity_types].
2045    fn list_entity_types(
2046        &self,
2047        _req: crate::model::ListEntityTypesRequest,
2048        _options: gax::options::RequestOptions,
2049    ) -> impl std::future::Future<
2050        Output = crate::Result<gax::response::Response<crate::model::ListEntityTypesResponse>>,
2051    > + Send {
2052        gaxi::unimplemented::unimplemented_stub()
2053    }
2054
2055    /// Implements [super::client::FeaturestoreService::update_entity_type].
2056    fn update_entity_type(
2057        &self,
2058        _req: crate::model::UpdateEntityTypeRequest,
2059        _options: gax::options::RequestOptions,
2060    ) -> impl std::future::Future<
2061        Output = crate::Result<gax::response::Response<crate::model::EntityType>>,
2062    > + Send {
2063        gaxi::unimplemented::unimplemented_stub()
2064    }
2065
2066    /// Implements [super::client::FeaturestoreService::delete_entity_type].
2067    fn delete_entity_type(
2068        &self,
2069        _req: crate::model::DeleteEntityTypeRequest,
2070        _options: gax::options::RequestOptions,
2071    ) -> impl std::future::Future<
2072        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
2073    > + Send {
2074        gaxi::unimplemented::unimplemented_stub()
2075    }
2076
2077    /// Implements [super::client::FeaturestoreService::create_feature].
2078    fn create_feature(
2079        &self,
2080        _req: crate::model::CreateFeatureRequest,
2081        _options: gax::options::RequestOptions,
2082    ) -> impl std::future::Future<
2083        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
2084    > + Send {
2085        gaxi::unimplemented::unimplemented_stub()
2086    }
2087
2088    /// Implements [super::client::FeaturestoreService::batch_create_features].
2089    fn batch_create_features(
2090        &self,
2091        _req: crate::model::BatchCreateFeaturesRequest,
2092        _options: gax::options::RequestOptions,
2093    ) -> impl std::future::Future<
2094        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
2095    > + Send {
2096        gaxi::unimplemented::unimplemented_stub()
2097    }
2098
2099    /// Implements [super::client::FeaturestoreService::get_feature].
2100    fn get_feature(
2101        &self,
2102        _req: crate::model::GetFeatureRequest,
2103        _options: gax::options::RequestOptions,
2104    ) -> impl std::future::Future<
2105        Output = crate::Result<gax::response::Response<crate::model::Feature>>,
2106    > + Send {
2107        gaxi::unimplemented::unimplemented_stub()
2108    }
2109
2110    /// Implements [super::client::FeaturestoreService::list_features].
2111    fn list_features(
2112        &self,
2113        _req: crate::model::ListFeaturesRequest,
2114        _options: gax::options::RequestOptions,
2115    ) -> impl std::future::Future<
2116        Output = crate::Result<gax::response::Response<crate::model::ListFeaturesResponse>>,
2117    > + Send {
2118        gaxi::unimplemented::unimplemented_stub()
2119    }
2120
2121    /// Implements [super::client::FeaturestoreService::update_feature].
2122    fn update_feature(
2123        &self,
2124        _req: crate::model::UpdateFeatureRequest,
2125        _options: gax::options::RequestOptions,
2126    ) -> impl std::future::Future<
2127        Output = crate::Result<gax::response::Response<crate::model::Feature>>,
2128    > + Send {
2129        gaxi::unimplemented::unimplemented_stub()
2130    }
2131
2132    /// Implements [super::client::FeaturestoreService::delete_feature].
2133    fn delete_feature(
2134        &self,
2135        _req: crate::model::DeleteFeatureRequest,
2136        _options: gax::options::RequestOptions,
2137    ) -> impl std::future::Future<
2138        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
2139    > + Send {
2140        gaxi::unimplemented::unimplemented_stub()
2141    }
2142
2143    /// Implements [super::client::FeaturestoreService::import_feature_values].
2144    fn import_feature_values(
2145        &self,
2146        _req: crate::model::ImportFeatureValuesRequest,
2147        _options: gax::options::RequestOptions,
2148    ) -> impl std::future::Future<
2149        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
2150    > + Send {
2151        gaxi::unimplemented::unimplemented_stub()
2152    }
2153
2154    /// Implements [super::client::FeaturestoreService::batch_read_feature_values].
2155    fn batch_read_feature_values(
2156        &self,
2157        _req: crate::model::BatchReadFeatureValuesRequest,
2158        _options: gax::options::RequestOptions,
2159    ) -> impl std::future::Future<
2160        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
2161    > + Send {
2162        gaxi::unimplemented::unimplemented_stub()
2163    }
2164
2165    /// Implements [super::client::FeaturestoreService::export_feature_values].
2166    fn export_feature_values(
2167        &self,
2168        _req: crate::model::ExportFeatureValuesRequest,
2169        _options: gax::options::RequestOptions,
2170    ) -> impl std::future::Future<
2171        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
2172    > + Send {
2173        gaxi::unimplemented::unimplemented_stub()
2174    }
2175
2176    /// Implements [super::client::FeaturestoreService::delete_feature_values].
2177    fn delete_feature_values(
2178        &self,
2179        _req: crate::model::DeleteFeatureValuesRequest,
2180        _options: gax::options::RequestOptions,
2181    ) -> impl std::future::Future<
2182        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
2183    > + Send {
2184        gaxi::unimplemented::unimplemented_stub()
2185    }
2186
2187    /// Implements [super::client::FeaturestoreService::search_features].
2188    fn search_features(
2189        &self,
2190        _req: crate::model::SearchFeaturesRequest,
2191        _options: gax::options::RequestOptions,
2192    ) -> impl std::future::Future<
2193        Output = crate::Result<gax::response::Response<crate::model::SearchFeaturesResponse>>,
2194    > + Send {
2195        gaxi::unimplemented::unimplemented_stub()
2196    }
2197
2198    /// Implements [super::client::FeaturestoreService::list_locations].
2199    fn list_locations(
2200        &self,
2201        _req: location::model::ListLocationsRequest,
2202        _options: gax::options::RequestOptions,
2203    ) -> impl std::future::Future<
2204        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
2205    > + Send {
2206        gaxi::unimplemented::unimplemented_stub()
2207    }
2208
2209    /// Implements [super::client::FeaturestoreService::get_location].
2210    fn get_location(
2211        &self,
2212        _req: location::model::GetLocationRequest,
2213        _options: gax::options::RequestOptions,
2214    ) -> impl std::future::Future<
2215        Output = crate::Result<gax::response::Response<location::model::Location>>,
2216    > + Send {
2217        gaxi::unimplemented::unimplemented_stub()
2218    }
2219
2220    /// Implements [super::client::FeaturestoreService::set_iam_policy].
2221    fn set_iam_policy(
2222        &self,
2223        _req: iam_v1::model::SetIamPolicyRequest,
2224        _options: gax::options::RequestOptions,
2225    ) -> impl std::future::Future<
2226        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
2227    > + Send {
2228        gaxi::unimplemented::unimplemented_stub()
2229    }
2230
2231    /// Implements [super::client::FeaturestoreService::get_iam_policy].
2232    fn get_iam_policy(
2233        &self,
2234        _req: iam_v1::model::GetIamPolicyRequest,
2235        _options: gax::options::RequestOptions,
2236    ) -> impl std::future::Future<
2237        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
2238    > + Send {
2239        gaxi::unimplemented::unimplemented_stub()
2240    }
2241
2242    /// Implements [super::client::FeaturestoreService::test_iam_permissions].
2243    fn test_iam_permissions(
2244        &self,
2245        _req: iam_v1::model::TestIamPermissionsRequest,
2246        _options: gax::options::RequestOptions,
2247    ) -> impl std::future::Future<
2248        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
2249    > + Send {
2250        gaxi::unimplemented::unimplemented_stub()
2251    }
2252
2253    /// Implements [super::client::FeaturestoreService::list_operations].
2254    fn list_operations(
2255        &self,
2256        _req: longrunning::model::ListOperationsRequest,
2257        _options: gax::options::RequestOptions,
2258    ) -> impl std::future::Future<
2259        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
2260    > + Send {
2261        gaxi::unimplemented::unimplemented_stub()
2262    }
2263
2264    /// Implements [super::client::FeaturestoreService::get_operation].
2265    fn get_operation(
2266        &self,
2267        _req: longrunning::model::GetOperationRequest,
2268        _options: gax::options::RequestOptions,
2269    ) -> impl std::future::Future<
2270        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
2271    > + Send {
2272        gaxi::unimplemented::unimplemented_stub()
2273    }
2274
2275    /// Implements [super::client::FeaturestoreService::delete_operation].
2276    fn delete_operation(
2277        &self,
2278        _req: longrunning::model::DeleteOperationRequest,
2279        _options: gax::options::RequestOptions,
2280    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
2281        gaxi::unimplemented::unimplemented_stub()
2282    }
2283
2284    /// Implements [super::client::FeaturestoreService::cancel_operation].
2285    fn cancel_operation(
2286        &self,
2287        _req: longrunning::model::CancelOperationRequest,
2288        _options: gax::options::RequestOptions,
2289    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
2290        gaxi::unimplemented::unimplemented_stub()
2291    }
2292
2293    /// Implements [super::client::FeaturestoreService::wait_operation].
2294    fn wait_operation(
2295        &self,
2296        _req: longrunning::model::WaitOperationRequest,
2297        _options: gax::options::RequestOptions,
2298    ) -> impl std::future::Future<
2299        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
2300    > + Send {
2301        gaxi::unimplemented::unimplemented_stub()
2302    }
2303
2304    /// Returns the polling error policy.
2305    ///
2306    /// When mocking, this method is typically irrelevant. Do not try to verify
2307    /// it is called by your mocks.
2308    fn get_polling_error_policy(
2309        &self,
2310        _options: &gax::options::RequestOptions,
2311    ) -> std::sync::Arc<dyn gax::polling_error_policy::PollingErrorPolicy> {
2312        std::sync::Arc::new(gax::polling_error_policy::Aip194Strict)
2313    }
2314
2315    /// Returns the polling backoff policy.
2316    ///
2317    /// When mocking, this method is typically irrelevant. Do not try to verify
2318    /// it is called by your mocks.
2319    fn get_polling_backoff_policy(
2320        &self,
2321        _options: &gax::options::RequestOptions,
2322    ) -> std::sync::Arc<dyn gax::polling_backoff_policy::PollingBackoffPolicy> {
2323        std::sync::Arc::new(gax::exponential_backoff::ExponentialBackoff::default())
2324    }
2325}
2326
2327/// Defines the trait used to implement [super::client::GenAiCacheService].
2328///
2329/// Application developers may need to implement this trait to mock
2330/// `client::GenAiCacheService`.  In other use-cases, application developers only
2331/// use `client::GenAiCacheService` and need not be concerned with this trait or
2332/// its implementations.
2333///
2334/// Services gain new RPCs routinely. Consequently, this trait gains new methods
2335/// too. To avoid breaking applications the trait provides a default
2336/// implementation of each method. Most of these implementations just return an
2337/// error.
2338#[cfg(feature = "gen-ai-cache-service")]
2339#[cfg_attr(docsrs, doc(cfg(feature = "gen-ai-cache-service")))]
2340pub trait GenAiCacheService: std::fmt::Debug + Send + Sync {
2341    /// Implements [super::client::GenAiCacheService::create_cached_content].
2342    fn create_cached_content(
2343        &self,
2344        _req: crate::model::CreateCachedContentRequest,
2345        _options: gax::options::RequestOptions,
2346    ) -> impl std::future::Future<
2347        Output = crate::Result<gax::response::Response<crate::model::CachedContent>>,
2348    > + Send {
2349        gaxi::unimplemented::unimplemented_stub()
2350    }
2351
2352    /// Implements [super::client::GenAiCacheService::get_cached_content].
2353    fn get_cached_content(
2354        &self,
2355        _req: crate::model::GetCachedContentRequest,
2356        _options: gax::options::RequestOptions,
2357    ) -> impl std::future::Future<
2358        Output = crate::Result<gax::response::Response<crate::model::CachedContent>>,
2359    > + Send {
2360        gaxi::unimplemented::unimplemented_stub()
2361    }
2362
2363    /// Implements [super::client::GenAiCacheService::update_cached_content].
2364    fn update_cached_content(
2365        &self,
2366        _req: crate::model::UpdateCachedContentRequest,
2367        _options: gax::options::RequestOptions,
2368    ) -> impl std::future::Future<
2369        Output = crate::Result<gax::response::Response<crate::model::CachedContent>>,
2370    > + Send {
2371        gaxi::unimplemented::unimplemented_stub()
2372    }
2373
2374    /// Implements [super::client::GenAiCacheService::delete_cached_content].
2375    fn delete_cached_content(
2376        &self,
2377        _req: crate::model::DeleteCachedContentRequest,
2378        _options: gax::options::RequestOptions,
2379    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
2380        gaxi::unimplemented::unimplemented_stub()
2381    }
2382
2383    /// Implements [super::client::GenAiCacheService::list_cached_contents].
2384    fn list_cached_contents(
2385        &self,
2386        _req: crate::model::ListCachedContentsRequest,
2387        _options: gax::options::RequestOptions,
2388    ) -> impl std::future::Future<
2389        Output = crate::Result<gax::response::Response<crate::model::ListCachedContentsResponse>>,
2390    > + Send {
2391        gaxi::unimplemented::unimplemented_stub()
2392    }
2393
2394    /// Implements [super::client::GenAiCacheService::list_locations].
2395    fn list_locations(
2396        &self,
2397        _req: location::model::ListLocationsRequest,
2398        _options: gax::options::RequestOptions,
2399    ) -> impl std::future::Future<
2400        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
2401    > + Send {
2402        gaxi::unimplemented::unimplemented_stub()
2403    }
2404
2405    /// Implements [super::client::GenAiCacheService::get_location].
2406    fn get_location(
2407        &self,
2408        _req: location::model::GetLocationRequest,
2409        _options: gax::options::RequestOptions,
2410    ) -> impl std::future::Future<
2411        Output = crate::Result<gax::response::Response<location::model::Location>>,
2412    > + Send {
2413        gaxi::unimplemented::unimplemented_stub()
2414    }
2415
2416    /// Implements [super::client::GenAiCacheService::set_iam_policy].
2417    fn set_iam_policy(
2418        &self,
2419        _req: iam_v1::model::SetIamPolicyRequest,
2420        _options: gax::options::RequestOptions,
2421    ) -> impl std::future::Future<
2422        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
2423    > + Send {
2424        gaxi::unimplemented::unimplemented_stub()
2425    }
2426
2427    /// Implements [super::client::GenAiCacheService::get_iam_policy].
2428    fn get_iam_policy(
2429        &self,
2430        _req: iam_v1::model::GetIamPolicyRequest,
2431        _options: gax::options::RequestOptions,
2432    ) -> impl std::future::Future<
2433        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
2434    > + Send {
2435        gaxi::unimplemented::unimplemented_stub()
2436    }
2437
2438    /// Implements [super::client::GenAiCacheService::test_iam_permissions].
2439    fn test_iam_permissions(
2440        &self,
2441        _req: iam_v1::model::TestIamPermissionsRequest,
2442        _options: gax::options::RequestOptions,
2443    ) -> impl std::future::Future<
2444        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
2445    > + Send {
2446        gaxi::unimplemented::unimplemented_stub()
2447    }
2448
2449    /// Implements [super::client::GenAiCacheService::list_operations].
2450    fn list_operations(
2451        &self,
2452        _req: longrunning::model::ListOperationsRequest,
2453        _options: gax::options::RequestOptions,
2454    ) -> impl std::future::Future<
2455        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
2456    > + Send {
2457        gaxi::unimplemented::unimplemented_stub()
2458    }
2459
2460    /// Implements [super::client::GenAiCacheService::get_operation].
2461    fn get_operation(
2462        &self,
2463        _req: longrunning::model::GetOperationRequest,
2464        _options: gax::options::RequestOptions,
2465    ) -> impl std::future::Future<
2466        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
2467    > + Send {
2468        gaxi::unimplemented::unimplemented_stub()
2469    }
2470
2471    /// Implements [super::client::GenAiCacheService::delete_operation].
2472    fn delete_operation(
2473        &self,
2474        _req: longrunning::model::DeleteOperationRequest,
2475        _options: gax::options::RequestOptions,
2476    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
2477        gaxi::unimplemented::unimplemented_stub()
2478    }
2479
2480    /// Implements [super::client::GenAiCacheService::cancel_operation].
2481    fn cancel_operation(
2482        &self,
2483        _req: longrunning::model::CancelOperationRequest,
2484        _options: gax::options::RequestOptions,
2485    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
2486        gaxi::unimplemented::unimplemented_stub()
2487    }
2488
2489    /// Implements [super::client::GenAiCacheService::wait_operation].
2490    fn wait_operation(
2491        &self,
2492        _req: longrunning::model::WaitOperationRequest,
2493        _options: gax::options::RequestOptions,
2494    ) -> impl std::future::Future<
2495        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
2496    > + Send {
2497        gaxi::unimplemented::unimplemented_stub()
2498    }
2499}
2500
2501/// Defines the trait used to implement [super::client::GenAiTuningService].
2502///
2503/// Application developers may need to implement this trait to mock
2504/// `client::GenAiTuningService`.  In other use-cases, application developers only
2505/// use `client::GenAiTuningService` and need not be concerned with this trait or
2506/// its implementations.
2507///
2508/// Services gain new RPCs routinely. Consequently, this trait gains new methods
2509/// too. To avoid breaking applications the trait provides a default
2510/// implementation of each method. Most of these implementations just return an
2511/// error.
2512#[cfg(feature = "gen-ai-tuning-service")]
2513#[cfg_attr(docsrs, doc(cfg(feature = "gen-ai-tuning-service")))]
2514pub trait GenAiTuningService: std::fmt::Debug + Send + Sync {
2515    /// Implements [super::client::GenAiTuningService::create_tuning_job].
2516    fn create_tuning_job(
2517        &self,
2518        _req: crate::model::CreateTuningJobRequest,
2519        _options: gax::options::RequestOptions,
2520    ) -> impl std::future::Future<
2521        Output = crate::Result<gax::response::Response<crate::model::TuningJob>>,
2522    > + Send {
2523        gaxi::unimplemented::unimplemented_stub()
2524    }
2525
2526    /// Implements [super::client::GenAiTuningService::get_tuning_job].
2527    fn get_tuning_job(
2528        &self,
2529        _req: crate::model::GetTuningJobRequest,
2530        _options: gax::options::RequestOptions,
2531    ) -> impl std::future::Future<
2532        Output = crate::Result<gax::response::Response<crate::model::TuningJob>>,
2533    > + Send {
2534        gaxi::unimplemented::unimplemented_stub()
2535    }
2536
2537    /// Implements [super::client::GenAiTuningService::list_tuning_jobs].
2538    fn list_tuning_jobs(
2539        &self,
2540        _req: crate::model::ListTuningJobsRequest,
2541        _options: gax::options::RequestOptions,
2542    ) -> impl std::future::Future<
2543        Output = crate::Result<gax::response::Response<crate::model::ListTuningJobsResponse>>,
2544    > + Send {
2545        gaxi::unimplemented::unimplemented_stub()
2546    }
2547
2548    /// Implements [super::client::GenAiTuningService::cancel_tuning_job].
2549    fn cancel_tuning_job(
2550        &self,
2551        _req: crate::model::CancelTuningJobRequest,
2552        _options: gax::options::RequestOptions,
2553    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
2554        gaxi::unimplemented::unimplemented_stub()
2555    }
2556
2557    /// Implements [super::client::GenAiTuningService::rebase_tuned_model].
2558    fn rebase_tuned_model(
2559        &self,
2560        _req: crate::model::RebaseTunedModelRequest,
2561        _options: gax::options::RequestOptions,
2562    ) -> impl std::future::Future<
2563        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
2564    > + Send {
2565        gaxi::unimplemented::unimplemented_stub()
2566    }
2567
2568    /// Implements [super::client::GenAiTuningService::list_locations].
2569    fn list_locations(
2570        &self,
2571        _req: location::model::ListLocationsRequest,
2572        _options: gax::options::RequestOptions,
2573    ) -> impl std::future::Future<
2574        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
2575    > + Send {
2576        gaxi::unimplemented::unimplemented_stub()
2577    }
2578
2579    /// Implements [super::client::GenAiTuningService::get_location].
2580    fn get_location(
2581        &self,
2582        _req: location::model::GetLocationRequest,
2583        _options: gax::options::RequestOptions,
2584    ) -> impl std::future::Future<
2585        Output = crate::Result<gax::response::Response<location::model::Location>>,
2586    > + Send {
2587        gaxi::unimplemented::unimplemented_stub()
2588    }
2589
2590    /// Implements [super::client::GenAiTuningService::set_iam_policy].
2591    fn set_iam_policy(
2592        &self,
2593        _req: iam_v1::model::SetIamPolicyRequest,
2594        _options: gax::options::RequestOptions,
2595    ) -> impl std::future::Future<
2596        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
2597    > + Send {
2598        gaxi::unimplemented::unimplemented_stub()
2599    }
2600
2601    /// Implements [super::client::GenAiTuningService::get_iam_policy].
2602    fn get_iam_policy(
2603        &self,
2604        _req: iam_v1::model::GetIamPolicyRequest,
2605        _options: gax::options::RequestOptions,
2606    ) -> impl std::future::Future<
2607        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
2608    > + Send {
2609        gaxi::unimplemented::unimplemented_stub()
2610    }
2611
2612    /// Implements [super::client::GenAiTuningService::test_iam_permissions].
2613    fn test_iam_permissions(
2614        &self,
2615        _req: iam_v1::model::TestIamPermissionsRequest,
2616        _options: gax::options::RequestOptions,
2617    ) -> impl std::future::Future<
2618        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
2619    > + Send {
2620        gaxi::unimplemented::unimplemented_stub()
2621    }
2622
2623    /// Implements [super::client::GenAiTuningService::list_operations].
2624    fn list_operations(
2625        &self,
2626        _req: longrunning::model::ListOperationsRequest,
2627        _options: gax::options::RequestOptions,
2628    ) -> impl std::future::Future<
2629        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
2630    > + Send {
2631        gaxi::unimplemented::unimplemented_stub()
2632    }
2633
2634    /// Implements [super::client::GenAiTuningService::get_operation].
2635    fn get_operation(
2636        &self,
2637        _req: longrunning::model::GetOperationRequest,
2638        _options: gax::options::RequestOptions,
2639    ) -> impl std::future::Future<
2640        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
2641    > + Send {
2642        gaxi::unimplemented::unimplemented_stub()
2643    }
2644
2645    /// Implements [super::client::GenAiTuningService::delete_operation].
2646    fn delete_operation(
2647        &self,
2648        _req: longrunning::model::DeleteOperationRequest,
2649        _options: gax::options::RequestOptions,
2650    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
2651        gaxi::unimplemented::unimplemented_stub()
2652    }
2653
2654    /// Implements [super::client::GenAiTuningService::cancel_operation].
2655    fn cancel_operation(
2656        &self,
2657        _req: longrunning::model::CancelOperationRequest,
2658        _options: gax::options::RequestOptions,
2659    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
2660        gaxi::unimplemented::unimplemented_stub()
2661    }
2662
2663    /// Implements [super::client::GenAiTuningService::wait_operation].
2664    fn wait_operation(
2665        &self,
2666        _req: longrunning::model::WaitOperationRequest,
2667        _options: gax::options::RequestOptions,
2668    ) -> impl std::future::Future<
2669        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
2670    > + Send {
2671        gaxi::unimplemented::unimplemented_stub()
2672    }
2673
2674    /// Returns the polling error policy.
2675    ///
2676    /// When mocking, this method is typically irrelevant. Do not try to verify
2677    /// it is called by your mocks.
2678    fn get_polling_error_policy(
2679        &self,
2680        _options: &gax::options::RequestOptions,
2681    ) -> std::sync::Arc<dyn gax::polling_error_policy::PollingErrorPolicy> {
2682        std::sync::Arc::new(gax::polling_error_policy::Aip194Strict)
2683    }
2684
2685    /// Returns the polling backoff policy.
2686    ///
2687    /// When mocking, this method is typically irrelevant. Do not try to verify
2688    /// it is called by your mocks.
2689    fn get_polling_backoff_policy(
2690        &self,
2691        _options: &gax::options::RequestOptions,
2692    ) -> std::sync::Arc<dyn gax::polling_backoff_policy::PollingBackoffPolicy> {
2693        std::sync::Arc::new(gax::exponential_backoff::ExponentialBackoff::default())
2694    }
2695}
2696
2697/// Defines the trait used to implement [super::client::IndexEndpointService].
2698///
2699/// Application developers may need to implement this trait to mock
2700/// `client::IndexEndpointService`.  In other use-cases, application developers only
2701/// use `client::IndexEndpointService` and need not be concerned with this trait or
2702/// its implementations.
2703///
2704/// Services gain new RPCs routinely. Consequently, this trait gains new methods
2705/// too. To avoid breaking applications the trait provides a default
2706/// implementation of each method. Most of these implementations just return an
2707/// error.
2708#[cfg(feature = "index-endpoint-service")]
2709#[cfg_attr(docsrs, doc(cfg(feature = "index-endpoint-service")))]
2710pub trait IndexEndpointService: std::fmt::Debug + Send + Sync {
2711    /// Implements [super::client::IndexEndpointService::create_index_endpoint].
2712    fn create_index_endpoint(
2713        &self,
2714        _req: crate::model::CreateIndexEndpointRequest,
2715        _options: gax::options::RequestOptions,
2716    ) -> impl std::future::Future<
2717        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
2718    > + Send {
2719        gaxi::unimplemented::unimplemented_stub()
2720    }
2721
2722    /// Implements [super::client::IndexEndpointService::get_index_endpoint].
2723    fn get_index_endpoint(
2724        &self,
2725        _req: crate::model::GetIndexEndpointRequest,
2726        _options: gax::options::RequestOptions,
2727    ) -> impl std::future::Future<
2728        Output = crate::Result<gax::response::Response<crate::model::IndexEndpoint>>,
2729    > + Send {
2730        gaxi::unimplemented::unimplemented_stub()
2731    }
2732
2733    /// Implements [super::client::IndexEndpointService::list_index_endpoints].
2734    fn list_index_endpoints(
2735        &self,
2736        _req: crate::model::ListIndexEndpointsRequest,
2737        _options: gax::options::RequestOptions,
2738    ) -> impl std::future::Future<
2739        Output = crate::Result<gax::response::Response<crate::model::ListIndexEndpointsResponse>>,
2740    > + Send {
2741        gaxi::unimplemented::unimplemented_stub()
2742    }
2743
2744    /// Implements [super::client::IndexEndpointService::update_index_endpoint].
2745    fn update_index_endpoint(
2746        &self,
2747        _req: crate::model::UpdateIndexEndpointRequest,
2748        _options: gax::options::RequestOptions,
2749    ) -> impl std::future::Future<
2750        Output = crate::Result<gax::response::Response<crate::model::IndexEndpoint>>,
2751    > + Send {
2752        gaxi::unimplemented::unimplemented_stub()
2753    }
2754
2755    /// Implements [super::client::IndexEndpointService::delete_index_endpoint].
2756    fn delete_index_endpoint(
2757        &self,
2758        _req: crate::model::DeleteIndexEndpointRequest,
2759        _options: gax::options::RequestOptions,
2760    ) -> impl std::future::Future<
2761        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
2762    > + Send {
2763        gaxi::unimplemented::unimplemented_stub()
2764    }
2765
2766    /// Implements [super::client::IndexEndpointService::deploy_index].
2767    fn deploy_index(
2768        &self,
2769        _req: crate::model::DeployIndexRequest,
2770        _options: gax::options::RequestOptions,
2771    ) -> impl std::future::Future<
2772        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
2773    > + Send {
2774        gaxi::unimplemented::unimplemented_stub()
2775    }
2776
2777    /// Implements [super::client::IndexEndpointService::undeploy_index].
2778    fn undeploy_index(
2779        &self,
2780        _req: crate::model::UndeployIndexRequest,
2781        _options: gax::options::RequestOptions,
2782    ) -> impl std::future::Future<
2783        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
2784    > + Send {
2785        gaxi::unimplemented::unimplemented_stub()
2786    }
2787
2788    /// Implements [super::client::IndexEndpointService::mutate_deployed_index].
2789    fn mutate_deployed_index(
2790        &self,
2791        _req: crate::model::MutateDeployedIndexRequest,
2792        _options: gax::options::RequestOptions,
2793    ) -> impl std::future::Future<
2794        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
2795    > + Send {
2796        gaxi::unimplemented::unimplemented_stub()
2797    }
2798
2799    /// Implements [super::client::IndexEndpointService::list_locations].
2800    fn list_locations(
2801        &self,
2802        _req: location::model::ListLocationsRequest,
2803        _options: gax::options::RequestOptions,
2804    ) -> impl std::future::Future<
2805        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
2806    > + Send {
2807        gaxi::unimplemented::unimplemented_stub()
2808    }
2809
2810    /// Implements [super::client::IndexEndpointService::get_location].
2811    fn get_location(
2812        &self,
2813        _req: location::model::GetLocationRequest,
2814        _options: gax::options::RequestOptions,
2815    ) -> impl std::future::Future<
2816        Output = crate::Result<gax::response::Response<location::model::Location>>,
2817    > + Send {
2818        gaxi::unimplemented::unimplemented_stub()
2819    }
2820
2821    /// Implements [super::client::IndexEndpointService::set_iam_policy].
2822    fn set_iam_policy(
2823        &self,
2824        _req: iam_v1::model::SetIamPolicyRequest,
2825        _options: gax::options::RequestOptions,
2826    ) -> impl std::future::Future<
2827        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
2828    > + Send {
2829        gaxi::unimplemented::unimplemented_stub()
2830    }
2831
2832    /// Implements [super::client::IndexEndpointService::get_iam_policy].
2833    fn get_iam_policy(
2834        &self,
2835        _req: iam_v1::model::GetIamPolicyRequest,
2836        _options: gax::options::RequestOptions,
2837    ) -> impl std::future::Future<
2838        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
2839    > + Send {
2840        gaxi::unimplemented::unimplemented_stub()
2841    }
2842
2843    /// Implements [super::client::IndexEndpointService::test_iam_permissions].
2844    fn test_iam_permissions(
2845        &self,
2846        _req: iam_v1::model::TestIamPermissionsRequest,
2847        _options: gax::options::RequestOptions,
2848    ) -> impl std::future::Future<
2849        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
2850    > + Send {
2851        gaxi::unimplemented::unimplemented_stub()
2852    }
2853
2854    /// Implements [super::client::IndexEndpointService::list_operations].
2855    fn list_operations(
2856        &self,
2857        _req: longrunning::model::ListOperationsRequest,
2858        _options: gax::options::RequestOptions,
2859    ) -> impl std::future::Future<
2860        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
2861    > + Send {
2862        gaxi::unimplemented::unimplemented_stub()
2863    }
2864
2865    /// Implements [super::client::IndexEndpointService::get_operation].
2866    fn get_operation(
2867        &self,
2868        _req: longrunning::model::GetOperationRequest,
2869        _options: gax::options::RequestOptions,
2870    ) -> impl std::future::Future<
2871        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
2872    > + Send {
2873        gaxi::unimplemented::unimplemented_stub()
2874    }
2875
2876    /// Implements [super::client::IndexEndpointService::delete_operation].
2877    fn delete_operation(
2878        &self,
2879        _req: longrunning::model::DeleteOperationRequest,
2880        _options: gax::options::RequestOptions,
2881    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
2882        gaxi::unimplemented::unimplemented_stub()
2883    }
2884
2885    /// Implements [super::client::IndexEndpointService::cancel_operation].
2886    fn cancel_operation(
2887        &self,
2888        _req: longrunning::model::CancelOperationRequest,
2889        _options: gax::options::RequestOptions,
2890    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
2891        gaxi::unimplemented::unimplemented_stub()
2892    }
2893
2894    /// Implements [super::client::IndexEndpointService::wait_operation].
2895    fn wait_operation(
2896        &self,
2897        _req: longrunning::model::WaitOperationRequest,
2898        _options: gax::options::RequestOptions,
2899    ) -> impl std::future::Future<
2900        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
2901    > + Send {
2902        gaxi::unimplemented::unimplemented_stub()
2903    }
2904
2905    /// Returns the polling error policy.
2906    ///
2907    /// When mocking, this method is typically irrelevant. Do not try to verify
2908    /// it is called by your mocks.
2909    fn get_polling_error_policy(
2910        &self,
2911        _options: &gax::options::RequestOptions,
2912    ) -> std::sync::Arc<dyn gax::polling_error_policy::PollingErrorPolicy> {
2913        std::sync::Arc::new(gax::polling_error_policy::Aip194Strict)
2914    }
2915
2916    /// Returns the polling backoff policy.
2917    ///
2918    /// When mocking, this method is typically irrelevant. Do not try to verify
2919    /// it is called by your mocks.
2920    fn get_polling_backoff_policy(
2921        &self,
2922        _options: &gax::options::RequestOptions,
2923    ) -> std::sync::Arc<dyn gax::polling_backoff_policy::PollingBackoffPolicy> {
2924        std::sync::Arc::new(gax::exponential_backoff::ExponentialBackoff::default())
2925    }
2926}
2927
2928/// Defines the trait used to implement [super::client::IndexService].
2929///
2930/// Application developers may need to implement this trait to mock
2931/// `client::IndexService`.  In other use-cases, application developers only
2932/// use `client::IndexService` and need not be concerned with this trait or
2933/// its implementations.
2934///
2935/// Services gain new RPCs routinely. Consequently, this trait gains new methods
2936/// too. To avoid breaking applications the trait provides a default
2937/// implementation of each method. Most of these implementations just return an
2938/// error.
2939#[cfg(feature = "index-service")]
2940#[cfg_attr(docsrs, doc(cfg(feature = "index-service")))]
2941pub trait IndexService: std::fmt::Debug + Send + Sync {
2942    /// Implements [super::client::IndexService::create_index].
2943    fn create_index(
2944        &self,
2945        _req: crate::model::CreateIndexRequest,
2946        _options: gax::options::RequestOptions,
2947    ) -> impl std::future::Future<
2948        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
2949    > + Send {
2950        gaxi::unimplemented::unimplemented_stub()
2951    }
2952
2953    /// Implements [super::client::IndexService::get_index].
2954    fn get_index(
2955        &self,
2956        _req: crate::model::GetIndexRequest,
2957        _options: gax::options::RequestOptions,
2958    ) -> impl std::future::Future<
2959        Output = crate::Result<gax::response::Response<crate::model::Index>>,
2960    > + Send {
2961        gaxi::unimplemented::unimplemented_stub()
2962    }
2963
2964    /// Implements [super::client::IndexService::list_indexes].
2965    fn list_indexes(
2966        &self,
2967        _req: crate::model::ListIndexesRequest,
2968        _options: gax::options::RequestOptions,
2969    ) -> impl std::future::Future<
2970        Output = crate::Result<gax::response::Response<crate::model::ListIndexesResponse>>,
2971    > + Send {
2972        gaxi::unimplemented::unimplemented_stub()
2973    }
2974
2975    /// Implements [super::client::IndexService::update_index].
2976    fn update_index(
2977        &self,
2978        _req: crate::model::UpdateIndexRequest,
2979        _options: gax::options::RequestOptions,
2980    ) -> impl std::future::Future<
2981        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
2982    > + Send {
2983        gaxi::unimplemented::unimplemented_stub()
2984    }
2985
2986    /// Implements [super::client::IndexService::delete_index].
2987    fn delete_index(
2988        &self,
2989        _req: crate::model::DeleteIndexRequest,
2990        _options: gax::options::RequestOptions,
2991    ) -> impl std::future::Future<
2992        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
2993    > + Send {
2994        gaxi::unimplemented::unimplemented_stub()
2995    }
2996
2997    /// Implements [super::client::IndexService::upsert_datapoints].
2998    fn upsert_datapoints(
2999        &self,
3000        _req: crate::model::UpsertDatapointsRequest,
3001        _options: gax::options::RequestOptions,
3002    ) -> impl std::future::Future<
3003        Output = crate::Result<gax::response::Response<crate::model::UpsertDatapointsResponse>>,
3004    > + Send {
3005        gaxi::unimplemented::unimplemented_stub()
3006    }
3007
3008    /// Implements [super::client::IndexService::remove_datapoints].
3009    fn remove_datapoints(
3010        &self,
3011        _req: crate::model::RemoveDatapointsRequest,
3012        _options: gax::options::RequestOptions,
3013    ) -> impl std::future::Future<
3014        Output = crate::Result<gax::response::Response<crate::model::RemoveDatapointsResponse>>,
3015    > + Send {
3016        gaxi::unimplemented::unimplemented_stub()
3017    }
3018
3019    /// Implements [super::client::IndexService::list_locations].
3020    fn list_locations(
3021        &self,
3022        _req: location::model::ListLocationsRequest,
3023        _options: gax::options::RequestOptions,
3024    ) -> impl std::future::Future<
3025        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
3026    > + Send {
3027        gaxi::unimplemented::unimplemented_stub()
3028    }
3029
3030    /// Implements [super::client::IndexService::get_location].
3031    fn get_location(
3032        &self,
3033        _req: location::model::GetLocationRequest,
3034        _options: gax::options::RequestOptions,
3035    ) -> impl std::future::Future<
3036        Output = crate::Result<gax::response::Response<location::model::Location>>,
3037    > + Send {
3038        gaxi::unimplemented::unimplemented_stub()
3039    }
3040
3041    /// Implements [super::client::IndexService::set_iam_policy].
3042    fn set_iam_policy(
3043        &self,
3044        _req: iam_v1::model::SetIamPolicyRequest,
3045        _options: gax::options::RequestOptions,
3046    ) -> impl std::future::Future<
3047        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
3048    > + Send {
3049        gaxi::unimplemented::unimplemented_stub()
3050    }
3051
3052    /// Implements [super::client::IndexService::get_iam_policy].
3053    fn get_iam_policy(
3054        &self,
3055        _req: iam_v1::model::GetIamPolicyRequest,
3056        _options: gax::options::RequestOptions,
3057    ) -> impl std::future::Future<
3058        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
3059    > + Send {
3060        gaxi::unimplemented::unimplemented_stub()
3061    }
3062
3063    /// Implements [super::client::IndexService::test_iam_permissions].
3064    fn test_iam_permissions(
3065        &self,
3066        _req: iam_v1::model::TestIamPermissionsRequest,
3067        _options: gax::options::RequestOptions,
3068    ) -> impl std::future::Future<
3069        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
3070    > + Send {
3071        gaxi::unimplemented::unimplemented_stub()
3072    }
3073
3074    /// Implements [super::client::IndexService::list_operations].
3075    fn list_operations(
3076        &self,
3077        _req: longrunning::model::ListOperationsRequest,
3078        _options: gax::options::RequestOptions,
3079    ) -> impl std::future::Future<
3080        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
3081    > + Send {
3082        gaxi::unimplemented::unimplemented_stub()
3083    }
3084
3085    /// Implements [super::client::IndexService::get_operation].
3086    fn get_operation(
3087        &self,
3088        _req: longrunning::model::GetOperationRequest,
3089        _options: gax::options::RequestOptions,
3090    ) -> impl std::future::Future<
3091        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
3092    > + Send {
3093        gaxi::unimplemented::unimplemented_stub()
3094    }
3095
3096    /// Implements [super::client::IndexService::delete_operation].
3097    fn delete_operation(
3098        &self,
3099        _req: longrunning::model::DeleteOperationRequest,
3100        _options: gax::options::RequestOptions,
3101    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
3102        gaxi::unimplemented::unimplemented_stub()
3103    }
3104
3105    /// Implements [super::client::IndexService::cancel_operation].
3106    fn cancel_operation(
3107        &self,
3108        _req: longrunning::model::CancelOperationRequest,
3109        _options: gax::options::RequestOptions,
3110    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
3111        gaxi::unimplemented::unimplemented_stub()
3112    }
3113
3114    /// Implements [super::client::IndexService::wait_operation].
3115    fn wait_operation(
3116        &self,
3117        _req: longrunning::model::WaitOperationRequest,
3118        _options: gax::options::RequestOptions,
3119    ) -> impl std::future::Future<
3120        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
3121    > + Send {
3122        gaxi::unimplemented::unimplemented_stub()
3123    }
3124
3125    /// Returns the polling error policy.
3126    ///
3127    /// When mocking, this method is typically irrelevant. Do not try to verify
3128    /// it is called by your mocks.
3129    fn get_polling_error_policy(
3130        &self,
3131        _options: &gax::options::RequestOptions,
3132    ) -> std::sync::Arc<dyn gax::polling_error_policy::PollingErrorPolicy> {
3133        std::sync::Arc::new(gax::polling_error_policy::Aip194Strict)
3134    }
3135
3136    /// Returns the polling backoff policy.
3137    ///
3138    /// When mocking, this method is typically irrelevant. Do not try to verify
3139    /// it is called by your mocks.
3140    fn get_polling_backoff_policy(
3141        &self,
3142        _options: &gax::options::RequestOptions,
3143    ) -> std::sync::Arc<dyn gax::polling_backoff_policy::PollingBackoffPolicy> {
3144        std::sync::Arc::new(gax::exponential_backoff::ExponentialBackoff::default())
3145    }
3146}
3147
3148/// Defines the trait used to implement [super::client::JobService].
3149///
3150/// Application developers may need to implement this trait to mock
3151/// `client::JobService`.  In other use-cases, application developers only
3152/// use `client::JobService` and need not be concerned with this trait or
3153/// its implementations.
3154///
3155/// Services gain new RPCs routinely. Consequently, this trait gains new methods
3156/// too. To avoid breaking applications the trait provides a default
3157/// implementation of each method. Most of these implementations just return an
3158/// error.
3159#[cfg(feature = "job-service")]
3160#[cfg_attr(docsrs, doc(cfg(feature = "job-service")))]
3161pub trait JobService: std::fmt::Debug + Send + Sync {
3162    /// Implements [super::client::JobService::create_custom_job].
3163    fn create_custom_job(
3164        &self,
3165        _req: crate::model::CreateCustomJobRequest,
3166        _options: gax::options::RequestOptions,
3167    ) -> impl std::future::Future<
3168        Output = crate::Result<gax::response::Response<crate::model::CustomJob>>,
3169    > + Send {
3170        gaxi::unimplemented::unimplemented_stub()
3171    }
3172
3173    /// Implements [super::client::JobService::get_custom_job].
3174    fn get_custom_job(
3175        &self,
3176        _req: crate::model::GetCustomJobRequest,
3177        _options: gax::options::RequestOptions,
3178    ) -> impl std::future::Future<
3179        Output = crate::Result<gax::response::Response<crate::model::CustomJob>>,
3180    > + Send {
3181        gaxi::unimplemented::unimplemented_stub()
3182    }
3183
3184    /// Implements [super::client::JobService::list_custom_jobs].
3185    fn list_custom_jobs(
3186        &self,
3187        _req: crate::model::ListCustomJobsRequest,
3188        _options: gax::options::RequestOptions,
3189    ) -> impl std::future::Future<
3190        Output = crate::Result<gax::response::Response<crate::model::ListCustomJobsResponse>>,
3191    > + Send {
3192        gaxi::unimplemented::unimplemented_stub()
3193    }
3194
3195    /// Implements [super::client::JobService::delete_custom_job].
3196    fn delete_custom_job(
3197        &self,
3198        _req: crate::model::DeleteCustomJobRequest,
3199        _options: gax::options::RequestOptions,
3200    ) -> impl std::future::Future<
3201        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
3202    > + Send {
3203        gaxi::unimplemented::unimplemented_stub()
3204    }
3205
3206    /// Implements [super::client::JobService::cancel_custom_job].
3207    fn cancel_custom_job(
3208        &self,
3209        _req: crate::model::CancelCustomJobRequest,
3210        _options: gax::options::RequestOptions,
3211    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
3212        gaxi::unimplemented::unimplemented_stub()
3213    }
3214
3215    /// Implements [super::client::JobService::create_data_labeling_job].
3216    fn create_data_labeling_job(
3217        &self,
3218        _req: crate::model::CreateDataLabelingJobRequest,
3219        _options: gax::options::RequestOptions,
3220    ) -> impl std::future::Future<
3221        Output = crate::Result<gax::response::Response<crate::model::DataLabelingJob>>,
3222    > + Send {
3223        gaxi::unimplemented::unimplemented_stub()
3224    }
3225
3226    /// Implements [super::client::JobService::get_data_labeling_job].
3227    fn get_data_labeling_job(
3228        &self,
3229        _req: crate::model::GetDataLabelingJobRequest,
3230        _options: gax::options::RequestOptions,
3231    ) -> impl std::future::Future<
3232        Output = crate::Result<gax::response::Response<crate::model::DataLabelingJob>>,
3233    > + Send {
3234        gaxi::unimplemented::unimplemented_stub()
3235    }
3236
3237    /// Implements [super::client::JobService::list_data_labeling_jobs].
3238    fn list_data_labeling_jobs(
3239        &self,
3240        _req: crate::model::ListDataLabelingJobsRequest,
3241        _options: gax::options::RequestOptions,
3242    ) -> impl std::future::Future<
3243        Output = crate::Result<gax::response::Response<crate::model::ListDataLabelingJobsResponse>>,
3244    > + Send {
3245        gaxi::unimplemented::unimplemented_stub()
3246    }
3247
3248    /// Implements [super::client::JobService::delete_data_labeling_job].
3249    fn delete_data_labeling_job(
3250        &self,
3251        _req: crate::model::DeleteDataLabelingJobRequest,
3252        _options: gax::options::RequestOptions,
3253    ) -> impl std::future::Future<
3254        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
3255    > + Send {
3256        gaxi::unimplemented::unimplemented_stub()
3257    }
3258
3259    /// Implements [super::client::JobService::cancel_data_labeling_job].
3260    fn cancel_data_labeling_job(
3261        &self,
3262        _req: crate::model::CancelDataLabelingJobRequest,
3263        _options: gax::options::RequestOptions,
3264    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
3265        gaxi::unimplemented::unimplemented_stub()
3266    }
3267
3268    /// Implements [super::client::JobService::create_hyperparameter_tuning_job].
3269    fn create_hyperparameter_tuning_job(
3270        &self,
3271        _req: crate::model::CreateHyperparameterTuningJobRequest,
3272        _options: gax::options::RequestOptions,
3273    ) -> impl std::future::Future<
3274        Output = crate::Result<gax::response::Response<crate::model::HyperparameterTuningJob>>,
3275    > + Send {
3276        gaxi::unimplemented::unimplemented_stub()
3277    }
3278
3279    /// Implements [super::client::JobService::get_hyperparameter_tuning_job].
3280    fn get_hyperparameter_tuning_job(
3281        &self,
3282        _req: crate::model::GetHyperparameterTuningJobRequest,
3283        _options: gax::options::RequestOptions,
3284    ) -> impl std::future::Future<
3285        Output = crate::Result<gax::response::Response<crate::model::HyperparameterTuningJob>>,
3286    > + Send {
3287        gaxi::unimplemented::unimplemented_stub()
3288    }
3289
3290    /// Implements [super::client::JobService::list_hyperparameter_tuning_jobs].
3291    fn list_hyperparameter_tuning_jobs(
3292        &self,
3293        _req: crate::model::ListHyperparameterTuningJobsRequest,
3294        _options: gax::options::RequestOptions,
3295    ) -> impl std::future::Future<
3296        Output = crate::Result<
3297            gax::response::Response<crate::model::ListHyperparameterTuningJobsResponse>,
3298        >,
3299    > + Send {
3300        gaxi::unimplemented::unimplemented_stub()
3301    }
3302
3303    /// Implements [super::client::JobService::delete_hyperparameter_tuning_job].
3304    fn delete_hyperparameter_tuning_job(
3305        &self,
3306        _req: crate::model::DeleteHyperparameterTuningJobRequest,
3307        _options: gax::options::RequestOptions,
3308    ) -> impl std::future::Future<
3309        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
3310    > + Send {
3311        gaxi::unimplemented::unimplemented_stub()
3312    }
3313
3314    /// Implements [super::client::JobService::cancel_hyperparameter_tuning_job].
3315    fn cancel_hyperparameter_tuning_job(
3316        &self,
3317        _req: crate::model::CancelHyperparameterTuningJobRequest,
3318        _options: gax::options::RequestOptions,
3319    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
3320        gaxi::unimplemented::unimplemented_stub()
3321    }
3322
3323    /// Implements [super::client::JobService::create_nas_job].
3324    fn create_nas_job(
3325        &self,
3326        _req: crate::model::CreateNasJobRequest,
3327        _options: gax::options::RequestOptions,
3328    ) -> impl std::future::Future<
3329        Output = crate::Result<gax::response::Response<crate::model::NasJob>>,
3330    > + Send {
3331        gaxi::unimplemented::unimplemented_stub()
3332    }
3333
3334    /// Implements [super::client::JobService::get_nas_job].
3335    fn get_nas_job(
3336        &self,
3337        _req: crate::model::GetNasJobRequest,
3338        _options: gax::options::RequestOptions,
3339    ) -> impl std::future::Future<
3340        Output = crate::Result<gax::response::Response<crate::model::NasJob>>,
3341    > + Send {
3342        gaxi::unimplemented::unimplemented_stub()
3343    }
3344
3345    /// Implements [super::client::JobService::list_nas_jobs].
3346    fn list_nas_jobs(
3347        &self,
3348        _req: crate::model::ListNasJobsRequest,
3349        _options: gax::options::RequestOptions,
3350    ) -> impl std::future::Future<
3351        Output = crate::Result<gax::response::Response<crate::model::ListNasJobsResponse>>,
3352    > + Send {
3353        gaxi::unimplemented::unimplemented_stub()
3354    }
3355
3356    /// Implements [super::client::JobService::delete_nas_job].
3357    fn delete_nas_job(
3358        &self,
3359        _req: crate::model::DeleteNasJobRequest,
3360        _options: gax::options::RequestOptions,
3361    ) -> impl std::future::Future<
3362        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
3363    > + Send {
3364        gaxi::unimplemented::unimplemented_stub()
3365    }
3366
3367    /// Implements [super::client::JobService::cancel_nas_job].
3368    fn cancel_nas_job(
3369        &self,
3370        _req: crate::model::CancelNasJobRequest,
3371        _options: gax::options::RequestOptions,
3372    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
3373        gaxi::unimplemented::unimplemented_stub()
3374    }
3375
3376    /// Implements [super::client::JobService::get_nas_trial_detail].
3377    fn get_nas_trial_detail(
3378        &self,
3379        _req: crate::model::GetNasTrialDetailRequest,
3380        _options: gax::options::RequestOptions,
3381    ) -> impl std::future::Future<
3382        Output = crate::Result<gax::response::Response<crate::model::NasTrialDetail>>,
3383    > + Send {
3384        gaxi::unimplemented::unimplemented_stub()
3385    }
3386
3387    /// Implements [super::client::JobService::list_nas_trial_details].
3388    fn list_nas_trial_details(
3389        &self,
3390        _req: crate::model::ListNasTrialDetailsRequest,
3391        _options: gax::options::RequestOptions,
3392    ) -> impl std::future::Future<
3393        Output = crate::Result<gax::response::Response<crate::model::ListNasTrialDetailsResponse>>,
3394    > + Send {
3395        gaxi::unimplemented::unimplemented_stub()
3396    }
3397
3398    /// Implements [super::client::JobService::create_batch_prediction_job].
3399    fn create_batch_prediction_job(
3400        &self,
3401        _req: crate::model::CreateBatchPredictionJobRequest,
3402        _options: gax::options::RequestOptions,
3403    ) -> impl std::future::Future<
3404        Output = crate::Result<gax::response::Response<crate::model::BatchPredictionJob>>,
3405    > + Send {
3406        gaxi::unimplemented::unimplemented_stub()
3407    }
3408
3409    /// Implements [super::client::JobService::get_batch_prediction_job].
3410    fn get_batch_prediction_job(
3411        &self,
3412        _req: crate::model::GetBatchPredictionJobRequest,
3413        _options: gax::options::RequestOptions,
3414    ) -> impl std::future::Future<
3415        Output = crate::Result<gax::response::Response<crate::model::BatchPredictionJob>>,
3416    > + Send {
3417        gaxi::unimplemented::unimplemented_stub()
3418    }
3419
3420    /// Implements [super::client::JobService::list_batch_prediction_jobs].
3421    fn list_batch_prediction_jobs(
3422        &self,
3423        _req: crate::model::ListBatchPredictionJobsRequest,
3424        _options: gax::options::RequestOptions,
3425    ) -> impl std::future::Future<
3426        Output = crate::Result<
3427            gax::response::Response<crate::model::ListBatchPredictionJobsResponse>,
3428        >,
3429    > + Send {
3430        gaxi::unimplemented::unimplemented_stub()
3431    }
3432
3433    /// Implements [super::client::JobService::delete_batch_prediction_job].
3434    fn delete_batch_prediction_job(
3435        &self,
3436        _req: crate::model::DeleteBatchPredictionJobRequest,
3437        _options: gax::options::RequestOptions,
3438    ) -> impl std::future::Future<
3439        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
3440    > + Send {
3441        gaxi::unimplemented::unimplemented_stub()
3442    }
3443
3444    /// Implements [super::client::JobService::cancel_batch_prediction_job].
3445    fn cancel_batch_prediction_job(
3446        &self,
3447        _req: crate::model::CancelBatchPredictionJobRequest,
3448        _options: gax::options::RequestOptions,
3449    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
3450        gaxi::unimplemented::unimplemented_stub()
3451    }
3452
3453    /// Implements [super::client::JobService::create_model_deployment_monitoring_job].
3454    fn create_model_deployment_monitoring_job(
3455        &self,
3456        _req: crate::model::CreateModelDeploymentMonitoringJobRequest,
3457        _options: gax::options::RequestOptions,
3458    ) -> impl std::future::Future<
3459        Output = crate::Result<gax::response::Response<crate::model::ModelDeploymentMonitoringJob>>,
3460    > + Send {
3461        gaxi::unimplemented::unimplemented_stub()
3462    }
3463
3464    /// Implements [super::client::JobService::search_model_deployment_monitoring_stats_anomalies].
3465    fn search_model_deployment_monitoring_stats_anomalies(
3466        &self,
3467        _req: crate::model::SearchModelDeploymentMonitoringStatsAnomaliesRequest,
3468        _options: gax::options::RequestOptions,
3469    ) -> impl std::future::Future<
3470        Output = crate::Result<
3471            gax::response::Response<
3472                crate::model::SearchModelDeploymentMonitoringStatsAnomaliesResponse,
3473            >,
3474        >,
3475    > + Send {
3476        gaxi::unimplemented::unimplemented_stub()
3477    }
3478
3479    /// Implements [super::client::JobService::get_model_deployment_monitoring_job].
3480    fn get_model_deployment_monitoring_job(
3481        &self,
3482        _req: crate::model::GetModelDeploymentMonitoringJobRequest,
3483        _options: gax::options::RequestOptions,
3484    ) -> impl std::future::Future<
3485        Output = crate::Result<gax::response::Response<crate::model::ModelDeploymentMonitoringJob>>,
3486    > + Send {
3487        gaxi::unimplemented::unimplemented_stub()
3488    }
3489
3490    /// Implements [super::client::JobService::list_model_deployment_monitoring_jobs].
3491    fn list_model_deployment_monitoring_jobs(
3492        &self,
3493        _req: crate::model::ListModelDeploymentMonitoringJobsRequest,
3494        _options: gax::options::RequestOptions,
3495    ) -> impl std::future::Future<
3496        Output = crate::Result<
3497            gax::response::Response<crate::model::ListModelDeploymentMonitoringJobsResponse>,
3498        >,
3499    > + Send {
3500        gaxi::unimplemented::unimplemented_stub()
3501    }
3502
3503    /// Implements [super::client::JobService::update_model_deployment_monitoring_job].
3504    fn update_model_deployment_monitoring_job(
3505        &self,
3506        _req: crate::model::UpdateModelDeploymentMonitoringJobRequest,
3507        _options: gax::options::RequestOptions,
3508    ) -> impl std::future::Future<
3509        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
3510    > + Send {
3511        gaxi::unimplemented::unimplemented_stub()
3512    }
3513
3514    /// Implements [super::client::JobService::delete_model_deployment_monitoring_job].
3515    fn delete_model_deployment_monitoring_job(
3516        &self,
3517        _req: crate::model::DeleteModelDeploymentMonitoringJobRequest,
3518        _options: gax::options::RequestOptions,
3519    ) -> impl std::future::Future<
3520        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
3521    > + Send {
3522        gaxi::unimplemented::unimplemented_stub()
3523    }
3524
3525    /// Implements [super::client::JobService::pause_model_deployment_monitoring_job].
3526    fn pause_model_deployment_monitoring_job(
3527        &self,
3528        _req: crate::model::PauseModelDeploymentMonitoringJobRequest,
3529        _options: gax::options::RequestOptions,
3530    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
3531        gaxi::unimplemented::unimplemented_stub()
3532    }
3533
3534    /// Implements [super::client::JobService::resume_model_deployment_monitoring_job].
3535    fn resume_model_deployment_monitoring_job(
3536        &self,
3537        _req: crate::model::ResumeModelDeploymentMonitoringJobRequest,
3538        _options: gax::options::RequestOptions,
3539    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
3540        gaxi::unimplemented::unimplemented_stub()
3541    }
3542
3543    /// Implements [super::client::JobService::list_locations].
3544    fn list_locations(
3545        &self,
3546        _req: location::model::ListLocationsRequest,
3547        _options: gax::options::RequestOptions,
3548    ) -> impl std::future::Future<
3549        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
3550    > + Send {
3551        gaxi::unimplemented::unimplemented_stub()
3552    }
3553
3554    /// Implements [super::client::JobService::get_location].
3555    fn get_location(
3556        &self,
3557        _req: location::model::GetLocationRequest,
3558        _options: gax::options::RequestOptions,
3559    ) -> impl std::future::Future<
3560        Output = crate::Result<gax::response::Response<location::model::Location>>,
3561    > + Send {
3562        gaxi::unimplemented::unimplemented_stub()
3563    }
3564
3565    /// Implements [super::client::JobService::set_iam_policy].
3566    fn set_iam_policy(
3567        &self,
3568        _req: iam_v1::model::SetIamPolicyRequest,
3569        _options: gax::options::RequestOptions,
3570    ) -> impl std::future::Future<
3571        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
3572    > + Send {
3573        gaxi::unimplemented::unimplemented_stub()
3574    }
3575
3576    /// Implements [super::client::JobService::get_iam_policy].
3577    fn get_iam_policy(
3578        &self,
3579        _req: iam_v1::model::GetIamPolicyRequest,
3580        _options: gax::options::RequestOptions,
3581    ) -> impl std::future::Future<
3582        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
3583    > + Send {
3584        gaxi::unimplemented::unimplemented_stub()
3585    }
3586
3587    /// Implements [super::client::JobService::test_iam_permissions].
3588    fn test_iam_permissions(
3589        &self,
3590        _req: iam_v1::model::TestIamPermissionsRequest,
3591        _options: gax::options::RequestOptions,
3592    ) -> impl std::future::Future<
3593        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
3594    > + Send {
3595        gaxi::unimplemented::unimplemented_stub()
3596    }
3597
3598    /// Implements [super::client::JobService::list_operations].
3599    fn list_operations(
3600        &self,
3601        _req: longrunning::model::ListOperationsRequest,
3602        _options: gax::options::RequestOptions,
3603    ) -> impl std::future::Future<
3604        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
3605    > + Send {
3606        gaxi::unimplemented::unimplemented_stub()
3607    }
3608
3609    /// Implements [super::client::JobService::get_operation].
3610    fn get_operation(
3611        &self,
3612        _req: longrunning::model::GetOperationRequest,
3613        _options: gax::options::RequestOptions,
3614    ) -> impl std::future::Future<
3615        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
3616    > + Send {
3617        gaxi::unimplemented::unimplemented_stub()
3618    }
3619
3620    /// Implements [super::client::JobService::delete_operation].
3621    fn delete_operation(
3622        &self,
3623        _req: longrunning::model::DeleteOperationRequest,
3624        _options: gax::options::RequestOptions,
3625    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
3626        gaxi::unimplemented::unimplemented_stub()
3627    }
3628
3629    /// Implements [super::client::JobService::cancel_operation].
3630    fn cancel_operation(
3631        &self,
3632        _req: longrunning::model::CancelOperationRequest,
3633        _options: gax::options::RequestOptions,
3634    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
3635        gaxi::unimplemented::unimplemented_stub()
3636    }
3637
3638    /// Implements [super::client::JobService::wait_operation].
3639    fn wait_operation(
3640        &self,
3641        _req: longrunning::model::WaitOperationRequest,
3642        _options: gax::options::RequestOptions,
3643    ) -> impl std::future::Future<
3644        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
3645    > + Send {
3646        gaxi::unimplemented::unimplemented_stub()
3647    }
3648
3649    /// Returns the polling error policy.
3650    ///
3651    /// When mocking, this method is typically irrelevant. Do not try to verify
3652    /// it is called by your mocks.
3653    fn get_polling_error_policy(
3654        &self,
3655        _options: &gax::options::RequestOptions,
3656    ) -> std::sync::Arc<dyn gax::polling_error_policy::PollingErrorPolicy> {
3657        std::sync::Arc::new(gax::polling_error_policy::Aip194Strict)
3658    }
3659
3660    /// Returns the polling backoff policy.
3661    ///
3662    /// When mocking, this method is typically irrelevant. Do not try to verify
3663    /// it is called by your mocks.
3664    fn get_polling_backoff_policy(
3665        &self,
3666        _options: &gax::options::RequestOptions,
3667    ) -> std::sync::Arc<dyn gax::polling_backoff_policy::PollingBackoffPolicy> {
3668        std::sync::Arc::new(gax::exponential_backoff::ExponentialBackoff::default())
3669    }
3670}
3671
3672/// Defines the trait used to implement [super::client::LlmUtilityService].
3673///
3674/// Application developers may need to implement this trait to mock
3675/// `client::LlmUtilityService`.  In other use-cases, application developers only
3676/// use `client::LlmUtilityService` and need not be concerned with this trait or
3677/// its implementations.
3678///
3679/// Services gain new RPCs routinely. Consequently, this trait gains new methods
3680/// too. To avoid breaking applications the trait provides a default
3681/// implementation of each method. Most of these implementations just return an
3682/// error.
3683#[cfg(feature = "llm-utility-service")]
3684#[cfg_attr(docsrs, doc(cfg(feature = "llm-utility-service")))]
3685pub trait LlmUtilityService: std::fmt::Debug + Send + Sync {
3686    /// Implements [super::client::LlmUtilityService::count_tokens].
3687    fn count_tokens(
3688        &self,
3689        _req: crate::model::CountTokensRequest,
3690        _options: gax::options::RequestOptions,
3691    ) -> impl std::future::Future<
3692        Output = crate::Result<gax::response::Response<crate::model::CountTokensResponse>>,
3693    > + Send {
3694        gaxi::unimplemented::unimplemented_stub()
3695    }
3696
3697    /// Implements [super::client::LlmUtilityService::compute_tokens].
3698    fn compute_tokens(
3699        &self,
3700        _req: crate::model::ComputeTokensRequest,
3701        _options: gax::options::RequestOptions,
3702    ) -> impl std::future::Future<
3703        Output = crate::Result<gax::response::Response<crate::model::ComputeTokensResponse>>,
3704    > + Send {
3705        gaxi::unimplemented::unimplemented_stub()
3706    }
3707
3708    /// Implements [super::client::LlmUtilityService::list_locations].
3709    fn list_locations(
3710        &self,
3711        _req: location::model::ListLocationsRequest,
3712        _options: gax::options::RequestOptions,
3713    ) -> impl std::future::Future<
3714        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
3715    > + Send {
3716        gaxi::unimplemented::unimplemented_stub()
3717    }
3718
3719    /// Implements [super::client::LlmUtilityService::get_location].
3720    fn get_location(
3721        &self,
3722        _req: location::model::GetLocationRequest,
3723        _options: gax::options::RequestOptions,
3724    ) -> impl std::future::Future<
3725        Output = crate::Result<gax::response::Response<location::model::Location>>,
3726    > + Send {
3727        gaxi::unimplemented::unimplemented_stub()
3728    }
3729
3730    /// Implements [super::client::LlmUtilityService::set_iam_policy].
3731    fn set_iam_policy(
3732        &self,
3733        _req: iam_v1::model::SetIamPolicyRequest,
3734        _options: gax::options::RequestOptions,
3735    ) -> impl std::future::Future<
3736        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
3737    > + Send {
3738        gaxi::unimplemented::unimplemented_stub()
3739    }
3740
3741    /// Implements [super::client::LlmUtilityService::get_iam_policy].
3742    fn get_iam_policy(
3743        &self,
3744        _req: iam_v1::model::GetIamPolicyRequest,
3745        _options: gax::options::RequestOptions,
3746    ) -> impl std::future::Future<
3747        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
3748    > + Send {
3749        gaxi::unimplemented::unimplemented_stub()
3750    }
3751
3752    /// Implements [super::client::LlmUtilityService::test_iam_permissions].
3753    fn test_iam_permissions(
3754        &self,
3755        _req: iam_v1::model::TestIamPermissionsRequest,
3756        _options: gax::options::RequestOptions,
3757    ) -> impl std::future::Future<
3758        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
3759    > + Send {
3760        gaxi::unimplemented::unimplemented_stub()
3761    }
3762
3763    /// Implements [super::client::LlmUtilityService::list_operations].
3764    fn list_operations(
3765        &self,
3766        _req: longrunning::model::ListOperationsRequest,
3767        _options: gax::options::RequestOptions,
3768    ) -> impl std::future::Future<
3769        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
3770    > + Send {
3771        gaxi::unimplemented::unimplemented_stub()
3772    }
3773
3774    /// Implements [super::client::LlmUtilityService::get_operation].
3775    fn get_operation(
3776        &self,
3777        _req: longrunning::model::GetOperationRequest,
3778        _options: gax::options::RequestOptions,
3779    ) -> impl std::future::Future<
3780        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
3781    > + Send {
3782        gaxi::unimplemented::unimplemented_stub()
3783    }
3784
3785    /// Implements [super::client::LlmUtilityService::delete_operation].
3786    fn delete_operation(
3787        &self,
3788        _req: longrunning::model::DeleteOperationRequest,
3789        _options: gax::options::RequestOptions,
3790    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
3791        gaxi::unimplemented::unimplemented_stub()
3792    }
3793
3794    /// Implements [super::client::LlmUtilityService::cancel_operation].
3795    fn cancel_operation(
3796        &self,
3797        _req: longrunning::model::CancelOperationRequest,
3798        _options: gax::options::RequestOptions,
3799    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
3800        gaxi::unimplemented::unimplemented_stub()
3801    }
3802
3803    /// Implements [super::client::LlmUtilityService::wait_operation].
3804    fn wait_operation(
3805        &self,
3806        _req: longrunning::model::WaitOperationRequest,
3807        _options: gax::options::RequestOptions,
3808    ) -> impl std::future::Future<
3809        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
3810    > + Send {
3811        gaxi::unimplemented::unimplemented_stub()
3812    }
3813}
3814
3815/// Defines the trait used to implement [super::client::MatchService].
3816///
3817/// Application developers may need to implement this trait to mock
3818/// `client::MatchService`.  In other use-cases, application developers only
3819/// use `client::MatchService` and need not be concerned with this trait or
3820/// its implementations.
3821///
3822/// Services gain new RPCs routinely. Consequently, this trait gains new methods
3823/// too. To avoid breaking applications the trait provides a default
3824/// implementation of each method. Most of these implementations just return an
3825/// error.
3826#[cfg(feature = "match-service")]
3827#[cfg_attr(docsrs, doc(cfg(feature = "match-service")))]
3828pub trait MatchService: std::fmt::Debug + Send + Sync {
3829    /// Implements [super::client::MatchService::find_neighbors].
3830    fn find_neighbors(
3831        &self,
3832        _req: crate::model::FindNeighborsRequest,
3833        _options: gax::options::RequestOptions,
3834    ) -> impl std::future::Future<
3835        Output = crate::Result<gax::response::Response<crate::model::FindNeighborsResponse>>,
3836    > + Send {
3837        gaxi::unimplemented::unimplemented_stub()
3838    }
3839
3840    /// Implements [super::client::MatchService::read_index_datapoints].
3841    fn read_index_datapoints(
3842        &self,
3843        _req: crate::model::ReadIndexDatapointsRequest,
3844        _options: gax::options::RequestOptions,
3845    ) -> impl std::future::Future<
3846        Output = crate::Result<gax::response::Response<crate::model::ReadIndexDatapointsResponse>>,
3847    > + Send {
3848        gaxi::unimplemented::unimplemented_stub()
3849    }
3850
3851    /// Implements [super::client::MatchService::list_locations].
3852    fn list_locations(
3853        &self,
3854        _req: location::model::ListLocationsRequest,
3855        _options: gax::options::RequestOptions,
3856    ) -> impl std::future::Future<
3857        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
3858    > + Send {
3859        gaxi::unimplemented::unimplemented_stub()
3860    }
3861
3862    /// Implements [super::client::MatchService::get_location].
3863    fn get_location(
3864        &self,
3865        _req: location::model::GetLocationRequest,
3866        _options: gax::options::RequestOptions,
3867    ) -> impl std::future::Future<
3868        Output = crate::Result<gax::response::Response<location::model::Location>>,
3869    > + Send {
3870        gaxi::unimplemented::unimplemented_stub()
3871    }
3872
3873    /// Implements [super::client::MatchService::set_iam_policy].
3874    fn set_iam_policy(
3875        &self,
3876        _req: iam_v1::model::SetIamPolicyRequest,
3877        _options: gax::options::RequestOptions,
3878    ) -> impl std::future::Future<
3879        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
3880    > + Send {
3881        gaxi::unimplemented::unimplemented_stub()
3882    }
3883
3884    /// Implements [super::client::MatchService::get_iam_policy].
3885    fn get_iam_policy(
3886        &self,
3887        _req: iam_v1::model::GetIamPolicyRequest,
3888        _options: gax::options::RequestOptions,
3889    ) -> impl std::future::Future<
3890        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
3891    > + Send {
3892        gaxi::unimplemented::unimplemented_stub()
3893    }
3894
3895    /// Implements [super::client::MatchService::test_iam_permissions].
3896    fn test_iam_permissions(
3897        &self,
3898        _req: iam_v1::model::TestIamPermissionsRequest,
3899        _options: gax::options::RequestOptions,
3900    ) -> impl std::future::Future<
3901        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
3902    > + Send {
3903        gaxi::unimplemented::unimplemented_stub()
3904    }
3905
3906    /// Implements [super::client::MatchService::list_operations].
3907    fn list_operations(
3908        &self,
3909        _req: longrunning::model::ListOperationsRequest,
3910        _options: gax::options::RequestOptions,
3911    ) -> impl std::future::Future<
3912        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
3913    > + Send {
3914        gaxi::unimplemented::unimplemented_stub()
3915    }
3916
3917    /// Implements [super::client::MatchService::get_operation].
3918    fn get_operation(
3919        &self,
3920        _req: longrunning::model::GetOperationRequest,
3921        _options: gax::options::RequestOptions,
3922    ) -> impl std::future::Future<
3923        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
3924    > + Send {
3925        gaxi::unimplemented::unimplemented_stub()
3926    }
3927
3928    /// Implements [super::client::MatchService::delete_operation].
3929    fn delete_operation(
3930        &self,
3931        _req: longrunning::model::DeleteOperationRequest,
3932        _options: gax::options::RequestOptions,
3933    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
3934        gaxi::unimplemented::unimplemented_stub()
3935    }
3936
3937    /// Implements [super::client::MatchService::cancel_operation].
3938    fn cancel_operation(
3939        &self,
3940        _req: longrunning::model::CancelOperationRequest,
3941        _options: gax::options::RequestOptions,
3942    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
3943        gaxi::unimplemented::unimplemented_stub()
3944    }
3945
3946    /// Implements [super::client::MatchService::wait_operation].
3947    fn wait_operation(
3948        &self,
3949        _req: longrunning::model::WaitOperationRequest,
3950        _options: gax::options::RequestOptions,
3951    ) -> impl std::future::Future<
3952        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
3953    > + Send {
3954        gaxi::unimplemented::unimplemented_stub()
3955    }
3956}
3957
3958/// Defines the trait used to implement [super::client::MetadataService].
3959///
3960/// Application developers may need to implement this trait to mock
3961/// `client::MetadataService`.  In other use-cases, application developers only
3962/// use `client::MetadataService` and need not be concerned with this trait or
3963/// its implementations.
3964///
3965/// Services gain new RPCs routinely. Consequently, this trait gains new methods
3966/// too. To avoid breaking applications the trait provides a default
3967/// implementation of each method. Most of these implementations just return an
3968/// error.
3969#[cfg(feature = "metadata-service")]
3970#[cfg_attr(docsrs, doc(cfg(feature = "metadata-service")))]
3971pub trait MetadataService: std::fmt::Debug + Send + Sync {
3972    /// Implements [super::client::MetadataService::create_metadata_store].
3973    fn create_metadata_store(
3974        &self,
3975        _req: crate::model::CreateMetadataStoreRequest,
3976        _options: gax::options::RequestOptions,
3977    ) -> impl std::future::Future<
3978        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
3979    > + Send {
3980        gaxi::unimplemented::unimplemented_stub()
3981    }
3982
3983    /// Implements [super::client::MetadataService::get_metadata_store].
3984    fn get_metadata_store(
3985        &self,
3986        _req: crate::model::GetMetadataStoreRequest,
3987        _options: gax::options::RequestOptions,
3988    ) -> impl std::future::Future<
3989        Output = crate::Result<gax::response::Response<crate::model::MetadataStore>>,
3990    > + Send {
3991        gaxi::unimplemented::unimplemented_stub()
3992    }
3993
3994    /// Implements [super::client::MetadataService::list_metadata_stores].
3995    fn list_metadata_stores(
3996        &self,
3997        _req: crate::model::ListMetadataStoresRequest,
3998        _options: gax::options::RequestOptions,
3999    ) -> impl std::future::Future<
4000        Output = crate::Result<gax::response::Response<crate::model::ListMetadataStoresResponse>>,
4001    > + Send {
4002        gaxi::unimplemented::unimplemented_stub()
4003    }
4004
4005    /// Implements [super::client::MetadataService::delete_metadata_store].
4006    fn delete_metadata_store(
4007        &self,
4008        _req: crate::model::DeleteMetadataStoreRequest,
4009        _options: gax::options::RequestOptions,
4010    ) -> impl std::future::Future<
4011        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
4012    > + Send {
4013        gaxi::unimplemented::unimplemented_stub()
4014    }
4015
4016    /// Implements [super::client::MetadataService::create_artifact].
4017    fn create_artifact(
4018        &self,
4019        _req: crate::model::CreateArtifactRequest,
4020        _options: gax::options::RequestOptions,
4021    ) -> impl std::future::Future<
4022        Output = crate::Result<gax::response::Response<crate::model::Artifact>>,
4023    > + Send {
4024        gaxi::unimplemented::unimplemented_stub()
4025    }
4026
4027    /// Implements [super::client::MetadataService::get_artifact].
4028    fn get_artifact(
4029        &self,
4030        _req: crate::model::GetArtifactRequest,
4031        _options: gax::options::RequestOptions,
4032    ) -> impl std::future::Future<
4033        Output = crate::Result<gax::response::Response<crate::model::Artifact>>,
4034    > + Send {
4035        gaxi::unimplemented::unimplemented_stub()
4036    }
4037
4038    /// Implements [super::client::MetadataService::list_artifacts].
4039    fn list_artifacts(
4040        &self,
4041        _req: crate::model::ListArtifactsRequest,
4042        _options: gax::options::RequestOptions,
4043    ) -> impl std::future::Future<
4044        Output = crate::Result<gax::response::Response<crate::model::ListArtifactsResponse>>,
4045    > + Send {
4046        gaxi::unimplemented::unimplemented_stub()
4047    }
4048
4049    /// Implements [super::client::MetadataService::update_artifact].
4050    fn update_artifact(
4051        &self,
4052        _req: crate::model::UpdateArtifactRequest,
4053        _options: gax::options::RequestOptions,
4054    ) -> impl std::future::Future<
4055        Output = crate::Result<gax::response::Response<crate::model::Artifact>>,
4056    > + Send {
4057        gaxi::unimplemented::unimplemented_stub()
4058    }
4059
4060    /// Implements [super::client::MetadataService::delete_artifact].
4061    fn delete_artifact(
4062        &self,
4063        _req: crate::model::DeleteArtifactRequest,
4064        _options: gax::options::RequestOptions,
4065    ) -> impl std::future::Future<
4066        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
4067    > + Send {
4068        gaxi::unimplemented::unimplemented_stub()
4069    }
4070
4071    /// Implements [super::client::MetadataService::purge_artifacts].
4072    fn purge_artifacts(
4073        &self,
4074        _req: crate::model::PurgeArtifactsRequest,
4075        _options: gax::options::RequestOptions,
4076    ) -> impl std::future::Future<
4077        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
4078    > + Send {
4079        gaxi::unimplemented::unimplemented_stub()
4080    }
4081
4082    /// Implements [super::client::MetadataService::create_context].
4083    fn create_context(
4084        &self,
4085        _req: crate::model::CreateContextRequest,
4086        _options: gax::options::RequestOptions,
4087    ) -> impl std::future::Future<
4088        Output = crate::Result<gax::response::Response<crate::model::Context>>,
4089    > + Send {
4090        gaxi::unimplemented::unimplemented_stub()
4091    }
4092
4093    /// Implements [super::client::MetadataService::get_context].
4094    fn get_context(
4095        &self,
4096        _req: crate::model::GetContextRequest,
4097        _options: gax::options::RequestOptions,
4098    ) -> impl std::future::Future<
4099        Output = crate::Result<gax::response::Response<crate::model::Context>>,
4100    > + Send {
4101        gaxi::unimplemented::unimplemented_stub()
4102    }
4103
4104    /// Implements [super::client::MetadataService::list_contexts].
4105    fn list_contexts(
4106        &self,
4107        _req: crate::model::ListContextsRequest,
4108        _options: gax::options::RequestOptions,
4109    ) -> impl std::future::Future<
4110        Output = crate::Result<gax::response::Response<crate::model::ListContextsResponse>>,
4111    > + Send {
4112        gaxi::unimplemented::unimplemented_stub()
4113    }
4114
4115    /// Implements [super::client::MetadataService::update_context].
4116    fn update_context(
4117        &self,
4118        _req: crate::model::UpdateContextRequest,
4119        _options: gax::options::RequestOptions,
4120    ) -> impl std::future::Future<
4121        Output = crate::Result<gax::response::Response<crate::model::Context>>,
4122    > + Send {
4123        gaxi::unimplemented::unimplemented_stub()
4124    }
4125
4126    /// Implements [super::client::MetadataService::delete_context].
4127    fn delete_context(
4128        &self,
4129        _req: crate::model::DeleteContextRequest,
4130        _options: gax::options::RequestOptions,
4131    ) -> impl std::future::Future<
4132        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
4133    > + Send {
4134        gaxi::unimplemented::unimplemented_stub()
4135    }
4136
4137    /// Implements [super::client::MetadataService::purge_contexts].
4138    fn purge_contexts(
4139        &self,
4140        _req: crate::model::PurgeContextsRequest,
4141        _options: gax::options::RequestOptions,
4142    ) -> impl std::future::Future<
4143        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
4144    > + Send {
4145        gaxi::unimplemented::unimplemented_stub()
4146    }
4147
4148    /// Implements [super::client::MetadataService::add_context_artifacts_and_executions].
4149    fn add_context_artifacts_and_executions(
4150        &self,
4151        _req: crate::model::AddContextArtifactsAndExecutionsRequest,
4152        _options: gax::options::RequestOptions,
4153    ) -> impl std::future::Future<
4154        Output = crate::Result<
4155            gax::response::Response<crate::model::AddContextArtifactsAndExecutionsResponse>,
4156        >,
4157    > + Send {
4158        gaxi::unimplemented::unimplemented_stub()
4159    }
4160
4161    /// Implements [super::client::MetadataService::add_context_children].
4162    fn add_context_children(
4163        &self,
4164        _req: crate::model::AddContextChildrenRequest,
4165        _options: gax::options::RequestOptions,
4166    ) -> impl std::future::Future<
4167        Output = crate::Result<gax::response::Response<crate::model::AddContextChildrenResponse>>,
4168    > + Send {
4169        gaxi::unimplemented::unimplemented_stub()
4170    }
4171
4172    /// Implements [super::client::MetadataService::remove_context_children].
4173    fn remove_context_children(
4174        &self,
4175        _req: crate::model::RemoveContextChildrenRequest,
4176        _options: gax::options::RequestOptions,
4177    ) -> impl std::future::Future<
4178        Output = crate::Result<
4179            gax::response::Response<crate::model::RemoveContextChildrenResponse>,
4180        >,
4181    > + Send {
4182        gaxi::unimplemented::unimplemented_stub()
4183    }
4184
4185    /// Implements [super::client::MetadataService::query_context_lineage_subgraph].
4186    fn query_context_lineage_subgraph(
4187        &self,
4188        _req: crate::model::QueryContextLineageSubgraphRequest,
4189        _options: gax::options::RequestOptions,
4190    ) -> impl std::future::Future<
4191        Output = crate::Result<gax::response::Response<crate::model::LineageSubgraph>>,
4192    > + Send {
4193        gaxi::unimplemented::unimplemented_stub()
4194    }
4195
4196    /// Implements [super::client::MetadataService::create_execution].
4197    fn create_execution(
4198        &self,
4199        _req: crate::model::CreateExecutionRequest,
4200        _options: gax::options::RequestOptions,
4201    ) -> impl std::future::Future<
4202        Output = crate::Result<gax::response::Response<crate::model::Execution>>,
4203    > + Send {
4204        gaxi::unimplemented::unimplemented_stub()
4205    }
4206
4207    /// Implements [super::client::MetadataService::get_execution].
4208    fn get_execution(
4209        &self,
4210        _req: crate::model::GetExecutionRequest,
4211        _options: gax::options::RequestOptions,
4212    ) -> impl std::future::Future<
4213        Output = crate::Result<gax::response::Response<crate::model::Execution>>,
4214    > + Send {
4215        gaxi::unimplemented::unimplemented_stub()
4216    }
4217
4218    /// Implements [super::client::MetadataService::list_executions].
4219    fn list_executions(
4220        &self,
4221        _req: crate::model::ListExecutionsRequest,
4222        _options: gax::options::RequestOptions,
4223    ) -> impl std::future::Future<
4224        Output = crate::Result<gax::response::Response<crate::model::ListExecutionsResponse>>,
4225    > + Send {
4226        gaxi::unimplemented::unimplemented_stub()
4227    }
4228
4229    /// Implements [super::client::MetadataService::update_execution].
4230    fn update_execution(
4231        &self,
4232        _req: crate::model::UpdateExecutionRequest,
4233        _options: gax::options::RequestOptions,
4234    ) -> impl std::future::Future<
4235        Output = crate::Result<gax::response::Response<crate::model::Execution>>,
4236    > + Send {
4237        gaxi::unimplemented::unimplemented_stub()
4238    }
4239
4240    /// Implements [super::client::MetadataService::delete_execution].
4241    fn delete_execution(
4242        &self,
4243        _req: crate::model::DeleteExecutionRequest,
4244        _options: gax::options::RequestOptions,
4245    ) -> impl std::future::Future<
4246        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
4247    > + Send {
4248        gaxi::unimplemented::unimplemented_stub()
4249    }
4250
4251    /// Implements [super::client::MetadataService::purge_executions].
4252    fn purge_executions(
4253        &self,
4254        _req: crate::model::PurgeExecutionsRequest,
4255        _options: gax::options::RequestOptions,
4256    ) -> impl std::future::Future<
4257        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
4258    > + Send {
4259        gaxi::unimplemented::unimplemented_stub()
4260    }
4261
4262    /// Implements [super::client::MetadataService::add_execution_events].
4263    fn add_execution_events(
4264        &self,
4265        _req: crate::model::AddExecutionEventsRequest,
4266        _options: gax::options::RequestOptions,
4267    ) -> impl std::future::Future<
4268        Output = crate::Result<gax::response::Response<crate::model::AddExecutionEventsResponse>>,
4269    > + Send {
4270        gaxi::unimplemented::unimplemented_stub()
4271    }
4272
4273    /// Implements [super::client::MetadataService::query_execution_inputs_and_outputs].
4274    fn query_execution_inputs_and_outputs(
4275        &self,
4276        _req: crate::model::QueryExecutionInputsAndOutputsRequest,
4277        _options: gax::options::RequestOptions,
4278    ) -> impl std::future::Future<
4279        Output = crate::Result<gax::response::Response<crate::model::LineageSubgraph>>,
4280    > + Send {
4281        gaxi::unimplemented::unimplemented_stub()
4282    }
4283
4284    /// Implements [super::client::MetadataService::create_metadata_schema].
4285    fn create_metadata_schema(
4286        &self,
4287        _req: crate::model::CreateMetadataSchemaRequest,
4288        _options: gax::options::RequestOptions,
4289    ) -> impl std::future::Future<
4290        Output = crate::Result<gax::response::Response<crate::model::MetadataSchema>>,
4291    > + Send {
4292        gaxi::unimplemented::unimplemented_stub()
4293    }
4294
4295    /// Implements [super::client::MetadataService::get_metadata_schema].
4296    fn get_metadata_schema(
4297        &self,
4298        _req: crate::model::GetMetadataSchemaRequest,
4299        _options: gax::options::RequestOptions,
4300    ) -> impl std::future::Future<
4301        Output = crate::Result<gax::response::Response<crate::model::MetadataSchema>>,
4302    > + Send {
4303        gaxi::unimplemented::unimplemented_stub()
4304    }
4305
4306    /// Implements [super::client::MetadataService::list_metadata_schemas].
4307    fn list_metadata_schemas(
4308        &self,
4309        _req: crate::model::ListMetadataSchemasRequest,
4310        _options: gax::options::RequestOptions,
4311    ) -> impl std::future::Future<
4312        Output = crate::Result<gax::response::Response<crate::model::ListMetadataSchemasResponse>>,
4313    > + Send {
4314        gaxi::unimplemented::unimplemented_stub()
4315    }
4316
4317    /// Implements [super::client::MetadataService::query_artifact_lineage_subgraph].
4318    fn query_artifact_lineage_subgraph(
4319        &self,
4320        _req: crate::model::QueryArtifactLineageSubgraphRequest,
4321        _options: gax::options::RequestOptions,
4322    ) -> impl std::future::Future<
4323        Output = crate::Result<gax::response::Response<crate::model::LineageSubgraph>>,
4324    > + Send {
4325        gaxi::unimplemented::unimplemented_stub()
4326    }
4327
4328    /// Implements [super::client::MetadataService::list_locations].
4329    fn list_locations(
4330        &self,
4331        _req: location::model::ListLocationsRequest,
4332        _options: gax::options::RequestOptions,
4333    ) -> impl std::future::Future<
4334        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
4335    > + Send {
4336        gaxi::unimplemented::unimplemented_stub()
4337    }
4338
4339    /// Implements [super::client::MetadataService::get_location].
4340    fn get_location(
4341        &self,
4342        _req: location::model::GetLocationRequest,
4343        _options: gax::options::RequestOptions,
4344    ) -> impl std::future::Future<
4345        Output = crate::Result<gax::response::Response<location::model::Location>>,
4346    > + Send {
4347        gaxi::unimplemented::unimplemented_stub()
4348    }
4349
4350    /// Implements [super::client::MetadataService::set_iam_policy].
4351    fn set_iam_policy(
4352        &self,
4353        _req: iam_v1::model::SetIamPolicyRequest,
4354        _options: gax::options::RequestOptions,
4355    ) -> impl std::future::Future<
4356        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
4357    > + Send {
4358        gaxi::unimplemented::unimplemented_stub()
4359    }
4360
4361    /// Implements [super::client::MetadataService::get_iam_policy].
4362    fn get_iam_policy(
4363        &self,
4364        _req: iam_v1::model::GetIamPolicyRequest,
4365        _options: gax::options::RequestOptions,
4366    ) -> impl std::future::Future<
4367        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
4368    > + Send {
4369        gaxi::unimplemented::unimplemented_stub()
4370    }
4371
4372    /// Implements [super::client::MetadataService::test_iam_permissions].
4373    fn test_iam_permissions(
4374        &self,
4375        _req: iam_v1::model::TestIamPermissionsRequest,
4376        _options: gax::options::RequestOptions,
4377    ) -> impl std::future::Future<
4378        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
4379    > + Send {
4380        gaxi::unimplemented::unimplemented_stub()
4381    }
4382
4383    /// Implements [super::client::MetadataService::list_operations].
4384    fn list_operations(
4385        &self,
4386        _req: longrunning::model::ListOperationsRequest,
4387        _options: gax::options::RequestOptions,
4388    ) -> impl std::future::Future<
4389        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
4390    > + Send {
4391        gaxi::unimplemented::unimplemented_stub()
4392    }
4393
4394    /// Implements [super::client::MetadataService::get_operation].
4395    fn get_operation(
4396        &self,
4397        _req: longrunning::model::GetOperationRequest,
4398        _options: gax::options::RequestOptions,
4399    ) -> impl std::future::Future<
4400        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
4401    > + Send {
4402        gaxi::unimplemented::unimplemented_stub()
4403    }
4404
4405    /// Implements [super::client::MetadataService::delete_operation].
4406    fn delete_operation(
4407        &self,
4408        _req: longrunning::model::DeleteOperationRequest,
4409        _options: gax::options::RequestOptions,
4410    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
4411        gaxi::unimplemented::unimplemented_stub()
4412    }
4413
4414    /// Implements [super::client::MetadataService::cancel_operation].
4415    fn cancel_operation(
4416        &self,
4417        _req: longrunning::model::CancelOperationRequest,
4418        _options: gax::options::RequestOptions,
4419    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
4420        gaxi::unimplemented::unimplemented_stub()
4421    }
4422
4423    /// Implements [super::client::MetadataService::wait_operation].
4424    fn wait_operation(
4425        &self,
4426        _req: longrunning::model::WaitOperationRequest,
4427        _options: gax::options::RequestOptions,
4428    ) -> impl std::future::Future<
4429        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
4430    > + Send {
4431        gaxi::unimplemented::unimplemented_stub()
4432    }
4433
4434    /// Returns the polling error policy.
4435    ///
4436    /// When mocking, this method is typically irrelevant. Do not try to verify
4437    /// it is called by your mocks.
4438    fn get_polling_error_policy(
4439        &self,
4440        _options: &gax::options::RequestOptions,
4441    ) -> std::sync::Arc<dyn gax::polling_error_policy::PollingErrorPolicy> {
4442        std::sync::Arc::new(gax::polling_error_policy::Aip194Strict)
4443    }
4444
4445    /// Returns the polling backoff policy.
4446    ///
4447    /// When mocking, this method is typically irrelevant. Do not try to verify
4448    /// it is called by your mocks.
4449    fn get_polling_backoff_policy(
4450        &self,
4451        _options: &gax::options::RequestOptions,
4452    ) -> std::sync::Arc<dyn gax::polling_backoff_policy::PollingBackoffPolicy> {
4453        std::sync::Arc::new(gax::exponential_backoff::ExponentialBackoff::default())
4454    }
4455}
4456
4457/// Defines the trait used to implement [super::client::MigrationService].
4458///
4459/// Application developers may need to implement this trait to mock
4460/// `client::MigrationService`.  In other use-cases, application developers only
4461/// use `client::MigrationService` and need not be concerned with this trait or
4462/// its implementations.
4463///
4464/// Services gain new RPCs routinely. Consequently, this trait gains new methods
4465/// too. To avoid breaking applications the trait provides a default
4466/// implementation of each method. Most of these implementations just return an
4467/// error.
4468#[cfg(feature = "migration-service")]
4469#[cfg_attr(docsrs, doc(cfg(feature = "migration-service")))]
4470pub trait MigrationService: std::fmt::Debug + Send + Sync {
4471    /// Implements [super::client::MigrationService::search_migratable_resources].
4472    fn search_migratable_resources(
4473        &self,
4474        _req: crate::model::SearchMigratableResourcesRequest,
4475        _options: gax::options::RequestOptions,
4476    ) -> impl std::future::Future<
4477        Output = crate::Result<
4478            gax::response::Response<crate::model::SearchMigratableResourcesResponse>,
4479        >,
4480    > + Send {
4481        gaxi::unimplemented::unimplemented_stub()
4482    }
4483
4484    /// Implements [super::client::MigrationService::batch_migrate_resources].
4485    fn batch_migrate_resources(
4486        &self,
4487        _req: crate::model::BatchMigrateResourcesRequest,
4488        _options: gax::options::RequestOptions,
4489    ) -> impl std::future::Future<
4490        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
4491    > + Send {
4492        gaxi::unimplemented::unimplemented_stub()
4493    }
4494
4495    /// Implements [super::client::MigrationService::list_locations].
4496    fn list_locations(
4497        &self,
4498        _req: location::model::ListLocationsRequest,
4499        _options: gax::options::RequestOptions,
4500    ) -> impl std::future::Future<
4501        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
4502    > + Send {
4503        gaxi::unimplemented::unimplemented_stub()
4504    }
4505
4506    /// Implements [super::client::MigrationService::get_location].
4507    fn get_location(
4508        &self,
4509        _req: location::model::GetLocationRequest,
4510        _options: gax::options::RequestOptions,
4511    ) -> impl std::future::Future<
4512        Output = crate::Result<gax::response::Response<location::model::Location>>,
4513    > + Send {
4514        gaxi::unimplemented::unimplemented_stub()
4515    }
4516
4517    /// Implements [super::client::MigrationService::set_iam_policy].
4518    fn set_iam_policy(
4519        &self,
4520        _req: iam_v1::model::SetIamPolicyRequest,
4521        _options: gax::options::RequestOptions,
4522    ) -> impl std::future::Future<
4523        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
4524    > + Send {
4525        gaxi::unimplemented::unimplemented_stub()
4526    }
4527
4528    /// Implements [super::client::MigrationService::get_iam_policy].
4529    fn get_iam_policy(
4530        &self,
4531        _req: iam_v1::model::GetIamPolicyRequest,
4532        _options: gax::options::RequestOptions,
4533    ) -> impl std::future::Future<
4534        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
4535    > + Send {
4536        gaxi::unimplemented::unimplemented_stub()
4537    }
4538
4539    /// Implements [super::client::MigrationService::test_iam_permissions].
4540    fn test_iam_permissions(
4541        &self,
4542        _req: iam_v1::model::TestIamPermissionsRequest,
4543        _options: gax::options::RequestOptions,
4544    ) -> impl std::future::Future<
4545        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
4546    > + Send {
4547        gaxi::unimplemented::unimplemented_stub()
4548    }
4549
4550    /// Implements [super::client::MigrationService::list_operations].
4551    fn list_operations(
4552        &self,
4553        _req: longrunning::model::ListOperationsRequest,
4554        _options: gax::options::RequestOptions,
4555    ) -> impl std::future::Future<
4556        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
4557    > + Send {
4558        gaxi::unimplemented::unimplemented_stub()
4559    }
4560
4561    /// Implements [super::client::MigrationService::get_operation].
4562    fn get_operation(
4563        &self,
4564        _req: longrunning::model::GetOperationRequest,
4565        _options: gax::options::RequestOptions,
4566    ) -> impl std::future::Future<
4567        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
4568    > + Send {
4569        gaxi::unimplemented::unimplemented_stub()
4570    }
4571
4572    /// Implements [super::client::MigrationService::delete_operation].
4573    fn delete_operation(
4574        &self,
4575        _req: longrunning::model::DeleteOperationRequest,
4576        _options: gax::options::RequestOptions,
4577    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
4578        gaxi::unimplemented::unimplemented_stub()
4579    }
4580
4581    /// Implements [super::client::MigrationService::cancel_operation].
4582    fn cancel_operation(
4583        &self,
4584        _req: longrunning::model::CancelOperationRequest,
4585        _options: gax::options::RequestOptions,
4586    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
4587        gaxi::unimplemented::unimplemented_stub()
4588    }
4589
4590    /// Implements [super::client::MigrationService::wait_operation].
4591    fn wait_operation(
4592        &self,
4593        _req: longrunning::model::WaitOperationRequest,
4594        _options: gax::options::RequestOptions,
4595    ) -> impl std::future::Future<
4596        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
4597    > + Send {
4598        gaxi::unimplemented::unimplemented_stub()
4599    }
4600
4601    /// Returns the polling error policy.
4602    ///
4603    /// When mocking, this method is typically irrelevant. Do not try to verify
4604    /// it is called by your mocks.
4605    fn get_polling_error_policy(
4606        &self,
4607        _options: &gax::options::RequestOptions,
4608    ) -> std::sync::Arc<dyn gax::polling_error_policy::PollingErrorPolicy> {
4609        std::sync::Arc::new(gax::polling_error_policy::Aip194Strict)
4610    }
4611
4612    /// Returns the polling backoff policy.
4613    ///
4614    /// When mocking, this method is typically irrelevant. Do not try to verify
4615    /// it is called by your mocks.
4616    fn get_polling_backoff_policy(
4617        &self,
4618        _options: &gax::options::RequestOptions,
4619    ) -> std::sync::Arc<dyn gax::polling_backoff_policy::PollingBackoffPolicy> {
4620        std::sync::Arc::new(gax::exponential_backoff::ExponentialBackoff::default())
4621    }
4622}
4623
4624/// Defines the trait used to implement [super::client::ModelGardenService].
4625///
4626/// Application developers may need to implement this trait to mock
4627/// `client::ModelGardenService`.  In other use-cases, application developers only
4628/// use `client::ModelGardenService` and need not be concerned with this trait or
4629/// its implementations.
4630///
4631/// Services gain new RPCs routinely. Consequently, this trait gains new methods
4632/// too. To avoid breaking applications the trait provides a default
4633/// implementation of each method. Most of these implementations just return an
4634/// error.
4635#[cfg(feature = "model-garden-service")]
4636#[cfg_attr(docsrs, doc(cfg(feature = "model-garden-service")))]
4637pub trait ModelGardenService: std::fmt::Debug + Send + Sync {
4638    /// Implements [super::client::ModelGardenService::get_publisher_model].
4639    fn get_publisher_model(
4640        &self,
4641        _req: crate::model::GetPublisherModelRequest,
4642        _options: gax::options::RequestOptions,
4643    ) -> impl std::future::Future<
4644        Output = crate::Result<gax::response::Response<crate::model::PublisherModel>>,
4645    > + Send {
4646        gaxi::unimplemented::unimplemented_stub()
4647    }
4648
4649    /// Implements [super::client::ModelGardenService::deploy].
4650    fn deploy(
4651        &self,
4652        _req: crate::model::DeployRequest,
4653        _options: gax::options::RequestOptions,
4654    ) -> impl std::future::Future<
4655        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
4656    > + Send {
4657        gaxi::unimplemented::unimplemented_stub()
4658    }
4659
4660    /// Implements [super::client::ModelGardenService::list_locations].
4661    fn list_locations(
4662        &self,
4663        _req: location::model::ListLocationsRequest,
4664        _options: gax::options::RequestOptions,
4665    ) -> impl std::future::Future<
4666        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
4667    > + Send {
4668        gaxi::unimplemented::unimplemented_stub()
4669    }
4670
4671    /// Implements [super::client::ModelGardenService::get_location].
4672    fn get_location(
4673        &self,
4674        _req: location::model::GetLocationRequest,
4675        _options: gax::options::RequestOptions,
4676    ) -> impl std::future::Future<
4677        Output = crate::Result<gax::response::Response<location::model::Location>>,
4678    > + Send {
4679        gaxi::unimplemented::unimplemented_stub()
4680    }
4681
4682    /// Implements [super::client::ModelGardenService::set_iam_policy].
4683    fn set_iam_policy(
4684        &self,
4685        _req: iam_v1::model::SetIamPolicyRequest,
4686        _options: gax::options::RequestOptions,
4687    ) -> impl std::future::Future<
4688        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
4689    > + Send {
4690        gaxi::unimplemented::unimplemented_stub()
4691    }
4692
4693    /// Implements [super::client::ModelGardenService::get_iam_policy].
4694    fn get_iam_policy(
4695        &self,
4696        _req: iam_v1::model::GetIamPolicyRequest,
4697        _options: gax::options::RequestOptions,
4698    ) -> impl std::future::Future<
4699        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
4700    > + Send {
4701        gaxi::unimplemented::unimplemented_stub()
4702    }
4703
4704    /// Implements [super::client::ModelGardenService::test_iam_permissions].
4705    fn test_iam_permissions(
4706        &self,
4707        _req: iam_v1::model::TestIamPermissionsRequest,
4708        _options: gax::options::RequestOptions,
4709    ) -> impl std::future::Future<
4710        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
4711    > + Send {
4712        gaxi::unimplemented::unimplemented_stub()
4713    }
4714
4715    /// Implements [super::client::ModelGardenService::list_operations].
4716    fn list_operations(
4717        &self,
4718        _req: longrunning::model::ListOperationsRequest,
4719        _options: gax::options::RequestOptions,
4720    ) -> impl std::future::Future<
4721        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
4722    > + Send {
4723        gaxi::unimplemented::unimplemented_stub()
4724    }
4725
4726    /// Implements [super::client::ModelGardenService::get_operation].
4727    fn get_operation(
4728        &self,
4729        _req: longrunning::model::GetOperationRequest,
4730        _options: gax::options::RequestOptions,
4731    ) -> impl std::future::Future<
4732        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
4733    > + Send {
4734        gaxi::unimplemented::unimplemented_stub()
4735    }
4736
4737    /// Implements [super::client::ModelGardenService::delete_operation].
4738    fn delete_operation(
4739        &self,
4740        _req: longrunning::model::DeleteOperationRequest,
4741        _options: gax::options::RequestOptions,
4742    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
4743        gaxi::unimplemented::unimplemented_stub()
4744    }
4745
4746    /// Implements [super::client::ModelGardenService::cancel_operation].
4747    fn cancel_operation(
4748        &self,
4749        _req: longrunning::model::CancelOperationRequest,
4750        _options: gax::options::RequestOptions,
4751    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
4752        gaxi::unimplemented::unimplemented_stub()
4753    }
4754
4755    /// Implements [super::client::ModelGardenService::wait_operation].
4756    fn wait_operation(
4757        &self,
4758        _req: longrunning::model::WaitOperationRequest,
4759        _options: gax::options::RequestOptions,
4760    ) -> impl std::future::Future<
4761        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
4762    > + Send {
4763        gaxi::unimplemented::unimplemented_stub()
4764    }
4765
4766    /// Returns the polling error policy.
4767    ///
4768    /// When mocking, this method is typically irrelevant. Do not try to verify
4769    /// it is called by your mocks.
4770    fn get_polling_error_policy(
4771        &self,
4772        _options: &gax::options::RequestOptions,
4773    ) -> std::sync::Arc<dyn gax::polling_error_policy::PollingErrorPolicy> {
4774        std::sync::Arc::new(gax::polling_error_policy::Aip194Strict)
4775    }
4776
4777    /// Returns the polling backoff policy.
4778    ///
4779    /// When mocking, this method is typically irrelevant. Do not try to verify
4780    /// it is called by your mocks.
4781    fn get_polling_backoff_policy(
4782        &self,
4783        _options: &gax::options::RequestOptions,
4784    ) -> std::sync::Arc<dyn gax::polling_backoff_policy::PollingBackoffPolicy> {
4785        std::sync::Arc::new(gax::exponential_backoff::ExponentialBackoff::default())
4786    }
4787}
4788
4789/// Defines the trait used to implement [super::client::ModelService].
4790///
4791/// Application developers may need to implement this trait to mock
4792/// `client::ModelService`.  In other use-cases, application developers only
4793/// use `client::ModelService` and need not be concerned with this trait or
4794/// its implementations.
4795///
4796/// Services gain new RPCs routinely. Consequently, this trait gains new methods
4797/// too. To avoid breaking applications the trait provides a default
4798/// implementation of each method. Most of these implementations just return an
4799/// error.
4800#[cfg(feature = "model-service")]
4801#[cfg_attr(docsrs, doc(cfg(feature = "model-service")))]
4802pub trait ModelService: std::fmt::Debug + Send + Sync {
4803    /// Implements [super::client::ModelService::upload_model].
4804    fn upload_model(
4805        &self,
4806        _req: crate::model::UploadModelRequest,
4807        _options: gax::options::RequestOptions,
4808    ) -> impl std::future::Future<
4809        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
4810    > + Send {
4811        gaxi::unimplemented::unimplemented_stub()
4812    }
4813
4814    /// Implements [super::client::ModelService::get_model].
4815    fn get_model(
4816        &self,
4817        _req: crate::model::GetModelRequest,
4818        _options: gax::options::RequestOptions,
4819    ) -> impl std::future::Future<
4820        Output = crate::Result<gax::response::Response<crate::model::Model>>,
4821    > + Send {
4822        gaxi::unimplemented::unimplemented_stub()
4823    }
4824
4825    /// Implements [super::client::ModelService::list_models].
4826    fn list_models(
4827        &self,
4828        _req: crate::model::ListModelsRequest,
4829        _options: gax::options::RequestOptions,
4830    ) -> impl std::future::Future<
4831        Output = crate::Result<gax::response::Response<crate::model::ListModelsResponse>>,
4832    > + Send {
4833        gaxi::unimplemented::unimplemented_stub()
4834    }
4835
4836    /// Implements [super::client::ModelService::list_model_versions].
4837    fn list_model_versions(
4838        &self,
4839        _req: crate::model::ListModelVersionsRequest,
4840        _options: gax::options::RequestOptions,
4841    ) -> impl std::future::Future<
4842        Output = crate::Result<gax::response::Response<crate::model::ListModelVersionsResponse>>,
4843    > + Send {
4844        gaxi::unimplemented::unimplemented_stub()
4845    }
4846
4847    /// Implements [super::client::ModelService::list_model_version_checkpoints].
4848    fn list_model_version_checkpoints(
4849        &self,
4850        _req: crate::model::ListModelVersionCheckpointsRequest,
4851        _options: gax::options::RequestOptions,
4852    ) -> impl std::future::Future<
4853        Output = crate::Result<
4854            gax::response::Response<crate::model::ListModelVersionCheckpointsResponse>,
4855        >,
4856    > + Send {
4857        gaxi::unimplemented::unimplemented_stub()
4858    }
4859
4860    /// Implements [super::client::ModelService::update_model].
4861    fn update_model(
4862        &self,
4863        _req: crate::model::UpdateModelRequest,
4864        _options: gax::options::RequestOptions,
4865    ) -> impl std::future::Future<
4866        Output = crate::Result<gax::response::Response<crate::model::Model>>,
4867    > + Send {
4868        gaxi::unimplemented::unimplemented_stub()
4869    }
4870
4871    /// Implements [super::client::ModelService::update_explanation_dataset].
4872    fn update_explanation_dataset(
4873        &self,
4874        _req: crate::model::UpdateExplanationDatasetRequest,
4875        _options: gax::options::RequestOptions,
4876    ) -> impl std::future::Future<
4877        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
4878    > + Send {
4879        gaxi::unimplemented::unimplemented_stub()
4880    }
4881
4882    /// Implements [super::client::ModelService::delete_model].
4883    fn delete_model(
4884        &self,
4885        _req: crate::model::DeleteModelRequest,
4886        _options: gax::options::RequestOptions,
4887    ) -> impl std::future::Future<
4888        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
4889    > + Send {
4890        gaxi::unimplemented::unimplemented_stub()
4891    }
4892
4893    /// Implements [super::client::ModelService::delete_model_version].
4894    fn delete_model_version(
4895        &self,
4896        _req: crate::model::DeleteModelVersionRequest,
4897        _options: gax::options::RequestOptions,
4898    ) -> impl std::future::Future<
4899        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
4900    > + Send {
4901        gaxi::unimplemented::unimplemented_stub()
4902    }
4903
4904    /// Implements [super::client::ModelService::merge_version_aliases].
4905    fn merge_version_aliases(
4906        &self,
4907        _req: crate::model::MergeVersionAliasesRequest,
4908        _options: gax::options::RequestOptions,
4909    ) -> impl std::future::Future<
4910        Output = crate::Result<gax::response::Response<crate::model::Model>>,
4911    > + Send {
4912        gaxi::unimplemented::unimplemented_stub()
4913    }
4914
4915    /// Implements [super::client::ModelService::export_model].
4916    fn export_model(
4917        &self,
4918        _req: crate::model::ExportModelRequest,
4919        _options: gax::options::RequestOptions,
4920    ) -> impl std::future::Future<
4921        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
4922    > + Send {
4923        gaxi::unimplemented::unimplemented_stub()
4924    }
4925
4926    /// Implements [super::client::ModelService::copy_model].
4927    fn copy_model(
4928        &self,
4929        _req: crate::model::CopyModelRequest,
4930        _options: gax::options::RequestOptions,
4931    ) -> impl std::future::Future<
4932        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
4933    > + Send {
4934        gaxi::unimplemented::unimplemented_stub()
4935    }
4936
4937    /// Implements [super::client::ModelService::import_model_evaluation].
4938    fn import_model_evaluation(
4939        &self,
4940        _req: crate::model::ImportModelEvaluationRequest,
4941        _options: gax::options::RequestOptions,
4942    ) -> impl std::future::Future<
4943        Output = crate::Result<gax::response::Response<crate::model::ModelEvaluation>>,
4944    > + Send {
4945        gaxi::unimplemented::unimplemented_stub()
4946    }
4947
4948    /// Implements [super::client::ModelService::batch_import_model_evaluation_slices].
4949    fn batch_import_model_evaluation_slices(
4950        &self,
4951        _req: crate::model::BatchImportModelEvaluationSlicesRequest,
4952        _options: gax::options::RequestOptions,
4953    ) -> impl std::future::Future<
4954        Output = crate::Result<
4955            gax::response::Response<crate::model::BatchImportModelEvaluationSlicesResponse>,
4956        >,
4957    > + Send {
4958        gaxi::unimplemented::unimplemented_stub()
4959    }
4960
4961    /// Implements [super::client::ModelService::batch_import_evaluated_annotations].
4962    fn batch_import_evaluated_annotations(
4963        &self,
4964        _req: crate::model::BatchImportEvaluatedAnnotationsRequest,
4965        _options: gax::options::RequestOptions,
4966    ) -> impl std::future::Future<
4967        Output = crate::Result<
4968            gax::response::Response<crate::model::BatchImportEvaluatedAnnotationsResponse>,
4969        >,
4970    > + Send {
4971        gaxi::unimplemented::unimplemented_stub()
4972    }
4973
4974    /// Implements [super::client::ModelService::get_model_evaluation].
4975    fn get_model_evaluation(
4976        &self,
4977        _req: crate::model::GetModelEvaluationRequest,
4978        _options: gax::options::RequestOptions,
4979    ) -> impl std::future::Future<
4980        Output = crate::Result<gax::response::Response<crate::model::ModelEvaluation>>,
4981    > + Send {
4982        gaxi::unimplemented::unimplemented_stub()
4983    }
4984
4985    /// Implements [super::client::ModelService::list_model_evaluations].
4986    fn list_model_evaluations(
4987        &self,
4988        _req: crate::model::ListModelEvaluationsRequest,
4989        _options: gax::options::RequestOptions,
4990    ) -> impl std::future::Future<
4991        Output = crate::Result<gax::response::Response<crate::model::ListModelEvaluationsResponse>>,
4992    > + Send {
4993        gaxi::unimplemented::unimplemented_stub()
4994    }
4995
4996    /// Implements [super::client::ModelService::get_model_evaluation_slice].
4997    fn get_model_evaluation_slice(
4998        &self,
4999        _req: crate::model::GetModelEvaluationSliceRequest,
5000        _options: gax::options::RequestOptions,
5001    ) -> impl std::future::Future<
5002        Output = crate::Result<gax::response::Response<crate::model::ModelEvaluationSlice>>,
5003    > + Send {
5004        gaxi::unimplemented::unimplemented_stub()
5005    }
5006
5007    /// Implements [super::client::ModelService::list_model_evaluation_slices].
5008    fn list_model_evaluation_slices(
5009        &self,
5010        _req: crate::model::ListModelEvaluationSlicesRequest,
5011        _options: gax::options::RequestOptions,
5012    ) -> impl std::future::Future<
5013        Output = crate::Result<
5014            gax::response::Response<crate::model::ListModelEvaluationSlicesResponse>,
5015        >,
5016    > + Send {
5017        gaxi::unimplemented::unimplemented_stub()
5018    }
5019
5020    /// Implements [super::client::ModelService::list_locations].
5021    fn list_locations(
5022        &self,
5023        _req: location::model::ListLocationsRequest,
5024        _options: gax::options::RequestOptions,
5025    ) -> impl std::future::Future<
5026        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
5027    > + Send {
5028        gaxi::unimplemented::unimplemented_stub()
5029    }
5030
5031    /// Implements [super::client::ModelService::get_location].
5032    fn get_location(
5033        &self,
5034        _req: location::model::GetLocationRequest,
5035        _options: gax::options::RequestOptions,
5036    ) -> impl std::future::Future<
5037        Output = crate::Result<gax::response::Response<location::model::Location>>,
5038    > + Send {
5039        gaxi::unimplemented::unimplemented_stub()
5040    }
5041
5042    /// Implements [super::client::ModelService::set_iam_policy].
5043    fn set_iam_policy(
5044        &self,
5045        _req: iam_v1::model::SetIamPolicyRequest,
5046        _options: gax::options::RequestOptions,
5047    ) -> impl std::future::Future<
5048        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
5049    > + Send {
5050        gaxi::unimplemented::unimplemented_stub()
5051    }
5052
5053    /// Implements [super::client::ModelService::get_iam_policy].
5054    fn get_iam_policy(
5055        &self,
5056        _req: iam_v1::model::GetIamPolicyRequest,
5057        _options: gax::options::RequestOptions,
5058    ) -> impl std::future::Future<
5059        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
5060    > + Send {
5061        gaxi::unimplemented::unimplemented_stub()
5062    }
5063
5064    /// Implements [super::client::ModelService::test_iam_permissions].
5065    fn test_iam_permissions(
5066        &self,
5067        _req: iam_v1::model::TestIamPermissionsRequest,
5068        _options: gax::options::RequestOptions,
5069    ) -> impl std::future::Future<
5070        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
5071    > + Send {
5072        gaxi::unimplemented::unimplemented_stub()
5073    }
5074
5075    /// Implements [super::client::ModelService::list_operations].
5076    fn list_operations(
5077        &self,
5078        _req: longrunning::model::ListOperationsRequest,
5079        _options: gax::options::RequestOptions,
5080    ) -> impl std::future::Future<
5081        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
5082    > + Send {
5083        gaxi::unimplemented::unimplemented_stub()
5084    }
5085
5086    /// Implements [super::client::ModelService::get_operation].
5087    fn get_operation(
5088        &self,
5089        _req: longrunning::model::GetOperationRequest,
5090        _options: gax::options::RequestOptions,
5091    ) -> impl std::future::Future<
5092        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
5093    > + Send {
5094        gaxi::unimplemented::unimplemented_stub()
5095    }
5096
5097    /// Implements [super::client::ModelService::delete_operation].
5098    fn delete_operation(
5099        &self,
5100        _req: longrunning::model::DeleteOperationRequest,
5101        _options: gax::options::RequestOptions,
5102    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
5103        gaxi::unimplemented::unimplemented_stub()
5104    }
5105
5106    /// Implements [super::client::ModelService::cancel_operation].
5107    fn cancel_operation(
5108        &self,
5109        _req: longrunning::model::CancelOperationRequest,
5110        _options: gax::options::RequestOptions,
5111    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
5112        gaxi::unimplemented::unimplemented_stub()
5113    }
5114
5115    /// Implements [super::client::ModelService::wait_operation].
5116    fn wait_operation(
5117        &self,
5118        _req: longrunning::model::WaitOperationRequest,
5119        _options: gax::options::RequestOptions,
5120    ) -> impl std::future::Future<
5121        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
5122    > + Send {
5123        gaxi::unimplemented::unimplemented_stub()
5124    }
5125
5126    /// Returns the polling error policy.
5127    ///
5128    /// When mocking, this method is typically irrelevant. Do not try to verify
5129    /// it is called by your mocks.
5130    fn get_polling_error_policy(
5131        &self,
5132        _options: &gax::options::RequestOptions,
5133    ) -> std::sync::Arc<dyn gax::polling_error_policy::PollingErrorPolicy> {
5134        std::sync::Arc::new(gax::polling_error_policy::Aip194Strict)
5135    }
5136
5137    /// Returns the polling backoff policy.
5138    ///
5139    /// When mocking, this method is typically irrelevant. Do not try to verify
5140    /// it is called by your mocks.
5141    fn get_polling_backoff_policy(
5142        &self,
5143        _options: &gax::options::RequestOptions,
5144    ) -> std::sync::Arc<dyn gax::polling_backoff_policy::PollingBackoffPolicy> {
5145        std::sync::Arc::new(gax::exponential_backoff::ExponentialBackoff::default())
5146    }
5147}
5148
5149/// Defines the trait used to implement [super::client::NotebookService].
5150///
5151/// Application developers may need to implement this trait to mock
5152/// `client::NotebookService`.  In other use-cases, application developers only
5153/// use `client::NotebookService` and need not be concerned with this trait or
5154/// its implementations.
5155///
5156/// Services gain new RPCs routinely. Consequently, this trait gains new methods
5157/// too. To avoid breaking applications the trait provides a default
5158/// implementation of each method. Most of these implementations just return an
5159/// error.
5160#[cfg(feature = "notebook-service")]
5161#[cfg_attr(docsrs, doc(cfg(feature = "notebook-service")))]
5162pub trait NotebookService: std::fmt::Debug + Send + Sync {
5163    /// Implements [super::client::NotebookService::create_notebook_runtime_template].
5164    fn create_notebook_runtime_template(
5165        &self,
5166        _req: crate::model::CreateNotebookRuntimeTemplateRequest,
5167        _options: gax::options::RequestOptions,
5168    ) -> impl std::future::Future<
5169        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
5170    > + Send {
5171        gaxi::unimplemented::unimplemented_stub()
5172    }
5173
5174    /// Implements [super::client::NotebookService::get_notebook_runtime_template].
5175    fn get_notebook_runtime_template(
5176        &self,
5177        _req: crate::model::GetNotebookRuntimeTemplateRequest,
5178        _options: gax::options::RequestOptions,
5179    ) -> impl std::future::Future<
5180        Output = crate::Result<gax::response::Response<crate::model::NotebookRuntimeTemplate>>,
5181    > + Send {
5182        gaxi::unimplemented::unimplemented_stub()
5183    }
5184
5185    /// Implements [super::client::NotebookService::list_notebook_runtime_templates].
5186    fn list_notebook_runtime_templates(
5187        &self,
5188        _req: crate::model::ListNotebookRuntimeTemplatesRequest,
5189        _options: gax::options::RequestOptions,
5190    ) -> impl std::future::Future<
5191        Output = crate::Result<
5192            gax::response::Response<crate::model::ListNotebookRuntimeTemplatesResponse>,
5193        >,
5194    > + Send {
5195        gaxi::unimplemented::unimplemented_stub()
5196    }
5197
5198    /// Implements [super::client::NotebookService::delete_notebook_runtime_template].
5199    fn delete_notebook_runtime_template(
5200        &self,
5201        _req: crate::model::DeleteNotebookRuntimeTemplateRequest,
5202        _options: gax::options::RequestOptions,
5203    ) -> impl std::future::Future<
5204        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
5205    > + Send {
5206        gaxi::unimplemented::unimplemented_stub()
5207    }
5208
5209    /// Implements [super::client::NotebookService::update_notebook_runtime_template].
5210    fn update_notebook_runtime_template(
5211        &self,
5212        _req: crate::model::UpdateNotebookRuntimeTemplateRequest,
5213        _options: gax::options::RequestOptions,
5214    ) -> impl std::future::Future<
5215        Output = crate::Result<gax::response::Response<crate::model::NotebookRuntimeTemplate>>,
5216    > + Send {
5217        gaxi::unimplemented::unimplemented_stub()
5218    }
5219
5220    /// Implements [super::client::NotebookService::assign_notebook_runtime].
5221    fn assign_notebook_runtime(
5222        &self,
5223        _req: crate::model::AssignNotebookRuntimeRequest,
5224        _options: gax::options::RequestOptions,
5225    ) -> impl std::future::Future<
5226        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
5227    > + Send {
5228        gaxi::unimplemented::unimplemented_stub()
5229    }
5230
5231    /// Implements [super::client::NotebookService::get_notebook_runtime].
5232    fn get_notebook_runtime(
5233        &self,
5234        _req: crate::model::GetNotebookRuntimeRequest,
5235        _options: gax::options::RequestOptions,
5236    ) -> impl std::future::Future<
5237        Output = crate::Result<gax::response::Response<crate::model::NotebookRuntime>>,
5238    > + Send {
5239        gaxi::unimplemented::unimplemented_stub()
5240    }
5241
5242    /// Implements [super::client::NotebookService::list_notebook_runtimes].
5243    fn list_notebook_runtimes(
5244        &self,
5245        _req: crate::model::ListNotebookRuntimesRequest,
5246        _options: gax::options::RequestOptions,
5247    ) -> impl std::future::Future<
5248        Output = crate::Result<gax::response::Response<crate::model::ListNotebookRuntimesResponse>>,
5249    > + Send {
5250        gaxi::unimplemented::unimplemented_stub()
5251    }
5252
5253    /// Implements [super::client::NotebookService::delete_notebook_runtime].
5254    fn delete_notebook_runtime(
5255        &self,
5256        _req: crate::model::DeleteNotebookRuntimeRequest,
5257        _options: gax::options::RequestOptions,
5258    ) -> impl std::future::Future<
5259        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
5260    > + Send {
5261        gaxi::unimplemented::unimplemented_stub()
5262    }
5263
5264    /// Implements [super::client::NotebookService::upgrade_notebook_runtime].
5265    fn upgrade_notebook_runtime(
5266        &self,
5267        _req: crate::model::UpgradeNotebookRuntimeRequest,
5268        _options: gax::options::RequestOptions,
5269    ) -> impl std::future::Future<
5270        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
5271    > + Send {
5272        gaxi::unimplemented::unimplemented_stub()
5273    }
5274
5275    /// Implements [super::client::NotebookService::start_notebook_runtime].
5276    fn start_notebook_runtime(
5277        &self,
5278        _req: crate::model::StartNotebookRuntimeRequest,
5279        _options: gax::options::RequestOptions,
5280    ) -> impl std::future::Future<
5281        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
5282    > + Send {
5283        gaxi::unimplemented::unimplemented_stub()
5284    }
5285
5286    /// Implements [super::client::NotebookService::stop_notebook_runtime].
5287    fn stop_notebook_runtime(
5288        &self,
5289        _req: crate::model::StopNotebookRuntimeRequest,
5290        _options: gax::options::RequestOptions,
5291    ) -> impl std::future::Future<
5292        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
5293    > + Send {
5294        gaxi::unimplemented::unimplemented_stub()
5295    }
5296
5297    /// Implements [super::client::NotebookService::create_notebook_execution_job].
5298    fn create_notebook_execution_job(
5299        &self,
5300        _req: crate::model::CreateNotebookExecutionJobRequest,
5301        _options: gax::options::RequestOptions,
5302    ) -> impl std::future::Future<
5303        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
5304    > + Send {
5305        gaxi::unimplemented::unimplemented_stub()
5306    }
5307
5308    /// Implements [super::client::NotebookService::get_notebook_execution_job].
5309    fn get_notebook_execution_job(
5310        &self,
5311        _req: crate::model::GetNotebookExecutionJobRequest,
5312        _options: gax::options::RequestOptions,
5313    ) -> impl std::future::Future<
5314        Output = crate::Result<gax::response::Response<crate::model::NotebookExecutionJob>>,
5315    > + Send {
5316        gaxi::unimplemented::unimplemented_stub()
5317    }
5318
5319    /// Implements [super::client::NotebookService::list_notebook_execution_jobs].
5320    fn list_notebook_execution_jobs(
5321        &self,
5322        _req: crate::model::ListNotebookExecutionJobsRequest,
5323        _options: gax::options::RequestOptions,
5324    ) -> impl std::future::Future<
5325        Output = crate::Result<
5326            gax::response::Response<crate::model::ListNotebookExecutionJobsResponse>,
5327        >,
5328    > + Send {
5329        gaxi::unimplemented::unimplemented_stub()
5330    }
5331
5332    /// Implements [super::client::NotebookService::delete_notebook_execution_job].
5333    fn delete_notebook_execution_job(
5334        &self,
5335        _req: crate::model::DeleteNotebookExecutionJobRequest,
5336        _options: gax::options::RequestOptions,
5337    ) -> impl std::future::Future<
5338        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
5339    > + Send {
5340        gaxi::unimplemented::unimplemented_stub()
5341    }
5342
5343    /// Implements [super::client::NotebookService::list_locations].
5344    fn list_locations(
5345        &self,
5346        _req: location::model::ListLocationsRequest,
5347        _options: gax::options::RequestOptions,
5348    ) -> impl std::future::Future<
5349        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
5350    > + Send {
5351        gaxi::unimplemented::unimplemented_stub()
5352    }
5353
5354    /// Implements [super::client::NotebookService::get_location].
5355    fn get_location(
5356        &self,
5357        _req: location::model::GetLocationRequest,
5358        _options: gax::options::RequestOptions,
5359    ) -> impl std::future::Future<
5360        Output = crate::Result<gax::response::Response<location::model::Location>>,
5361    > + Send {
5362        gaxi::unimplemented::unimplemented_stub()
5363    }
5364
5365    /// Implements [super::client::NotebookService::set_iam_policy].
5366    fn set_iam_policy(
5367        &self,
5368        _req: iam_v1::model::SetIamPolicyRequest,
5369        _options: gax::options::RequestOptions,
5370    ) -> impl std::future::Future<
5371        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
5372    > + Send {
5373        gaxi::unimplemented::unimplemented_stub()
5374    }
5375
5376    /// Implements [super::client::NotebookService::get_iam_policy].
5377    fn get_iam_policy(
5378        &self,
5379        _req: iam_v1::model::GetIamPolicyRequest,
5380        _options: gax::options::RequestOptions,
5381    ) -> impl std::future::Future<
5382        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
5383    > + Send {
5384        gaxi::unimplemented::unimplemented_stub()
5385    }
5386
5387    /// Implements [super::client::NotebookService::test_iam_permissions].
5388    fn test_iam_permissions(
5389        &self,
5390        _req: iam_v1::model::TestIamPermissionsRequest,
5391        _options: gax::options::RequestOptions,
5392    ) -> impl std::future::Future<
5393        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
5394    > + Send {
5395        gaxi::unimplemented::unimplemented_stub()
5396    }
5397
5398    /// Implements [super::client::NotebookService::list_operations].
5399    fn list_operations(
5400        &self,
5401        _req: longrunning::model::ListOperationsRequest,
5402        _options: gax::options::RequestOptions,
5403    ) -> impl std::future::Future<
5404        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
5405    > + Send {
5406        gaxi::unimplemented::unimplemented_stub()
5407    }
5408
5409    /// Implements [super::client::NotebookService::get_operation].
5410    fn get_operation(
5411        &self,
5412        _req: longrunning::model::GetOperationRequest,
5413        _options: gax::options::RequestOptions,
5414    ) -> impl std::future::Future<
5415        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
5416    > + Send {
5417        gaxi::unimplemented::unimplemented_stub()
5418    }
5419
5420    /// Implements [super::client::NotebookService::delete_operation].
5421    fn delete_operation(
5422        &self,
5423        _req: longrunning::model::DeleteOperationRequest,
5424        _options: gax::options::RequestOptions,
5425    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
5426        gaxi::unimplemented::unimplemented_stub()
5427    }
5428
5429    /// Implements [super::client::NotebookService::cancel_operation].
5430    fn cancel_operation(
5431        &self,
5432        _req: longrunning::model::CancelOperationRequest,
5433        _options: gax::options::RequestOptions,
5434    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
5435        gaxi::unimplemented::unimplemented_stub()
5436    }
5437
5438    /// Implements [super::client::NotebookService::wait_operation].
5439    fn wait_operation(
5440        &self,
5441        _req: longrunning::model::WaitOperationRequest,
5442        _options: gax::options::RequestOptions,
5443    ) -> impl std::future::Future<
5444        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
5445    > + Send {
5446        gaxi::unimplemented::unimplemented_stub()
5447    }
5448
5449    /// Returns the polling error policy.
5450    ///
5451    /// When mocking, this method is typically irrelevant. Do not try to verify
5452    /// it is called by your mocks.
5453    fn get_polling_error_policy(
5454        &self,
5455        _options: &gax::options::RequestOptions,
5456    ) -> std::sync::Arc<dyn gax::polling_error_policy::PollingErrorPolicy> {
5457        std::sync::Arc::new(gax::polling_error_policy::Aip194Strict)
5458    }
5459
5460    /// Returns the polling backoff policy.
5461    ///
5462    /// When mocking, this method is typically irrelevant. Do not try to verify
5463    /// it is called by your mocks.
5464    fn get_polling_backoff_policy(
5465        &self,
5466        _options: &gax::options::RequestOptions,
5467    ) -> std::sync::Arc<dyn gax::polling_backoff_policy::PollingBackoffPolicy> {
5468        std::sync::Arc::new(gax::exponential_backoff::ExponentialBackoff::default())
5469    }
5470}
5471
5472/// Defines the trait used to implement [super::client::PersistentResourceService].
5473///
5474/// Application developers may need to implement this trait to mock
5475/// `client::PersistentResourceService`.  In other use-cases, application developers only
5476/// use `client::PersistentResourceService` and need not be concerned with this trait or
5477/// its implementations.
5478///
5479/// Services gain new RPCs routinely. Consequently, this trait gains new methods
5480/// too. To avoid breaking applications the trait provides a default
5481/// implementation of each method. Most of these implementations just return an
5482/// error.
5483#[cfg(feature = "persistent-resource-service")]
5484#[cfg_attr(docsrs, doc(cfg(feature = "persistent-resource-service")))]
5485pub trait PersistentResourceService: std::fmt::Debug + Send + Sync {
5486    /// Implements [super::client::PersistentResourceService::create_persistent_resource].
5487    fn create_persistent_resource(
5488        &self,
5489        _req: crate::model::CreatePersistentResourceRequest,
5490        _options: gax::options::RequestOptions,
5491    ) -> impl std::future::Future<
5492        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
5493    > + Send {
5494        gaxi::unimplemented::unimplemented_stub()
5495    }
5496
5497    /// Implements [super::client::PersistentResourceService::get_persistent_resource].
5498    fn get_persistent_resource(
5499        &self,
5500        _req: crate::model::GetPersistentResourceRequest,
5501        _options: gax::options::RequestOptions,
5502    ) -> impl std::future::Future<
5503        Output = crate::Result<gax::response::Response<crate::model::PersistentResource>>,
5504    > + Send {
5505        gaxi::unimplemented::unimplemented_stub()
5506    }
5507
5508    /// Implements [super::client::PersistentResourceService::list_persistent_resources].
5509    fn list_persistent_resources(
5510        &self,
5511        _req: crate::model::ListPersistentResourcesRequest,
5512        _options: gax::options::RequestOptions,
5513    ) -> impl std::future::Future<
5514        Output = crate::Result<
5515            gax::response::Response<crate::model::ListPersistentResourcesResponse>,
5516        >,
5517    > + Send {
5518        gaxi::unimplemented::unimplemented_stub()
5519    }
5520
5521    /// Implements [super::client::PersistentResourceService::delete_persistent_resource].
5522    fn delete_persistent_resource(
5523        &self,
5524        _req: crate::model::DeletePersistentResourceRequest,
5525        _options: gax::options::RequestOptions,
5526    ) -> impl std::future::Future<
5527        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
5528    > + Send {
5529        gaxi::unimplemented::unimplemented_stub()
5530    }
5531
5532    /// Implements [super::client::PersistentResourceService::update_persistent_resource].
5533    fn update_persistent_resource(
5534        &self,
5535        _req: crate::model::UpdatePersistentResourceRequest,
5536        _options: gax::options::RequestOptions,
5537    ) -> impl std::future::Future<
5538        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
5539    > + Send {
5540        gaxi::unimplemented::unimplemented_stub()
5541    }
5542
5543    /// Implements [super::client::PersistentResourceService::reboot_persistent_resource].
5544    fn reboot_persistent_resource(
5545        &self,
5546        _req: crate::model::RebootPersistentResourceRequest,
5547        _options: gax::options::RequestOptions,
5548    ) -> impl std::future::Future<
5549        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
5550    > + Send {
5551        gaxi::unimplemented::unimplemented_stub()
5552    }
5553
5554    /// Implements [super::client::PersistentResourceService::list_locations].
5555    fn list_locations(
5556        &self,
5557        _req: location::model::ListLocationsRequest,
5558        _options: gax::options::RequestOptions,
5559    ) -> impl std::future::Future<
5560        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
5561    > + Send {
5562        gaxi::unimplemented::unimplemented_stub()
5563    }
5564
5565    /// Implements [super::client::PersistentResourceService::get_location].
5566    fn get_location(
5567        &self,
5568        _req: location::model::GetLocationRequest,
5569        _options: gax::options::RequestOptions,
5570    ) -> impl std::future::Future<
5571        Output = crate::Result<gax::response::Response<location::model::Location>>,
5572    > + Send {
5573        gaxi::unimplemented::unimplemented_stub()
5574    }
5575
5576    /// Implements [super::client::PersistentResourceService::set_iam_policy].
5577    fn set_iam_policy(
5578        &self,
5579        _req: iam_v1::model::SetIamPolicyRequest,
5580        _options: gax::options::RequestOptions,
5581    ) -> impl std::future::Future<
5582        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
5583    > + Send {
5584        gaxi::unimplemented::unimplemented_stub()
5585    }
5586
5587    /// Implements [super::client::PersistentResourceService::get_iam_policy].
5588    fn get_iam_policy(
5589        &self,
5590        _req: iam_v1::model::GetIamPolicyRequest,
5591        _options: gax::options::RequestOptions,
5592    ) -> impl std::future::Future<
5593        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
5594    > + Send {
5595        gaxi::unimplemented::unimplemented_stub()
5596    }
5597
5598    /// Implements [super::client::PersistentResourceService::test_iam_permissions].
5599    fn test_iam_permissions(
5600        &self,
5601        _req: iam_v1::model::TestIamPermissionsRequest,
5602        _options: gax::options::RequestOptions,
5603    ) -> impl std::future::Future<
5604        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
5605    > + Send {
5606        gaxi::unimplemented::unimplemented_stub()
5607    }
5608
5609    /// Implements [super::client::PersistentResourceService::list_operations].
5610    fn list_operations(
5611        &self,
5612        _req: longrunning::model::ListOperationsRequest,
5613        _options: gax::options::RequestOptions,
5614    ) -> impl std::future::Future<
5615        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
5616    > + Send {
5617        gaxi::unimplemented::unimplemented_stub()
5618    }
5619
5620    /// Implements [super::client::PersistentResourceService::get_operation].
5621    fn get_operation(
5622        &self,
5623        _req: longrunning::model::GetOperationRequest,
5624        _options: gax::options::RequestOptions,
5625    ) -> impl std::future::Future<
5626        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
5627    > + Send {
5628        gaxi::unimplemented::unimplemented_stub()
5629    }
5630
5631    /// Implements [super::client::PersistentResourceService::delete_operation].
5632    fn delete_operation(
5633        &self,
5634        _req: longrunning::model::DeleteOperationRequest,
5635        _options: gax::options::RequestOptions,
5636    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
5637        gaxi::unimplemented::unimplemented_stub()
5638    }
5639
5640    /// Implements [super::client::PersistentResourceService::cancel_operation].
5641    fn cancel_operation(
5642        &self,
5643        _req: longrunning::model::CancelOperationRequest,
5644        _options: gax::options::RequestOptions,
5645    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
5646        gaxi::unimplemented::unimplemented_stub()
5647    }
5648
5649    /// Implements [super::client::PersistentResourceService::wait_operation].
5650    fn wait_operation(
5651        &self,
5652        _req: longrunning::model::WaitOperationRequest,
5653        _options: gax::options::RequestOptions,
5654    ) -> impl std::future::Future<
5655        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
5656    > + Send {
5657        gaxi::unimplemented::unimplemented_stub()
5658    }
5659
5660    /// Returns the polling error policy.
5661    ///
5662    /// When mocking, this method is typically irrelevant. Do not try to verify
5663    /// it is called by your mocks.
5664    fn get_polling_error_policy(
5665        &self,
5666        _options: &gax::options::RequestOptions,
5667    ) -> std::sync::Arc<dyn gax::polling_error_policy::PollingErrorPolicy> {
5668        std::sync::Arc::new(gax::polling_error_policy::Aip194Strict)
5669    }
5670
5671    /// Returns the polling backoff policy.
5672    ///
5673    /// When mocking, this method is typically irrelevant. Do not try to verify
5674    /// it is called by your mocks.
5675    fn get_polling_backoff_policy(
5676        &self,
5677        _options: &gax::options::RequestOptions,
5678    ) -> std::sync::Arc<dyn gax::polling_backoff_policy::PollingBackoffPolicy> {
5679        std::sync::Arc::new(gax::exponential_backoff::ExponentialBackoff::default())
5680    }
5681}
5682
5683/// Defines the trait used to implement [super::client::PipelineService].
5684///
5685/// Application developers may need to implement this trait to mock
5686/// `client::PipelineService`.  In other use-cases, application developers only
5687/// use `client::PipelineService` and need not be concerned with this trait or
5688/// its implementations.
5689///
5690/// Services gain new RPCs routinely. Consequently, this trait gains new methods
5691/// too. To avoid breaking applications the trait provides a default
5692/// implementation of each method. Most of these implementations just return an
5693/// error.
5694#[cfg(feature = "pipeline-service")]
5695#[cfg_attr(docsrs, doc(cfg(feature = "pipeline-service")))]
5696pub trait PipelineService: std::fmt::Debug + Send + Sync {
5697    /// Implements [super::client::PipelineService::create_training_pipeline].
5698    fn create_training_pipeline(
5699        &self,
5700        _req: crate::model::CreateTrainingPipelineRequest,
5701        _options: gax::options::RequestOptions,
5702    ) -> impl std::future::Future<
5703        Output = crate::Result<gax::response::Response<crate::model::TrainingPipeline>>,
5704    > + Send {
5705        gaxi::unimplemented::unimplemented_stub()
5706    }
5707
5708    /// Implements [super::client::PipelineService::get_training_pipeline].
5709    fn get_training_pipeline(
5710        &self,
5711        _req: crate::model::GetTrainingPipelineRequest,
5712        _options: gax::options::RequestOptions,
5713    ) -> impl std::future::Future<
5714        Output = crate::Result<gax::response::Response<crate::model::TrainingPipeline>>,
5715    > + Send {
5716        gaxi::unimplemented::unimplemented_stub()
5717    }
5718
5719    /// Implements [super::client::PipelineService::list_training_pipelines].
5720    fn list_training_pipelines(
5721        &self,
5722        _req: crate::model::ListTrainingPipelinesRequest,
5723        _options: gax::options::RequestOptions,
5724    ) -> impl std::future::Future<
5725        Output = crate::Result<
5726            gax::response::Response<crate::model::ListTrainingPipelinesResponse>,
5727        >,
5728    > + Send {
5729        gaxi::unimplemented::unimplemented_stub()
5730    }
5731
5732    /// Implements [super::client::PipelineService::delete_training_pipeline].
5733    fn delete_training_pipeline(
5734        &self,
5735        _req: crate::model::DeleteTrainingPipelineRequest,
5736        _options: gax::options::RequestOptions,
5737    ) -> impl std::future::Future<
5738        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
5739    > + Send {
5740        gaxi::unimplemented::unimplemented_stub()
5741    }
5742
5743    /// Implements [super::client::PipelineService::cancel_training_pipeline].
5744    fn cancel_training_pipeline(
5745        &self,
5746        _req: crate::model::CancelTrainingPipelineRequest,
5747        _options: gax::options::RequestOptions,
5748    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
5749        gaxi::unimplemented::unimplemented_stub()
5750    }
5751
5752    /// Implements [super::client::PipelineService::create_pipeline_job].
5753    fn create_pipeline_job(
5754        &self,
5755        _req: crate::model::CreatePipelineJobRequest,
5756        _options: gax::options::RequestOptions,
5757    ) -> impl std::future::Future<
5758        Output = crate::Result<gax::response::Response<crate::model::PipelineJob>>,
5759    > + Send {
5760        gaxi::unimplemented::unimplemented_stub()
5761    }
5762
5763    /// Implements [super::client::PipelineService::get_pipeline_job].
5764    fn get_pipeline_job(
5765        &self,
5766        _req: crate::model::GetPipelineJobRequest,
5767        _options: gax::options::RequestOptions,
5768    ) -> impl std::future::Future<
5769        Output = crate::Result<gax::response::Response<crate::model::PipelineJob>>,
5770    > + Send {
5771        gaxi::unimplemented::unimplemented_stub()
5772    }
5773
5774    /// Implements [super::client::PipelineService::list_pipeline_jobs].
5775    fn list_pipeline_jobs(
5776        &self,
5777        _req: crate::model::ListPipelineJobsRequest,
5778        _options: gax::options::RequestOptions,
5779    ) -> impl std::future::Future<
5780        Output = crate::Result<gax::response::Response<crate::model::ListPipelineJobsResponse>>,
5781    > + Send {
5782        gaxi::unimplemented::unimplemented_stub()
5783    }
5784
5785    /// Implements [super::client::PipelineService::delete_pipeline_job].
5786    fn delete_pipeline_job(
5787        &self,
5788        _req: crate::model::DeletePipelineJobRequest,
5789        _options: gax::options::RequestOptions,
5790    ) -> impl std::future::Future<
5791        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
5792    > + Send {
5793        gaxi::unimplemented::unimplemented_stub()
5794    }
5795
5796    /// Implements [super::client::PipelineService::batch_delete_pipeline_jobs].
5797    fn batch_delete_pipeline_jobs(
5798        &self,
5799        _req: crate::model::BatchDeletePipelineJobsRequest,
5800        _options: gax::options::RequestOptions,
5801    ) -> impl std::future::Future<
5802        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
5803    > + Send {
5804        gaxi::unimplemented::unimplemented_stub()
5805    }
5806
5807    /// Implements [super::client::PipelineService::cancel_pipeline_job].
5808    fn cancel_pipeline_job(
5809        &self,
5810        _req: crate::model::CancelPipelineJobRequest,
5811        _options: gax::options::RequestOptions,
5812    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
5813        gaxi::unimplemented::unimplemented_stub()
5814    }
5815
5816    /// Implements [super::client::PipelineService::batch_cancel_pipeline_jobs].
5817    fn batch_cancel_pipeline_jobs(
5818        &self,
5819        _req: crate::model::BatchCancelPipelineJobsRequest,
5820        _options: gax::options::RequestOptions,
5821    ) -> impl std::future::Future<
5822        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
5823    > + Send {
5824        gaxi::unimplemented::unimplemented_stub()
5825    }
5826
5827    /// Implements [super::client::PipelineService::list_locations].
5828    fn list_locations(
5829        &self,
5830        _req: location::model::ListLocationsRequest,
5831        _options: gax::options::RequestOptions,
5832    ) -> impl std::future::Future<
5833        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
5834    > + Send {
5835        gaxi::unimplemented::unimplemented_stub()
5836    }
5837
5838    /// Implements [super::client::PipelineService::get_location].
5839    fn get_location(
5840        &self,
5841        _req: location::model::GetLocationRequest,
5842        _options: gax::options::RequestOptions,
5843    ) -> impl std::future::Future<
5844        Output = crate::Result<gax::response::Response<location::model::Location>>,
5845    > + Send {
5846        gaxi::unimplemented::unimplemented_stub()
5847    }
5848
5849    /// Implements [super::client::PipelineService::set_iam_policy].
5850    fn set_iam_policy(
5851        &self,
5852        _req: iam_v1::model::SetIamPolicyRequest,
5853        _options: gax::options::RequestOptions,
5854    ) -> impl std::future::Future<
5855        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
5856    > + Send {
5857        gaxi::unimplemented::unimplemented_stub()
5858    }
5859
5860    /// Implements [super::client::PipelineService::get_iam_policy].
5861    fn get_iam_policy(
5862        &self,
5863        _req: iam_v1::model::GetIamPolicyRequest,
5864        _options: gax::options::RequestOptions,
5865    ) -> impl std::future::Future<
5866        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
5867    > + Send {
5868        gaxi::unimplemented::unimplemented_stub()
5869    }
5870
5871    /// Implements [super::client::PipelineService::test_iam_permissions].
5872    fn test_iam_permissions(
5873        &self,
5874        _req: iam_v1::model::TestIamPermissionsRequest,
5875        _options: gax::options::RequestOptions,
5876    ) -> impl std::future::Future<
5877        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
5878    > + Send {
5879        gaxi::unimplemented::unimplemented_stub()
5880    }
5881
5882    /// Implements [super::client::PipelineService::list_operations].
5883    fn list_operations(
5884        &self,
5885        _req: longrunning::model::ListOperationsRequest,
5886        _options: gax::options::RequestOptions,
5887    ) -> impl std::future::Future<
5888        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
5889    > + Send {
5890        gaxi::unimplemented::unimplemented_stub()
5891    }
5892
5893    /// Implements [super::client::PipelineService::get_operation].
5894    fn get_operation(
5895        &self,
5896        _req: longrunning::model::GetOperationRequest,
5897        _options: gax::options::RequestOptions,
5898    ) -> impl std::future::Future<
5899        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
5900    > + Send {
5901        gaxi::unimplemented::unimplemented_stub()
5902    }
5903
5904    /// Implements [super::client::PipelineService::delete_operation].
5905    fn delete_operation(
5906        &self,
5907        _req: longrunning::model::DeleteOperationRequest,
5908        _options: gax::options::RequestOptions,
5909    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
5910        gaxi::unimplemented::unimplemented_stub()
5911    }
5912
5913    /// Implements [super::client::PipelineService::cancel_operation].
5914    fn cancel_operation(
5915        &self,
5916        _req: longrunning::model::CancelOperationRequest,
5917        _options: gax::options::RequestOptions,
5918    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
5919        gaxi::unimplemented::unimplemented_stub()
5920    }
5921
5922    /// Implements [super::client::PipelineService::wait_operation].
5923    fn wait_operation(
5924        &self,
5925        _req: longrunning::model::WaitOperationRequest,
5926        _options: gax::options::RequestOptions,
5927    ) -> impl std::future::Future<
5928        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
5929    > + Send {
5930        gaxi::unimplemented::unimplemented_stub()
5931    }
5932
5933    /// Returns the polling error policy.
5934    ///
5935    /// When mocking, this method is typically irrelevant. Do not try to verify
5936    /// it is called by your mocks.
5937    fn get_polling_error_policy(
5938        &self,
5939        _options: &gax::options::RequestOptions,
5940    ) -> std::sync::Arc<dyn gax::polling_error_policy::PollingErrorPolicy> {
5941        std::sync::Arc::new(gax::polling_error_policy::Aip194Strict)
5942    }
5943
5944    /// Returns the polling backoff policy.
5945    ///
5946    /// When mocking, this method is typically irrelevant. Do not try to verify
5947    /// it is called by your mocks.
5948    fn get_polling_backoff_policy(
5949        &self,
5950        _options: &gax::options::RequestOptions,
5951    ) -> std::sync::Arc<dyn gax::polling_backoff_policy::PollingBackoffPolicy> {
5952        std::sync::Arc::new(gax::exponential_backoff::ExponentialBackoff::default())
5953    }
5954}
5955
5956/// Defines the trait used to implement [super::client::PredictionService].
5957///
5958/// Application developers may need to implement this trait to mock
5959/// `client::PredictionService`.  In other use-cases, application developers only
5960/// use `client::PredictionService` and need not be concerned with this trait or
5961/// its implementations.
5962///
5963/// Services gain new RPCs routinely. Consequently, this trait gains new methods
5964/// too. To avoid breaking applications the trait provides a default
5965/// implementation of each method. Most of these implementations just return an
5966/// error.
5967#[cfg(feature = "prediction-service")]
5968#[cfg_attr(docsrs, doc(cfg(feature = "prediction-service")))]
5969pub trait PredictionService: std::fmt::Debug + Send + Sync {
5970    /// Implements [super::client::PredictionService::predict].
5971    fn predict(
5972        &self,
5973        _req: crate::model::PredictRequest,
5974        _options: gax::options::RequestOptions,
5975    ) -> impl std::future::Future<
5976        Output = crate::Result<gax::response::Response<crate::model::PredictResponse>>,
5977    > + Send {
5978        gaxi::unimplemented::unimplemented_stub()
5979    }
5980
5981    /// Implements [super::client::PredictionService::raw_predict].
5982    fn raw_predict(
5983        &self,
5984        _req: crate::model::RawPredictRequest,
5985        _options: gax::options::RequestOptions,
5986    ) -> impl std::future::Future<
5987        Output = crate::Result<gax::response::Response<api::model::HttpBody>>,
5988    > + Send {
5989        gaxi::unimplemented::unimplemented_stub()
5990    }
5991
5992    /// Implements [super::client::PredictionService::direct_predict].
5993    fn direct_predict(
5994        &self,
5995        _req: crate::model::DirectPredictRequest,
5996        _options: gax::options::RequestOptions,
5997    ) -> impl std::future::Future<
5998        Output = crate::Result<gax::response::Response<crate::model::DirectPredictResponse>>,
5999    > + Send {
6000        gaxi::unimplemented::unimplemented_stub()
6001    }
6002
6003    /// Implements [super::client::PredictionService::direct_raw_predict].
6004    fn direct_raw_predict(
6005        &self,
6006        _req: crate::model::DirectRawPredictRequest,
6007        _options: gax::options::RequestOptions,
6008    ) -> impl std::future::Future<
6009        Output = crate::Result<gax::response::Response<crate::model::DirectRawPredictResponse>>,
6010    > + Send {
6011        gaxi::unimplemented::unimplemented_stub()
6012    }
6013
6014    /// Implements [super::client::PredictionService::explain].
6015    fn explain(
6016        &self,
6017        _req: crate::model::ExplainRequest,
6018        _options: gax::options::RequestOptions,
6019    ) -> impl std::future::Future<
6020        Output = crate::Result<gax::response::Response<crate::model::ExplainResponse>>,
6021    > + Send {
6022        gaxi::unimplemented::unimplemented_stub()
6023    }
6024
6025    /// Implements [super::client::PredictionService::generate_content].
6026    fn generate_content(
6027        &self,
6028        _req: crate::model::GenerateContentRequest,
6029        _options: gax::options::RequestOptions,
6030    ) -> impl std::future::Future<
6031        Output = crate::Result<gax::response::Response<crate::model::GenerateContentResponse>>,
6032    > + Send {
6033        gaxi::unimplemented::unimplemented_stub()
6034    }
6035
6036    /// Implements [super::client::PredictionService::embed_content].
6037    fn embed_content(
6038        &self,
6039        _req: crate::model::EmbedContentRequest,
6040        _options: gax::options::RequestOptions,
6041    ) -> impl std::future::Future<
6042        Output = crate::Result<gax::response::Response<crate::model::EmbedContentResponse>>,
6043    > + Send {
6044        gaxi::unimplemented::unimplemented_stub()
6045    }
6046
6047    /// Implements [super::client::PredictionService::list_locations].
6048    fn list_locations(
6049        &self,
6050        _req: location::model::ListLocationsRequest,
6051        _options: gax::options::RequestOptions,
6052    ) -> impl std::future::Future<
6053        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
6054    > + Send {
6055        gaxi::unimplemented::unimplemented_stub()
6056    }
6057
6058    /// Implements [super::client::PredictionService::get_location].
6059    fn get_location(
6060        &self,
6061        _req: location::model::GetLocationRequest,
6062        _options: gax::options::RequestOptions,
6063    ) -> impl std::future::Future<
6064        Output = crate::Result<gax::response::Response<location::model::Location>>,
6065    > + Send {
6066        gaxi::unimplemented::unimplemented_stub()
6067    }
6068
6069    /// Implements [super::client::PredictionService::set_iam_policy].
6070    fn set_iam_policy(
6071        &self,
6072        _req: iam_v1::model::SetIamPolicyRequest,
6073        _options: gax::options::RequestOptions,
6074    ) -> impl std::future::Future<
6075        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
6076    > + Send {
6077        gaxi::unimplemented::unimplemented_stub()
6078    }
6079
6080    /// Implements [super::client::PredictionService::get_iam_policy].
6081    fn get_iam_policy(
6082        &self,
6083        _req: iam_v1::model::GetIamPolicyRequest,
6084        _options: gax::options::RequestOptions,
6085    ) -> impl std::future::Future<
6086        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
6087    > + Send {
6088        gaxi::unimplemented::unimplemented_stub()
6089    }
6090
6091    /// Implements [super::client::PredictionService::test_iam_permissions].
6092    fn test_iam_permissions(
6093        &self,
6094        _req: iam_v1::model::TestIamPermissionsRequest,
6095        _options: gax::options::RequestOptions,
6096    ) -> impl std::future::Future<
6097        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
6098    > + Send {
6099        gaxi::unimplemented::unimplemented_stub()
6100    }
6101
6102    /// Implements [super::client::PredictionService::list_operations].
6103    fn list_operations(
6104        &self,
6105        _req: longrunning::model::ListOperationsRequest,
6106        _options: gax::options::RequestOptions,
6107    ) -> impl std::future::Future<
6108        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
6109    > + Send {
6110        gaxi::unimplemented::unimplemented_stub()
6111    }
6112
6113    /// Implements [super::client::PredictionService::get_operation].
6114    fn get_operation(
6115        &self,
6116        _req: longrunning::model::GetOperationRequest,
6117        _options: gax::options::RequestOptions,
6118    ) -> impl std::future::Future<
6119        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
6120    > + Send {
6121        gaxi::unimplemented::unimplemented_stub()
6122    }
6123
6124    /// Implements [super::client::PredictionService::delete_operation].
6125    fn delete_operation(
6126        &self,
6127        _req: longrunning::model::DeleteOperationRequest,
6128        _options: gax::options::RequestOptions,
6129    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
6130        gaxi::unimplemented::unimplemented_stub()
6131    }
6132
6133    /// Implements [super::client::PredictionService::cancel_operation].
6134    fn cancel_operation(
6135        &self,
6136        _req: longrunning::model::CancelOperationRequest,
6137        _options: gax::options::RequestOptions,
6138    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
6139        gaxi::unimplemented::unimplemented_stub()
6140    }
6141
6142    /// Implements [super::client::PredictionService::wait_operation].
6143    fn wait_operation(
6144        &self,
6145        _req: longrunning::model::WaitOperationRequest,
6146        _options: gax::options::RequestOptions,
6147    ) -> impl std::future::Future<
6148        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
6149    > + Send {
6150        gaxi::unimplemented::unimplemented_stub()
6151    }
6152}
6153
6154/// Defines the trait used to implement [super::client::ReasoningEngineExecutionService].
6155///
6156/// Application developers may need to implement this trait to mock
6157/// `client::ReasoningEngineExecutionService`.  In other use-cases, application developers only
6158/// use `client::ReasoningEngineExecutionService` and need not be concerned with this trait or
6159/// its implementations.
6160///
6161/// Services gain new RPCs routinely. Consequently, this trait gains new methods
6162/// too. To avoid breaking applications the trait provides a default
6163/// implementation of each method. Most of these implementations just return an
6164/// error.
6165#[cfg(feature = "reasoning-engine-execution-service")]
6166#[cfg_attr(docsrs, doc(cfg(feature = "reasoning-engine-execution-service")))]
6167pub trait ReasoningEngineExecutionService: std::fmt::Debug + Send + Sync {
6168    /// Implements [super::client::ReasoningEngineExecutionService::query_reasoning_engine].
6169    fn query_reasoning_engine(
6170        &self,
6171        _req: crate::model::QueryReasoningEngineRequest,
6172        _options: gax::options::RequestOptions,
6173    ) -> impl std::future::Future<
6174        Output = crate::Result<gax::response::Response<crate::model::QueryReasoningEngineResponse>>,
6175    > + Send {
6176        gaxi::unimplemented::unimplemented_stub()
6177    }
6178
6179    /// Implements [super::client::ReasoningEngineExecutionService::list_locations].
6180    fn list_locations(
6181        &self,
6182        _req: location::model::ListLocationsRequest,
6183        _options: gax::options::RequestOptions,
6184    ) -> impl std::future::Future<
6185        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
6186    > + Send {
6187        gaxi::unimplemented::unimplemented_stub()
6188    }
6189
6190    /// Implements [super::client::ReasoningEngineExecutionService::get_location].
6191    fn get_location(
6192        &self,
6193        _req: location::model::GetLocationRequest,
6194        _options: gax::options::RequestOptions,
6195    ) -> impl std::future::Future<
6196        Output = crate::Result<gax::response::Response<location::model::Location>>,
6197    > + Send {
6198        gaxi::unimplemented::unimplemented_stub()
6199    }
6200
6201    /// Implements [super::client::ReasoningEngineExecutionService::set_iam_policy].
6202    fn set_iam_policy(
6203        &self,
6204        _req: iam_v1::model::SetIamPolicyRequest,
6205        _options: gax::options::RequestOptions,
6206    ) -> impl std::future::Future<
6207        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
6208    > + Send {
6209        gaxi::unimplemented::unimplemented_stub()
6210    }
6211
6212    /// Implements [super::client::ReasoningEngineExecutionService::get_iam_policy].
6213    fn get_iam_policy(
6214        &self,
6215        _req: iam_v1::model::GetIamPolicyRequest,
6216        _options: gax::options::RequestOptions,
6217    ) -> impl std::future::Future<
6218        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
6219    > + Send {
6220        gaxi::unimplemented::unimplemented_stub()
6221    }
6222
6223    /// Implements [super::client::ReasoningEngineExecutionService::test_iam_permissions].
6224    fn test_iam_permissions(
6225        &self,
6226        _req: iam_v1::model::TestIamPermissionsRequest,
6227        _options: gax::options::RequestOptions,
6228    ) -> impl std::future::Future<
6229        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
6230    > + Send {
6231        gaxi::unimplemented::unimplemented_stub()
6232    }
6233
6234    /// Implements [super::client::ReasoningEngineExecutionService::list_operations].
6235    fn list_operations(
6236        &self,
6237        _req: longrunning::model::ListOperationsRequest,
6238        _options: gax::options::RequestOptions,
6239    ) -> impl std::future::Future<
6240        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
6241    > + Send {
6242        gaxi::unimplemented::unimplemented_stub()
6243    }
6244
6245    /// Implements [super::client::ReasoningEngineExecutionService::get_operation].
6246    fn get_operation(
6247        &self,
6248        _req: longrunning::model::GetOperationRequest,
6249        _options: gax::options::RequestOptions,
6250    ) -> impl std::future::Future<
6251        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
6252    > + Send {
6253        gaxi::unimplemented::unimplemented_stub()
6254    }
6255
6256    /// Implements [super::client::ReasoningEngineExecutionService::delete_operation].
6257    fn delete_operation(
6258        &self,
6259        _req: longrunning::model::DeleteOperationRequest,
6260        _options: gax::options::RequestOptions,
6261    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
6262        gaxi::unimplemented::unimplemented_stub()
6263    }
6264
6265    /// Implements [super::client::ReasoningEngineExecutionService::cancel_operation].
6266    fn cancel_operation(
6267        &self,
6268        _req: longrunning::model::CancelOperationRequest,
6269        _options: gax::options::RequestOptions,
6270    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
6271        gaxi::unimplemented::unimplemented_stub()
6272    }
6273
6274    /// Implements [super::client::ReasoningEngineExecutionService::wait_operation].
6275    fn wait_operation(
6276        &self,
6277        _req: longrunning::model::WaitOperationRequest,
6278        _options: gax::options::RequestOptions,
6279    ) -> impl std::future::Future<
6280        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
6281    > + Send {
6282        gaxi::unimplemented::unimplemented_stub()
6283    }
6284}
6285
6286/// Defines the trait used to implement [super::client::ReasoningEngineService].
6287///
6288/// Application developers may need to implement this trait to mock
6289/// `client::ReasoningEngineService`.  In other use-cases, application developers only
6290/// use `client::ReasoningEngineService` and need not be concerned with this trait or
6291/// its implementations.
6292///
6293/// Services gain new RPCs routinely. Consequently, this trait gains new methods
6294/// too. To avoid breaking applications the trait provides a default
6295/// implementation of each method. Most of these implementations just return an
6296/// error.
6297#[cfg(feature = "reasoning-engine-service")]
6298#[cfg_attr(docsrs, doc(cfg(feature = "reasoning-engine-service")))]
6299pub trait ReasoningEngineService: std::fmt::Debug + Send + Sync {
6300    /// Implements [super::client::ReasoningEngineService::create_reasoning_engine].
6301    fn create_reasoning_engine(
6302        &self,
6303        _req: crate::model::CreateReasoningEngineRequest,
6304        _options: gax::options::RequestOptions,
6305    ) -> impl std::future::Future<
6306        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
6307    > + Send {
6308        gaxi::unimplemented::unimplemented_stub()
6309    }
6310
6311    /// Implements [super::client::ReasoningEngineService::get_reasoning_engine].
6312    fn get_reasoning_engine(
6313        &self,
6314        _req: crate::model::GetReasoningEngineRequest,
6315        _options: gax::options::RequestOptions,
6316    ) -> impl std::future::Future<
6317        Output = crate::Result<gax::response::Response<crate::model::ReasoningEngine>>,
6318    > + Send {
6319        gaxi::unimplemented::unimplemented_stub()
6320    }
6321
6322    /// Implements [super::client::ReasoningEngineService::list_reasoning_engines].
6323    fn list_reasoning_engines(
6324        &self,
6325        _req: crate::model::ListReasoningEnginesRequest,
6326        _options: gax::options::RequestOptions,
6327    ) -> impl std::future::Future<
6328        Output = crate::Result<gax::response::Response<crate::model::ListReasoningEnginesResponse>>,
6329    > + Send {
6330        gaxi::unimplemented::unimplemented_stub()
6331    }
6332
6333    /// Implements [super::client::ReasoningEngineService::update_reasoning_engine].
6334    fn update_reasoning_engine(
6335        &self,
6336        _req: crate::model::UpdateReasoningEngineRequest,
6337        _options: gax::options::RequestOptions,
6338    ) -> impl std::future::Future<
6339        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
6340    > + Send {
6341        gaxi::unimplemented::unimplemented_stub()
6342    }
6343
6344    /// Implements [super::client::ReasoningEngineService::delete_reasoning_engine].
6345    fn delete_reasoning_engine(
6346        &self,
6347        _req: crate::model::DeleteReasoningEngineRequest,
6348        _options: gax::options::RequestOptions,
6349    ) -> impl std::future::Future<
6350        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
6351    > + Send {
6352        gaxi::unimplemented::unimplemented_stub()
6353    }
6354
6355    /// Implements [super::client::ReasoningEngineService::list_locations].
6356    fn list_locations(
6357        &self,
6358        _req: location::model::ListLocationsRequest,
6359        _options: gax::options::RequestOptions,
6360    ) -> impl std::future::Future<
6361        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
6362    > + Send {
6363        gaxi::unimplemented::unimplemented_stub()
6364    }
6365
6366    /// Implements [super::client::ReasoningEngineService::get_location].
6367    fn get_location(
6368        &self,
6369        _req: location::model::GetLocationRequest,
6370        _options: gax::options::RequestOptions,
6371    ) -> impl std::future::Future<
6372        Output = crate::Result<gax::response::Response<location::model::Location>>,
6373    > + Send {
6374        gaxi::unimplemented::unimplemented_stub()
6375    }
6376
6377    /// Implements [super::client::ReasoningEngineService::set_iam_policy].
6378    fn set_iam_policy(
6379        &self,
6380        _req: iam_v1::model::SetIamPolicyRequest,
6381        _options: gax::options::RequestOptions,
6382    ) -> impl std::future::Future<
6383        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
6384    > + Send {
6385        gaxi::unimplemented::unimplemented_stub()
6386    }
6387
6388    /// Implements [super::client::ReasoningEngineService::get_iam_policy].
6389    fn get_iam_policy(
6390        &self,
6391        _req: iam_v1::model::GetIamPolicyRequest,
6392        _options: gax::options::RequestOptions,
6393    ) -> impl std::future::Future<
6394        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
6395    > + Send {
6396        gaxi::unimplemented::unimplemented_stub()
6397    }
6398
6399    /// Implements [super::client::ReasoningEngineService::test_iam_permissions].
6400    fn test_iam_permissions(
6401        &self,
6402        _req: iam_v1::model::TestIamPermissionsRequest,
6403        _options: gax::options::RequestOptions,
6404    ) -> impl std::future::Future<
6405        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
6406    > + Send {
6407        gaxi::unimplemented::unimplemented_stub()
6408    }
6409
6410    /// Implements [super::client::ReasoningEngineService::list_operations].
6411    fn list_operations(
6412        &self,
6413        _req: longrunning::model::ListOperationsRequest,
6414        _options: gax::options::RequestOptions,
6415    ) -> impl std::future::Future<
6416        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
6417    > + Send {
6418        gaxi::unimplemented::unimplemented_stub()
6419    }
6420
6421    /// Implements [super::client::ReasoningEngineService::get_operation].
6422    fn get_operation(
6423        &self,
6424        _req: longrunning::model::GetOperationRequest,
6425        _options: gax::options::RequestOptions,
6426    ) -> impl std::future::Future<
6427        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
6428    > + Send {
6429        gaxi::unimplemented::unimplemented_stub()
6430    }
6431
6432    /// Implements [super::client::ReasoningEngineService::delete_operation].
6433    fn delete_operation(
6434        &self,
6435        _req: longrunning::model::DeleteOperationRequest,
6436        _options: gax::options::RequestOptions,
6437    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
6438        gaxi::unimplemented::unimplemented_stub()
6439    }
6440
6441    /// Implements [super::client::ReasoningEngineService::cancel_operation].
6442    fn cancel_operation(
6443        &self,
6444        _req: longrunning::model::CancelOperationRequest,
6445        _options: gax::options::RequestOptions,
6446    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
6447        gaxi::unimplemented::unimplemented_stub()
6448    }
6449
6450    /// Implements [super::client::ReasoningEngineService::wait_operation].
6451    fn wait_operation(
6452        &self,
6453        _req: longrunning::model::WaitOperationRequest,
6454        _options: gax::options::RequestOptions,
6455    ) -> impl std::future::Future<
6456        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
6457    > + Send {
6458        gaxi::unimplemented::unimplemented_stub()
6459    }
6460
6461    /// Returns the polling error policy.
6462    ///
6463    /// When mocking, this method is typically irrelevant. Do not try to verify
6464    /// it is called by your mocks.
6465    fn get_polling_error_policy(
6466        &self,
6467        _options: &gax::options::RequestOptions,
6468    ) -> std::sync::Arc<dyn gax::polling_error_policy::PollingErrorPolicy> {
6469        std::sync::Arc::new(gax::polling_error_policy::Aip194Strict)
6470    }
6471
6472    /// Returns the polling backoff policy.
6473    ///
6474    /// When mocking, this method is typically irrelevant. Do not try to verify
6475    /// it is called by your mocks.
6476    fn get_polling_backoff_policy(
6477        &self,
6478        _options: &gax::options::RequestOptions,
6479    ) -> std::sync::Arc<dyn gax::polling_backoff_policy::PollingBackoffPolicy> {
6480        std::sync::Arc::new(gax::exponential_backoff::ExponentialBackoff::default())
6481    }
6482}
6483
6484/// Defines the trait used to implement [super::client::ScheduleService].
6485///
6486/// Application developers may need to implement this trait to mock
6487/// `client::ScheduleService`.  In other use-cases, application developers only
6488/// use `client::ScheduleService` and need not be concerned with this trait or
6489/// its implementations.
6490///
6491/// Services gain new RPCs routinely. Consequently, this trait gains new methods
6492/// too. To avoid breaking applications the trait provides a default
6493/// implementation of each method. Most of these implementations just return an
6494/// error.
6495#[cfg(feature = "schedule-service")]
6496#[cfg_attr(docsrs, doc(cfg(feature = "schedule-service")))]
6497pub trait ScheduleService: std::fmt::Debug + Send + Sync {
6498    /// Implements [super::client::ScheduleService::create_schedule].
6499    fn create_schedule(
6500        &self,
6501        _req: crate::model::CreateScheduleRequest,
6502        _options: gax::options::RequestOptions,
6503    ) -> impl std::future::Future<
6504        Output = crate::Result<gax::response::Response<crate::model::Schedule>>,
6505    > + Send {
6506        gaxi::unimplemented::unimplemented_stub()
6507    }
6508
6509    /// Implements [super::client::ScheduleService::delete_schedule].
6510    fn delete_schedule(
6511        &self,
6512        _req: crate::model::DeleteScheduleRequest,
6513        _options: gax::options::RequestOptions,
6514    ) -> impl std::future::Future<
6515        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
6516    > + Send {
6517        gaxi::unimplemented::unimplemented_stub()
6518    }
6519
6520    /// Implements [super::client::ScheduleService::get_schedule].
6521    fn get_schedule(
6522        &self,
6523        _req: crate::model::GetScheduleRequest,
6524        _options: gax::options::RequestOptions,
6525    ) -> impl std::future::Future<
6526        Output = crate::Result<gax::response::Response<crate::model::Schedule>>,
6527    > + Send {
6528        gaxi::unimplemented::unimplemented_stub()
6529    }
6530
6531    /// Implements [super::client::ScheduleService::list_schedules].
6532    fn list_schedules(
6533        &self,
6534        _req: crate::model::ListSchedulesRequest,
6535        _options: gax::options::RequestOptions,
6536    ) -> impl std::future::Future<
6537        Output = crate::Result<gax::response::Response<crate::model::ListSchedulesResponse>>,
6538    > + Send {
6539        gaxi::unimplemented::unimplemented_stub()
6540    }
6541
6542    /// Implements [super::client::ScheduleService::pause_schedule].
6543    fn pause_schedule(
6544        &self,
6545        _req: crate::model::PauseScheduleRequest,
6546        _options: gax::options::RequestOptions,
6547    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
6548        gaxi::unimplemented::unimplemented_stub()
6549    }
6550
6551    /// Implements [super::client::ScheduleService::resume_schedule].
6552    fn resume_schedule(
6553        &self,
6554        _req: crate::model::ResumeScheduleRequest,
6555        _options: gax::options::RequestOptions,
6556    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
6557        gaxi::unimplemented::unimplemented_stub()
6558    }
6559
6560    /// Implements [super::client::ScheduleService::update_schedule].
6561    fn update_schedule(
6562        &self,
6563        _req: crate::model::UpdateScheduleRequest,
6564        _options: gax::options::RequestOptions,
6565    ) -> impl std::future::Future<
6566        Output = crate::Result<gax::response::Response<crate::model::Schedule>>,
6567    > + Send {
6568        gaxi::unimplemented::unimplemented_stub()
6569    }
6570
6571    /// Implements [super::client::ScheduleService::list_locations].
6572    fn list_locations(
6573        &self,
6574        _req: location::model::ListLocationsRequest,
6575        _options: gax::options::RequestOptions,
6576    ) -> impl std::future::Future<
6577        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
6578    > + Send {
6579        gaxi::unimplemented::unimplemented_stub()
6580    }
6581
6582    /// Implements [super::client::ScheduleService::get_location].
6583    fn get_location(
6584        &self,
6585        _req: location::model::GetLocationRequest,
6586        _options: gax::options::RequestOptions,
6587    ) -> impl std::future::Future<
6588        Output = crate::Result<gax::response::Response<location::model::Location>>,
6589    > + Send {
6590        gaxi::unimplemented::unimplemented_stub()
6591    }
6592
6593    /// Implements [super::client::ScheduleService::set_iam_policy].
6594    fn set_iam_policy(
6595        &self,
6596        _req: iam_v1::model::SetIamPolicyRequest,
6597        _options: gax::options::RequestOptions,
6598    ) -> impl std::future::Future<
6599        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
6600    > + Send {
6601        gaxi::unimplemented::unimplemented_stub()
6602    }
6603
6604    /// Implements [super::client::ScheduleService::get_iam_policy].
6605    fn get_iam_policy(
6606        &self,
6607        _req: iam_v1::model::GetIamPolicyRequest,
6608        _options: gax::options::RequestOptions,
6609    ) -> impl std::future::Future<
6610        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
6611    > + Send {
6612        gaxi::unimplemented::unimplemented_stub()
6613    }
6614
6615    /// Implements [super::client::ScheduleService::test_iam_permissions].
6616    fn test_iam_permissions(
6617        &self,
6618        _req: iam_v1::model::TestIamPermissionsRequest,
6619        _options: gax::options::RequestOptions,
6620    ) -> impl std::future::Future<
6621        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
6622    > + Send {
6623        gaxi::unimplemented::unimplemented_stub()
6624    }
6625
6626    /// Implements [super::client::ScheduleService::list_operations].
6627    fn list_operations(
6628        &self,
6629        _req: longrunning::model::ListOperationsRequest,
6630        _options: gax::options::RequestOptions,
6631    ) -> impl std::future::Future<
6632        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
6633    > + Send {
6634        gaxi::unimplemented::unimplemented_stub()
6635    }
6636
6637    /// Implements [super::client::ScheduleService::get_operation].
6638    fn get_operation(
6639        &self,
6640        _req: longrunning::model::GetOperationRequest,
6641        _options: gax::options::RequestOptions,
6642    ) -> impl std::future::Future<
6643        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
6644    > + Send {
6645        gaxi::unimplemented::unimplemented_stub()
6646    }
6647
6648    /// Implements [super::client::ScheduleService::delete_operation].
6649    fn delete_operation(
6650        &self,
6651        _req: longrunning::model::DeleteOperationRequest,
6652        _options: gax::options::RequestOptions,
6653    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
6654        gaxi::unimplemented::unimplemented_stub()
6655    }
6656
6657    /// Implements [super::client::ScheduleService::cancel_operation].
6658    fn cancel_operation(
6659        &self,
6660        _req: longrunning::model::CancelOperationRequest,
6661        _options: gax::options::RequestOptions,
6662    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
6663        gaxi::unimplemented::unimplemented_stub()
6664    }
6665
6666    /// Implements [super::client::ScheduleService::wait_operation].
6667    fn wait_operation(
6668        &self,
6669        _req: longrunning::model::WaitOperationRequest,
6670        _options: gax::options::RequestOptions,
6671    ) -> impl std::future::Future<
6672        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
6673    > + Send {
6674        gaxi::unimplemented::unimplemented_stub()
6675    }
6676
6677    /// Returns the polling error policy.
6678    ///
6679    /// When mocking, this method is typically irrelevant. Do not try to verify
6680    /// it is called by your mocks.
6681    fn get_polling_error_policy(
6682        &self,
6683        _options: &gax::options::RequestOptions,
6684    ) -> std::sync::Arc<dyn gax::polling_error_policy::PollingErrorPolicy> {
6685        std::sync::Arc::new(gax::polling_error_policy::Aip194Strict)
6686    }
6687
6688    /// Returns the polling backoff policy.
6689    ///
6690    /// When mocking, this method is typically irrelevant. Do not try to verify
6691    /// it is called by your mocks.
6692    fn get_polling_backoff_policy(
6693        &self,
6694        _options: &gax::options::RequestOptions,
6695    ) -> std::sync::Arc<dyn gax::polling_backoff_policy::PollingBackoffPolicy> {
6696        std::sync::Arc::new(gax::exponential_backoff::ExponentialBackoff::default())
6697    }
6698}
6699
6700/// Defines the trait used to implement [super::client::SpecialistPoolService].
6701///
6702/// Application developers may need to implement this trait to mock
6703/// `client::SpecialistPoolService`.  In other use-cases, application developers only
6704/// use `client::SpecialistPoolService` and need not be concerned with this trait or
6705/// its implementations.
6706///
6707/// Services gain new RPCs routinely. Consequently, this trait gains new methods
6708/// too. To avoid breaking applications the trait provides a default
6709/// implementation of each method. Most of these implementations just return an
6710/// error.
6711#[cfg(feature = "specialist-pool-service")]
6712#[cfg_attr(docsrs, doc(cfg(feature = "specialist-pool-service")))]
6713pub trait SpecialistPoolService: std::fmt::Debug + Send + Sync {
6714    /// Implements [super::client::SpecialistPoolService::create_specialist_pool].
6715    fn create_specialist_pool(
6716        &self,
6717        _req: crate::model::CreateSpecialistPoolRequest,
6718        _options: gax::options::RequestOptions,
6719    ) -> impl std::future::Future<
6720        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
6721    > + Send {
6722        gaxi::unimplemented::unimplemented_stub()
6723    }
6724
6725    /// Implements [super::client::SpecialistPoolService::get_specialist_pool].
6726    fn get_specialist_pool(
6727        &self,
6728        _req: crate::model::GetSpecialistPoolRequest,
6729        _options: gax::options::RequestOptions,
6730    ) -> impl std::future::Future<
6731        Output = crate::Result<gax::response::Response<crate::model::SpecialistPool>>,
6732    > + Send {
6733        gaxi::unimplemented::unimplemented_stub()
6734    }
6735
6736    /// Implements [super::client::SpecialistPoolService::list_specialist_pools].
6737    fn list_specialist_pools(
6738        &self,
6739        _req: crate::model::ListSpecialistPoolsRequest,
6740        _options: gax::options::RequestOptions,
6741    ) -> impl std::future::Future<
6742        Output = crate::Result<gax::response::Response<crate::model::ListSpecialistPoolsResponse>>,
6743    > + Send {
6744        gaxi::unimplemented::unimplemented_stub()
6745    }
6746
6747    /// Implements [super::client::SpecialistPoolService::delete_specialist_pool].
6748    fn delete_specialist_pool(
6749        &self,
6750        _req: crate::model::DeleteSpecialistPoolRequest,
6751        _options: gax::options::RequestOptions,
6752    ) -> impl std::future::Future<
6753        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
6754    > + Send {
6755        gaxi::unimplemented::unimplemented_stub()
6756    }
6757
6758    /// Implements [super::client::SpecialistPoolService::update_specialist_pool].
6759    fn update_specialist_pool(
6760        &self,
6761        _req: crate::model::UpdateSpecialistPoolRequest,
6762        _options: gax::options::RequestOptions,
6763    ) -> impl std::future::Future<
6764        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
6765    > + Send {
6766        gaxi::unimplemented::unimplemented_stub()
6767    }
6768
6769    /// Implements [super::client::SpecialistPoolService::list_locations].
6770    fn list_locations(
6771        &self,
6772        _req: location::model::ListLocationsRequest,
6773        _options: gax::options::RequestOptions,
6774    ) -> impl std::future::Future<
6775        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
6776    > + Send {
6777        gaxi::unimplemented::unimplemented_stub()
6778    }
6779
6780    /// Implements [super::client::SpecialistPoolService::get_location].
6781    fn get_location(
6782        &self,
6783        _req: location::model::GetLocationRequest,
6784        _options: gax::options::RequestOptions,
6785    ) -> impl std::future::Future<
6786        Output = crate::Result<gax::response::Response<location::model::Location>>,
6787    > + Send {
6788        gaxi::unimplemented::unimplemented_stub()
6789    }
6790
6791    /// Implements [super::client::SpecialistPoolService::set_iam_policy].
6792    fn set_iam_policy(
6793        &self,
6794        _req: iam_v1::model::SetIamPolicyRequest,
6795        _options: gax::options::RequestOptions,
6796    ) -> impl std::future::Future<
6797        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
6798    > + Send {
6799        gaxi::unimplemented::unimplemented_stub()
6800    }
6801
6802    /// Implements [super::client::SpecialistPoolService::get_iam_policy].
6803    fn get_iam_policy(
6804        &self,
6805        _req: iam_v1::model::GetIamPolicyRequest,
6806        _options: gax::options::RequestOptions,
6807    ) -> impl std::future::Future<
6808        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
6809    > + Send {
6810        gaxi::unimplemented::unimplemented_stub()
6811    }
6812
6813    /// Implements [super::client::SpecialistPoolService::test_iam_permissions].
6814    fn test_iam_permissions(
6815        &self,
6816        _req: iam_v1::model::TestIamPermissionsRequest,
6817        _options: gax::options::RequestOptions,
6818    ) -> impl std::future::Future<
6819        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
6820    > + Send {
6821        gaxi::unimplemented::unimplemented_stub()
6822    }
6823
6824    /// Implements [super::client::SpecialistPoolService::list_operations].
6825    fn list_operations(
6826        &self,
6827        _req: longrunning::model::ListOperationsRequest,
6828        _options: gax::options::RequestOptions,
6829    ) -> impl std::future::Future<
6830        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
6831    > + Send {
6832        gaxi::unimplemented::unimplemented_stub()
6833    }
6834
6835    /// Implements [super::client::SpecialistPoolService::get_operation].
6836    fn get_operation(
6837        &self,
6838        _req: longrunning::model::GetOperationRequest,
6839        _options: gax::options::RequestOptions,
6840    ) -> impl std::future::Future<
6841        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
6842    > + Send {
6843        gaxi::unimplemented::unimplemented_stub()
6844    }
6845
6846    /// Implements [super::client::SpecialistPoolService::delete_operation].
6847    fn delete_operation(
6848        &self,
6849        _req: longrunning::model::DeleteOperationRequest,
6850        _options: gax::options::RequestOptions,
6851    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
6852        gaxi::unimplemented::unimplemented_stub()
6853    }
6854
6855    /// Implements [super::client::SpecialistPoolService::cancel_operation].
6856    fn cancel_operation(
6857        &self,
6858        _req: longrunning::model::CancelOperationRequest,
6859        _options: gax::options::RequestOptions,
6860    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
6861        gaxi::unimplemented::unimplemented_stub()
6862    }
6863
6864    /// Implements [super::client::SpecialistPoolService::wait_operation].
6865    fn wait_operation(
6866        &self,
6867        _req: longrunning::model::WaitOperationRequest,
6868        _options: gax::options::RequestOptions,
6869    ) -> impl std::future::Future<
6870        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
6871    > + Send {
6872        gaxi::unimplemented::unimplemented_stub()
6873    }
6874
6875    /// Returns the polling error policy.
6876    ///
6877    /// When mocking, this method is typically irrelevant. Do not try to verify
6878    /// it is called by your mocks.
6879    fn get_polling_error_policy(
6880        &self,
6881        _options: &gax::options::RequestOptions,
6882    ) -> std::sync::Arc<dyn gax::polling_error_policy::PollingErrorPolicy> {
6883        std::sync::Arc::new(gax::polling_error_policy::Aip194Strict)
6884    }
6885
6886    /// Returns the polling backoff policy.
6887    ///
6888    /// When mocking, this method is typically irrelevant. Do not try to verify
6889    /// it is called by your mocks.
6890    fn get_polling_backoff_policy(
6891        &self,
6892        _options: &gax::options::RequestOptions,
6893    ) -> std::sync::Arc<dyn gax::polling_backoff_policy::PollingBackoffPolicy> {
6894        std::sync::Arc::new(gax::exponential_backoff::ExponentialBackoff::default())
6895    }
6896}
6897
6898/// Defines the trait used to implement [super::client::TensorboardService].
6899///
6900/// Application developers may need to implement this trait to mock
6901/// `client::TensorboardService`.  In other use-cases, application developers only
6902/// use `client::TensorboardService` and need not be concerned with this trait or
6903/// its implementations.
6904///
6905/// Services gain new RPCs routinely. Consequently, this trait gains new methods
6906/// too. To avoid breaking applications the trait provides a default
6907/// implementation of each method. Most of these implementations just return an
6908/// error.
6909#[cfg(feature = "tensorboard-service")]
6910#[cfg_attr(docsrs, doc(cfg(feature = "tensorboard-service")))]
6911pub trait TensorboardService: std::fmt::Debug + Send + Sync {
6912    /// Implements [super::client::TensorboardService::create_tensorboard].
6913    fn create_tensorboard(
6914        &self,
6915        _req: crate::model::CreateTensorboardRequest,
6916        _options: gax::options::RequestOptions,
6917    ) -> impl std::future::Future<
6918        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
6919    > + Send {
6920        gaxi::unimplemented::unimplemented_stub()
6921    }
6922
6923    /// Implements [super::client::TensorboardService::get_tensorboard].
6924    fn get_tensorboard(
6925        &self,
6926        _req: crate::model::GetTensorboardRequest,
6927        _options: gax::options::RequestOptions,
6928    ) -> impl std::future::Future<
6929        Output = crate::Result<gax::response::Response<crate::model::Tensorboard>>,
6930    > + Send {
6931        gaxi::unimplemented::unimplemented_stub()
6932    }
6933
6934    /// Implements [super::client::TensorboardService::update_tensorboard].
6935    fn update_tensorboard(
6936        &self,
6937        _req: crate::model::UpdateTensorboardRequest,
6938        _options: gax::options::RequestOptions,
6939    ) -> impl std::future::Future<
6940        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
6941    > + Send {
6942        gaxi::unimplemented::unimplemented_stub()
6943    }
6944
6945    /// Implements [super::client::TensorboardService::list_tensorboards].
6946    fn list_tensorboards(
6947        &self,
6948        _req: crate::model::ListTensorboardsRequest,
6949        _options: gax::options::RequestOptions,
6950    ) -> impl std::future::Future<
6951        Output = crate::Result<gax::response::Response<crate::model::ListTensorboardsResponse>>,
6952    > + Send {
6953        gaxi::unimplemented::unimplemented_stub()
6954    }
6955
6956    /// Implements [super::client::TensorboardService::delete_tensorboard].
6957    fn delete_tensorboard(
6958        &self,
6959        _req: crate::model::DeleteTensorboardRequest,
6960        _options: gax::options::RequestOptions,
6961    ) -> impl std::future::Future<
6962        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
6963    > + Send {
6964        gaxi::unimplemented::unimplemented_stub()
6965    }
6966
6967    /// Implements [super::client::TensorboardService::read_tensorboard_usage].
6968    fn read_tensorboard_usage(
6969        &self,
6970        _req: crate::model::ReadTensorboardUsageRequest,
6971        _options: gax::options::RequestOptions,
6972    ) -> impl std::future::Future<
6973        Output = crate::Result<gax::response::Response<crate::model::ReadTensorboardUsageResponse>>,
6974    > + Send {
6975        gaxi::unimplemented::unimplemented_stub()
6976    }
6977
6978    /// Implements [super::client::TensorboardService::read_tensorboard_size].
6979    fn read_tensorboard_size(
6980        &self,
6981        _req: crate::model::ReadTensorboardSizeRequest,
6982        _options: gax::options::RequestOptions,
6983    ) -> impl std::future::Future<
6984        Output = crate::Result<gax::response::Response<crate::model::ReadTensorboardSizeResponse>>,
6985    > + Send {
6986        gaxi::unimplemented::unimplemented_stub()
6987    }
6988
6989    /// Implements [super::client::TensorboardService::create_tensorboard_experiment].
6990    fn create_tensorboard_experiment(
6991        &self,
6992        _req: crate::model::CreateTensorboardExperimentRequest,
6993        _options: gax::options::RequestOptions,
6994    ) -> impl std::future::Future<
6995        Output = crate::Result<gax::response::Response<crate::model::TensorboardExperiment>>,
6996    > + Send {
6997        gaxi::unimplemented::unimplemented_stub()
6998    }
6999
7000    /// Implements [super::client::TensorboardService::get_tensorboard_experiment].
7001    fn get_tensorboard_experiment(
7002        &self,
7003        _req: crate::model::GetTensorboardExperimentRequest,
7004        _options: gax::options::RequestOptions,
7005    ) -> impl std::future::Future<
7006        Output = crate::Result<gax::response::Response<crate::model::TensorboardExperiment>>,
7007    > + Send {
7008        gaxi::unimplemented::unimplemented_stub()
7009    }
7010
7011    /// Implements [super::client::TensorboardService::update_tensorboard_experiment].
7012    fn update_tensorboard_experiment(
7013        &self,
7014        _req: crate::model::UpdateTensorboardExperimentRequest,
7015        _options: gax::options::RequestOptions,
7016    ) -> impl std::future::Future<
7017        Output = crate::Result<gax::response::Response<crate::model::TensorboardExperiment>>,
7018    > + Send {
7019        gaxi::unimplemented::unimplemented_stub()
7020    }
7021
7022    /// Implements [super::client::TensorboardService::list_tensorboard_experiments].
7023    fn list_tensorboard_experiments(
7024        &self,
7025        _req: crate::model::ListTensorboardExperimentsRequest,
7026        _options: gax::options::RequestOptions,
7027    ) -> impl std::future::Future<
7028        Output = crate::Result<
7029            gax::response::Response<crate::model::ListTensorboardExperimentsResponse>,
7030        >,
7031    > + Send {
7032        gaxi::unimplemented::unimplemented_stub()
7033    }
7034
7035    /// Implements [super::client::TensorboardService::delete_tensorboard_experiment].
7036    fn delete_tensorboard_experiment(
7037        &self,
7038        _req: crate::model::DeleteTensorboardExperimentRequest,
7039        _options: gax::options::RequestOptions,
7040    ) -> impl std::future::Future<
7041        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
7042    > + Send {
7043        gaxi::unimplemented::unimplemented_stub()
7044    }
7045
7046    /// Implements [super::client::TensorboardService::create_tensorboard_run].
7047    fn create_tensorboard_run(
7048        &self,
7049        _req: crate::model::CreateTensorboardRunRequest,
7050        _options: gax::options::RequestOptions,
7051    ) -> impl std::future::Future<
7052        Output = crate::Result<gax::response::Response<crate::model::TensorboardRun>>,
7053    > + Send {
7054        gaxi::unimplemented::unimplemented_stub()
7055    }
7056
7057    /// Implements [super::client::TensorboardService::batch_create_tensorboard_runs].
7058    fn batch_create_tensorboard_runs(
7059        &self,
7060        _req: crate::model::BatchCreateTensorboardRunsRequest,
7061        _options: gax::options::RequestOptions,
7062    ) -> impl std::future::Future<
7063        Output = crate::Result<
7064            gax::response::Response<crate::model::BatchCreateTensorboardRunsResponse>,
7065        >,
7066    > + Send {
7067        gaxi::unimplemented::unimplemented_stub()
7068    }
7069
7070    /// Implements [super::client::TensorboardService::get_tensorboard_run].
7071    fn get_tensorboard_run(
7072        &self,
7073        _req: crate::model::GetTensorboardRunRequest,
7074        _options: gax::options::RequestOptions,
7075    ) -> impl std::future::Future<
7076        Output = crate::Result<gax::response::Response<crate::model::TensorboardRun>>,
7077    > + Send {
7078        gaxi::unimplemented::unimplemented_stub()
7079    }
7080
7081    /// Implements [super::client::TensorboardService::update_tensorboard_run].
7082    fn update_tensorboard_run(
7083        &self,
7084        _req: crate::model::UpdateTensorboardRunRequest,
7085        _options: gax::options::RequestOptions,
7086    ) -> impl std::future::Future<
7087        Output = crate::Result<gax::response::Response<crate::model::TensorboardRun>>,
7088    > + Send {
7089        gaxi::unimplemented::unimplemented_stub()
7090    }
7091
7092    /// Implements [super::client::TensorboardService::list_tensorboard_runs].
7093    fn list_tensorboard_runs(
7094        &self,
7095        _req: crate::model::ListTensorboardRunsRequest,
7096        _options: gax::options::RequestOptions,
7097    ) -> impl std::future::Future<
7098        Output = crate::Result<gax::response::Response<crate::model::ListTensorboardRunsResponse>>,
7099    > + Send {
7100        gaxi::unimplemented::unimplemented_stub()
7101    }
7102
7103    /// Implements [super::client::TensorboardService::delete_tensorboard_run].
7104    fn delete_tensorboard_run(
7105        &self,
7106        _req: crate::model::DeleteTensorboardRunRequest,
7107        _options: gax::options::RequestOptions,
7108    ) -> impl std::future::Future<
7109        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
7110    > + Send {
7111        gaxi::unimplemented::unimplemented_stub()
7112    }
7113
7114    /// Implements [super::client::TensorboardService::batch_create_tensorboard_time_series].
7115    fn batch_create_tensorboard_time_series(
7116        &self,
7117        _req: crate::model::BatchCreateTensorboardTimeSeriesRequest,
7118        _options: gax::options::RequestOptions,
7119    ) -> impl std::future::Future<
7120        Output = crate::Result<
7121            gax::response::Response<crate::model::BatchCreateTensorboardTimeSeriesResponse>,
7122        >,
7123    > + Send {
7124        gaxi::unimplemented::unimplemented_stub()
7125    }
7126
7127    /// Implements [super::client::TensorboardService::create_tensorboard_time_series].
7128    fn create_tensorboard_time_series(
7129        &self,
7130        _req: crate::model::CreateTensorboardTimeSeriesRequest,
7131        _options: gax::options::RequestOptions,
7132    ) -> impl std::future::Future<
7133        Output = crate::Result<gax::response::Response<crate::model::TensorboardTimeSeries>>,
7134    > + Send {
7135        gaxi::unimplemented::unimplemented_stub()
7136    }
7137
7138    /// Implements [super::client::TensorboardService::get_tensorboard_time_series].
7139    fn get_tensorboard_time_series(
7140        &self,
7141        _req: crate::model::GetTensorboardTimeSeriesRequest,
7142        _options: gax::options::RequestOptions,
7143    ) -> impl std::future::Future<
7144        Output = crate::Result<gax::response::Response<crate::model::TensorboardTimeSeries>>,
7145    > + Send {
7146        gaxi::unimplemented::unimplemented_stub()
7147    }
7148
7149    /// Implements [super::client::TensorboardService::update_tensorboard_time_series].
7150    fn update_tensorboard_time_series(
7151        &self,
7152        _req: crate::model::UpdateTensorboardTimeSeriesRequest,
7153        _options: gax::options::RequestOptions,
7154    ) -> impl std::future::Future<
7155        Output = crate::Result<gax::response::Response<crate::model::TensorboardTimeSeries>>,
7156    > + Send {
7157        gaxi::unimplemented::unimplemented_stub()
7158    }
7159
7160    /// Implements [super::client::TensorboardService::list_tensorboard_time_series].
7161    fn list_tensorboard_time_series(
7162        &self,
7163        _req: crate::model::ListTensorboardTimeSeriesRequest,
7164        _options: gax::options::RequestOptions,
7165    ) -> impl std::future::Future<
7166        Output = crate::Result<
7167            gax::response::Response<crate::model::ListTensorboardTimeSeriesResponse>,
7168        >,
7169    > + Send {
7170        gaxi::unimplemented::unimplemented_stub()
7171    }
7172
7173    /// Implements [super::client::TensorboardService::delete_tensorboard_time_series].
7174    fn delete_tensorboard_time_series(
7175        &self,
7176        _req: crate::model::DeleteTensorboardTimeSeriesRequest,
7177        _options: gax::options::RequestOptions,
7178    ) -> impl std::future::Future<
7179        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
7180    > + Send {
7181        gaxi::unimplemented::unimplemented_stub()
7182    }
7183
7184    /// Implements [super::client::TensorboardService::batch_read_tensorboard_time_series_data].
7185    fn batch_read_tensorboard_time_series_data(
7186        &self,
7187        _req: crate::model::BatchReadTensorboardTimeSeriesDataRequest,
7188        _options: gax::options::RequestOptions,
7189    ) -> impl std::future::Future<
7190        Output = crate::Result<
7191            gax::response::Response<crate::model::BatchReadTensorboardTimeSeriesDataResponse>,
7192        >,
7193    > + Send {
7194        gaxi::unimplemented::unimplemented_stub()
7195    }
7196
7197    /// Implements [super::client::TensorboardService::read_tensorboard_time_series_data].
7198    fn read_tensorboard_time_series_data(
7199        &self,
7200        _req: crate::model::ReadTensorboardTimeSeriesDataRequest,
7201        _options: gax::options::RequestOptions,
7202    ) -> impl std::future::Future<
7203        Output = crate::Result<
7204            gax::response::Response<crate::model::ReadTensorboardTimeSeriesDataResponse>,
7205        >,
7206    > + Send {
7207        gaxi::unimplemented::unimplemented_stub()
7208    }
7209
7210    /// Implements [super::client::TensorboardService::write_tensorboard_experiment_data].
7211    fn write_tensorboard_experiment_data(
7212        &self,
7213        _req: crate::model::WriteTensorboardExperimentDataRequest,
7214        _options: gax::options::RequestOptions,
7215    ) -> impl std::future::Future<
7216        Output = crate::Result<
7217            gax::response::Response<crate::model::WriteTensorboardExperimentDataResponse>,
7218        >,
7219    > + Send {
7220        gaxi::unimplemented::unimplemented_stub()
7221    }
7222
7223    /// Implements [super::client::TensorboardService::write_tensorboard_run_data].
7224    fn write_tensorboard_run_data(
7225        &self,
7226        _req: crate::model::WriteTensorboardRunDataRequest,
7227        _options: gax::options::RequestOptions,
7228    ) -> impl std::future::Future<
7229        Output = crate::Result<
7230            gax::response::Response<crate::model::WriteTensorboardRunDataResponse>,
7231        >,
7232    > + Send {
7233        gaxi::unimplemented::unimplemented_stub()
7234    }
7235
7236    /// Implements [super::client::TensorboardService::export_tensorboard_time_series_data].
7237    fn export_tensorboard_time_series_data(
7238        &self,
7239        _req: crate::model::ExportTensorboardTimeSeriesDataRequest,
7240        _options: gax::options::RequestOptions,
7241    ) -> impl std::future::Future<
7242        Output = crate::Result<
7243            gax::response::Response<crate::model::ExportTensorboardTimeSeriesDataResponse>,
7244        >,
7245    > + Send {
7246        gaxi::unimplemented::unimplemented_stub()
7247    }
7248
7249    /// Implements [super::client::TensorboardService::list_locations].
7250    fn list_locations(
7251        &self,
7252        _req: location::model::ListLocationsRequest,
7253        _options: gax::options::RequestOptions,
7254    ) -> impl std::future::Future<
7255        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
7256    > + Send {
7257        gaxi::unimplemented::unimplemented_stub()
7258    }
7259
7260    /// Implements [super::client::TensorboardService::get_location].
7261    fn get_location(
7262        &self,
7263        _req: location::model::GetLocationRequest,
7264        _options: gax::options::RequestOptions,
7265    ) -> impl std::future::Future<
7266        Output = crate::Result<gax::response::Response<location::model::Location>>,
7267    > + Send {
7268        gaxi::unimplemented::unimplemented_stub()
7269    }
7270
7271    /// Implements [super::client::TensorboardService::set_iam_policy].
7272    fn set_iam_policy(
7273        &self,
7274        _req: iam_v1::model::SetIamPolicyRequest,
7275        _options: gax::options::RequestOptions,
7276    ) -> impl std::future::Future<
7277        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
7278    > + Send {
7279        gaxi::unimplemented::unimplemented_stub()
7280    }
7281
7282    /// Implements [super::client::TensorboardService::get_iam_policy].
7283    fn get_iam_policy(
7284        &self,
7285        _req: iam_v1::model::GetIamPolicyRequest,
7286        _options: gax::options::RequestOptions,
7287    ) -> impl std::future::Future<
7288        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
7289    > + Send {
7290        gaxi::unimplemented::unimplemented_stub()
7291    }
7292
7293    /// Implements [super::client::TensorboardService::test_iam_permissions].
7294    fn test_iam_permissions(
7295        &self,
7296        _req: iam_v1::model::TestIamPermissionsRequest,
7297        _options: gax::options::RequestOptions,
7298    ) -> impl std::future::Future<
7299        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
7300    > + Send {
7301        gaxi::unimplemented::unimplemented_stub()
7302    }
7303
7304    /// Implements [super::client::TensorboardService::list_operations].
7305    fn list_operations(
7306        &self,
7307        _req: longrunning::model::ListOperationsRequest,
7308        _options: gax::options::RequestOptions,
7309    ) -> impl std::future::Future<
7310        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
7311    > + Send {
7312        gaxi::unimplemented::unimplemented_stub()
7313    }
7314
7315    /// Implements [super::client::TensorboardService::get_operation].
7316    fn get_operation(
7317        &self,
7318        _req: longrunning::model::GetOperationRequest,
7319        _options: gax::options::RequestOptions,
7320    ) -> impl std::future::Future<
7321        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
7322    > + Send {
7323        gaxi::unimplemented::unimplemented_stub()
7324    }
7325
7326    /// Implements [super::client::TensorboardService::delete_operation].
7327    fn delete_operation(
7328        &self,
7329        _req: longrunning::model::DeleteOperationRequest,
7330        _options: gax::options::RequestOptions,
7331    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
7332        gaxi::unimplemented::unimplemented_stub()
7333    }
7334
7335    /// Implements [super::client::TensorboardService::cancel_operation].
7336    fn cancel_operation(
7337        &self,
7338        _req: longrunning::model::CancelOperationRequest,
7339        _options: gax::options::RequestOptions,
7340    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
7341        gaxi::unimplemented::unimplemented_stub()
7342    }
7343
7344    /// Implements [super::client::TensorboardService::wait_operation].
7345    fn wait_operation(
7346        &self,
7347        _req: longrunning::model::WaitOperationRequest,
7348        _options: gax::options::RequestOptions,
7349    ) -> impl std::future::Future<
7350        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
7351    > + Send {
7352        gaxi::unimplemented::unimplemented_stub()
7353    }
7354
7355    /// Returns the polling error policy.
7356    ///
7357    /// When mocking, this method is typically irrelevant. Do not try to verify
7358    /// it is called by your mocks.
7359    fn get_polling_error_policy(
7360        &self,
7361        _options: &gax::options::RequestOptions,
7362    ) -> std::sync::Arc<dyn gax::polling_error_policy::PollingErrorPolicy> {
7363        std::sync::Arc::new(gax::polling_error_policy::Aip194Strict)
7364    }
7365
7366    /// Returns the polling backoff policy.
7367    ///
7368    /// When mocking, this method is typically irrelevant. Do not try to verify
7369    /// it is called by your mocks.
7370    fn get_polling_backoff_policy(
7371        &self,
7372        _options: &gax::options::RequestOptions,
7373    ) -> std::sync::Arc<dyn gax::polling_backoff_policy::PollingBackoffPolicy> {
7374        std::sync::Arc::new(gax::exponential_backoff::ExponentialBackoff::default())
7375    }
7376}
7377
7378/// Defines the trait used to implement [super::client::VertexRagDataService].
7379///
7380/// Application developers may need to implement this trait to mock
7381/// `client::VertexRagDataService`.  In other use-cases, application developers only
7382/// use `client::VertexRagDataService` and need not be concerned with this trait or
7383/// its implementations.
7384///
7385/// Services gain new RPCs routinely. Consequently, this trait gains new methods
7386/// too. To avoid breaking applications the trait provides a default
7387/// implementation of each method. Most of these implementations just return an
7388/// error.
7389#[cfg(feature = "vertex-rag-data-service")]
7390#[cfg_attr(docsrs, doc(cfg(feature = "vertex-rag-data-service")))]
7391pub trait VertexRagDataService: std::fmt::Debug + Send + Sync {
7392    /// Implements [super::client::VertexRagDataService::create_rag_corpus].
7393    fn create_rag_corpus(
7394        &self,
7395        _req: crate::model::CreateRagCorpusRequest,
7396        _options: gax::options::RequestOptions,
7397    ) -> impl std::future::Future<
7398        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
7399    > + Send {
7400        gaxi::unimplemented::unimplemented_stub()
7401    }
7402
7403    /// Implements [super::client::VertexRagDataService::update_rag_corpus].
7404    fn update_rag_corpus(
7405        &self,
7406        _req: crate::model::UpdateRagCorpusRequest,
7407        _options: gax::options::RequestOptions,
7408    ) -> impl std::future::Future<
7409        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
7410    > + Send {
7411        gaxi::unimplemented::unimplemented_stub()
7412    }
7413
7414    /// Implements [super::client::VertexRagDataService::get_rag_corpus].
7415    fn get_rag_corpus(
7416        &self,
7417        _req: crate::model::GetRagCorpusRequest,
7418        _options: gax::options::RequestOptions,
7419    ) -> impl std::future::Future<
7420        Output = crate::Result<gax::response::Response<crate::model::RagCorpus>>,
7421    > + Send {
7422        gaxi::unimplemented::unimplemented_stub()
7423    }
7424
7425    /// Implements [super::client::VertexRagDataService::list_rag_corpora].
7426    fn list_rag_corpora(
7427        &self,
7428        _req: crate::model::ListRagCorporaRequest,
7429        _options: gax::options::RequestOptions,
7430    ) -> impl std::future::Future<
7431        Output = crate::Result<gax::response::Response<crate::model::ListRagCorporaResponse>>,
7432    > + Send {
7433        gaxi::unimplemented::unimplemented_stub()
7434    }
7435
7436    /// Implements [super::client::VertexRagDataService::delete_rag_corpus].
7437    fn delete_rag_corpus(
7438        &self,
7439        _req: crate::model::DeleteRagCorpusRequest,
7440        _options: gax::options::RequestOptions,
7441    ) -> impl std::future::Future<
7442        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
7443    > + Send {
7444        gaxi::unimplemented::unimplemented_stub()
7445    }
7446
7447    /// Implements [super::client::VertexRagDataService::upload_rag_file].
7448    fn upload_rag_file(
7449        &self,
7450        _req: crate::model::UploadRagFileRequest,
7451        _options: gax::options::RequestOptions,
7452    ) -> impl std::future::Future<
7453        Output = crate::Result<gax::response::Response<crate::model::UploadRagFileResponse>>,
7454    > + Send {
7455        gaxi::unimplemented::unimplemented_stub()
7456    }
7457
7458    /// Implements [super::client::VertexRagDataService::import_rag_files].
7459    fn import_rag_files(
7460        &self,
7461        _req: crate::model::ImportRagFilesRequest,
7462        _options: gax::options::RequestOptions,
7463    ) -> impl std::future::Future<
7464        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
7465    > + Send {
7466        gaxi::unimplemented::unimplemented_stub()
7467    }
7468
7469    /// Implements [super::client::VertexRagDataService::get_rag_file].
7470    fn get_rag_file(
7471        &self,
7472        _req: crate::model::GetRagFileRequest,
7473        _options: gax::options::RequestOptions,
7474    ) -> impl std::future::Future<
7475        Output = crate::Result<gax::response::Response<crate::model::RagFile>>,
7476    > + Send {
7477        gaxi::unimplemented::unimplemented_stub()
7478    }
7479
7480    /// Implements [super::client::VertexRagDataService::list_rag_files].
7481    fn list_rag_files(
7482        &self,
7483        _req: crate::model::ListRagFilesRequest,
7484        _options: gax::options::RequestOptions,
7485    ) -> impl std::future::Future<
7486        Output = crate::Result<gax::response::Response<crate::model::ListRagFilesResponse>>,
7487    > + Send {
7488        gaxi::unimplemented::unimplemented_stub()
7489    }
7490
7491    /// Implements [super::client::VertexRagDataService::delete_rag_file].
7492    fn delete_rag_file(
7493        &self,
7494        _req: crate::model::DeleteRagFileRequest,
7495        _options: gax::options::RequestOptions,
7496    ) -> impl std::future::Future<
7497        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
7498    > + Send {
7499        gaxi::unimplemented::unimplemented_stub()
7500    }
7501
7502    /// Implements [super::client::VertexRagDataService::update_rag_engine_config].
7503    fn update_rag_engine_config(
7504        &self,
7505        _req: crate::model::UpdateRagEngineConfigRequest,
7506        _options: gax::options::RequestOptions,
7507    ) -> impl std::future::Future<
7508        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
7509    > + Send {
7510        gaxi::unimplemented::unimplemented_stub()
7511    }
7512
7513    /// Implements [super::client::VertexRagDataService::get_rag_engine_config].
7514    fn get_rag_engine_config(
7515        &self,
7516        _req: crate::model::GetRagEngineConfigRequest,
7517        _options: gax::options::RequestOptions,
7518    ) -> impl std::future::Future<
7519        Output = crate::Result<gax::response::Response<crate::model::RagEngineConfig>>,
7520    > + Send {
7521        gaxi::unimplemented::unimplemented_stub()
7522    }
7523
7524    /// Implements [super::client::VertexRagDataService::list_locations].
7525    fn list_locations(
7526        &self,
7527        _req: location::model::ListLocationsRequest,
7528        _options: gax::options::RequestOptions,
7529    ) -> impl std::future::Future<
7530        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
7531    > + Send {
7532        gaxi::unimplemented::unimplemented_stub()
7533    }
7534
7535    /// Implements [super::client::VertexRagDataService::get_location].
7536    fn get_location(
7537        &self,
7538        _req: location::model::GetLocationRequest,
7539        _options: gax::options::RequestOptions,
7540    ) -> impl std::future::Future<
7541        Output = crate::Result<gax::response::Response<location::model::Location>>,
7542    > + Send {
7543        gaxi::unimplemented::unimplemented_stub()
7544    }
7545
7546    /// Implements [super::client::VertexRagDataService::set_iam_policy].
7547    fn set_iam_policy(
7548        &self,
7549        _req: iam_v1::model::SetIamPolicyRequest,
7550        _options: gax::options::RequestOptions,
7551    ) -> impl std::future::Future<
7552        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
7553    > + Send {
7554        gaxi::unimplemented::unimplemented_stub()
7555    }
7556
7557    /// Implements [super::client::VertexRagDataService::get_iam_policy].
7558    fn get_iam_policy(
7559        &self,
7560        _req: iam_v1::model::GetIamPolicyRequest,
7561        _options: gax::options::RequestOptions,
7562    ) -> impl std::future::Future<
7563        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
7564    > + Send {
7565        gaxi::unimplemented::unimplemented_stub()
7566    }
7567
7568    /// Implements [super::client::VertexRagDataService::test_iam_permissions].
7569    fn test_iam_permissions(
7570        &self,
7571        _req: iam_v1::model::TestIamPermissionsRequest,
7572        _options: gax::options::RequestOptions,
7573    ) -> impl std::future::Future<
7574        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
7575    > + Send {
7576        gaxi::unimplemented::unimplemented_stub()
7577    }
7578
7579    /// Implements [super::client::VertexRagDataService::list_operations].
7580    fn list_operations(
7581        &self,
7582        _req: longrunning::model::ListOperationsRequest,
7583        _options: gax::options::RequestOptions,
7584    ) -> impl std::future::Future<
7585        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
7586    > + Send {
7587        gaxi::unimplemented::unimplemented_stub()
7588    }
7589
7590    /// Implements [super::client::VertexRagDataService::get_operation].
7591    fn get_operation(
7592        &self,
7593        _req: longrunning::model::GetOperationRequest,
7594        _options: gax::options::RequestOptions,
7595    ) -> impl std::future::Future<
7596        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
7597    > + Send {
7598        gaxi::unimplemented::unimplemented_stub()
7599    }
7600
7601    /// Implements [super::client::VertexRagDataService::delete_operation].
7602    fn delete_operation(
7603        &self,
7604        _req: longrunning::model::DeleteOperationRequest,
7605        _options: gax::options::RequestOptions,
7606    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
7607        gaxi::unimplemented::unimplemented_stub()
7608    }
7609
7610    /// Implements [super::client::VertexRagDataService::cancel_operation].
7611    fn cancel_operation(
7612        &self,
7613        _req: longrunning::model::CancelOperationRequest,
7614        _options: gax::options::RequestOptions,
7615    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
7616        gaxi::unimplemented::unimplemented_stub()
7617    }
7618
7619    /// Implements [super::client::VertexRagDataService::wait_operation].
7620    fn wait_operation(
7621        &self,
7622        _req: longrunning::model::WaitOperationRequest,
7623        _options: gax::options::RequestOptions,
7624    ) -> impl std::future::Future<
7625        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
7626    > + Send {
7627        gaxi::unimplemented::unimplemented_stub()
7628    }
7629
7630    /// Returns the polling error policy.
7631    ///
7632    /// When mocking, this method is typically irrelevant. Do not try to verify
7633    /// it is called by your mocks.
7634    fn get_polling_error_policy(
7635        &self,
7636        _options: &gax::options::RequestOptions,
7637    ) -> std::sync::Arc<dyn gax::polling_error_policy::PollingErrorPolicy> {
7638        std::sync::Arc::new(gax::polling_error_policy::Aip194Strict)
7639    }
7640
7641    /// Returns the polling backoff policy.
7642    ///
7643    /// When mocking, this method is typically irrelevant. Do not try to verify
7644    /// it is called by your mocks.
7645    fn get_polling_backoff_policy(
7646        &self,
7647        _options: &gax::options::RequestOptions,
7648    ) -> std::sync::Arc<dyn gax::polling_backoff_policy::PollingBackoffPolicy> {
7649        std::sync::Arc::new(gax::exponential_backoff::ExponentialBackoff::default())
7650    }
7651}
7652
7653/// Defines the trait used to implement [super::client::VertexRagService].
7654///
7655/// Application developers may need to implement this trait to mock
7656/// `client::VertexRagService`.  In other use-cases, application developers only
7657/// use `client::VertexRagService` and need not be concerned with this trait or
7658/// its implementations.
7659///
7660/// Services gain new RPCs routinely. Consequently, this trait gains new methods
7661/// too. To avoid breaking applications the trait provides a default
7662/// implementation of each method. Most of these implementations just return an
7663/// error.
7664#[cfg(feature = "vertex-rag-service")]
7665#[cfg_attr(docsrs, doc(cfg(feature = "vertex-rag-service")))]
7666pub trait VertexRagService: std::fmt::Debug + Send + Sync {
7667    /// Implements [super::client::VertexRagService::retrieve_contexts].
7668    fn retrieve_contexts(
7669        &self,
7670        _req: crate::model::RetrieveContextsRequest,
7671        _options: gax::options::RequestOptions,
7672    ) -> impl std::future::Future<
7673        Output = crate::Result<gax::response::Response<crate::model::RetrieveContextsResponse>>,
7674    > + Send {
7675        gaxi::unimplemented::unimplemented_stub()
7676    }
7677
7678    /// Implements [super::client::VertexRagService::augment_prompt].
7679    fn augment_prompt(
7680        &self,
7681        _req: crate::model::AugmentPromptRequest,
7682        _options: gax::options::RequestOptions,
7683    ) -> impl std::future::Future<
7684        Output = crate::Result<gax::response::Response<crate::model::AugmentPromptResponse>>,
7685    > + Send {
7686        gaxi::unimplemented::unimplemented_stub()
7687    }
7688
7689    /// Implements [super::client::VertexRagService::corroborate_content].
7690    fn corroborate_content(
7691        &self,
7692        _req: crate::model::CorroborateContentRequest,
7693        _options: gax::options::RequestOptions,
7694    ) -> impl std::future::Future<
7695        Output = crate::Result<gax::response::Response<crate::model::CorroborateContentResponse>>,
7696    > + Send {
7697        gaxi::unimplemented::unimplemented_stub()
7698    }
7699
7700    /// Implements [super::client::VertexRagService::list_locations].
7701    fn list_locations(
7702        &self,
7703        _req: location::model::ListLocationsRequest,
7704        _options: gax::options::RequestOptions,
7705    ) -> impl std::future::Future<
7706        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
7707    > + Send {
7708        gaxi::unimplemented::unimplemented_stub()
7709    }
7710
7711    /// Implements [super::client::VertexRagService::get_location].
7712    fn get_location(
7713        &self,
7714        _req: location::model::GetLocationRequest,
7715        _options: gax::options::RequestOptions,
7716    ) -> impl std::future::Future<
7717        Output = crate::Result<gax::response::Response<location::model::Location>>,
7718    > + Send {
7719        gaxi::unimplemented::unimplemented_stub()
7720    }
7721
7722    /// Implements [super::client::VertexRagService::set_iam_policy].
7723    fn set_iam_policy(
7724        &self,
7725        _req: iam_v1::model::SetIamPolicyRequest,
7726        _options: gax::options::RequestOptions,
7727    ) -> impl std::future::Future<
7728        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
7729    > + Send {
7730        gaxi::unimplemented::unimplemented_stub()
7731    }
7732
7733    /// Implements [super::client::VertexRagService::get_iam_policy].
7734    fn get_iam_policy(
7735        &self,
7736        _req: iam_v1::model::GetIamPolicyRequest,
7737        _options: gax::options::RequestOptions,
7738    ) -> impl std::future::Future<
7739        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
7740    > + Send {
7741        gaxi::unimplemented::unimplemented_stub()
7742    }
7743
7744    /// Implements [super::client::VertexRagService::test_iam_permissions].
7745    fn test_iam_permissions(
7746        &self,
7747        _req: iam_v1::model::TestIamPermissionsRequest,
7748        _options: gax::options::RequestOptions,
7749    ) -> impl std::future::Future<
7750        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
7751    > + Send {
7752        gaxi::unimplemented::unimplemented_stub()
7753    }
7754
7755    /// Implements [super::client::VertexRagService::list_operations].
7756    fn list_operations(
7757        &self,
7758        _req: longrunning::model::ListOperationsRequest,
7759        _options: gax::options::RequestOptions,
7760    ) -> impl std::future::Future<
7761        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
7762    > + Send {
7763        gaxi::unimplemented::unimplemented_stub()
7764    }
7765
7766    /// Implements [super::client::VertexRagService::get_operation].
7767    fn get_operation(
7768        &self,
7769        _req: longrunning::model::GetOperationRequest,
7770        _options: gax::options::RequestOptions,
7771    ) -> impl std::future::Future<
7772        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
7773    > + Send {
7774        gaxi::unimplemented::unimplemented_stub()
7775    }
7776
7777    /// Implements [super::client::VertexRagService::delete_operation].
7778    fn delete_operation(
7779        &self,
7780        _req: longrunning::model::DeleteOperationRequest,
7781        _options: gax::options::RequestOptions,
7782    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
7783        gaxi::unimplemented::unimplemented_stub()
7784    }
7785
7786    /// Implements [super::client::VertexRagService::cancel_operation].
7787    fn cancel_operation(
7788        &self,
7789        _req: longrunning::model::CancelOperationRequest,
7790        _options: gax::options::RequestOptions,
7791    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
7792        gaxi::unimplemented::unimplemented_stub()
7793    }
7794
7795    /// Implements [super::client::VertexRagService::wait_operation].
7796    fn wait_operation(
7797        &self,
7798        _req: longrunning::model::WaitOperationRequest,
7799        _options: gax::options::RequestOptions,
7800    ) -> impl std::future::Future<
7801        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
7802    > + Send {
7803        gaxi::unimplemented::unimplemented_stub()
7804    }
7805}
7806
7807/// Defines the trait used to implement [super::client::VizierService].
7808///
7809/// Application developers may need to implement this trait to mock
7810/// `client::VizierService`.  In other use-cases, application developers only
7811/// use `client::VizierService` and need not be concerned with this trait or
7812/// its implementations.
7813///
7814/// Services gain new RPCs routinely. Consequently, this trait gains new methods
7815/// too. To avoid breaking applications the trait provides a default
7816/// implementation of each method. Most of these implementations just return an
7817/// error.
7818#[cfg(feature = "vizier-service")]
7819#[cfg_attr(docsrs, doc(cfg(feature = "vizier-service")))]
7820pub trait VizierService: std::fmt::Debug + Send + Sync {
7821    /// Implements [super::client::VizierService::create_study].
7822    fn create_study(
7823        &self,
7824        _req: crate::model::CreateStudyRequest,
7825        _options: gax::options::RequestOptions,
7826    ) -> impl std::future::Future<
7827        Output = crate::Result<gax::response::Response<crate::model::Study>>,
7828    > + Send {
7829        gaxi::unimplemented::unimplemented_stub()
7830    }
7831
7832    /// Implements [super::client::VizierService::get_study].
7833    fn get_study(
7834        &self,
7835        _req: crate::model::GetStudyRequest,
7836        _options: gax::options::RequestOptions,
7837    ) -> impl std::future::Future<
7838        Output = crate::Result<gax::response::Response<crate::model::Study>>,
7839    > + Send {
7840        gaxi::unimplemented::unimplemented_stub()
7841    }
7842
7843    /// Implements [super::client::VizierService::list_studies].
7844    fn list_studies(
7845        &self,
7846        _req: crate::model::ListStudiesRequest,
7847        _options: gax::options::RequestOptions,
7848    ) -> impl std::future::Future<
7849        Output = crate::Result<gax::response::Response<crate::model::ListStudiesResponse>>,
7850    > + Send {
7851        gaxi::unimplemented::unimplemented_stub()
7852    }
7853
7854    /// Implements [super::client::VizierService::delete_study].
7855    fn delete_study(
7856        &self,
7857        _req: crate::model::DeleteStudyRequest,
7858        _options: gax::options::RequestOptions,
7859    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
7860        gaxi::unimplemented::unimplemented_stub()
7861    }
7862
7863    /// Implements [super::client::VizierService::lookup_study].
7864    fn lookup_study(
7865        &self,
7866        _req: crate::model::LookupStudyRequest,
7867        _options: gax::options::RequestOptions,
7868    ) -> impl std::future::Future<
7869        Output = crate::Result<gax::response::Response<crate::model::Study>>,
7870    > + Send {
7871        gaxi::unimplemented::unimplemented_stub()
7872    }
7873
7874    /// Implements [super::client::VizierService::suggest_trials].
7875    fn suggest_trials(
7876        &self,
7877        _req: crate::model::SuggestTrialsRequest,
7878        _options: gax::options::RequestOptions,
7879    ) -> impl std::future::Future<
7880        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
7881    > + Send {
7882        gaxi::unimplemented::unimplemented_stub()
7883    }
7884
7885    /// Implements [super::client::VizierService::create_trial].
7886    fn create_trial(
7887        &self,
7888        _req: crate::model::CreateTrialRequest,
7889        _options: gax::options::RequestOptions,
7890    ) -> impl std::future::Future<
7891        Output = crate::Result<gax::response::Response<crate::model::Trial>>,
7892    > + Send {
7893        gaxi::unimplemented::unimplemented_stub()
7894    }
7895
7896    /// Implements [super::client::VizierService::get_trial].
7897    fn get_trial(
7898        &self,
7899        _req: crate::model::GetTrialRequest,
7900        _options: gax::options::RequestOptions,
7901    ) -> impl std::future::Future<
7902        Output = crate::Result<gax::response::Response<crate::model::Trial>>,
7903    > + Send {
7904        gaxi::unimplemented::unimplemented_stub()
7905    }
7906
7907    /// Implements [super::client::VizierService::list_trials].
7908    fn list_trials(
7909        &self,
7910        _req: crate::model::ListTrialsRequest,
7911        _options: gax::options::RequestOptions,
7912    ) -> impl std::future::Future<
7913        Output = crate::Result<gax::response::Response<crate::model::ListTrialsResponse>>,
7914    > + Send {
7915        gaxi::unimplemented::unimplemented_stub()
7916    }
7917
7918    /// Implements [super::client::VizierService::add_trial_measurement].
7919    fn add_trial_measurement(
7920        &self,
7921        _req: crate::model::AddTrialMeasurementRequest,
7922        _options: gax::options::RequestOptions,
7923    ) -> impl std::future::Future<
7924        Output = crate::Result<gax::response::Response<crate::model::Trial>>,
7925    > + Send {
7926        gaxi::unimplemented::unimplemented_stub()
7927    }
7928
7929    /// Implements [super::client::VizierService::complete_trial].
7930    fn complete_trial(
7931        &self,
7932        _req: crate::model::CompleteTrialRequest,
7933        _options: gax::options::RequestOptions,
7934    ) -> impl std::future::Future<
7935        Output = crate::Result<gax::response::Response<crate::model::Trial>>,
7936    > + Send {
7937        gaxi::unimplemented::unimplemented_stub()
7938    }
7939
7940    /// Implements [super::client::VizierService::delete_trial].
7941    fn delete_trial(
7942        &self,
7943        _req: crate::model::DeleteTrialRequest,
7944        _options: gax::options::RequestOptions,
7945    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
7946        gaxi::unimplemented::unimplemented_stub()
7947    }
7948
7949    /// Implements [super::client::VizierService::check_trial_early_stopping_state].
7950    fn check_trial_early_stopping_state(
7951        &self,
7952        _req: crate::model::CheckTrialEarlyStoppingStateRequest,
7953        _options: gax::options::RequestOptions,
7954    ) -> impl std::future::Future<
7955        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
7956    > + Send {
7957        gaxi::unimplemented::unimplemented_stub()
7958    }
7959
7960    /// Implements [super::client::VizierService::stop_trial].
7961    fn stop_trial(
7962        &self,
7963        _req: crate::model::StopTrialRequest,
7964        _options: gax::options::RequestOptions,
7965    ) -> impl std::future::Future<
7966        Output = crate::Result<gax::response::Response<crate::model::Trial>>,
7967    > + Send {
7968        gaxi::unimplemented::unimplemented_stub()
7969    }
7970
7971    /// Implements [super::client::VizierService::list_optimal_trials].
7972    fn list_optimal_trials(
7973        &self,
7974        _req: crate::model::ListOptimalTrialsRequest,
7975        _options: gax::options::RequestOptions,
7976    ) -> impl std::future::Future<
7977        Output = crate::Result<gax::response::Response<crate::model::ListOptimalTrialsResponse>>,
7978    > + Send {
7979        gaxi::unimplemented::unimplemented_stub()
7980    }
7981
7982    /// Implements [super::client::VizierService::list_locations].
7983    fn list_locations(
7984        &self,
7985        _req: location::model::ListLocationsRequest,
7986        _options: gax::options::RequestOptions,
7987    ) -> impl std::future::Future<
7988        Output = crate::Result<gax::response::Response<location::model::ListLocationsResponse>>,
7989    > + Send {
7990        gaxi::unimplemented::unimplemented_stub()
7991    }
7992
7993    /// Implements [super::client::VizierService::get_location].
7994    fn get_location(
7995        &self,
7996        _req: location::model::GetLocationRequest,
7997        _options: gax::options::RequestOptions,
7998    ) -> impl std::future::Future<
7999        Output = crate::Result<gax::response::Response<location::model::Location>>,
8000    > + Send {
8001        gaxi::unimplemented::unimplemented_stub()
8002    }
8003
8004    /// Implements [super::client::VizierService::set_iam_policy].
8005    fn set_iam_policy(
8006        &self,
8007        _req: iam_v1::model::SetIamPolicyRequest,
8008        _options: gax::options::RequestOptions,
8009    ) -> impl std::future::Future<
8010        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
8011    > + Send {
8012        gaxi::unimplemented::unimplemented_stub()
8013    }
8014
8015    /// Implements [super::client::VizierService::get_iam_policy].
8016    fn get_iam_policy(
8017        &self,
8018        _req: iam_v1::model::GetIamPolicyRequest,
8019        _options: gax::options::RequestOptions,
8020    ) -> impl std::future::Future<
8021        Output = crate::Result<gax::response::Response<iam_v1::model::Policy>>,
8022    > + Send {
8023        gaxi::unimplemented::unimplemented_stub()
8024    }
8025
8026    /// Implements [super::client::VizierService::test_iam_permissions].
8027    fn test_iam_permissions(
8028        &self,
8029        _req: iam_v1::model::TestIamPermissionsRequest,
8030        _options: gax::options::RequestOptions,
8031    ) -> impl std::future::Future<
8032        Output = crate::Result<gax::response::Response<iam_v1::model::TestIamPermissionsResponse>>,
8033    > + Send {
8034        gaxi::unimplemented::unimplemented_stub()
8035    }
8036
8037    /// Implements [super::client::VizierService::list_operations].
8038    fn list_operations(
8039        &self,
8040        _req: longrunning::model::ListOperationsRequest,
8041        _options: gax::options::RequestOptions,
8042    ) -> impl std::future::Future<
8043        Output = crate::Result<gax::response::Response<longrunning::model::ListOperationsResponse>>,
8044    > + Send {
8045        gaxi::unimplemented::unimplemented_stub()
8046    }
8047
8048    /// Implements [super::client::VizierService::get_operation].
8049    fn get_operation(
8050        &self,
8051        _req: longrunning::model::GetOperationRequest,
8052        _options: gax::options::RequestOptions,
8053    ) -> impl std::future::Future<
8054        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
8055    > + Send {
8056        gaxi::unimplemented::unimplemented_stub()
8057    }
8058
8059    /// Implements [super::client::VizierService::delete_operation].
8060    fn delete_operation(
8061        &self,
8062        _req: longrunning::model::DeleteOperationRequest,
8063        _options: gax::options::RequestOptions,
8064    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
8065        gaxi::unimplemented::unimplemented_stub()
8066    }
8067
8068    /// Implements [super::client::VizierService::cancel_operation].
8069    fn cancel_operation(
8070        &self,
8071        _req: longrunning::model::CancelOperationRequest,
8072        _options: gax::options::RequestOptions,
8073    ) -> impl std::future::Future<Output = crate::Result<gax::response::Response<()>>> + Send {
8074        gaxi::unimplemented::unimplemented_stub()
8075    }
8076
8077    /// Implements [super::client::VizierService::wait_operation].
8078    fn wait_operation(
8079        &self,
8080        _req: longrunning::model::WaitOperationRequest,
8081        _options: gax::options::RequestOptions,
8082    ) -> impl std::future::Future<
8083        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
8084    > + Send {
8085        gaxi::unimplemented::unimplemented_stub()
8086    }
8087
8088    /// Returns the polling error policy.
8089    ///
8090    /// When mocking, this method is typically irrelevant. Do not try to verify
8091    /// it is called by your mocks.
8092    fn get_polling_error_policy(
8093        &self,
8094        _options: &gax::options::RequestOptions,
8095    ) -> std::sync::Arc<dyn gax::polling_error_policy::PollingErrorPolicy> {
8096        std::sync::Arc::new(gax::polling_error_policy::Aip194Strict)
8097    }
8098
8099    /// Returns the polling backoff policy.
8100    ///
8101    /// When mocking, this method is typically irrelevant. Do not try to verify
8102    /// it is called by your mocks.
8103    fn get_polling_backoff_policy(
8104        &self,
8105        _options: &gax::options::RequestOptions,
8106    ) -> std::sync::Arc<dyn gax::polling_backoff_policy::PollingBackoffPolicy> {
8107        std::sync::Arc::new(gax::exponential_backoff::ExponentialBackoff::default())
8108    }
8109}