Skip to main content

bitwarden_api_api/apis/
mod.rs

1// Reexport base types from bitwarden-api-base for backwards compatibility
2pub use bitwarden_api_base::*;
3
4pub mod access_policies_api;
5pub mod account_billing_v_next_api;
6pub mod accounts_api;
7pub mod accounts_billing_api;
8pub mod accounts_key_management_api;
9pub mod auth_requests_api;
10pub mod ciphers_api;
11pub mod collections_api;
12pub mod config_api;
13pub mod counts_api;
14pub mod devices_api;
15pub mod emergency_access_api;
16pub mod events_api;
17pub mod folders_api;
18pub mod groups_api;
19pub mod hibp_api;
20pub mod import_ciphers_api;
21pub mod info_api;
22pub mod installations_api;
23pub mod licenses_api;
24pub mod notifications_api;
25pub mod organization_auth_requests_api;
26pub mod organization_billing_api;
27pub mod organization_billing_v_next_api;
28pub mod organization_connections_api;
29pub mod organization_domain_api;
30pub mod organization_export_api;
31pub mod organization_integration_api;
32pub mod organization_integration_configuration_api;
33pub mod organization_invite_links_api;
34pub mod organization_reports_api;
35pub mod organization_sponsorships_api;
36pub mod organization_users_api;
37pub mod organizations_api;
38pub mod plans_api;
39pub mod policies_api;
40pub mod preview_invoice_api;
41pub mod projects_api;
42pub mod provider_billing_api;
43pub mod provider_billing_v_next_api;
44pub mod provider_clients_api;
45pub mod provider_organizations_api;
46pub mod provider_users_api;
47pub mod providers_api;
48pub mod push_api;
49pub mod reports_api;
50pub mod request_sm_access_api;
51pub mod secret_versions_api;
52pub mod secrets_api;
53pub mod secrets_manager_events_api;
54pub mod secrets_manager_porting_api;
55pub mod security_task_api;
56pub mod self_hosted_account_billing_v_next_api;
57pub mod self_hosted_organization_billing_v_next_api;
58pub mod self_hosted_organization_licenses_api;
59pub mod self_hosted_organization_sponsorships_api;
60pub mod sends_api;
61pub mod service_accounts_api;
62pub mod settings_api;
63pub mod slack_integration_api;
64pub mod sso_cookie_vendor_api;
65pub mod stripe_api;
66pub mod sync_api;
67pub mod teams_integration_api;
68pub mod trash_api;
69pub mod two_factor_api;
70pub mod users_api;
71pub mod web_authn_api;
72
73// Reexport Configuration type from bitwarden-api-base for backwards compatibility
74pub mod configuration {
75    pub use bitwarden_api_base::Configuration;
76}
77
78use std::sync::Arc;
79
80#[allow(clippy::large_enum_variant, private_interfaces)]
81pub enum ApiClient {
82    Real(ApiClientReal),
83    #[cfg(feature = "mockall")]
84    Mock(ApiClientMock),
85}
86
87struct ApiClientReal {
88    access_policies_api: access_policies_api::AccessPoliciesApiClient,
89    account_billing_v_next_api: account_billing_v_next_api::AccountBillingVNextApiClient,
90    accounts_api: accounts_api::AccountsApiClient,
91    accounts_billing_api: accounts_billing_api::AccountsBillingApiClient,
92    accounts_key_management_api: accounts_key_management_api::AccountsKeyManagementApiClient,
93    auth_requests_api: auth_requests_api::AuthRequestsApiClient,
94    ciphers_api: ciphers_api::CiphersApiClient,
95    collections_api: collections_api::CollectionsApiClient,
96    config_api: config_api::ConfigApiClient,
97    counts_api: counts_api::CountsApiClient,
98    devices_api: devices_api::DevicesApiClient,
99    emergency_access_api: emergency_access_api::EmergencyAccessApiClient,
100    events_api: events_api::EventsApiClient,
101    folders_api: folders_api::FoldersApiClient,
102    groups_api: groups_api::GroupsApiClient,
103    hibp_api: hibp_api::HibpApiClient,
104    import_ciphers_api: import_ciphers_api::ImportCiphersApiClient,
105    info_api: info_api::InfoApiClient,
106    installations_api: installations_api::InstallationsApiClient,
107    licenses_api: licenses_api::LicensesApiClient,
108    notifications_api: notifications_api::NotificationsApiClient,
109    organization_auth_requests_api:
110        organization_auth_requests_api::OrganizationAuthRequestsApiClient,
111    organization_billing_api: organization_billing_api::OrganizationBillingApiClient,
112    organization_billing_v_next_api:
113        organization_billing_v_next_api::OrganizationBillingVNextApiClient,
114    organization_connections_api: organization_connections_api::OrganizationConnectionsApiClient,
115    organization_domain_api: organization_domain_api::OrganizationDomainApiClient,
116    organization_export_api: organization_export_api::OrganizationExportApiClient,
117    organization_integration_api: organization_integration_api::OrganizationIntegrationApiClient,
118    organization_integration_configuration_api:
119        organization_integration_configuration_api::OrganizationIntegrationConfigurationApiClient,
120    organization_invite_links_api: organization_invite_links_api::OrganizationInviteLinksApiClient,
121    organization_reports_api: organization_reports_api::OrganizationReportsApiClient,
122    organization_sponsorships_api: organization_sponsorships_api::OrganizationSponsorshipsApiClient,
123    organization_users_api: organization_users_api::OrganizationUsersApiClient,
124    organizations_api: organizations_api::OrganizationsApiClient,
125    plans_api: plans_api::PlansApiClient,
126    policies_api: policies_api::PoliciesApiClient,
127    preview_invoice_api: preview_invoice_api::PreviewInvoiceApiClient,
128    projects_api: projects_api::ProjectsApiClient,
129    provider_billing_api: provider_billing_api::ProviderBillingApiClient,
130    provider_billing_v_next_api: provider_billing_v_next_api::ProviderBillingVNextApiClient,
131    provider_clients_api: provider_clients_api::ProviderClientsApiClient,
132    provider_organizations_api: provider_organizations_api::ProviderOrganizationsApiClient,
133    provider_users_api: provider_users_api::ProviderUsersApiClient,
134    providers_api: providers_api::ProvidersApiClient,
135    push_api: push_api::PushApiClient,
136    reports_api: reports_api::ReportsApiClient,
137    request_sm_access_api: request_sm_access_api::RequestSmAccessApiClient,
138    secret_versions_api: secret_versions_api::SecretVersionsApiClient,
139    secrets_api: secrets_api::SecretsApiClient,
140    secrets_manager_events_api: secrets_manager_events_api::SecretsManagerEventsApiClient,
141    secrets_manager_porting_api: secrets_manager_porting_api::SecretsManagerPortingApiClient,
142    security_task_api: security_task_api::SecurityTaskApiClient,
143    self_hosted_account_billing_v_next_api:
144        self_hosted_account_billing_v_next_api::SelfHostedAccountBillingVNextApiClient,
145    self_hosted_organization_billing_v_next_api:
146        self_hosted_organization_billing_v_next_api::SelfHostedOrganizationBillingVNextApiClient,
147    self_hosted_organization_licenses_api:
148        self_hosted_organization_licenses_api::SelfHostedOrganizationLicensesApiClient,
149    self_hosted_organization_sponsorships_api:
150        self_hosted_organization_sponsorships_api::SelfHostedOrganizationSponsorshipsApiClient,
151    sends_api: sends_api::SendsApiClient,
152    service_accounts_api: service_accounts_api::ServiceAccountsApiClient,
153    settings_api: settings_api::SettingsApiClient,
154    slack_integration_api: slack_integration_api::SlackIntegrationApiClient,
155    sso_cookie_vendor_api: sso_cookie_vendor_api::SsoCookieVendorApiClient,
156    stripe_api: stripe_api::StripeApiClient,
157    sync_api: sync_api::SyncApiClient,
158    teams_integration_api: teams_integration_api::TeamsIntegrationApiClient,
159    trash_api: trash_api::TrashApiClient,
160    two_factor_api: two_factor_api::TwoFactorApiClient,
161    users_api: users_api::UsersApiClient,
162    web_authn_api: web_authn_api::WebAuthnApiClient,
163}
164
165#[cfg(feature = "mockall")]
166pub struct ApiClientMock {
167    pub access_policies_api: access_policies_api::MockAccessPoliciesApi,
168    pub account_billing_v_next_api: account_billing_v_next_api::MockAccountBillingVNextApi,
169    pub accounts_api: accounts_api::MockAccountsApi,
170    pub accounts_billing_api: accounts_billing_api::MockAccountsBillingApi,
171    pub accounts_key_management_api: accounts_key_management_api::MockAccountsKeyManagementApi,
172    pub auth_requests_api: auth_requests_api::MockAuthRequestsApi,
173    pub ciphers_api: ciphers_api::MockCiphersApi,
174    pub collections_api: collections_api::MockCollectionsApi,
175    pub config_api: config_api::MockConfigApi,
176    pub counts_api: counts_api::MockCountsApi,
177    pub devices_api: devices_api::MockDevicesApi,
178    pub emergency_access_api: emergency_access_api::MockEmergencyAccessApi,
179    pub events_api: events_api::MockEventsApi,
180    pub folders_api: folders_api::MockFoldersApi,
181    pub groups_api: groups_api::MockGroupsApi,
182    pub hibp_api: hibp_api::MockHibpApi,
183    pub import_ciphers_api: import_ciphers_api::MockImportCiphersApi,
184    pub info_api: info_api::MockInfoApi,
185    pub installations_api: installations_api::MockInstallationsApi,
186    pub licenses_api: licenses_api::MockLicensesApi,
187    pub notifications_api: notifications_api::MockNotificationsApi,
188    pub organization_auth_requests_api:
189        organization_auth_requests_api::MockOrganizationAuthRequestsApi,
190    pub organization_billing_api: organization_billing_api::MockOrganizationBillingApi,
191    pub organization_billing_v_next_api:
192        organization_billing_v_next_api::MockOrganizationBillingVNextApi,
193    pub organization_connections_api: organization_connections_api::MockOrganizationConnectionsApi,
194    pub organization_domain_api: organization_domain_api::MockOrganizationDomainApi,
195    pub organization_export_api: organization_export_api::MockOrganizationExportApi,
196    pub organization_integration_api: organization_integration_api::MockOrganizationIntegrationApi,
197    pub organization_integration_configuration_api:
198        organization_integration_configuration_api::MockOrganizationIntegrationConfigurationApi,
199    pub organization_invite_links_api:
200        organization_invite_links_api::MockOrganizationInviteLinksApi,
201    pub organization_reports_api: organization_reports_api::MockOrganizationReportsApi,
202    pub organization_sponsorships_api:
203        organization_sponsorships_api::MockOrganizationSponsorshipsApi,
204    pub organization_users_api: organization_users_api::MockOrganizationUsersApi,
205    pub organizations_api: organizations_api::MockOrganizationsApi,
206    pub plans_api: plans_api::MockPlansApi,
207    pub policies_api: policies_api::MockPoliciesApi,
208    pub preview_invoice_api: preview_invoice_api::MockPreviewInvoiceApi,
209    pub projects_api: projects_api::MockProjectsApi,
210    pub provider_billing_api: provider_billing_api::MockProviderBillingApi,
211    pub provider_billing_v_next_api: provider_billing_v_next_api::MockProviderBillingVNextApi,
212    pub provider_clients_api: provider_clients_api::MockProviderClientsApi,
213    pub provider_organizations_api: provider_organizations_api::MockProviderOrganizationsApi,
214    pub provider_users_api: provider_users_api::MockProviderUsersApi,
215    pub providers_api: providers_api::MockProvidersApi,
216    pub push_api: push_api::MockPushApi,
217    pub reports_api: reports_api::MockReportsApi,
218    pub request_sm_access_api: request_sm_access_api::MockRequestSmAccessApi,
219    pub secret_versions_api: secret_versions_api::MockSecretVersionsApi,
220    pub secrets_api: secrets_api::MockSecretsApi,
221    pub secrets_manager_events_api: secrets_manager_events_api::MockSecretsManagerEventsApi,
222    pub secrets_manager_porting_api: secrets_manager_porting_api::MockSecretsManagerPortingApi,
223    pub security_task_api: security_task_api::MockSecurityTaskApi,
224    pub self_hosted_account_billing_v_next_api:
225        self_hosted_account_billing_v_next_api::MockSelfHostedAccountBillingVNextApi,
226    pub self_hosted_organization_billing_v_next_api:
227        self_hosted_organization_billing_v_next_api::MockSelfHostedOrganizationBillingVNextApi,
228    pub self_hosted_organization_licenses_api:
229        self_hosted_organization_licenses_api::MockSelfHostedOrganizationLicensesApi,
230    pub self_hosted_organization_sponsorships_api:
231        self_hosted_organization_sponsorships_api::MockSelfHostedOrganizationSponsorshipsApi,
232    pub sends_api: sends_api::MockSendsApi,
233    pub service_accounts_api: service_accounts_api::MockServiceAccountsApi,
234    pub settings_api: settings_api::MockSettingsApi,
235    pub slack_integration_api: slack_integration_api::MockSlackIntegrationApi,
236    pub sso_cookie_vendor_api: sso_cookie_vendor_api::MockSsoCookieVendorApi,
237    pub stripe_api: stripe_api::MockStripeApi,
238    pub sync_api: sync_api::MockSyncApi,
239    pub teams_integration_api: teams_integration_api::MockTeamsIntegrationApi,
240    pub trash_api: trash_api::MockTrashApi,
241    pub two_factor_api: two_factor_api::MockTwoFactorApi,
242    pub users_api: users_api::MockUsersApi,
243    pub web_authn_api: web_authn_api::MockWebAuthnApi,
244}
245
246impl ApiClient {
247    pub fn new(configuration: &Arc<bitwarden_api_base::Configuration>) -> Self {
248        Self::Real(ApiClientReal {
249            access_policies_api: access_policies_api::AccessPoliciesApiClient::new(configuration.clone()),
250            account_billing_v_next_api: account_billing_v_next_api::AccountBillingVNextApiClient::new(configuration.clone()),
251            accounts_api: accounts_api::AccountsApiClient::new(configuration.clone()),
252            accounts_billing_api: accounts_billing_api::AccountsBillingApiClient::new(configuration.clone()),
253            accounts_key_management_api: accounts_key_management_api::AccountsKeyManagementApiClient::new(configuration.clone()),
254            auth_requests_api: auth_requests_api::AuthRequestsApiClient::new(configuration.clone()),
255            ciphers_api: ciphers_api::CiphersApiClient::new(configuration.clone()),
256            collections_api: collections_api::CollectionsApiClient::new(configuration.clone()),
257            config_api: config_api::ConfigApiClient::new(configuration.clone()),
258            counts_api: counts_api::CountsApiClient::new(configuration.clone()),
259            devices_api: devices_api::DevicesApiClient::new(configuration.clone()),
260            emergency_access_api: emergency_access_api::EmergencyAccessApiClient::new(configuration.clone()),
261            events_api: events_api::EventsApiClient::new(configuration.clone()),
262            folders_api: folders_api::FoldersApiClient::new(configuration.clone()),
263            groups_api: groups_api::GroupsApiClient::new(configuration.clone()),
264            hibp_api: hibp_api::HibpApiClient::new(configuration.clone()),
265            import_ciphers_api: import_ciphers_api::ImportCiphersApiClient::new(configuration.clone()),
266            info_api: info_api::InfoApiClient::new(configuration.clone()),
267            installations_api: installations_api::InstallationsApiClient::new(configuration.clone()),
268            licenses_api: licenses_api::LicensesApiClient::new(configuration.clone()),
269            notifications_api: notifications_api::NotificationsApiClient::new(configuration.clone()),
270            organization_auth_requests_api: organization_auth_requests_api::OrganizationAuthRequestsApiClient::new(configuration.clone()),
271            organization_billing_api: organization_billing_api::OrganizationBillingApiClient::new(configuration.clone()),
272            organization_billing_v_next_api: organization_billing_v_next_api::OrganizationBillingVNextApiClient::new(configuration.clone()),
273            organization_connections_api: organization_connections_api::OrganizationConnectionsApiClient::new(configuration.clone()),
274            organization_domain_api: organization_domain_api::OrganizationDomainApiClient::new(configuration.clone()),
275            organization_export_api: organization_export_api::OrganizationExportApiClient::new(configuration.clone()),
276            organization_integration_api: organization_integration_api::OrganizationIntegrationApiClient::new(configuration.clone()),
277            organization_integration_configuration_api: organization_integration_configuration_api::OrganizationIntegrationConfigurationApiClient::new(configuration.clone()),
278            organization_invite_links_api: organization_invite_links_api::OrganizationInviteLinksApiClient::new(configuration.clone()),
279            organization_reports_api: organization_reports_api::OrganizationReportsApiClient::new(configuration.clone()),
280            organization_sponsorships_api: organization_sponsorships_api::OrganizationSponsorshipsApiClient::new(configuration.clone()),
281            organization_users_api: organization_users_api::OrganizationUsersApiClient::new(configuration.clone()),
282            organizations_api: organizations_api::OrganizationsApiClient::new(configuration.clone()),
283            plans_api: plans_api::PlansApiClient::new(configuration.clone()),
284            policies_api: policies_api::PoliciesApiClient::new(configuration.clone()),
285            preview_invoice_api: preview_invoice_api::PreviewInvoiceApiClient::new(configuration.clone()),
286            projects_api: projects_api::ProjectsApiClient::new(configuration.clone()),
287            provider_billing_api: provider_billing_api::ProviderBillingApiClient::new(configuration.clone()),
288            provider_billing_v_next_api: provider_billing_v_next_api::ProviderBillingVNextApiClient::new(configuration.clone()),
289            provider_clients_api: provider_clients_api::ProviderClientsApiClient::new(configuration.clone()),
290            provider_organizations_api: provider_organizations_api::ProviderOrganizationsApiClient::new(configuration.clone()),
291            provider_users_api: provider_users_api::ProviderUsersApiClient::new(configuration.clone()),
292            providers_api: providers_api::ProvidersApiClient::new(configuration.clone()),
293            push_api: push_api::PushApiClient::new(configuration.clone()),
294            reports_api: reports_api::ReportsApiClient::new(configuration.clone()),
295            request_sm_access_api: request_sm_access_api::RequestSmAccessApiClient::new(configuration.clone()),
296            secret_versions_api: secret_versions_api::SecretVersionsApiClient::new(configuration.clone()),
297            secrets_api: secrets_api::SecretsApiClient::new(configuration.clone()),
298            secrets_manager_events_api: secrets_manager_events_api::SecretsManagerEventsApiClient::new(configuration.clone()),
299            secrets_manager_porting_api: secrets_manager_porting_api::SecretsManagerPortingApiClient::new(configuration.clone()),
300            security_task_api: security_task_api::SecurityTaskApiClient::new(configuration.clone()),
301            self_hosted_account_billing_v_next_api: self_hosted_account_billing_v_next_api::SelfHostedAccountBillingVNextApiClient::new(configuration.clone()),
302            self_hosted_organization_billing_v_next_api: self_hosted_organization_billing_v_next_api::SelfHostedOrganizationBillingVNextApiClient::new(configuration.clone()),
303            self_hosted_organization_licenses_api: self_hosted_organization_licenses_api::SelfHostedOrganizationLicensesApiClient::new(configuration.clone()),
304            self_hosted_organization_sponsorships_api: self_hosted_organization_sponsorships_api::SelfHostedOrganizationSponsorshipsApiClient::new(configuration.clone()),
305            sends_api: sends_api::SendsApiClient::new(configuration.clone()),
306            service_accounts_api: service_accounts_api::ServiceAccountsApiClient::new(configuration.clone()),
307            settings_api: settings_api::SettingsApiClient::new(configuration.clone()),
308            slack_integration_api: slack_integration_api::SlackIntegrationApiClient::new(configuration.clone()),
309            sso_cookie_vendor_api: sso_cookie_vendor_api::SsoCookieVendorApiClient::new(configuration.clone()),
310            stripe_api: stripe_api::StripeApiClient::new(configuration.clone()),
311            sync_api: sync_api::SyncApiClient::new(configuration.clone()),
312            teams_integration_api: teams_integration_api::TeamsIntegrationApiClient::new(configuration.clone()),
313            trash_api: trash_api::TrashApiClient::new(configuration.clone()),
314            two_factor_api: two_factor_api::TwoFactorApiClient::new(configuration.clone()),
315            users_api: users_api::UsersApiClient::new(configuration.clone()),
316            web_authn_api: web_authn_api::WebAuthnApiClient::new(configuration.clone()),
317        })
318    }
319
320    #[cfg(feature = "mockall")]
321    pub fn new_mocked(func: impl FnOnce(&mut ApiClientMock)) -> Self {
322        let mut mock = ApiClientMock {
323            access_policies_api: access_policies_api::MockAccessPoliciesApi::new(),
324            account_billing_v_next_api: account_billing_v_next_api::MockAccountBillingVNextApi::new(),
325            accounts_api: accounts_api::MockAccountsApi::new(),
326            accounts_billing_api: accounts_billing_api::MockAccountsBillingApi::new(),
327            accounts_key_management_api: accounts_key_management_api::MockAccountsKeyManagementApi::new(),
328            auth_requests_api: auth_requests_api::MockAuthRequestsApi::new(),
329            ciphers_api: ciphers_api::MockCiphersApi::new(),
330            collections_api: collections_api::MockCollectionsApi::new(),
331            config_api: config_api::MockConfigApi::new(),
332            counts_api: counts_api::MockCountsApi::new(),
333            devices_api: devices_api::MockDevicesApi::new(),
334            emergency_access_api: emergency_access_api::MockEmergencyAccessApi::new(),
335            events_api: events_api::MockEventsApi::new(),
336            folders_api: folders_api::MockFoldersApi::new(),
337            groups_api: groups_api::MockGroupsApi::new(),
338            hibp_api: hibp_api::MockHibpApi::new(),
339            import_ciphers_api: import_ciphers_api::MockImportCiphersApi::new(),
340            info_api: info_api::MockInfoApi::new(),
341            installations_api: installations_api::MockInstallationsApi::new(),
342            licenses_api: licenses_api::MockLicensesApi::new(),
343            notifications_api: notifications_api::MockNotificationsApi::new(),
344            organization_auth_requests_api: organization_auth_requests_api::MockOrganizationAuthRequestsApi::new(),
345            organization_billing_api: organization_billing_api::MockOrganizationBillingApi::new(),
346            organization_billing_v_next_api: organization_billing_v_next_api::MockOrganizationBillingVNextApi::new(),
347            organization_connections_api: organization_connections_api::MockOrganizationConnectionsApi::new(),
348            organization_domain_api: organization_domain_api::MockOrganizationDomainApi::new(),
349            organization_export_api: organization_export_api::MockOrganizationExportApi::new(),
350            organization_integration_api: organization_integration_api::MockOrganizationIntegrationApi::new(),
351            organization_integration_configuration_api: organization_integration_configuration_api::MockOrganizationIntegrationConfigurationApi::new(),
352            organization_invite_links_api: organization_invite_links_api::MockOrganizationInviteLinksApi::new(),
353            organization_reports_api: organization_reports_api::MockOrganizationReportsApi::new(),
354            organization_sponsorships_api: organization_sponsorships_api::MockOrganizationSponsorshipsApi::new(),
355            organization_users_api: organization_users_api::MockOrganizationUsersApi::new(),
356            organizations_api: organizations_api::MockOrganizationsApi::new(),
357            plans_api: plans_api::MockPlansApi::new(),
358            policies_api: policies_api::MockPoliciesApi::new(),
359            preview_invoice_api: preview_invoice_api::MockPreviewInvoiceApi::new(),
360            projects_api: projects_api::MockProjectsApi::new(),
361            provider_billing_api: provider_billing_api::MockProviderBillingApi::new(),
362            provider_billing_v_next_api: provider_billing_v_next_api::MockProviderBillingVNextApi::new(),
363            provider_clients_api: provider_clients_api::MockProviderClientsApi::new(),
364            provider_organizations_api: provider_organizations_api::MockProviderOrganizationsApi::new(),
365            provider_users_api: provider_users_api::MockProviderUsersApi::new(),
366            providers_api: providers_api::MockProvidersApi::new(),
367            push_api: push_api::MockPushApi::new(),
368            reports_api: reports_api::MockReportsApi::new(),
369            request_sm_access_api: request_sm_access_api::MockRequestSmAccessApi::new(),
370            secret_versions_api: secret_versions_api::MockSecretVersionsApi::new(),
371            secrets_api: secrets_api::MockSecretsApi::new(),
372            secrets_manager_events_api: secrets_manager_events_api::MockSecretsManagerEventsApi::new(),
373            secrets_manager_porting_api: secrets_manager_porting_api::MockSecretsManagerPortingApi::new(),
374            security_task_api: security_task_api::MockSecurityTaskApi::new(),
375            self_hosted_account_billing_v_next_api: self_hosted_account_billing_v_next_api::MockSelfHostedAccountBillingVNextApi::new(),
376            self_hosted_organization_billing_v_next_api: self_hosted_organization_billing_v_next_api::MockSelfHostedOrganizationBillingVNextApi::new(),
377            self_hosted_organization_licenses_api: self_hosted_organization_licenses_api::MockSelfHostedOrganizationLicensesApi::new(),
378            self_hosted_organization_sponsorships_api: self_hosted_organization_sponsorships_api::MockSelfHostedOrganizationSponsorshipsApi::new(),
379            sends_api: sends_api::MockSendsApi::new(),
380            service_accounts_api: service_accounts_api::MockServiceAccountsApi::new(),
381            settings_api: settings_api::MockSettingsApi::new(),
382            slack_integration_api: slack_integration_api::MockSlackIntegrationApi::new(),
383            sso_cookie_vendor_api: sso_cookie_vendor_api::MockSsoCookieVendorApi::new(),
384            stripe_api: stripe_api::MockStripeApi::new(),
385            sync_api: sync_api::MockSyncApi::new(),
386            teams_integration_api: teams_integration_api::MockTeamsIntegrationApi::new(),
387            trash_api: trash_api::MockTrashApi::new(),
388            two_factor_api: two_factor_api::MockTwoFactorApi::new(),
389            users_api: users_api::MockUsersApi::new(),
390            web_authn_api: web_authn_api::MockWebAuthnApi::new(),
391        };
392        func(&mut mock);
393        Self::Mock(mock)
394    }
395}
396
397impl ApiClient {
398    pub fn access_policies_api(&self) -> &dyn access_policies_api::AccessPoliciesApi {
399        match self {
400            ApiClient::Real(real) => &real.access_policies_api,
401            #[cfg(feature = "mockall")]
402            ApiClient::Mock(mock) => &mock.access_policies_api,
403        }
404    }
405    pub fn account_billing_v_next_api(
406        &self,
407    ) -> &dyn account_billing_v_next_api::AccountBillingVNextApi {
408        match self {
409            ApiClient::Real(real) => &real.account_billing_v_next_api,
410            #[cfg(feature = "mockall")]
411            ApiClient::Mock(mock) => &mock.account_billing_v_next_api,
412        }
413    }
414    pub fn accounts_api(&self) -> &dyn accounts_api::AccountsApi {
415        match self {
416            ApiClient::Real(real) => &real.accounts_api,
417            #[cfg(feature = "mockall")]
418            ApiClient::Mock(mock) => &mock.accounts_api,
419        }
420    }
421    pub fn accounts_billing_api(&self) -> &dyn accounts_billing_api::AccountsBillingApi {
422        match self {
423            ApiClient::Real(real) => &real.accounts_billing_api,
424            #[cfg(feature = "mockall")]
425            ApiClient::Mock(mock) => &mock.accounts_billing_api,
426        }
427    }
428    pub fn accounts_key_management_api(
429        &self,
430    ) -> &dyn accounts_key_management_api::AccountsKeyManagementApi {
431        match self {
432            ApiClient::Real(real) => &real.accounts_key_management_api,
433            #[cfg(feature = "mockall")]
434            ApiClient::Mock(mock) => &mock.accounts_key_management_api,
435        }
436    }
437    pub fn auth_requests_api(&self) -> &dyn auth_requests_api::AuthRequestsApi {
438        match self {
439            ApiClient::Real(real) => &real.auth_requests_api,
440            #[cfg(feature = "mockall")]
441            ApiClient::Mock(mock) => &mock.auth_requests_api,
442        }
443    }
444    pub fn ciphers_api(&self) -> &dyn ciphers_api::CiphersApi {
445        match self {
446            ApiClient::Real(real) => &real.ciphers_api,
447            #[cfg(feature = "mockall")]
448            ApiClient::Mock(mock) => &mock.ciphers_api,
449        }
450    }
451    pub fn collections_api(&self) -> &dyn collections_api::CollectionsApi {
452        match self {
453            ApiClient::Real(real) => &real.collections_api,
454            #[cfg(feature = "mockall")]
455            ApiClient::Mock(mock) => &mock.collections_api,
456        }
457    }
458    pub fn config_api(&self) -> &dyn config_api::ConfigApi {
459        match self {
460            ApiClient::Real(real) => &real.config_api,
461            #[cfg(feature = "mockall")]
462            ApiClient::Mock(mock) => &mock.config_api,
463        }
464    }
465    pub fn counts_api(&self) -> &dyn counts_api::CountsApi {
466        match self {
467            ApiClient::Real(real) => &real.counts_api,
468            #[cfg(feature = "mockall")]
469            ApiClient::Mock(mock) => &mock.counts_api,
470        }
471    }
472    pub fn devices_api(&self) -> &dyn devices_api::DevicesApi {
473        match self {
474            ApiClient::Real(real) => &real.devices_api,
475            #[cfg(feature = "mockall")]
476            ApiClient::Mock(mock) => &mock.devices_api,
477        }
478    }
479    pub fn emergency_access_api(&self) -> &dyn emergency_access_api::EmergencyAccessApi {
480        match self {
481            ApiClient::Real(real) => &real.emergency_access_api,
482            #[cfg(feature = "mockall")]
483            ApiClient::Mock(mock) => &mock.emergency_access_api,
484        }
485    }
486    pub fn events_api(&self) -> &dyn events_api::EventsApi {
487        match self {
488            ApiClient::Real(real) => &real.events_api,
489            #[cfg(feature = "mockall")]
490            ApiClient::Mock(mock) => &mock.events_api,
491        }
492    }
493    pub fn folders_api(&self) -> &dyn folders_api::FoldersApi {
494        match self {
495            ApiClient::Real(real) => &real.folders_api,
496            #[cfg(feature = "mockall")]
497            ApiClient::Mock(mock) => &mock.folders_api,
498        }
499    }
500    pub fn groups_api(&self) -> &dyn groups_api::GroupsApi {
501        match self {
502            ApiClient::Real(real) => &real.groups_api,
503            #[cfg(feature = "mockall")]
504            ApiClient::Mock(mock) => &mock.groups_api,
505        }
506    }
507    pub fn hibp_api(&self) -> &dyn hibp_api::HibpApi {
508        match self {
509            ApiClient::Real(real) => &real.hibp_api,
510            #[cfg(feature = "mockall")]
511            ApiClient::Mock(mock) => &mock.hibp_api,
512        }
513    }
514    pub fn import_ciphers_api(&self) -> &dyn import_ciphers_api::ImportCiphersApi {
515        match self {
516            ApiClient::Real(real) => &real.import_ciphers_api,
517            #[cfg(feature = "mockall")]
518            ApiClient::Mock(mock) => &mock.import_ciphers_api,
519        }
520    }
521    pub fn info_api(&self) -> &dyn info_api::InfoApi {
522        match self {
523            ApiClient::Real(real) => &real.info_api,
524            #[cfg(feature = "mockall")]
525            ApiClient::Mock(mock) => &mock.info_api,
526        }
527    }
528    pub fn installations_api(&self) -> &dyn installations_api::InstallationsApi {
529        match self {
530            ApiClient::Real(real) => &real.installations_api,
531            #[cfg(feature = "mockall")]
532            ApiClient::Mock(mock) => &mock.installations_api,
533        }
534    }
535    pub fn licenses_api(&self) -> &dyn licenses_api::LicensesApi {
536        match self {
537            ApiClient::Real(real) => &real.licenses_api,
538            #[cfg(feature = "mockall")]
539            ApiClient::Mock(mock) => &mock.licenses_api,
540        }
541    }
542    pub fn notifications_api(&self) -> &dyn notifications_api::NotificationsApi {
543        match self {
544            ApiClient::Real(real) => &real.notifications_api,
545            #[cfg(feature = "mockall")]
546            ApiClient::Mock(mock) => &mock.notifications_api,
547        }
548    }
549    pub fn organization_auth_requests_api(
550        &self,
551    ) -> &dyn organization_auth_requests_api::OrganizationAuthRequestsApi {
552        match self {
553            ApiClient::Real(real) => &real.organization_auth_requests_api,
554            #[cfg(feature = "mockall")]
555            ApiClient::Mock(mock) => &mock.organization_auth_requests_api,
556        }
557    }
558    pub fn organization_billing_api(
559        &self,
560    ) -> &dyn organization_billing_api::OrganizationBillingApi {
561        match self {
562            ApiClient::Real(real) => &real.organization_billing_api,
563            #[cfg(feature = "mockall")]
564            ApiClient::Mock(mock) => &mock.organization_billing_api,
565        }
566    }
567    pub fn organization_billing_v_next_api(
568        &self,
569    ) -> &dyn organization_billing_v_next_api::OrganizationBillingVNextApi {
570        match self {
571            ApiClient::Real(real) => &real.organization_billing_v_next_api,
572            #[cfg(feature = "mockall")]
573            ApiClient::Mock(mock) => &mock.organization_billing_v_next_api,
574        }
575    }
576    pub fn organization_connections_api(
577        &self,
578    ) -> &dyn organization_connections_api::OrganizationConnectionsApi {
579        match self {
580            ApiClient::Real(real) => &real.organization_connections_api,
581            #[cfg(feature = "mockall")]
582            ApiClient::Mock(mock) => &mock.organization_connections_api,
583        }
584    }
585    pub fn organization_domain_api(&self) -> &dyn organization_domain_api::OrganizationDomainApi {
586        match self {
587            ApiClient::Real(real) => &real.organization_domain_api,
588            #[cfg(feature = "mockall")]
589            ApiClient::Mock(mock) => &mock.organization_domain_api,
590        }
591    }
592    pub fn organization_export_api(&self) -> &dyn organization_export_api::OrganizationExportApi {
593        match self {
594            ApiClient::Real(real) => &real.organization_export_api,
595            #[cfg(feature = "mockall")]
596            ApiClient::Mock(mock) => &mock.organization_export_api,
597        }
598    }
599    pub fn organization_integration_api(
600        &self,
601    ) -> &dyn organization_integration_api::OrganizationIntegrationApi {
602        match self {
603            ApiClient::Real(real) => &real.organization_integration_api,
604            #[cfg(feature = "mockall")]
605            ApiClient::Mock(mock) => &mock.organization_integration_api,
606        }
607    }
608    pub fn organization_integration_configuration_api(
609        &self,
610    ) -> &dyn organization_integration_configuration_api::OrganizationIntegrationConfigurationApi
611    {
612        match self {
613            ApiClient::Real(real) => &real.organization_integration_configuration_api,
614            #[cfg(feature = "mockall")]
615            ApiClient::Mock(mock) => &mock.organization_integration_configuration_api,
616        }
617    }
618    pub fn organization_invite_links_api(
619        &self,
620    ) -> &dyn organization_invite_links_api::OrganizationInviteLinksApi {
621        match self {
622            ApiClient::Real(real) => &real.organization_invite_links_api,
623            #[cfg(feature = "mockall")]
624            ApiClient::Mock(mock) => &mock.organization_invite_links_api,
625        }
626    }
627    pub fn organization_reports_api(
628        &self,
629    ) -> &dyn organization_reports_api::OrganizationReportsApi {
630        match self {
631            ApiClient::Real(real) => &real.organization_reports_api,
632            #[cfg(feature = "mockall")]
633            ApiClient::Mock(mock) => &mock.organization_reports_api,
634        }
635    }
636    pub fn organization_sponsorships_api(
637        &self,
638    ) -> &dyn organization_sponsorships_api::OrganizationSponsorshipsApi {
639        match self {
640            ApiClient::Real(real) => &real.organization_sponsorships_api,
641            #[cfg(feature = "mockall")]
642            ApiClient::Mock(mock) => &mock.organization_sponsorships_api,
643        }
644    }
645    pub fn organization_users_api(&self) -> &dyn organization_users_api::OrganizationUsersApi {
646        match self {
647            ApiClient::Real(real) => &real.organization_users_api,
648            #[cfg(feature = "mockall")]
649            ApiClient::Mock(mock) => &mock.organization_users_api,
650        }
651    }
652    pub fn organizations_api(&self) -> &dyn organizations_api::OrganizationsApi {
653        match self {
654            ApiClient::Real(real) => &real.organizations_api,
655            #[cfg(feature = "mockall")]
656            ApiClient::Mock(mock) => &mock.organizations_api,
657        }
658    }
659    pub fn plans_api(&self) -> &dyn plans_api::PlansApi {
660        match self {
661            ApiClient::Real(real) => &real.plans_api,
662            #[cfg(feature = "mockall")]
663            ApiClient::Mock(mock) => &mock.plans_api,
664        }
665    }
666    pub fn policies_api(&self) -> &dyn policies_api::PoliciesApi {
667        match self {
668            ApiClient::Real(real) => &real.policies_api,
669            #[cfg(feature = "mockall")]
670            ApiClient::Mock(mock) => &mock.policies_api,
671        }
672    }
673    pub fn preview_invoice_api(&self) -> &dyn preview_invoice_api::PreviewInvoiceApi {
674        match self {
675            ApiClient::Real(real) => &real.preview_invoice_api,
676            #[cfg(feature = "mockall")]
677            ApiClient::Mock(mock) => &mock.preview_invoice_api,
678        }
679    }
680    pub fn projects_api(&self) -> &dyn projects_api::ProjectsApi {
681        match self {
682            ApiClient::Real(real) => &real.projects_api,
683            #[cfg(feature = "mockall")]
684            ApiClient::Mock(mock) => &mock.projects_api,
685        }
686    }
687    pub fn provider_billing_api(&self) -> &dyn provider_billing_api::ProviderBillingApi {
688        match self {
689            ApiClient::Real(real) => &real.provider_billing_api,
690            #[cfg(feature = "mockall")]
691            ApiClient::Mock(mock) => &mock.provider_billing_api,
692        }
693    }
694    pub fn provider_billing_v_next_api(
695        &self,
696    ) -> &dyn provider_billing_v_next_api::ProviderBillingVNextApi {
697        match self {
698            ApiClient::Real(real) => &real.provider_billing_v_next_api,
699            #[cfg(feature = "mockall")]
700            ApiClient::Mock(mock) => &mock.provider_billing_v_next_api,
701        }
702    }
703    pub fn provider_clients_api(&self) -> &dyn provider_clients_api::ProviderClientsApi {
704        match self {
705            ApiClient::Real(real) => &real.provider_clients_api,
706            #[cfg(feature = "mockall")]
707            ApiClient::Mock(mock) => &mock.provider_clients_api,
708        }
709    }
710    pub fn provider_organizations_api(
711        &self,
712    ) -> &dyn provider_organizations_api::ProviderOrganizationsApi {
713        match self {
714            ApiClient::Real(real) => &real.provider_organizations_api,
715            #[cfg(feature = "mockall")]
716            ApiClient::Mock(mock) => &mock.provider_organizations_api,
717        }
718    }
719    pub fn provider_users_api(&self) -> &dyn provider_users_api::ProviderUsersApi {
720        match self {
721            ApiClient::Real(real) => &real.provider_users_api,
722            #[cfg(feature = "mockall")]
723            ApiClient::Mock(mock) => &mock.provider_users_api,
724        }
725    }
726    pub fn providers_api(&self) -> &dyn providers_api::ProvidersApi {
727        match self {
728            ApiClient::Real(real) => &real.providers_api,
729            #[cfg(feature = "mockall")]
730            ApiClient::Mock(mock) => &mock.providers_api,
731        }
732    }
733    pub fn push_api(&self) -> &dyn push_api::PushApi {
734        match self {
735            ApiClient::Real(real) => &real.push_api,
736            #[cfg(feature = "mockall")]
737            ApiClient::Mock(mock) => &mock.push_api,
738        }
739    }
740    pub fn reports_api(&self) -> &dyn reports_api::ReportsApi {
741        match self {
742            ApiClient::Real(real) => &real.reports_api,
743            #[cfg(feature = "mockall")]
744            ApiClient::Mock(mock) => &mock.reports_api,
745        }
746    }
747    pub fn request_sm_access_api(&self) -> &dyn request_sm_access_api::RequestSmAccessApi {
748        match self {
749            ApiClient::Real(real) => &real.request_sm_access_api,
750            #[cfg(feature = "mockall")]
751            ApiClient::Mock(mock) => &mock.request_sm_access_api,
752        }
753    }
754    pub fn secret_versions_api(&self) -> &dyn secret_versions_api::SecretVersionsApi {
755        match self {
756            ApiClient::Real(real) => &real.secret_versions_api,
757            #[cfg(feature = "mockall")]
758            ApiClient::Mock(mock) => &mock.secret_versions_api,
759        }
760    }
761    pub fn secrets_api(&self) -> &dyn secrets_api::SecretsApi {
762        match self {
763            ApiClient::Real(real) => &real.secrets_api,
764            #[cfg(feature = "mockall")]
765            ApiClient::Mock(mock) => &mock.secrets_api,
766        }
767    }
768    pub fn secrets_manager_events_api(
769        &self,
770    ) -> &dyn secrets_manager_events_api::SecretsManagerEventsApi {
771        match self {
772            ApiClient::Real(real) => &real.secrets_manager_events_api,
773            #[cfg(feature = "mockall")]
774            ApiClient::Mock(mock) => &mock.secrets_manager_events_api,
775        }
776    }
777    pub fn secrets_manager_porting_api(
778        &self,
779    ) -> &dyn secrets_manager_porting_api::SecretsManagerPortingApi {
780        match self {
781            ApiClient::Real(real) => &real.secrets_manager_porting_api,
782            #[cfg(feature = "mockall")]
783            ApiClient::Mock(mock) => &mock.secrets_manager_porting_api,
784        }
785    }
786    pub fn security_task_api(&self) -> &dyn security_task_api::SecurityTaskApi {
787        match self {
788            ApiClient::Real(real) => &real.security_task_api,
789            #[cfg(feature = "mockall")]
790            ApiClient::Mock(mock) => &mock.security_task_api,
791        }
792    }
793    pub fn self_hosted_account_billing_v_next_api(
794        &self,
795    ) -> &dyn self_hosted_account_billing_v_next_api::SelfHostedAccountBillingVNextApi {
796        match self {
797            ApiClient::Real(real) => &real.self_hosted_account_billing_v_next_api,
798            #[cfg(feature = "mockall")]
799            ApiClient::Mock(mock) => &mock.self_hosted_account_billing_v_next_api,
800        }
801    }
802    pub fn self_hosted_organization_billing_v_next_api(
803        &self,
804    ) -> &dyn self_hosted_organization_billing_v_next_api::SelfHostedOrganizationBillingVNextApi
805    {
806        match self {
807            ApiClient::Real(real) => &real.self_hosted_organization_billing_v_next_api,
808            #[cfg(feature = "mockall")]
809            ApiClient::Mock(mock) => &mock.self_hosted_organization_billing_v_next_api,
810        }
811    }
812    pub fn self_hosted_organization_licenses_api(
813        &self,
814    ) -> &dyn self_hosted_organization_licenses_api::SelfHostedOrganizationLicensesApi {
815        match self {
816            ApiClient::Real(real) => &real.self_hosted_organization_licenses_api,
817            #[cfg(feature = "mockall")]
818            ApiClient::Mock(mock) => &mock.self_hosted_organization_licenses_api,
819        }
820    }
821    pub fn self_hosted_organization_sponsorships_api(
822        &self,
823    ) -> &dyn self_hosted_organization_sponsorships_api::SelfHostedOrganizationSponsorshipsApi {
824        match self {
825            ApiClient::Real(real) => &real.self_hosted_organization_sponsorships_api,
826            #[cfg(feature = "mockall")]
827            ApiClient::Mock(mock) => &mock.self_hosted_organization_sponsorships_api,
828        }
829    }
830    pub fn sends_api(&self) -> &dyn sends_api::SendsApi {
831        match self {
832            ApiClient::Real(real) => &real.sends_api,
833            #[cfg(feature = "mockall")]
834            ApiClient::Mock(mock) => &mock.sends_api,
835        }
836    }
837    pub fn service_accounts_api(&self) -> &dyn service_accounts_api::ServiceAccountsApi {
838        match self {
839            ApiClient::Real(real) => &real.service_accounts_api,
840            #[cfg(feature = "mockall")]
841            ApiClient::Mock(mock) => &mock.service_accounts_api,
842        }
843    }
844    pub fn settings_api(&self) -> &dyn settings_api::SettingsApi {
845        match self {
846            ApiClient::Real(real) => &real.settings_api,
847            #[cfg(feature = "mockall")]
848            ApiClient::Mock(mock) => &mock.settings_api,
849        }
850    }
851    pub fn slack_integration_api(&self) -> &dyn slack_integration_api::SlackIntegrationApi {
852        match self {
853            ApiClient::Real(real) => &real.slack_integration_api,
854            #[cfg(feature = "mockall")]
855            ApiClient::Mock(mock) => &mock.slack_integration_api,
856        }
857    }
858    pub fn sso_cookie_vendor_api(&self) -> &dyn sso_cookie_vendor_api::SsoCookieVendorApi {
859        match self {
860            ApiClient::Real(real) => &real.sso_cookie_vendor_api,
861            #[cfg(feature = "mockall")]
862            ApiClient::Mock(mock) => &mock.sso_cookie_vendor_api,
863        }
864    }
865    pub fn stripe_api(&self) -> &dyn stripe_api::StripeApi {
866        match self {
867            ApiClient::Real(real) => &real.stripe_api,
868            #[cfg(feature = "mockall")]
869            ApiClient::Mock(mock) => &mock.stripe_api,
870        }
871    }
872    pub fn sync_api(&self) -> &dyn sync_api::SyncApi {
873        match self {
874            ApiClient::Real(real) => &real.sync_api,
875            #[cfg(feature = "mockall")]
876            ApiClient::Mock(mock) => &mock.sync_api,
877        }
878    }
879    pub fn teams_integration_api(&self) -> &dyn teams_integration_api::TeamsIntegrationApi {
880        match self {
881            ApiClient::Real(real) => &real.teams_integration_api,
882            #[cfg(feature = "mockall")]
883            ApiClient::Mock(mock) => &mock.teams_integration_api,
884        }
885    }
886    pub fn trash_api(&self) -> &dyn trash_api::TrashApi {
887        match self {
888            ApiClient::Real(real) => &real.trash_api,
889            #[cfg(feature = "mockall")]
890            ApiClient::Mock(mock) => &mock.trash_api,
891        }
892    }
893    pub fn two_factor_api(&self) -> &dyn two_factor_api::TwoFactorApi {
894        match self {
895            ApiClient::Real(real) => &real.two_factor_api,
896            #[cfg(feature = "mockall")]
897            ApiClient::Mock(mock) => &mock.two_factor_api,
898        }
899    }
900    pub fn users_api(&self) -> &dyn users_api::UsersApi {
901        match self {
902            ApiClient::Real(real) => &real.users_api,
903            #[cfg(feature = "mockall")]
904            ApiClient::Mock(mock) => &mock.users_api,
905        }
906    }
907    pub fn web_authn_api(&self) -> &dyn web_authn_api::WebAuthnApi {
908        match self {
909            ApiClient::Real(real) => &real.web_authn_api,
910            #[cfg(feature = "mockall")]
911            ApiClient::Mock(mock) => &mock.web_authn_api,
912        }
913    }
914}