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