{"version":3,"file":"main.js","mappings":"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","sources":["./src/app/app-routing.module.ts","./src/app/app.component.ts","./src/app/app.module.ts","./src/app/application/application.service.ts","./src/app/authentication/auth-callback/auth-callback.component.ts","./src/app/authentication/auth-error/auth-error.component.ts","./src/app/authentication/auth.service.ts","./src/app/authentication/change-password/change-password.component.ts","./src/app/authentication/enforce-enrollment/enforce-enrollment.component.ts","./src/app/authentication/enforce-fido-enrollment/enforce-fido-enrollment.component.ts","./src/app/authentication/enforce-push-enrollment/enforce-push-enrollment.component.ts","./src/app/authentication/logout/logout.component.ts","./src/app/authentication/register-welcome/register-welcome.component.ts","./src/app/authentication/registration/email-compromised-modal/email-compromised-modal.ts","./src/app/authentication/registration/phone-validation-modal/phone-validation-modal.component.ts","./src/app/authentication/registration/policy-modal/policy-modal.component.ts","./src/app/authentication/registration/registration.component.ts","./src/app/authentication/security-questions/security-questions-answer/security-questions-answer.component.ts","./src/app/authentication/security-questions/security-questions-configure/security-questions-configure.component.ts","./src/app/authentication/security-questions/security-questions-container/security-questions-container.component.ts","./src/app/authentication/shared/shared-authentication.service.ts","./src/app/authentication/signin-redirect/signin-redirect.component.ts","./src/app/authentication/signin/signin.component.ts","./src/app/cloud/azure/custom.redirection.ts","./src/app/cloud/google-auth-iframe/google-auth-iframe.component.ts","./src/app/dashboard/dashboard.component.ts","./src/app/error/error.component.ts","./src/app/integration/agents/apikeys/password-compromised-modal/appikeys-confirm-modal.ts","./src/app/my-profile/password-compromised-modal/password-compromised-modal.ts","./src/app/mypplications/add-application-to-group-modal/add-application-to-group-modal.component.ts","./src/app/mypplications/delete-group-modal/delete-group-modal.component.ts","./src/app/mypplications/delete-my-app-group-application-modal/delete-my-app-group-application-modal.component.ts","./src/app/mypplications/edit-group-modal/edit-group-modal.component.ts","./src/app/mypplications/mypplications.component.ts","./src/app/mypplications/new-group-modal/new-group-modal.component.ts","./src/app/organization/licence/update-expired/update-expired.component.ts","./src/app/premises/syslog-client/syslog-client-form/syslog-client-form.component.ts","./src/app/premises/syslog-client/syslog-client.component.ts","./src/app/profile/profile.component.ts","./src/app/services/activitylogging/api.module.ts","./src/app/services/activitylogging/api/activityLogging.service.ts","./src/app/services/activitylogging/api/api.ts","./src/app/services/activitylogging/api/authenticationLogging.service.ts","./src/app/services/activitylogging/api/authenticationStats.service.ts","./src/app/services/activitylogging/api/migration.service.ts","./src/app/services/activitylogging/api/systemLogging.service.ts","./src/app/services/activitylogging/api/version.service.ts","./src/app/services/activitylogging/configuration.ts","./src/app/services/activitylogging/encoder.ts","./src/app/services/activitylogging/index.ts","./src/app/services/activitylogging/model/eSPageRequest.ts","./src/app/services/activitylogging/model/models.ts","./src/app/services/activitylogging/model/searchParameterBase.ts","./src/app/services/activitylogging/model/updateActivityLog.ts","./src/app/services/activitylogging/model/updateActivityLogClient.ts","./src/app/services/activitylogging/model/updateActivityLogClientGeographicalContext.ts","./src/app/services/activitylogging/model/updateActivityLogSecurity.ts","./src/app/services/activitylogging/model/updateActivityLogSecuritySystemContext.ts","./src/app/services/activitylogging/model/updateActivityLogSecurityUserContext.ts","./src/app/services/activitylogging/model/updateActivityLogsRequest.ts","./src/app/services/activitylogging/model/updateActivityLogsSecurityNotifiedAtRequest.ts","./src/app/services/activitylogging/param.ts","./src/app/services/activitylogging/variables.ts","./src/app/services/analytics/api.module.ts","./src/app/services/analytics/api/api.ts","./src/app/services/analytics/api/authentications.service.ts","./src/app/services/analytics/api/version.service.ts","./src/app/services/analytics/configuration.ts","./src/app/services/analytics/encoder.ts","./src/app/services/analytics/index.ts","./src/app/services/analytics/model/allLoginsModel.ts","./src/app/services/analytics/model/dashboardAuthenticatorEnrollmentViewModel.ts","./src/app/services/analytics/model/dashboardLoginsByApplicationViewModel.ts","./src/app/services/analytics/model/dashboardLoginsByAuthenticatorViewModel.ts","./src/app/services/analytics/model/dashboardLoginsViewModel.ts","./src/app/services/analytics/model/heatmapAnomalyCountCountryModel.ts","./src/app/services/analytics/model/heatmapAnomalyCountModel.ts","./src/app/services/analytics/model/heatmapLoginCountCountryModel.ts","./src/app/services/analytics/model/heatmapLoginCountModel.ts","./src/app/services/analytics/model/models.ts","./src/app/services/analytics/model/reportLoginViewModel.ts","./src/app/services/analytics/model/reportsUserEnrollmentViewModel.ts","./src/app/services/analytics/param.ts","./src/app/services/analytics/variables.ts","./src/app/services/anomalydetection/api.module.ts","./src/app/services/anomalydetection/api/api.ts","./src/app/services/anomalydetection/api/version.service.ts","./src/app/services/anomalydetection/configuration.ts","./src/app/services/anomalydetection/encoder.ts","./src/app/services/anomalydetection/index.ts","./src/app/services/anomalydetection/model/models.ts","./src/app/services/anomalydetection/param.ts","./src/app/services/anomalydetection/variables.ts","./src/app/services/common/activate-admin.service.ts","./src/app/services/common/activate-anonymous.service.ts","./src/app/services/common/activate-multitenant.service.ts","./src/app/services/common/activate-users.service.ts","./src/app/services/common/appsettings.model.ts","./src/app/services/common/appsettings.service.ts","./src/app/services/common/auth.interceptor.ts","./src/app/services/common/block-paste.directive.ts","./src/app/services/common/configuration.service.ts","./src/app/services/common/constant.service.ts","./src/app/services/common/has-permission-for-target.directive.ts","./src/app/services/common/has-permission.directive.ts","./src/app/services/common/has-permission.service.ts","./src/app/services/common/settings.service.ts","./src/app/services/common/validation.service.ts","./src/app/services/conditional-access/api.module.ts","./src/app/services/conditional-access/api/api.ts","./src/app/services/conditional-access/api/endpointAgents.service.ts","./src/app/services/conditional-access/api/fields.service.ts","./src/app/services/conditional-access/api/organization.service.ts","./src/app/services/conditional-access/api/policy.service.ts","./src/app/services/conditional-access/api/policyStats.service.ts","./src/app/services/conditional-access/api/tenantCleanup.service.ts","./src/app/services/conditional-access/api/validate.service.ts","./src/app/services/conditional-access/api/validationResults.service.ts","./src/app/services/conditional-access/api/version.service.ts","./src/app/services/conditional-access/configuration.ts","./src/app/services/conditional-access/encoder.ts","./src/app/services/conditional-access/index.ts","./src/app/services/conditional-access/model/endpointAgent.ts","./src/app/services/conditional-access/model/endpointAgentIpAddress.ts","./src/app/services/conditional-access/model/endpointAgentModel.ts","./src/app/services/conditional-access/model/endpointAgentPagedResult.ts","./src/app/services/conditional-access/model/loginDetails.ts","./src/app/services/conditional-access/model/models.ts","./src/app/services/conditional-access/model/organizationSettingsInputModel.ts","./src/app/services/conditional-access/model/pagedPolicyStatsViewModel.ts","./src/app/services/conditional-access/model/policyIdAndNameViewModel.ts","./src/app/services/conditional-access/model/policyStatViewModel.ts","./src/app/services/conditional-access/model/policyStatsFilterOptions.ts","./src/app/services/conditional-access/model/queryBuilderInputModel.ts","./src/app/services/conditional-access/model/queryBuilderRuleInputModel.ts","./src/app/services/conditional-access/model/stringStringKeyValuePair.ts","./src/app/services/conditional-access/model/validateReason.ts","./src/app/services/conditional-access/model/validationResultViewModel.ts","./src/app/services/conditional-access/param.ts","./src/app/services/conditional-access/variables.ts","./src/app/services/fileStore/api.module.ts","./src/app/services/fileStore/api/api.ts","./src/app/services/fileStore/api/fileStore.service.ts","./src/app/services/fileStore/api/version.service.ts","./src/app/services/fileStore/configuration.ts","./src/app/services/fileStore/encoder.ts","./src/app/services/fileStore/index.ts","./src/app/services/fileStore/model/models.ts","./src/app/services/fileStore/model/postFileVM.ts","./src/app/services/fileStore/model/updateFileInfoVM.ts","./src/app/services/fileStore/model/updateFileVM.ts","./src/app/services/fileStore/param.ts","./src/app/services/fileStore/variables.ts","./src/app/services/identity/api.module.ts","./src/app/services/identity/api/account.service.ts","./src/app/services/identity/api/api.ts","./src/app/services/identity/api/authenticationType.service.ts","./src/app/services/identity/api/certificate.service.ts","./src/app/services/identity/api/credentialReset.service.ts","./src/app/services/identity/api/hardwareToken.service.ts","./src/app/services/identity/api/legacySecurEnvoyApp.service.ts","./src/app/services/identity/api/loginHistory.service.ts","./src/app/services/identity/api/questionSecretAnswer.service.ts","./src/app/services/identity/api/redirect.service.ts","./src/app/services/identity/api/settings.service.ts","./src/app/services/identity/api/tenantCleanup.service.ts","./src/app/services/identity/api/userAuthCredential.service.ts","./src/app/services/identity/api/userCredential.service.ts","./src/app/services/identity/api/userSession.service.ts","./src/app/services/identity/api/userToken.service.ts","./src/app/services/identity/api/version.service.ts","./src/app/services/identity/configuration.ts","./src/app/services/identity/encoder.ts","./src/app/services/identity/index.ts","./src/app/services/identity/model/authenticationMethod.ts","./src/app/services/identity/model/authenticationMethodRadius.ts","./src/app/services/identity/model/authenticationTypeModel.ts","./src/app/services/identity/model/challengeReply.ts","./src/app/services/identity/model/createOrUpdateUserTokensModel.ts","./src/app/services/identity/model/credential.ts","./src/app/services/identity/model/credentialResetLimitPeriodType.ts","./src/app/services/identity/model/credentialResetMethodAppliesTo.ts","./src/app/services/identity/model/credentialResetMethodSendVia.ts","./src/app/services/identity/model/credentialResetMethodViewModel.ts","./src/app/services/identity/model/credentialResetSettingsViewModel.ts","./src/app/services/identity/model/hardwareTokenModel.ts","./src/app/services/identity/model/importAuthenticationTypeModel.ts","./src/app/services/identity/model/loginModel.ts","./src/app/services/identity/model/loginModelWithAssertion.ts","./src/app/services/identity/model/models.ts","./src/app/services/identity/model/oneStepLoginModel.ts","./src/app/services/identity/model/pushResponse.ts","./src/app/services/identity/model/radProtocol.ts","./src/app/services/identity/model/radiusAuthentication.ts","./src/app/services/identity/model/radiusCredential.ts","./src/app/services/identity/model/settingsModel.ts","./src/app/services/identity/model/skipPasswordSecret.ts","./src/app/services/identity/model/userCheckEnrollCodeModel.ts","./src/app/services/identity/model/userCredentialModel.ts","./src/app/services/identity/model/userGroupValidationModel.ts","./src/app/services/identity/model/userPostLoginModel.ts","./src/app/services/identity/model/userQuestionSecretAnswerModel.ts","./src/app/services/identity/model/userSessionViewModel.ts","./src/app/services/identity/model/wLAGroupType.ts","./src/app/services/identity/model/wLALoginModel.ts","./src/app/services/identity/model/wlaSettingsModel.ts","./src/app/services/identity/param.ts","./src/app/services/identity/variables.ts","./src/app/services/master/api.module.ts","./src/app/services/master/api/api.ts","./src/app/services/master/api/application.service.ts","./src/app/services/master/api/country.service.ts","./src/app/services/master/api/directory.service.ts","./src/app/services/master/api/downloads.service.ts","./src/app/services/master/api/employeeType.service.ts","./src/app/services/master/api/jobTitle.service.ts","./src/app/services/master/api/messageTemplate.service.ts","./src/app/services/master/api/predefinedAttribute.service.ts","./src/app/services/master/api/predefinedAttributeMapping.service.ts","./src/app/services/master/api/questionSecret.service.ts","./src/app/services/master/api/radiusService.service.ts","./src/app/services/master/api/releaseNotes.service.ts","./src/app/services/master/api/systemSetting.service.ts","./src/app/services/master/api/version.service.ts","./src/app/services/master/configuration.ts","./src/app/services/master/encoder.ts","./src/app/services/master/index.ts","./src/app/services/master/model/applicationModel.ts","./src/app/services/master/model/attributeMappingModel.ts","./src/app/services/master/model/messageTemplateModel.ts","./src/app/services/master/model/models.ts","./src/app/services/master/model/radiusServiceSettings.ts","./src/app/services/master/param.ts","./src/app/services/master/variables.ts","./src/app/services/migration/api.module.ts","./src/app/services/migration/api/api.ts","./src/app/services/migration/api/export.service.ts","./src/app/services/migration/api/import.service.ts","./src/app/services/migration/api/version.service.ts","./src/app/services/migration/configuration.ts","./src/app/services/migration/encoder.ts","./src/app/services/migration/index.ts","./src/app/services/migration/model/allData.ts","./src/app/services/migration/model/conditionalAccessData.ts","./src/app/services/migration/model/identityData.ts","./src/app/services/migration/model/importRequestModel.ts","./src/app/services/migration/model/models.ts","./src/app/services/migration/model/organizationData.ts","./src/app/services/migration/model/queryResult.ts","./src/app/services/migration/model/userData.ts","./src/app/services/migration/param.ts","./src/app/services/migration/variables.ts","./src/app/services/notification/api.module.ts","./src/app/services/notification/api/aDSync.service.ts","./src/app/services/notification/api/agent.service.ts","./src/app/services/notification/api/api.ts","./src/app/services/notification/api/version.service.ts","./src/app/services/notification/configuration.ts","./src/app/services/notification/encoder.ts","./src/app/services/notification/index.ts","./src/app/services/notification/model/apiKeyVerificationModel.ts","./src/app/services/notification/model/directoryConfiguration.ts","./src/app/services/notification/model/directoryType.ts","./src/app/services/notification/model/models.ts","./src/app/services/notification/model/radiusConfiguration.ts","./src/app/services/notification/model/userAuthenticationModel.ts","./src/app/services/notification/param.ts","./src/app/services/notification/variables.ts","./src/app/services/organization/api.module.ts","./src/app/services/organization/api/agent.service.ts","./src/app/services/organization/api/api.ts","./src/app/services/organization/api/applicationSetting.service.ts","./src/app/services/organization/api/attributeMapping.service.ts","./src/app/services/organization/api/attributeMetadata.service.ts","./src/app/services/organization/api/department.service.ts","./src/app/services/organization/api/deploymentDetail.service.ts","./src/app/services/organization/api/expression.service.ts","./src/app/services/organization/api/group.service.ts","./src/app/services/organization/api/groupApplication.service.ts","./src/app/services/organization/api/groupDirectory.service.ts","./src/app/services/organization/api/licence.service.ts","./src/app/services/organization/api/loggerSetting.service.ts","./src/app/services/organization/api/messageTemplate.service.ts","./src/app/services/organization/api/msp.service.ts","./src/app/services/organization/api/organization.service.ts","./src/app/services/organization/api/organizationApplication.service.ts","./src/app/services/organization/api/organizationDirectory.service.ts","./src/app/services/organization/api/organizationQuestionSecret.service.ts","./src/app/services/organization/api/organizationSetting.service.ts","./src/app/services/organization/api/radiusClient.service.ts","./src/app/services/organization/api/radiusMapping.service.ts","./src/app/services/organization/api/reports.service.ts","./src/app/services/organization/api/safeLocations.service.ts","./src/app/services/organization/api/securitySetting.service.ts","./src/app/services/organization/api/syncServiceHistory.service.ts","./src/app/services/organization/api/syslogClient.service.ts","./src/app/services/organization/api/tenantCleanup.service.ts","./src/app/services/organization/api/theme.service.ts","./src/app/services/organization/api/version.service.ts","./src/app/services/organization/api/windowsLogon.service.ts","./src/app/services/organization/configuration.ts","./src/app/services/organization/encoder.ts","./src/app/services/organization/index.ts","./src/app/services/organization/model/agentModel.ts","./src/app/services/organization/model/allowedGroupInfo.ts","./src/app/services/organization/model/applicationSettingModel.ts","./src/app/services/organization/model/attributeMappingModel.ts","./src/app/services/organization/model/attributeMetadataModel.ts","./src/app/services/organization/model/authenticationType.ts","./src/app/services/organization/model/automatedReportScheduleInputModel.ts","./src/app/services/organization/model/automatedReportScheduleViewModel.ts","./src/app/services/organization/model/billingType.ts","./src/app/services/organization/model/deltaLinkModel.ts","./src/app/services/organization/model/departmentModel.ts","./src/app/services/organization/model/directorySetting.ts","./src/app/services/organization/model/expressionModel.ts","./src/app/services/organization/model/getSettingsRequestModel.ts","./src/app/services/organization/model/gracePeriodType.ts","./src/app/services/organization/model/group.ts","./src/app/services/organization/model/groupApplication.ts","./src/app/services/organization/model/groupDirectory.ts","./src/app/services/organization/model/groupDirectoryModel.ts","./src/app/services/organization/model/groupModel.ts","./src/app/services/organization/model/groupType.ts","./src/app/services/organization/model/groupsApplications.ts","./src/app/services/organization/model/iPRange.ts","./src/app/services/organization/model/lastLoggedInUserMode.ts","./src/app/services/organization/model/licenceFeatures.ts","./src/app/services/organization/model/licenceModel.ts","./src/app/services/organization/model/licenceModelWithSource.ts","./src/app/services/organization/model/licenceSource.ts","./src/app/services/organization/model/licenceType.ts","./src/app/services/organization/model/loggerSettingModel.ts","./src/app/services/organization/model/membersDelta.ts","./src/app/services/organization/model/messageTemplateModel.ts","./src/app/services/organization/model/models.ts","./src/app/services/organization/model/mspChildReportViewModel.ts","./src/app/services/organization/model/mspGraphData.ts","./src/app/services/organization/model/mspReportViewModel.ts","./src/app/services/organization/model/mspReportViewModelPagedResult.ts","./src/app/services/organization/model/networkCheckModel.ts","./src/app/services/organization/model/networkPermissionModel.ts","./src/app/services/organization/model/organizationAndUserModel.ts","./src/app/services/organization/model/organizationApplicationModel.ts","./src/app/services/organization/model/organizationDirectoryModel.ts","./src/app/services/organization/model/organizationModel.ts","./src/app/services/organization/model/organizationQuestionSecretModel.ts","./src/app/services/organization/model/organizationQuestionSecretModelBinding.ts","./src/app/services/organization/model/organizationQuestionsModelBinding.ts","./src/app/services/organization/model/organizationSettingModel.ts","./src/app/services/organization/model/passbackAttribute.ts","./src/app/services/organization/model/problemDetails.ts","./src/app/services/organization/model/radiusAttributeMappingModel.ts","./src/app/services/organization/model/radiusAttributeVendorDel.ts","./src/app/services/organization/model/radiusClientModel.ts","./src/app/services/organization/model/radiusDirectoryInfo.ts","./src/app/services/organization/model/recordReportInputModel.ts","./src/app/services/organization/model/registrationResult.ts","./src/app/services/organization/model/removed.ts","./src/app/services/organization/model/safeLocationModel.ts","./src/app/services/organization/model/savedLoginCountsInputModel.ts","./src/app/services/organization/model/securitySettingModel.ts","./src/app/services/organization/model/smsAllowancePeriod.ts","./src/app/services/organization/model/syncServiceHistoryModel.ts","./src/app/services/organization/model/syslogClientModel.ts","./src/app/services/organization/model/themeModel.ts","./src/app/services/organization/model/timeSpan.ts","./src/app/services/organization/model/token.ts","./src/app/services/organization/model/userAuthenticationModel.ts","./src/app/services/organization/model/userModel.ts","./src/app/services/organization/model/userOrgModel.ts","./src/app/services/organization/model/wlaClientModel.ts","./src/app/services/organization/model/wlaGetSettingsModel.ts","./src/app/services/organization/model/wlaSetStatusModel.ts","./src/app/services/organization/param.ts","./src/app/services/organization/variables.ts","./src/app/services/report/api.module.ts","./src/app/services/report/api/api.ts","./src/app/services/report/api/reports.service.ts","./src/app/services/report/api/version.service.ts","./src/app/services/report/configuration.ts","./src/app/services/report/encoder.ts","./src/app/services/report/index.ts","./src/app/services/report/model/models.ts","./src/app/services/report/model/openApiGeneratorFixModel.ts","./src/app/services/report/param.ts","./src/app/services/report/variables.ts","./src/app/services/translate/custom.translate.loader.ts","./src/app/services/user/api.module.ts","./src/app/services/user/api/api.ts","./src/app/services/user/api/myAppGroup.service.ts","./src/app/services/user/api/myAppGroupApplication.service.ts","./src/app/services/user/api/password.service.ts","./src/app/services/user/api/syncUser.service.ts","./src/app/services/user/api/tenantCleanup.service.ts","./src/app/services/user/api/userAliases.service.ts","./src/app/services/user/api/userApplication.service.ts","./src/app/services/user/api/userCustomAttribute.service.ts","./src/app/services/user/api/userDirectory.service.ts","./src/app/services/user/api/userGroup.service.ts","./src/app/services/user/api/users.service.ts","./src/app/services/user/api/userstate.service.ts","./src/app/services/user/api/version.service.ts","./src/app/services/user/configuration.ts","./src/app/services/user/encoder.ts","./src/app/services/user/index.ts","./src/app/services/user/model/aDSyncDataModel.ts","./src/app/services/user/model/aDUpdateUniqueIdModel.ts","./src/app/services/user/model/changeType.ts","./src/app/services/user/model/directoryUser.ts","./src/app/services/user/model/directoryUserAttributeModel.ts","./src/app/services/user/model/forgetPasswordModel.ts","./src/app/services/user/model/groupApplicationModel.ts","./src/app/services/user/model/groupModel.ts","./src/app/services/user/model/linkUserModel.ts","./src/app/services/user/model/membersDelta.ts","./src/app/services/user/model/models.ts","./src/app/services/user/model/myAppGroupModel.ts","./src/app/services/user/model/recoveryEmailModel.ts","./src/app/services/user/model/removed.ts","./src/app/services/user/model/resetPasswordModel.ts","./src/app/services/user/model/userAddModel.ts","./src/app/services/user/model/userAliasModel.ts","./src/app/services/user/model/userAliasPatternErrorViewModel.ts","./src/app/services/user/model/userAliasPatternViewModel.ts","./src/app/services/user/model/userApplicationModel.ts","./src/app/services/user/model/userCredentialModel.ts","./src/app/services/user/model/userCustomAttributeModel.ts","./src/app/services/user/model/userDirectoryModel.ts","./src/app/services/user/model/userGroupModel.ts","./src/app/services/user/model/userModel.ts","./src/app/services/user/model/userOrgModel.ts","./src/app/services/user/model/usersGroups.ts","./src/app/services/user/param.ts","./src/app/services/user/variables.ts","./src/app/shared/breadcrumb/breadcrumb.component.ts","./src/app/shared/confirm-dialog/confirm-dialog.component.ts","./src/app/shared/confirm-dialog/confirm-dialog.module.ts","./src/app/shared/datatable/datatable.component.ts","./src/app/shared/enrollment/enrollment-container/enrollment-container.component.ts","./src/app/shared/footer/footer.component.ts","./src/app/shared/header/header.component.ts","./src/app/shared/pipes/filter.pipe.ts","./src/app/shared/row-detail/row-detail.component.ts","./src/app/shared/shared.module.ts","./src/app/shared/sidebar/sidebar.component.ts","./src/app/shared/styled-message/styled-message.component.ts","./src/app/shared/validators/custom-validators.ts","./src/app/system-status/directory-details/directory-details.component.ts","./src/app/system-status/system-details/system-details.component.ts","./src/app/system-status/system-status.component.ts","./src/app/user/admin-validation-modal/admin-validation-modal.ts","./src/app/whats-new/whats-new.component.ts","./src/environments/environment.prod.ts","./src/main.ts","./local_node_modules/ngx-intl-tel-input/fesm2020/ngx-intl-tel-input.mjs"],"sourcesContent":["import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { AuthCallbackComponent } from './authentication/auth-callback/auth-callback.component';\nimport { AuthErrorComponent } from './authentication/auth-error/auth-error.component';\nimport { ChangePasswordComponent } from './authentication/change-password/change-password.component';\nimport { EnforceEnrollmentComponent } from './authentication/enforce-enrollment/enforce-enrollment.component';\nimport { EnforceFidoEnrollmentComponent } from './authentication/enforce-fido-enrollment/enforce-fido-enrollment.component';\nimport { EnforcePushEnrollmentComponent } from './authentication/enforce-push-enrollment/enforce-push-enrollment.component';\nimport { LogoutComponent } from './authentication/logout/logout.component';\nimport { RegisterWelcomeComponent } from './authentication/register-welcome/register-welcome.component';\nimport { RegistrationComponent } from './authentication/registration/registration.component';\nimport { SecurityQuestionsContainerComponent } from './authentication/security-questions/security-questions-container/security-questions-container.component';\nimport { SigninRedirectComponent } from './authentication/signin-redirect/signin-redirect.component';\nimport { SigninComponent } from './authentication/signin/signin.component';\nimport { AzureCustomRedirectionComponent } from './cloud/azure/custom.redirection';\nimport { GoogleAuthIframeComponent } from './cloud/google-auth-iframe/google-auth-iframe.component';\nimport { DashboardComponent } from './dashboard/dashboard.component';\nimport { ErrorComponent } from './error/error.component';\nimport { MyApplicationsComponent } from './mypplications/mypplications.component';\nimport { UpdateExpiredComponent } from './organization/licence/update-expired/update-expired.component';\nimport { ProfileComponent } from './profile/profile.component';\nimport { ActivateAdmin } from './services/common/activate-admin.service';\nimport { ActivateAnonymous } from './services/common/activate-anonymous.service';\nimport { ActivateUsers } from './services/common/activate-users.service';\nimport { StyledMessageComponent } from './shared/styled-message/styled-message.component';\nimport { SystemStatusComponent } from './system-status/system-status.component';\nimport { WhatsNewComponent } from './whats-new/whats-new.component';\nimport { ActivateMultiTenant } from './services/common/activate-multitenant.service';\n\nconst routes: Routes = [\n { path: '', component: SigninComponent, canActivate: [ActivateAnonymous] },\n { path: 'auth-callback', component: AuthCallbackComponent, canActivate: [ActivateAnonymous] },\n //{ path: 'silent-refresh', component: SilentRefreshComponent, canActivate: [ActivateAnonymous] },\n { path: 'login', component: SigninComponent, canActivate: [ActivateAnonymous] },\n { path: 'signin', component: SigninRedirectComponent, canActivate: [ActivateAnonymous] },\n { path: 'change-password', component: SigninRedirectComponent, canActivate: [ActivateAnonymous] },\n { path: 'enforce-enrollment', component: EnforceEnrollmentComponent, canActivate: [ActivateAnonymous] },\n { path: 'verify-user/:isAskAnswer/:isChangePass', component: SecurityQuestionsContainerComponent, canActivate: [ActivateAnonymous] },\n { path: 'enforce-push/:type/:isSecondFactor', component: EnforcePushEnrollmentComponent, canActivate: [ActivateAnonymous] },\n { path: 'enforce-fido/:sequence/:isEnforcedSecondFactor', component: EnforceFidoEnrollmentComponent, canActivate: [ActivateAnonymous] },\n { path: 'auth/register', component: RegistrationComponent, canActivate: [ActivateAnonymous, ActivateMultiTenant] },\n { path: 'auth/register-welcome', component: RegisterWelcomeComponent, canActivate: [ActivateAnonymous, ActivateMultiTenant] },\n { path: 'auth/change-password', component: ChangePasswordComponent, canActivate: [ActivateAnonymous] },\n { path: 'auth/change-password/:isSecondFactor', component: ChangePasswordComponent, canActivate: [ActivateAnonymous] },\n { path: 'auth/change-password/:sequence/:isSecondFactor', component: ChangePasswordComponent, canActivate: [ActivateAnonymous] },\n { path: 'auth/logout', component: LogoutComponent, canActivate: [ActivateAnonymous] },\n { path: 'azure-redirect', component: AzureCustomRedirectionComponent, canActivate: [ActivateAnonymous] },\n\n { path: 'myapplications', component: MyApplicationsComponent, data: { title: 'Menu.MyApplications' }, canActivate: [ActivateUsers] },\n { path: 'system-status', component: SystemStatusComponent, data: { title: 'Menu.SystemStatus' }, canActivate: [ActivateUsers] },\n { path: 'profile', component: ProfileComponent, data: { title: 'Menu.MyProfile' }, canActivate: [ActivateUsers] },\n { path: 'my-profile', loadChildren: () => import('./my-profile/my-profile.module').then((m) => m.MyProfileModule), data: { title: 'Menu.MyProfile'}, canActivate: [ActivateUsers]},\n { path: 'my-profile/:tab', loadChildren: () => import('./my-profile/my-profile.module').then((m) => m.MyProfileModule), data: { title: 'Menu.MyProfile'}, canActivate: [ActivateUsers]},\n { path: 'organization', loadChildren: () => import('./organization/organization.module').then((m) => m.OrganizationModule), data: { title: 'Menu.MSP.Organizations' }, canActivate: [ActivateUsers] },\n { path: 'organization/licence/update/:method/:orgName', component: UpdateExpiredComponent, data: { title: 'Organization.UpdateLicence' }, canActivate: [ActivateAnonymous] },\n { path: 'theme', loadChildren: () => import('./theme/theme.module').then((m) => m.ThemeModule), data: { title: 'Menu.Setup'}, canActivate: [ActivateUsers] },\n { path: 'auth-error', component: AuthErrorComponent, data: { title: 'Authentication.Error' }, canActivate: [ActivateUsers] },\n { path: 'error', component: ErrorComponent, data: { title: 'General.Error' }, canActivate: [ActivateUsers] },\n\n { path: 'dashboard', component: DashboardComponent, data: { title: 'Menu.Dashboard' }, canActivate: [ActivateAdmin] },\n { path: 'setup', loadChildren: () => import('./setup/setup.module').then((m) => m.SetupModule), data: { title: 'Menu.Setup' }, canActivate: [ActivateAdmin] },\n { path: 'integration', loadChildren: () => import('./integration/integration.module').then((m) => m.IntegrationModule), data: { title: 'Menu.Integration' }, canActivate: [ActivateAdmin] },\n { path: 'license', loadChildren: () => import('./setup/setup.module').then((m) => m.SetupModule), data: { title: 'Menu.License' }, canActivate: [ActivateAdmin] },\n { path: 'application', loadChildren: () => import('./application/application.module').then((m) => m.ApplicationModule), data: { title: 'Menu.Management' } , canActivate: [ActivateAdmin]},\n { path: 'reports', loadChildren: () => import('./reports/reports.module').then((m) => m.ReportsModule), data: { title: 'Menu.Reports' }, canActivate: [ActivateAdmin] },\n { path: 'conditional-access', loadChildren: () => import('./conditional-access/conditional-access.module').then((m) => m.ConditionalAccessModule), data: { title: 'Menu.Management' }, canActivate: [ActivateAdmin] },\n { path: 'credential-reset', loadChildren: () => import('./credential-reset/credential-reset.module').then((m) => m.CredentialResetModule), data: { title: 'Menu.CredentialReset' }, canActivate: [ActivateAdmin] },\n { path: 'cloud', loadChildren: () => import('./cloud/directory.module').then(m => m.CloudModule), data: { title: 'Menu.Integration' }, canActivate: [ActivateAdmin] },\n { path: 'premises', loadChildren: () => import('./premises/premises.module').then(m => m.PremisesModule), data: { title: 'Menu.Integration' }, canActivate: [ActivateAdmin] },\n { path: 'cloud/azure/custom-redirection', component: AzureCustomRedirectionComponent, canActivate: [ActivateAnonymous] },\n { path: 'cloud/google/auth-iframe', component: GoogleAuthIframeComponent, canActivate: [ActivateAnonymous] },\n\n { path: 'monitoring', loadChildren: () => import('./monitoring/monitoring.module').then((m) => m.MonitoringModule), data: { title: 'Menu.Monitoring' }, canActivate: [ActivateAdmin] },\n { path: 'download', loadChildren: () => import('./download/download.module').then(m => m.DownloadModule), data: { title: 'Menu.Downloads'}, canActivate: [ActivateAdmin]},\n { path: 'users', loadChildren: () => import('./user/user.module').then((m) => m.UserModule), data: { title: 'Menu.Management'}, canActivate: [ActivateAdmin] },\n { path: 'activity', loadChildren: () => import('./user/user.module').then((m) => m.UserModule), data: { title: 'Menu.Management'}, canActivate: [ActivateUsers] },\n { path: 'groups', loadChildren: () => import('./group/group.module').then((m) => m.GroupModule), data: { title: 'Menu.Management' }, canActivate: [ActivateAdmin] },\n { path: 'tutorials', loadChildren: () => import('./tutorials/tutorials.module').then(m => m.TutorialsModule), data: { title: 'Menu.Tutorials' }, canActivate: [ActivateAdmin] },\n { path: 'whats-new', component: WhatsNewComponent, data: { title: 'Menu.WhatsNew' }, canActivate: [ActivateUsers] },\n\n { path: 'styled-message/:message', component: StyledMessageComponent },\n\n //{ path: '**', component: SigninComponent, canActivate: [ActivateAnonymous] },\n\n // to delete them before release - just enable for testing\n //{ path: 'form', loadChildren: () => import('./form/form.module').then((m) => m.FormModule) },\n //{ path: 'charts', loadChildren: () => import('./charts/charts.module').then((m) => m.ChartsDemoModule) },\n\n];\n\n@NgModule({\n imports: [\n RouterModule.forRoot(routes, {\n onSameUrlNavigation: 'reload',\n }),\n ],\n exports: [RouterModule],\n})\nexport class AppRoutingModule { }\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { Title } from '@angular/platform-browser';\nimport { NavigationStart, Router } from '@angular/router';\nimport { DEFAULT_INTERRUPTSOURCES, Idle } from '@ng-idle/core';\nimport { TranslateService } from '@ngx-translate/core';\nimport { CookieService } from 'ngx-cookie-service';\nimport { interval, Observable, Subscription } from 'rxjs';\nimport { environment } from 'src/environments/environment';\nimport { AuthService } from './authentication/auth.service';\nimport { SharedAuthenticationService } from './authentication/shared/shared-authentication.service';\nimport { AppSettingsService } from './services/common/appsettings.service';\nimport { ConstantService } from './services/common/constant.service';\nimport { UserSessionService } from './services/identity';\nimport { ThemeModel, ThemeService } from './services/organization';\n\n@Component({\n selector: 'app-root',\n templateUrl: './app.component.html',\n styleUrls: ['./app.component.scss']\n})\nexport class AppComponent implements OnInit, OnDestroy {\n\n showRouter: boolean = false;\n showHeader: boolean = true;\n showFooter: boolean = true;\n loadingLang: boolean = true;\n themeModel: ThemeModel = {};\n\n exactRoutesWithoutPageDecorations: string[] = [\n '/', '/login', '/signin', '/auth-error', '/auth/register'\n ]\n\n startsWithRoutesWithoutPageDecorations: string[] = [\n '/auth/logout', '/auth-callback', '/auth/register-welcome', '/auth/change-password',\n '/verify-user', '/enforce-push', '/enforce-fido', '/cloud/azure/custom-redirection', '/enforce-enrollment', '/styled-message',\n '/organization/licence/update',\n ]\n\n private activeTimer: Subscription;\n\n constructor(private router: Router,\n private translate: TranslateService,\n public authService: AuthService,\n private title: Title,\n private themeService: ThemeService,\n private sharedService: SharedAuthenticationService,\n private constantService: ConstantService,\n public appSettings: AppSettingsService,\n private cookieService: CookieService,\n private userSessionService: UserSessionService,\n private idle: Idle) {\n\n // Removing Sidebar, Navbar, Footer for Documentation, Error and Auth pages\n router.events.forEach((event: any) => {\n\n\n if (event instanceof NavigationStart) {\n\n if (this.exactRoutesWithoutPageDecorations.indexOf(event['url']) != -1) {\n this.showHeader = false;\n this.showFooter = false;\n\n } else if (this.startsWithRoutesWithoutPageDecorations.some(x => event['url'].startsWith(x))) {\n this.showHeader = false;\n this.showFooter = false;\n }\n else {\n const data = sessionStorage.getItem('dataconf') ;\n if (data!= '' && data != null && data != undefined) {\n return this.router?.navigate(JSON.parse(data));\n } else {\n this.showHeader = true;\n this.showFooter = true;\n\n }\n }\n\n\n if (window.matchMedia('(max-width: 991px)').matches) {\n document.querySelector('body')!.classList.remove('az-sidebar-show');\n }\n }\n });\n\n\n }\n ngOnDestroy(): void {\n this.activeTimer.unsubscribe();\n }\n\n async ngOnInit() {\n\n this.configureIdle();\n\n // handle admin toggling for reload behavior\n if (this.cookieService.check('loadStatus')) {\n this.appSettings.settings.adminMenu = true;\n this.cookieService.delete('loadStatus');\n }\n window.addEventListener('beforeunload', () => {\n if (this.appSettings.settings.adminMenu) {\n const expires = new Date();\n expires.setSeconds(expires.getSeconds() + 5);\n this.cookieService.set('loadStatus', 'true', expires);\n }\n });\n // end handle admin toggling for reload behavior\n\n await this.getLocalSettings();\n this.title.setTitle(this.constantService.showOrgName);\n this.getTheme();\n this.checkUri();\n ;\n this.activeTimer = interval(60 * 1000).subscribe(() => {\n if (!this.idle.isIdling()) {\n this.updateActive();\n }\n })\n\n }\n\n checkUri(): void {\n if (environment.production) {\n let publicUrl = environment.publicUrl;\n if (publicUrl.startsWith('.')) {\n publicUrl = publicUrl.substring(1);\n }\n if (window.location.hostname.indexOf(publicUrl) == -1) {\n const orgName = this.constantService.getSubdomain();\n window.location.hostname = `${orgName}.${publicUrl}`;\n }\n }\n }\n\n private async getLocalSettings() {\n\n await this.authService.loadLanguages();\n\n if (window.location.pathname == '/') {\n this.authService.redirectUser();\n }\n // navbar backdrop for mobile only\n const navbarBackdrop = document.createElement('div');\n navbarBackdrop.classList.add('az-navbar-backdrop');\n document.querySelector('body')!.appendChild(navbarBackdrop);\n navbarBackdrop.addEventListener('click', () => {\n document.querySelector('body')!.classList.toggle('az-sidebar-show');\n });\n\n this.loadingLang = false;\n }\n\n private getTheme() {\n this.themeService.apiThemeThemeMnemonicGet(this.constantService.getSubdomain(false)).subscribe({\n next: (result) => {\n let obj;\n //obj = {\n // \"theme-color-primary\": result?.['primaryColor'] ?? '#262C68',\n // \"theme-color-secondary\": result?.['secondaryColor'] ?? '#17C8E5'\n //}\n obj = {\n \"theme-color-primary\": '#262C68',\n \"theme-color-secondary\": '#17C8E5'\n }\n this.setTheme(obj);\n\n if (result?.isTheme) {\n this.setImage(result);\n this.constantService.setSessionStorage(result);\n this.setFavIcon(result.favicon);\n this.constantService.showOrgName = result['organizationName'] ?? \"SecurEnvoy\";\n }\n this.showRouter = true;\n },\n error: (err) => {\n console.log('===> theme error', err);\n this.showRouter = true;\n this.router.navigateByUrl('/error');\n },\n complete: () => {\n }\n });\n }\n\n private setTheme(theme: {}) {\n Object.keys(theme).forEach(k =>\n document.documentElement.style.setProperty(`--${k}`, theme[k])\n );\n }\n\n private setImage(data) {\n\n for (const property in this.themeModel) {\n if (data[property]) {\n data[property] = environment.filestore + '/Filestore/GetImageByID/' + data[property];\n }\n }\n }\n\n setFavIcon(data) {\n if (data) {\n document.getElementById(\"favIcon\").setAttribute(\"href\", environment.filestore + '/Filestore/GetImageByID/' + data);\n }\n }\n\n private configureIdle() {\n this.idle.setIdle(5 * 60);\n this.idle.setTimeout(8 * 60 * 60);\n this.idle.setInterrupts(DEFAULT_INTERRUPTSOURCES);\n\n this.idle.watch();\n this.idle.onIdleStart.subscribe(() => {\n\n });\n\n this.idle.onIdleEnd.subscribe(() => {\n this.updateActive();\n });\n\n this.idle.onTimeout.subscribe(() => {\n this.authService.signOut();\n });\n\n }\n\n private updateActive() {\n const orgId = this.authService.user?.profile.organizationId ?? this.authService.user?.profile.OrganizationId;\n if (this.authService.sessionId && orgId) {\n this.userSessionService.apiUserSessionUpdateLastActiveOrganizationIdUserIdSessionIdPut(orgId, Number(this.authService.id), this.authService.sessionId).subscribe(data => {\n });\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { BrowserModule } from '@angular/platform-browser';\n\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\n\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\nimport { NgChartsModule } from 'ng2-charts';\nimport { NgxMapboxGLModule } from 'ngx-mapbox-gl';\nimport { AppRoutingModule } from './app-routing.module';\nimport { AppComponent } from './app.component';\nimport { DashboardComponent } from './dashboard/dashboard.component';\nimport { FooterComponent } from './shared/footer/footer.component';\nimport { HeaderComponent } from './shared/header/header.component';\nimport { SidebarComponent } from './shared/sidebar/sidebar.component';\n\nimport { PERFECT_SCROLLBAR_CONFIG, PerfectScrollbarConfigInterface, PerfectScrollbarModule } from 'ngx-perfect-scrollbar';\n\nimport {\n HTTP_INTERCEPTORS,\n HttpClient,\n HttpClientModule\n} from '@angular/common/http';\nimport { ApiModule as ActivityLoggingApiModule } from './services/activitylogging';\nimport { ApiModule as AnalyticsApiModule } from './services/analytics';\nimport {\n apiActivitylogging, apiAnalytics, apiConditionalAccess, apiFileStore, apiIdentity, apiMaster, apiMigration, apiNotification, apiOrganization, apiReport, apiUser, apiAnomalyDetection\n} from './services/common/configuration.service';\nimport { ApiModule as ConditionalAccessApiModule } from './services/conditional-access';\nimport { ApiModule as FileStoreApiModule } from './services/fileStore';\nimport { ApiModule as IdentityApiModule } from './services/identity';\nimport { ApiModule as MasterApiModule } from './services/master';\nimport { ApiModule as MigrationApiModule } from './services/migration';\nimport { ApiModule as NotificationApiModule } from './services/notification';\nimport { ApiModule as OrganizationApiModule } from './services/organization';\nimport { ApiModule as ReportApiModule } from './services/report';\nimport {ApiModule as AnomalyDetectionApiModule } from './services/anomalydetection';\nimport { CustomTranslateLoader } from './services/translate/custom.translate.loader';\nimport { ApiModule as ApiUserModule } from './services/user';\n\n\nimport '@angular/common/locales/global/ar';\nimport '@angular/common/locales/global/de';\nimport '@angular/common/locales/global/es';\nimport '@angular/common/locales/global/fr';\nimport { AppSettingsService } from './services/common/appsettings.service';\n\nimport { APP_BASE_HREF, CommonModule, DatePipe } from '@angular/common';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { NgSelectModule } from '@ng-select/ng-select';\nimport { DataTablesModule } from 'angular-datatables';\nimport { ToastrModule } from 'ngx-toastr';\nimport { AuthService } from './authentication/auth.service';\nimport { LogoutComponent } from './authentication/logout/logout.component';\nimport { SigninComponent } from './authentication/signin/signin.component';\nimport { MyApplicationsComponent } from './mypplications/mypplications.component';\nimport { AuthInterceptor } from './services/common/auth.interceptor';\nimport { SettingsService } from './services/common/settings.service';\nimport { BreadCrumbComponent } from './shared/breadcrumb/breadcrumb.component';\nimport { SystemStatusComponent } from './system-status/system-status.component';\nimport { WhatsNewComponent } from './whats-new/whats-new.component';\n\n//Management - Groups\nimport { RecaptchaFormsModule, RecaptchaModule } from \"ng-recaptcha\";\nimport { NgxIntlTelInputModule } from '../../local_node_modules/ngx-intl-tel-input';\nimport { ChangePasswordComponent } from './authentication/change-password/change-password.component';\nimport { RegisterWelcomeComponent } from './authentication/register-welcome/register-welcome.component';\nimport { PolicyModalComponent } from './authentication/registration/policy-modal/policy-modal.component';\nimport { RegistrationComponent } from './authentication/registration/registration.component';\n\nimport { NgxQRCodeModule } from '@techiediaries/ngx-qrcode';\nimport { LaddaModule } from 'angular2-ladda';\n\nimport { CookieService } from 'ngx-cookie-service';\nimport { EnforceEnrollmentComponent } from './authentication/enforce-enrollment/enforce-enrollment.component';\nimport { EnforceFidoEnrollmentComponent } from './authentication/enforce-fido-enrollment/enforce-fido-enrollment.component';\nimport { EnforcePushEnrollmentComponent } from './authentication/enforce-push-enrollment/enforce-push-enrollment.component';\nimport { SecurityQuestionsAnswerComponent } from './authentication/security-questions/security-questions-answer/security-questions-answer.component';\nimport { SecurityQuestionsConfigureComponent } from './authentication/security-questions/security-questions-configure/security-questions-configure.component';\nimport { SecurityQuestionsContainerComponent } from './authentication/security-questions/security-questions-container/security-questions-container.component';\nimport { SharedModule } from './shared/shared.module';\n\n//Google Map - \nimport { GoogleMapsModule } from '@angular/google-maps';\nimport { AddApplicationToGroupModalComponent } from './mypplications/add-application-to-group-modal/add-application-to-group-modal.component';\nimport { DeleteGroupModalComponent } from './mypplications/delete-group-modal/delete-group-modal.component';\nimport { DeleteMyAppGroupApplicationModalComponent } from './mypplications/delete-my-app-group-application-modal/delete-my-app-group-application-modal.component';\nimport { EditGroupModalComponent } from './mypplications/edit-group-modal/edit-group-modal.component';\nimport { NewGroupModalComponent } from './mypplications/new-group-modal/new-group-modal.component';\n\n//modal\nimport { PhoneValidationModal } from './authentication/registration/phone-validation-modal/phone-validation-modal.component';\nimport { APIKeysConfirmModal } from './integration/agents/apikeys/password-compromised-modal/appikeys-confirm-modal';\nimport { AdminValidationModal } from './user/admin-validation-modal/admin-validation-modal';\n\nimport { NgIdleModule } from '@ng-idle/core';\nimport { TreeviewModule } from 'ngx-treeview';\nimport { SyslogClientFormComponent } from './premises/syslog-client/syslog-client-form/syslog-client-form.component';\nimport { SyslogClientComponent } from './premises/syslog-client/syslog-client.component';\nimport { DirectoryDetailsComponent } from './system-status/directory-details/directory-details.component';\nimport { SystemDetailsComponent } from './system-status/system-details/system-details.component';\n\nconst DEFAULT_PERFECT_SCROLLBAR_CONFIG: PerfectScrollbarConfigInterface = {\n suppressScrollX: true,\n};\n\n@NgModule({\n declarations: [\n AppComponent,\n HeaderComponent,\n FooterComponent,\n BreadCrumbComponent,\n SidebarComponent,\n DashboardComponent,\n MyApplicationsComponent,\n SystemStatusComponent,\n SigninComponent,\n LogoutComponent,\n RegistrationComponent,\n PolicyModalComponent,\n RegisterWelcomeComponent,\n ChangePasswordComponent,\n SecurityQuestionsContainerComponent,\n SecurityQuestionsConfigureComponent,\n SecurityQuestionsAnswerComponent,\n EnforcePushEnrollmentComponent,\n EnforceEnrollmentComponent,\n NewGroupModalComponent,\n EditGroupModalComponent,\n AddApplicationToGroupModalComponent,\n DeleteGroupModalComponent,\n DeleteMyAppGroupApplicationModalComponent,\n EnforceFidoEnrollmentComponent,\n AdminValidationModal,\n PhoneValidationModal,\n APIKeysConfirmModal,\n WhatsNewComponent,\n SystemDetailsComponent,\n DirectoryDetailsComponent,\n SyslogClientComponent,\n SyslogClientFormComponent\n ],\n imports: [\n TreeviewModule.forRoot(),\n HttpClientModule,\n BrowserModule,\n CommonModule,\n MasterApiModule.forRoot(() => apiMaster()),\n AnalyticsApiModule.forRoot(() => apiAnalytics()),\n ApiUserModule.forRoot(() => apiUser()),\n FileStoreApiModule.forRoot(() => apiFileStore()),\n ActivityLoggingApiModule.forRoot(() => apiActivitylogging()),\n NotificationApiModule.forRoot(() => apiNotification()),\n IdentityApiModule.forRoot(() => apiIdentity()),\n OrganizationApiModule.forRoot(() => apiOrganization()),\n ConditionalAccessApiModule.forRoot(() => apiConditionalAccess()),\n MigrationApiModule.forRoot(() => apiMigration()),\n ReportApiModule.forRoot(() => apiReport()),\n AnomalyDetectionApiModule.forRoot(() => apiAnomalyDetection()),\n FormsModule,\n ReactiveFormsModule,\n SettingsService,\n AppRoutingModule,\n NgbModule,\n NgChartsModule,\n NgxQRCodeModule,\n RecaptchaModule,\n RecaptchaFormsModule,\n NgSelectModule,\n NgxIntlTelInputModule,\n DataTablesModule,\n PerfectScrollbarModule,\n BrowserAnimationsModule,\n SharedModule,\n GoogleMapsModule,\n LaddaModule.forRoot({\n style: 'expand-left',\n spinnerSize: 30,\n spinnerColor: 'white',\n spinnerLines: 12\n }),\n ToastrModule.forRoot({\n timeOut: 3000, // 5 seconds\n closeButton: true,\n progressBar: true,\n }),\n TranslateModule.forRoot({\n loader: {\n provide: TranslateLoader,\n useClass: CustomTranslateLoader,\n deps: [HttpClient],\n },\n }),\n NgxMapboxGLModule.withConfig({\n accessToken: 'TOKEN', // Optionnal, can also be set per map (accessToken input of mgl-map)\n\n //this line below seems not working in new version of ngx-mapbox-gl library\n //geocoderAccessToken: 'TOKEN' // Optionnal, specify if different from the map access token, can also be set per mgl-geocoder (accessToken input of mgl-geocoder)\n }),\n NgIdleModule.forRoot()\n \n ],\n providers: [\n { provide: APP_BASE_HREF, useValue: '/' },\n AuthService,\n AppSettingsService,\n {\n provide: PERFECT_SCROLLBAR_CONFIG,\n useValue: DEFAULT_PERFECT_SCROLLBAR_CONFIG,\n },\n { provide: HTTP_INTERCEPTORS, useClass: AuthInterceptor, multi: true },\n CookieService,\n DatePipe\n ],\n bootstrap: [AppComponent],\n})\nexport class AppModule { }\n","import { Injectable } from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\nimport { CustomApplicationModel } from './application.model';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ApplicationStateService {\n applicationModel = {} as CustomApplicationModel;\n myApplicationState = { pageSize: 5, curPage: 1 };\n createdApplicationModel$: BehaviorSubject =\n new BehaviorSubject({} as CustomApplicationModel);\n metadata$: BehaviorSubject<{}> = new BehaviorSubject({});\n constructor() {}\n}\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\n\nimport { Subscription } from 'rxjs';\nimport { ConstantService } from 'src/app/services/common/constant.service';\n\nimport { UserCredentialService } from 'src/app/services/identity';\nimport { AuthService } from '../auth.service';\n\n@Component({\n selector: 'app-auth-callback',\n templateUrl: './auth-callback.component.html',\n styleUrls: ['./auth-callback.component.scss']\n})\nexport class AuthCallbackComponent implements OnInit, OnDestroy {\n\n public error: boolean = false;\n private subscriptions: Subscription[] = [];\n\n constructor(\n private authService: AuthService,\n private router: Router,\n private userCredentialService: UserCredentialService,\n private constantService: ConstantService,\n private route: ActivatedRoute) { }\n\n async ngOnInit() {\n if (this.route.snapshot.fragment.includes('error')) {\n $(\"error\").removeClass(\"error-hide\");\n return this.error = true;\n }\n \n if (this.route.snapshot.queryParams['changePassword']) {\n this.authService.$isChangePassword.next(true);\n return;\n } \n\n await this.authService.completeAuthentication();\n this.getUserDetail();\n }\n\n getUserDetail() {\n this.subscriptions.push(this.userCredentialService.apiUserCredentialGetUserPostLoginStatusGet().subscribe(\n (data) => {\n const userType = this.authService.userType;\n if (!userType || !data) {\n return this.error = true;\n }\n sessionStorage.removeItem('dataconf');\n this.authService.$enforceData.next(data);\n this.authService.redirectEnforceView(this.authService.$enforceData._value, false);\n },\n (error) => {\n console.log('==> login error', error);\n window.location.replace('/auth/logout');\n }));\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(subscription => subscription.unsubscribe());\n }\n\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-auth-error',\n templateUrl: './auth-error.component.html',\n styleUrls: ['./auth-error.component.scss']\n})\nexport class AuthErrorComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","import { HttpBackend, HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { DEFAULT_INTERRUPTSOURCES, Idle } from '@ng-idle/core';\nimport { TranslateService } from '@ngx-translate/core';\nimport { User, UserManager, UserManagerSettings } from 'oidc-client';\nimport {\n BehaviorSubject,\n interval,\n Observable,\n Subject,\n Subscription,\n} from 'rxjs';\nimport { environment } from 'src/environments/environment';\nimport { AppSettingsService } from '../services/common/appsettings.service';\nimport {\n ConstantService,\n UserRoles,\n} from '../services/common/constant.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AuthService {\n private authNavStatusSource = new BehaviorSubject(false);\n authNavStatus$ = this.authNavStatusSource.asObservable();\n private queryString: any;\n private manager: UserManager;\n public user: User | null;\n public $enforceData;\n public $isChangePassword;\n stopRedirect: boolean = true;\n\n private httpClient: HttpClient;\n public sessionId: string;\n public authRequired: boolean;\n\n constructor(\n private activatedRoute: ActivatedRoute,\n private appSettings: AppSettingsService,\n private constantService: ConstantService,\n private translate: TranslateService,\n private router: Router,\n private httpBackend: HttpBackend\n ) {\n this.httpClient = new HttpClient(httpBackend);\n\n this.$isChangePassword = new BehaviorSubject(false);\n this.$enforceData = new BehaviorSubject(null);\n activatedRoute.queryParamMap.subscribe((params) => {\n this.stopRedirect = true;\n this.queryString = params;\n this.$isChangePassword.next(\n this.queryString.params['changePassword'] ? true : false\n );\n });\n\n const changePassword =\n activatedRoute?.snapshot?.children[0]?.url[0]?.path === 'change-password';\n this.manager = new UserManager(this.getClientSettings(changePassword));\n\n this.manager.events.addUserLoaded((e) => {\n this.manager.getUser().then((x) => {\n this.user = x;\n });\n if (!this.sessionId) {\n this.getSessionId();\n }\n });\n\n this.manager.events.addAccessTokenExpired((e) => {\n this.signOut();\n });\n\n this.getUserDetail();\n }\n\n public reloadPage() {\n let currentUrl = this.router.url;\n let redirect = this.getUrl();\n\n if (currentUrl == redirect) {\n this.router\n .navigateByUrl('/download', { skipLocationChange: true })\n .then(() => {\n this.router.navigate([currentUrl]);\n });\n } else {\n this.router.navigate([redirect]);\n }\n }\n\n getUserDetail() {\n this.manager.getUser().then((user) => {\n this.user = user;\n if (!this.sessionId) {\n this.getSessionId();\n }\n this.authNavStatusSource.next(this.isAuthenticated());\n });\n }\n\n async getUser() {\n this.authRequired = false;\n this.user = await this.manager.getUser();\n if (!this.user) {\n this.authRequired = true;\n await this.manager.signinRedirect();\n this.user = await this.manager.getUser();\n }\n return this.user;\n }\n\n async checkLogin() {\n if (!this.user) {\n await this.getUser();\n }\n }\n\n async login() {\n await this.manager.signinRedirect();\n }\n\n changePassword() {\n return this.manager.signinRedirect();\n }\n\n async completeAuthentication() {\n try {\n this.user = await this.manager.signinRedirectCallback();\n if (\n this.userType &&\n this.userType.toLowerCase() === UserRoles.User.toLowerCase()\n ) {\n this.appSettings.settings.adminMenu = false;\n }\n this.authNavStatusSource.next(this.isAuthenticated());\n } catch {\n this.router.navigate(['/']);\n }\n }\n\n isAuthenticated(): boolean {\n return this.user?.expired;\n }\n\n get authorizationHeaderValue(): string {\n return this.user && `${this.user.token_type} ${this.user.access_token}`;\n }\n\n get userName(): string {\n return this.user?.profile?.UserName;\n }\n\n get userType(): string {\n return this.user?.profile?.UserType;\n }\n\n get organizationId(): number {\n return (\n this.constantService.mspTenant?.organizationId ??\n this.user?.profile?.OrganizationId\n );\n }\n\n get isLoginExpired(): boolean {\n return this.user?.expired;\n }\n\n get loginExpiryTime(): Date {\n const expiryTime = new Date(this.user?.profile?.LoginExpiryTime);\n return this.user && expiryTime;\n }\n\n get currentDateTime(): Date {\n const currentDateTime = new Date().toISOString().replace('Z', '');\n return new Date(currentDateTime);\n }\n\n get id(): string {\n return this.user?.profile?.UserID;\n }\n encode(value) {\n if (value) {\n return btoa(value);\n }\n }\n\n processUrl(url) {\n sessionStorage.setItem('dataconf', JSON.stringify(url));\n return url;\n }\n\n public async redirectEnforceView(data, stopRedirect?: boolean): Promise {\n await this.getUser();\n\n this.stopRedirect = stopRedirect;\n\n if (data.questionSecretStatus === 'MustAskQuestionSecret') {\n return this.router.navigate(\n this.processUrl([\n 'verify-user',\n true,\n this.$isChangePassword._value ?? false,\n ])\n );\n } else if (data.questionSecretStatus === 'MustConfigureQuestionSecret') {\n return this.router.navigate(\n this.processUrl([\n 'verify-user',\n false,\n this.$isChangePassword._value ?? false,\n ])\n );\n }\n\n if (data.isMustChangePassword) {\n if (data.authEnforcement) {\n const authObject = JSON.parse(data.authEnforcement);\n return this.router.navigate(\n this.processUrl([\n 'auth',\n 'change-password',\n this.encode(authObject.sequence),\n data.isEnforcedSecondFactor,\n ])\n );\n }\n if (data.isEnforcedSecondFactor) {\n return this.router.navigate(\n this.processUrl([\n 'auth',\n 'change-password',\n data.isEnforcedSecondFactor,\n ])\n );\n }\n\n return this.router.navigate(this.processUrl(['auth', 'change-password']));\n }\n\n if (this.$isChangePassword._value) {\n return this.router.navigate(this.processUrl(['auth', 'change-password']));\n }\n if (data.authEnforcement) {\n const authObject = JSON.parse(data.authEnforcement);\n if (authObject.authenticationTypeName == 'FidoToken') {\n return this.router.navigate(\n this.processUrl([\n 'enforce-fido',\n authObject.sequence,\n data.isEnforcedSecondFactor,\n ])\n );\n } else {\n return this.router.navigate(\n this.processUrl([\n 'enforce-push',\n this.encode(authObject.sequence),\n data.isEnforcedSecondFactor,\n ])\n );\n }\n }\n if (data.isEnforcedSecondFactor) {\n return this.router.navigate(this.processUrl(['enforce-enrollment']));\n }\n\n if (!this.stopRedirect) {\n const authRedirectInString = sessionStorage.getItem('auth-redirect');\n if (authRedirectInString) {\n sessionStorage.removeItem('auth-redirect');\n const authRedirect = JSON.parse(authRedirectInString);\n return this.router.navigate(authRedirect.routePath, {\n queryParams: authRedirect.queryParams,\n });\n } else {\n }\n this.redirectUser();\n }\n }\n\n getUrl() {\n return (\n this.appSettings.settings.rootUrl +\n (this.appSettings.settings.adminMenu == true\n ? '/dashboard'\n : '/myapplications')\n );\n }\n\n public async loadLanguages() {\n let locale = localStorage.getItem('locale') ?? 'en';\n localStorage.setItem('locale', locale);\n this.translate.addLangs([locale]);\n this.translate.setDefaultLang(locale);\n await this.translate.use(locale).toPromise();\n this.constantService.setTableLang();\n }\n\n redirectUser() {\n switch (this.userType?.toLowerCase()) {\n case UserRoles.User:\n return this.router.navigate(['myapplications']);\n case UserRoles.MspAdmin:\n case UserRoles.AdminUser:\n case UserRoles.HelpDeskUser:\n case UserRoles.SuperAdmin:\n return this.router.navigate([this.getUrl()]);\n }\n }\n\n async signOut() {\n await this.manager.signoutRedirect();\n }\n\n silentRefresh(): any {\n this.manager.signinSilentCallback();\n }\n\n public getClientSettings(\n changePassword: boolean = false\n ): UserManagerSettings {\n const subdomain = this.constantService.getSubdomain(false);\n let settings: UserManagerSettings = {\n authority: environment.identityApi.replace('{org_code}', subdomain),\n client_id: 'UDClient',\n redirect_uri: changePassword\n ? environment.identityChangePassword.replace('{org_code}', subdomain)\n : environment.identityRedirect.replace('{org_code}', subdomain),\n post_logout_redirect_uri: environment.identityLogout.replace(\n '{org_code}',\n subdomain\n ),\n response_type: 'id_token token',\n scope:\n 'openid profile userapi orgapi masterapi loggingapi notificationapi conditionalaccessapi reportapi',\n filterProtocolClaims: true,\n loadUserInfo: true,\n automaticSilentRenew: true,\n silent_redirect_uri: environment.identitySilentRedirect.replace(\n '{org_code}',\n subdomain\n ),\n };\n\n return settings;\n }\n\n private getSessionId() {\n let headers = new HttpHeaders();\n headers = headers.set('Accept', 'application/json');\n let url = `${environment.identityApi}/api/UserSession/ActiveSession`;\n url = url.replace('{org_code}', this.constantService.getSubdomain(false));\n this.httpClient\n .get(url, { headers: headers, withCredentials: true })\n .subscribe((data) => {\n this.sessionId = data;\n });\n }\n}\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\nimport { ActivatedRoute } from '@angular/router';\nimport { Location } from '@angular/common';\nimport { Subscription, firstValueFrom } from 'rxjs';\nimport { ConstantService, ThemeEnum } from '../../services/common/constant.service';\nimport { SecuritySettingModel, SecuritySettingService } from '../../services/organization';\nimport { PasswordService, ResetPasswordModel, UserCredentialModel, UsersService } from '../../services/user';\nimport { CustomValidators } from '../../shared/validators/custom-validators';\nimport { ToastrService } from 'ngx-toastr';\nimport { AuthService } from '../auth.service';\nimport { UserCredentialService } from '../../services/identity';\nimport { SharedAuthenticationService } from '../shared/shared-authentication.service';\nimport { TranslateService } from '@ngx-translate/core';\nimport { AccountService } from 'src/app/services/identity';\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\nimport { PasswordCompromisedModal } from 'src/app/my-profile/password-compromised-modal/password-compromised-modal';\n\n@Component({\n selector: 'app-change-password',\n templateUrl: './change-password.component.html',\n styleUrls: ['./change-password.component.scss']\n})\nexport class ChangePasswordComponent implements OnInit, OnDestroy {\n\n logoImage: string;\n changePasswordForm: FormGroup;\n userName: string;\n isSaving: boolean;\n url: any = this.location.path().split(\"/\");\n userCode: string;\n isForgotPassword: boolean;\n organizationCode: string;\n isConfirmPassText: boolean;\n isPasswordText: boolean;\n securitySettings: SecuritySettingModel = {} as SecuritySettingModel;\n private subscriptions: Subscription = new Subscription;\n\n resetPasswordModel: ResetPasswordModel = {\n newPassword: null,\n userCode: null,\n };\n\n credentialModel: UserCredentialModel = {\n password: \"\",\n newPassword: \"\",\n };\n subDomain: string;\n isPassComplexityError: boolean;\n passComplexityErrorMsg: string;\n\n constructor(\n private activatedRoute: ActivatedRoute,\n private constantService: ConstantService,\n private authService: AuthService,\n private securitySettingService: SecuritySettingService,\n private location: Location,\n private resetPasswordService: PasswordService,\n private userCredentialService: UserCredentialService,\n private toastrService: ToastrService,\n private sharedService: SharedAuthenticationService,\n private translateService: TranslateService,\n private accountService: AccountService,\n private ngbModal: NgbModal,\n ) { }\n\n ngOnInit() {\n const logoImage = this.constantService.getSessionStorage(ThemeEnum.mainLogo);\n this.logoImage = logoImage ?? \"assets/images/se-white-logo.png\";\n\n this.createForm();\n\n this.userCode = this.activatedRoute.snapshot.params.userCode;\n\n if (this.url.indexOf(\"userCode\") > -1 || this.userCode) {\n this.isForgotPassword = true;\n this.subDomain = this.constantService.getSubdomain(false);\n }\n\n if (this.isForgotPassword) {\n this.subscriptions.add(this.securitySettingService.apiSecuritySettingForgotsettingsbyorgidGet(this.subDomain).subscribe(data => this.handleSecuritySettings(data)));\n } else {\n this.subscriptions.add(this.securitySettingService.apiSecuritySettingSettingsbyorgidGet(0).subscribe(data => this.handleSecuritySettings(data)));\n }\n\n }\n\n private createForm(): void {\n this.changePasswordForm = new FormGroup({\n newPassword: new FormControl(\"\"),\n confirmNewPassword: new FormControl(\"\"),\n userCode: new FormControl(\"\")\n },\n this.checkPasswords\n )\n }\n\n get passwordControl() {\n return this.changePasswordForm.controls.newPassword;\n }\n\n private checkPasswords(form: FormGroup) {\n const password = form.get(\"newPassword\");\n const confirmPassword = form.get(\"confirmNewPassword\");\n if (password.value === confirmPassword.value) {\n confirmPassword.setErrors(null);\n return null;\n }\n confirmPassword.setErrors({ 'passwordNotMatch': true });\n return { passwordNotMatch: true }\n }\n\n private handleSecuritySettings(data: SecuritySettingModel): void {\n this.securitySettings = data;\n\n let validators = [];\n if (this.securitySettings.pwdMustIncludeNumber) {\n validators.push(\n CustomValidators.patternValidator(/\\d/, {\n hasNumber: true,\n })\n );\n }\n if (this.securitySettings.pwdMustIncludeUppercase) {\n validators.push(\n CustomValidators.patternValidator(/[A-Z]/, {\n hasCapitalCase: true,\n })\n );\n }\n if (this.securitySettings.pwdMustIncludeLowercase) {\n validators.push(\n CustomValidators.patternValidator(/[a-z]/, {\n hasSmallCase: true,\n })\n );\n }\n if (this.securitySettings.pwdMustIncludeSpecialCharacter) {\n validators.push(\n CustomValidators.patternValidator(\n /[ !@#$%^&*()_+\\-=\\[\\]{};':\"\\\\|,.<>\\/?]/,\n {\n hasSpecialCharacters: true,\n }\n )\n );\n }\n if (this.securitySettings.passwordMinLength) {\n validators.push(\n Validators.minLength(this.securitySettings.passwordMinLength)\n );\n }\n validators.push(Validators.required);\n this.changePasswordForm.controls.newPassword.setValidators(validators)\n }\n\n /** Reset password main function */\n async resetPassword() {\n if (\n this.changePasswordForm.value.newPassword !==\n this.changePasswordForm.value.confirmNewPassword\n ) {\n return;\n }\n\n if(!await this.checkPasswordCompromised()) return;\n\n if (this.isForgotPassword) {\n this.changeForgotPassword();\n } else {\n this.changeFirstLoginPassword();\n }\n }\n\n async checkPasswordCompromised(): Promise{\n const reply:any = {\n credential: {\n Type: \"Password\",\n UserInput: this.changePasswordForm.value.newPassword\n }\n };\n\n const data = await firstValueFrom(this.accountService.apiAccountCheckPasswordCompromisedPost(reply));\n if(data===true){\n const modalRef = this.ngbModal.open(PasswordCompromisedModal, { size: 'lg' });\n return await modalRef.result;\n }\n return true;\n }\n\n /** Change password after forgot password */\n changeForgotPassword() {\n this.isSaving = true;\n this.isPassComplexityError = false;\n this.resetPasswordModel.newPassword = this.changePasswordForm.value.newPassword;\n this.resetPasswordModel.userCode = this.userCode;\n this.subscriptions.add(this.resetPasswordService\n .apiPasswordResetForgetPasswordPost(this.resetPasswordModel)\n .subscribe({\n next: (data) => {\n if (!data) {\n this.toastrService.info(\n \"Password changed session has been expire, request again!\",\n \"Info\"\n );\n } else {\n if (data.status === false) {\n this.passComplexityErrorMsg = data.message;\n this.isPassComplexityError = true;\n } else {\n this.toastrService.success(this.translateService.instant('Success.Password.PasswordUpdated'), this.translateService.instant('Action.Success'),\n );\n this.authService.login();\n }\n }\n this.isSaving = false;\n },\n error: (error) => {\n if (error.error === \"Password history policy failed\") {\n this.toastrService.info(\n \"Please choose password other then previously used\",\n \"Password History\"\n );\n } else {\n this.toastrService.error(this.translateService.instant(error.error), this.translateService.instant('Action.Error'), this.constantService.ToastError);\n }\n this.isSaving = false;\n }\n }));\n }\n\n /** Change user first login password */\n changeFirstLoginPassword() {\n if (this.changePasswordForm.invalid) {\n return;\n }\n this.isSaving = true;\n this.credentialModel.newPassword = this.changePasswordForm.value.newPassword;\n this.subscriptions.add(this.userCredentialService\n .apiUserCredentialResetUserPasswordPost(this.credentialModel)\n .subscribe(async data => {\n if (data.status !== true) {\n if (data.message == \"Error.Password.PasswordLastUsedError\") {\n this.toastrService.error(this.translateService.instant(data.message, { value: this.securitySettings.enforcePwdHistoryCount }), this.translateService.instant('Action.Error'), this.constantService.ToastError);\n } else {\n this.toastrService.error(this.translateService.instant(data.message), this.translateService.instant('Action.Error'), this.constantService.ToastError);\n \n }\n this.isSaving = false;\n } else {\n sessionStorage.setItem('dataconf', '');\n\n if (!this.authService.$enforceData._value) {\n await this.sharedService.getUserDetail();\n }\n this.authService.$enforceData._value.isMustChangePassword = !data.status;\n this.toastrService.success(this.translateService.instant(data.message), this.translateService.instant('Action.Success'));\n this.authService.redirectEnforceView(this.authService.$enforceData._value, false);\n }\n }));\n }\n\n logout() {\n this.authService.signOut();\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n onEnterPress(){\n this.changePasswordForm.controls.confirmNewPassword.markAsTouched()\n }\n\n}\n","import { Component, OnInit } from '@angular/core';\nimport { ConstantService, ThemeEnum } from '../../services/common/constant.service';\nimport { AuthService } from '../auth.service';\nimport { SharedAuthenticationService } from '../shared/shared-authentication.service';\n\n@Component({\n selector: 'app-enforce-enrollment',\n templateUrl: './enforce-enrollment.component.html',\n styleUrls: ['./enforce-enrollment.component.scss']\n})\nexport class EnforceEnrollmentComponent implements OnInit {\n\n userId: number;\n username: string;\n orgId: number;\n orgName: string;\n\nlogoImage: string\n \n constructor(\n private authService: AuthService,\n private constantService: ConstantService,\nprivate sharedService: SharedAuthenticationService\n ) { }\n\n ngOnInit(): void {\n this.userId = this.authService.user.profile.UserID;\n this.username = this.authService.userName;\n this.orgId = this.authService.organizationId;\n this.orgName = this.constantService.getSubdomain();\n\n const logoImage = this.constantService.getSessionStorage(ThemeEnum.mainLogo);\n this.logoImage = logoImage ?? \"assets/images/se-white-logo.png\";\n }\n\n logout(): void {\n this.sharedService.delayedSignout();\n }\n\n async continue(): Promise {\n if (!this.authService.$enforceData._value){\n await this.sharedService.getUserDetail();\n }\n sessionStorage.setItem('dataconf', '');\n this.authService.$enforceData._value.isEnforcedSecondFactor = false;\n this.authService.redirectEnforceView(this.authService.$enforceData._value, false);\n }\n\n}\n","import { Component, OnDestroy, OnInit, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { ToastrService } from 'ngx-toastr';\nimport { Observable, Subscription } from 'rxjs';\nimport { ConfigurationSettingsEnum, ConstantService, ThemeEnum } from '../../services/common/constant.service';\nimport { AuthenticationMethod, AuthenticationTypeModel, AuthenticationTypeService, UserCredentialService } from '../../services/identity';\nimport { OrganizationSettingService } from '../../services/organization';\nimport { AuthService } from '../auth.service';\nimport { SharedAuthenticationService } from '../shared/shared-authentication.service';\nimport { UsersService } from '../../services/user';\nimport { ValidationService } from '../../services/common/validation.service';\nimport { NgbModal, NgbModalRef } from '@ng-bootstrap/ng-bootstrap';\nimport { ConfirmDialogComponent } from '../../shared/confirm-dialog/confirm-dialog.component';\nimport { TranslateService } from '@ngx-translate/core';\nimport { FidoInputModel, FidoTokenComponent } from '@securenvoy/se-shared';\n\n@Component({\n selector: 'app-enforce-fido-enrollment',\n templateUrl: './enforce-fido-enrollment.component.html',\n styleUrls: ['./enforce-fido-enrollment.component.scss']\n})\nexport class EnforceFidoEnrollmentComponent implements OnInit, OnDestroy {\n\n subscriptions: Subscription = new Subscription;\n\n logoImage: string;\n\n username: string;\n orgId: number;\n orgName: string;\n\n isSaving: boolean;\n\n mainForm: FormGroup;\n\n authenticationType: AuthenticationTypeModel = {\n authenticationTypeId: 0,\n authenticationTypeName: AuthenticationMethod.FidoToken,\n userName: '',\n organizationMnemonic: '',\n sequence: 0,\n jsonData: null,\n isActive: true,\n isDefault: true\n };\n\n fidoAllowMultiple: boolean;\n fidoAllowUsernameless: boolean;\n\n @ViewChild(FidoTokenComponent) fidoTokenComponent: FidoTokenComponent;\n\n options!: FidoInputModel;\n\n constructor(\n private activatedRoute: ActivatedRoute,\n private authService: AuthService,\n private constantService: ConstantService,\n private fb: FormBuilder,\n private sharedService: SharedAuthenticationService,\n private toastrService: ToastrService,\n private authTypeService: AuthenticationTypeService,\n private userCredentialService: UserCredentialService,\n private router: Router,\n private organizationSettingService: OrganizationSettingService,\n private userService: UsersService,\n private validationService: ValidationService,\n private translateService: TranslateService,\n private ngbModal: NgbModal\n ) { }\n\n\n ngOnInit(): void {\n const logoImage = this.constantService.getSessionStorage(ThemeEnum.mainLogo);\n this.logoImage = logoImage ?? \"assets/images/se-white-logo.png\";\n this.username = this.authService.userName;\n this.orgId = this.authService.organizationId;\n this.orgName = this.constantService.getSubdomain(false);\n this.authenticationType.sequence = this.activatedRoute.snapshot.params.sequence;\n\n this.mainForm = this.fb.group({\n fidoCredential: [null, Validators.required],\n fidoBackupMethod: [null, Validators.required],\n fidoBackupData: [null, Validators.required]\n });\n\n this.getMFASettings(this.orgId);\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n getMFASettings(orgId) {\n this.subscriptions.add(this.organizationSettingService.apiOrganizationSettingGetSettingsOrganizationIdGet(orgId, ConfigurationSettingsEnum.MFA).subscribe(data => {\n this.fidoAllowMultiple = JSON.parse(data.find(x => x.key == 'FidoAllowMultiple')?.value ?? 'false');\n this.fidoAllowUsernameless = JSON.parse(data.find(x => x.key == 'FidoAllowResidentKey')?.value ?? 'false');\n if (this.authenticationType.sequence != 1) {\n this.fidoAllowUsernameless = false; \n }\n this.options = {\n state: {\n isForLoggedInUser: true,\n allowMultipleTokens: this.fidoAllowMultiple,\n allowResidentKey: this.fidoAllowUsernameless\n },\n org: {\n id: this.orgId,\n name: this.orgName\n },\n user: {\n username: this.username\n },\n functions: {\n getCredentialOptions: this.getCredentialOptions.bind(this),\n identifyToken: this.identifyToken.bind(this),\n getBasicUserInfo: this.getBasicUserInfo.bind(this)\n },\n validators: {\n smsValidator: this.validationService.regPhoneNumber,\n emailValidator: this.validationService.regEmail,\n },\n modals: {\n identifyToken: this.identifyFidoModal.bind(this),\n removeToken: this.removeFidoModal.bind(this)\n }\n }\n }));\n \n }\n\n setCredential(output: any): void {\n this.mainForm.controls.fidoCredential.setValue(output.attestation);\n this.mainForm.controls.fidoBackupMethod.setValue(output.backupMethod);\n this.mainForm.controls.fidoBackupData.setValue(output.backupData);\n }\n\n save() {\n this.isSaving = true;\n this.authenticationType.userName = this.username;\n const creds = {\n attestations: this.mainForm.value.fidoCredential,\n backup: {\n method: this.mainForm.value.fidoBackupMethod,\n recipient: this.mainForm.value.fidoBackupData\n }\n }\n this.authenticationType.jsonData = JSON.stringify(creds);\n this.subscriptions.add(this.authTypeService.apiAuthenticationTypeSaveOrUpdateUserAuthenticationTypePost(this.authenticationType).subscribe({\n next: data => {\n if (data === true) {\n this.toastrService.success('User authentication is updated', 'Success');\n const userData: any = {};\n userData.username = this.username;\n userData.authEnforcement = null;\n this.subscriptions.add(this.userCredentialService.apiUserCredentialUpdateUserAuthEnforcementStatusPut(this.orgName, userData).subscribe(\n async () => {\n sessionStorage.setItem('dataconf', '');\n\n if (!this.authService.$enforceData._value) {\n await this.sharedService.getUserDetail();\n }\n this.authService.$enforceData._value.authEnforcement = null;\n this.redirectNext();\n }));\n } else {\n this.toastrService.error('Error', 'Error', this.constantService.ToastError);\n }\n },\n error: () => {\n this.toastrService.error('Error', 'Error', this.constantService.ToastError);\n }\n }));\n this.isSaving = false;\n }\n\n redirectNext() {\n if (this.authService.$enforceData._value.isEnforcedSecondFactor && this.authenticationType.sequence === 1) {\n return this.router.navigate(['enforce-enrollment']);\n }\n this.authService.redirectUser();\n }\n\n logout() {\n this.authService.signOut();\n }\n\n getBasicUserInfo(username: string, orgId: number): Observable {\n return this.userService.apiUsersGetUserBasicInfoForUserUserNameOrganizationIdGet(username, orgId);\n }\n\n getCredentialOptions(orgName: string, username: string, isUsernameless: boolean): Observable {\n return this.authTypeService.apiAuthenticationTypeFidoCredentialOptionsOrganizationMnemonicUserNameGet(orgName, username, isUsernameless);\n }\n\n identifyToken(orgName: string, username: string, credentialId: string): Observable {\n return this.authTypeService.apiAuthenticationTypeIdentifyTokenOrganizationMnemonicUserNamePost(orgName, username, credentialId);\n }\n\n identifyFidoModal(): NgbModalRef {\n const identifyFidoModal = this.ngbModal.open(ConfirmDialogComponent, {\n size: 'md',\n windowClass: 'fadeInUp animated huge',\n backdrop: 'static',\n keyboard: false,\n });\n identifyFidoModal.componentInstance.message = this.translateService.instant('MyProfile.IdentifyTokenMessage');\n return identifyFidoModal;\n }\n\n removeFidoModal(): NgbModalRef {\n const deleteFidoModal = this.ngbModal.open(ConfirmDialogComponent, {\n size: 'md',\n windowClass: 'fadeInUp animated huge',\n backdrop: 'static',\n keyboard: false,\n });\n deleteFidoModal.componentInstance.message = this.translateService.instant('MyProfile.ConfirmDeleteTokenMessage');\n return deleteFidoModal;\n }\n\n}\n","import { Component, OnDestroy, OnInit, ViewChild } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { AuthenticationMethod, AuthenticationTypeModel, AuthenticationTypeService, UserCheckEnrollCodeModel, UserCredentialService } from 'src/app/services/identity';\nimport { UsersService } from 'src/app/services/user';\nimport { AuthService } from '../auth.service';\nimport { OrganizationSettingService } from 'src/app/services/organization';\nimport { AuthenticationMethodSettings, ConfigurationSettingsEnum, ConstantService, ThemeEnum } from 'src/app/services/common/constant.service';\nimport { ValidationService } from 'src/app/services/common/validation.service';\nimport { Observable, Subscription } from 'rxjs';\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\nimport { SharedAuthenticationService } from '../shared/shared-authentication.service';\nimport { ToastrService } from 'ngx-toastr';\nimport { environment } from '../../../environments/environment';\nimport { NgbAccordion } from '@ng-bootstrap/ng-bootstrap';\nimport { SoftTokenOutput, SofttokenInputModel } from '@securenvoy/se-shared';\n\n\n@Component({\n selector: 'app-enforce-push-enrollment',\n templateUrl: './enforce-push-enrollment.component.html',\n styleUrls: ['./enforce-push-enrollment.component.scss']\n})\nexport class EnforcePushEnrollmentComponent implements OnInit, OnDestroy {\n\n subscriptions: Subscription = new Subscription;\n\n orgId: number;\n orgMnemonic: string;\n username = '';\n logoImage: string;\n\n isSaving = false;\n buttonDisabled = true;\n pushEnabled: boolean = true;\n pushEnforced: boolean = false;\n pushAllowed: boolean = true;\n softTokenType: string = 'securenvoy';\n\n hasAutoEnrolled: boolean = false;\n checkCode: string;\n \n isSecondFactor: string;\n\n settingsLoaded: boolean;\n\n authenticationType: AuthenticationTypeModel = {\n authenticationTypeId: 0,\n authenticationTypeName: AuthenticationMethod.Push,\n userName: '',\n organizationMnemonic: '',\n sequence: 0,\n jsonData: null,\n isActive: true,\n isDefault: true,\n userCheckEnrollCodeModel: {\n enrollUrl: '',\n checkCode: ''\n },\n pushEnabled: true\n };\n \n\n @ViewChild('acc') accordion: NgbAccordion;\n\n options!: SofttokenInputModel;\n\n constructor(\n private userService: UsersService,\n private authService: AuthService,\n private authTypeService: AuthenticationTypeService,\n public constantService: ConstantService,\n private organizationSettingService: OrganizationSettingService,\n public validationService: ValidationService,\n private router: Router,\n private activatedRoute: ActivatedRoute,\n private userCredentialService: UserCredentialService,\n private sharedService: SharedAuthenticationService,\n private toastrService: ToastrService\n ) { }\n\n\n ngOnInit() {\n const logoImage = this.constantService.getSessionStorage(ThemeEnum.mainLogo);\n this.logoImage = logoImage ?? \"assets/images/se-white-logo.png\";\n this.authenticationType.sequence = +this.constantService.decode(this.activatedRoute.snapshot.params.type);\n this.isSecondFactor = this.activatedRoute.snapshot.params.isSecondFactor;\n\n this.username = this.authService.userName;\n this.orgId = this.authService.organizationId;\n this.orgMnemonic = this.constantService.getSubdomain(false);\n\n this.pushEnabled = true;\n \n\n this.getAuthEnrollmentSettings();\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe()\n }\n\n\n scroll(el: HTMLElement) {\n el.scrollIntoView();\n }\n\n removeOverlay() {\n document.getElementById('overlay').style.display = 'none';\n }\n\n save() {\n this.isSaving = true;\n\n if (this.hasAutoEnrolled === true) {\n this.authenticationType.userCheckEnrollCodeModel = null;\n this.removeOverlay();\n } else {\n this.authenticationType.userCheckEnrollCodeModel.checkCode = this.checkCode;\n }\n this.authenticationType.pushEnabled = this.pushEnabled;\n this.saveToApi(this.authenticationType);\n this.isSaving = false;\n }\n\n getAuthEnrollmentSettings() {\n this.subscriptions.add(this.organizationSettingService.apiOrganizationSettingGetEnrollSettingsGet(0, this.constantService.AuthEnrollment, this.constantService.MultiFAEnrollment).subscribe(\n data => {\n let secondFASetting = JSON.parse(data[0].value);\n if (Array.isArray(secondFASetting) && secondFASetting.findIndex(x => x === AuthenticationMethodSettings.PushEnforce) < 0) {\n this.pushEnforced = true;\n }\n this.getMfaSettings();\n }\n ));\n }\n\n getMfaSettings() {\n this.subscriptions.add(this.organizationSettingService.apiOrganizationSettingGetSettingsOrganizationIdGet(0, ConfigurationSettingsEnum.MFA)\n .subscribe((data) => {\n this.softTokenType = data.find(x => x.key == 'SoftTokenAuthenticatorType')?.value ?? 'securenvoy';\n this.pushAllowed = !JSON.parse(data.find(x => x.key == 'DisableSoftTokenPush')?.value ?? 'false');\n this.options = {\n state: {\n pushAllowed: this.pushAllowed,\n pushEnabled: this.pushEnabled,\n pushEnforced: this.pushEnforced,\n authenticatorType: this.softTokenType\n },\n functions: {\n userEnrolReadyStatus: this.userEnrolReadyStatus.bind(this),\n userSeedUrl: this.userSeedUrl.bind(this)\n },\n validators: {\n regAddSpaceCharacterInputThirdParty: this.validationService.regAddSpaceCharacterInputThirdParty,\n regAddSpaceCharacterInput: this.validationService.regAddSpaceCharacterInput,\n regAddSpaceCharacterOutput: this.validationService.regAddSpaceCharacterOutput\n }\n }\n this.settingsLoaded = true;\n }))\n }\n\n saveToApi(model) {\n\n model.userName = this.username;\n this.subscriptions.add(this.authTypeService.apiAuthenticationTypeSaveOrUpdateUserAuthenticationTypePost(model).subscribe({\n next: data => {\n if (data === true) {\n this.toastrService.success('User authentication is updated', 'Success');\n const userData: any = {};\n userData.username = this.username;\n userData.authEnforcement = null;\n this.subscriptions.add(this.userCredentialService.apiUserCredentialUpdateUserAuthEnforcementStatusPut(this.orgMnemonic, userData).subscribe(\n async () => {\n sessionStorage.setItem('dataconf', '');\n\n if (!this.authService.$enforceData._value) {\n await this.sharedService.getUserDetail();\n }\n this.authService.$enforceData._value.authEnforcement = null;\n this.redirectNext();\n }));\n } else {\n this.toastrService.error('Push notification is not configured', 'Error', this.constantService.ToastError);\n }\n },\n error: () => {\n this.toastrService.error('Push notification is not configured', 'Error', this.constantService.ToastError);\n }\n }));\n }\n\n handleOutput(output: SoftTokenOutput) {\n this.authenticationType.userCheckEnrollCodeModel.enrollUrl = output.enrolUrl;\n this.hasAutoEnrolled = output.hasAutoEnrolled;\n this.checkCode = output.checkCode;\n this.pushEnabled = output.pushEnabled;\n\n if (this.hasAutoEnrolled || this.checkCode) {\n this.buttonDisabled = false;\n } else {\n this.buttonDisabled = true;\n }\n }\n\n redirectNext() {\n if (this.authService.$enforceData._value.isEnforcedSecondFactor && this.authenticationType.sequence === 1) {\n return this.router.navigate(['enforce-enrollment']);\n }\n this.authService.redirectUser();\n }\n\n logout() {\n this.authService.signOut();\n }\n\n userEnrolReadyStatus(isSoftTokenOnly: boolean): Observable {\n return this.authTypeService.apiAuthenticationTypeUserEnrollReadyStatusGet(isSoftTokenOnly);\n }\n\n userSeedUrl(isSoftTokenOnly: boolean, isGenericToken: boolean): Observable {\n return this.authTypeService.apiAuthenticationTypeGetUserSeedUrlGet(isSoftTokenOnly, isGenericToken);\n }\n\n}\n","import { Component, isDevMode, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { ConstantService, ThemeEnum } from 'src/app/services/common/constant.service';\nimport { ValidationService } from 'src/app/services/common/validation.service';\nimport { AuthService } from '../auth.service';\n\n\n@Component({\n selector: 'app-login',\n templateUrl: './logout.component.html',\n styleUrls: ['./logout.component.scss']\n})\nexport class LogoutComponent implements OnInit {\n signOutBackground: string;\n logoImage: string;\n\n constructor(\n public validationService: ValidationService,\n private authService: AuthService,\n private router : Router,\n private constantService: ConstantService,) {\n }\n\n ngOnInit() {\n localStorage.removeItem('OrganizationCode');\n localStorage.removeItem('breadcrumbs');\n localStorage.removeItem('title');\n\n if (isDevMode) {\n var orgCode = localStorage.getItem('OrganizationCode');\n localStorage.setItem('OrganizationCode', orgCode);\n }\n\n this.signOutBackground = this.constantService.getImageFromServer(ThemeEnum.signOutBackground) ?? 'assets/images/logout.png';\n this.logoImage = this.constantService.getImageFromServer(ThemeEnum.signinLogo);\n }\n\n signin() {\n this.authService.login();\n }\n\n home() {\n this.router.navigateByUrl('/');\n }\n}\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\nimport { Subscription } from 'rxjs';\nimport { environment } from '../../../environments/environment';\nimport { ConstantService, ThemeEnum } from '../../services/common/constant.service';\n\n@Component({\n selector: 'app-register-welcome',\n templateUrl: './register-welcome.component.html',\n styleUrls: ['./register-welcome.component.scss']\n})\nexport class RegisterWelcomeComponent implements OnInit, OnDestroy {\n\n subscriptions: Subscription = new Subscription;\n\n url: string;\n logoImage: string;\n signupBackground: string;\n\n constructor(\n public constantService: ConstantService,\n private activatedRoute: ActivatedRoute\n )\n {\n\n } \n\n ngOnInit(): void {\n const logoImage = this.constantService.getSessionStorage(ThemeEnum.signinLogo);\n this.logoImage = logoImage ?? \"assets/images/logo.png\";\n\n const signupBg = this.constantService.getSessionStorage(ThemeEnum.signupBackground);\n this.signupBackground = signupBg ?? \"assets/images/register-background.png\";\n\n this.subscriptions.add(this.activatedRoute.queryParams.subscribe(params => {\n this.url = params['url']\n }));\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n login() {\n window.location.href = this.url ? 'https://' + this.url : '/';\n }\n\n onNavigation() {\n window.location.href = this.url ? 'https://' + this.url : '/';\n }\n\n}\n","import { Component } from '@angular/core';\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\nimport { Subject } from 'rxjs';\n\n@Component({\n selector: 'app-emali-compromised-modal',\n templateUrl: 'email-compromised-modal.html',\n})\n\nexport class EmailCompromisedModal{\n\n destroy$: Subject = new Subject();\n\n constructor(\n private activeModal: NgbActiveModal\n ) {}\n\n closeModal(isContinue:boolean){\n this.activeModal.close(isContinue);\n }\n}","import { Component, OnInit } from '@angular/core';\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\nimport { Subject, takeUntil } from 'rxjs';\nimport { UsersService } from 'src/app/services/user';\nimport { ToastrService } from 'ngx-toastr';\nimport { FormControl, Validators } from '@angular/forms';\n\n@Component({\n selector: 'app-phone-validation-modal',\n templateUrl: './phone-validation-modal.component.html'\n})\n\nexport class PhoneValidationModal implements OnInit {\n\n destroy$: Subject = new Subject();\n isSent:boolean = false;\n phone:string = \"\";\n userInputCode: FormControl;\n userInputHasError: boolean = true;\n\n constructor(\n public activeModal: NgbActiveModal,\n private userService: UsersService,\n private toastrService: ToastrService,\n ) { }\n\n ngOnInit() {\n this.userInputCode = new FormControl('', Validators.required);\n this.userInputCode.valueChanges.pipe(\n takeUntil(this.destroy$)\n ).subscribe(val=>{\n if(val && val.length != 6){\n this.userInputCode.setErrors({'inValid': true});\n this.userInputHasError = true;\n }else{\n this.userInputCode.setErrors(null);\n this.userInputHasError = false;\n }\n });\n }\n\n sendSMS() {\n this.userService.apiUsersSendNewTenantValidationCodeSMSPut(`\"${this.phone}\"`).pipe(\n takeUntil(this.destroy$)\n ).subscribe({\n next: (result) => {\n if(result){\n this.isSent = true;\n this.toastrService.success('Validation SMS Sent');\n }else{\n this.toastrService.error('Invalid Number');\n }\n },\n error: () => {},\n complete: () => { \n \n }\n });\n }\n\n verify(){\n if(this.userInputHasError){ return }\n\n this.userService.apiUsersVerifyNewTenantValidationCodeSMSPut(`\"${this.userInputCode.value}\"`).pipe(\n takeUntil(this.destroy$)\n ).subscribe({\n next: (result) => {\n if(result){\n this.toastrService.success('Validation Successful'); \n setTimeout(() => {\n this.activeModal.close(true);\n }, 1000);\n return;\n }else{\n this.toastrService.error('Validation Failed');\n this.userInputCode.reset();\n this.userInputHasError = true;\n }\n },\n error: () => {},\n complete: () => {}\n });\n }\n\n cancel(){\n this.userInputCode.reset();\n this.isSent = false;\n }\n\n closeModal(){\n this.activeModal.close(false);\n }\n\n ngOnDestroy(){\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n\n}\n\n","import { HttpClient } from '@angular/common/http';\nimport { Component, OnInit } from '@angular/core';\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\nimport { Subscription } from 'rxjs';\n\n@Component({\n selector: 'app-policy-modal',\n templateUrl: './policy-modal.component.html',\n styleUrls: ['./policy-modal.component.scss']\n})\nexport class PolicyModalComponent implements OnInit {\n\n policyData: policyData\n;\n private subscriptions: Subscription = new Subscription;\n\n constructor(\n public ngbActiveModal: NgbActiveModal,\n private httpClient: HttpClient\n ) { }\n\n ngOnInit() {\n this.subscriptions.add(\n this.httpClient.get(\"/assets/json/policy.json\").subscribe(data => {\n this.policyData = data\n })\n )\n }\n\n\n close() {\n this.ngbActiveModal.close(false);\n }\n\n ngOnDestroy() {\n this.subscriptions.unsubscribe();\n }\n\n}\n\ninterface policyData {\n header: string,\n detail: string\n}\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { Subscription, firstValueFrom } from 'rxjs';\nimport { environment } from '../../../environments/environment';\nimport { ConstantService, ThemeEnum } from '../../services/common/constant.service';\nimport { AccountService } from '../../services/identity';\nimport { CountryService } from '../../services/master';\nimport { OrganizationAndUserModel, OrganizationModel, OrganizationService, RegistrationResult, UserModel, UserOrgModel } from '../../services/organization';\nimport { AuthService } from '../auth.service';\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\nimport { CountryISO, PhoneNumberFormat, SearchCountryField } from 'ngx-intl-tel-input'\nimport { Router } from '@angular/router';\nimport { ToastrService } from 'ngx-toastr';\nimport { UsersService } from '../../services/user';\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\nimport { PolicyModalComponent } from './policy-modal/policy-modal.component';\nimport { PhoneValidationModal } from './phone-validation-modal/phone-validation-modal.component';\nimport { EmailCompromisedModal } from './email-compromised-modal/email-compromised-modal';\n\n@Component({\n selector: 'app-registration',\n templateUrl: './registration.component.html',\n styleUrls: ['./registration.component.scss']\n})\nexport class RegistrationComponent implements OnInit, OnDestroy {\n\n isMnemonicErrorShow: boolean;\n workCountryList: string[];\n isMnemonicShow: boolean;\n orgDomain: string;\n mnemonic: string;\n mnemonicSubCode: string;\n oldUsername: string;\n declarativeFormCaptchaValue: any;\n isSubmit: boolean;\n isPublicDomain: boolean;\n private subscriptions: Subscription = new Subscription;\n isUsernameText: boolean;\n organizationAndUserModel: OrganizationAndUserModel = {} as OrganizationAndUserModel;\n CountryISO = CountryISO;\n SearchCountryField = SearchCountryField;\n PhoneNumberFormat = PhoneNumberFormat;\n configSettings;\n selOrgId: number;\n\n userModel: UserModel = {\n userID: 0,\n username: null,\n organizationID: null,\n //isLocked: false,\n password: null,\n isActive: true,\n isMustChangePassword: true,\n countryID: null,\n //workCountry: null,\n email: null,\n };\n\n userOrgModel: UserOrgModel = {\n userModel: this.userModel,\n mnemonic: null,\n //homePageUrl: null,\n };\n\n intlPhone = {\n countryCode: \"\",\n dialCode: \"\",\n e164Number: \"\",\n internationalNumber: \"\",\n nationalNumber: \"\",\n number: \"\",\n };\n signupBackground: string;\n logoImage: string;\n\n regForm: FormGroup;\n blackListed = false;\n\n constructor(\n private authService: AuthService,\n public constantService: ConstantService,\n private identityService: AccountService,\n private countryService: CountryService,\n private organizationService: OrganizationService,\n private router: Router,\n private toastrService: ToastrService,\n private userService: UsersService,\n private ngbModal: NgbModal,\n ) {\n this.isMnemonicErrorShow = false;\n this.orgDomain = environment.publicUrl;\n if (!this.orgDomain.startsWith(\".\")) {\n this.orgDomain = \".\" + this.orgDomain;\n }\n this.selOrgId = 0;\n }\n\n\n ngOnInit(): void {\n this.regForm = new FormGroup({\n firstName: new FormControl(\"\", [Validators.required, Validators.pattern(\"[^<>!=`'*]*$\")]),\n lastName: new FormControl(\"\", [Validators.required, Validators.pattern(\"[^<>!=`'*]*$\")]),\n username: new FormControl(\"\", [\n Validators.required,\n Validators.pattern(this.constantService.regexUserName),\n Validators.maxLength(19)\n ]),\n email: new FormControl(\"\", [\n Validators.required,\n Validators.pattern(this.constantService.regexUserEmail)\n ]),\n mnemonic: new FormControl(\"\", [Validators.pattern(this.constantService.regexAlphaNumWithOutSpaceDot)]),\n phone: new FormControl(\"\", [Validators.required]),\n country: new FormControl(\"\", [Validators.required])\n })\n\n this.logoImage = this.constantService.getImageFromServer(ThemeEnum.mainLogo) ?? \"assets/images/logo.png\";\n this.signupBackground = this.constantService.getImageFromServer(ThemeEnum.signupBackground) ?? \"assets/images/register-background.png\";\n\n this.getAllCountries();\n this.getUsernameMaskInfo();\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n async onSubmit() {\n\n if (this.regForm.invalid) {\n this.regForm.markAllAsTouched();\n return;\n }\n\n if(!await this.checkCompromised()) return;\n if(!await this.phoneValidation()) return;\n\n if (\n this.organizationAndUserModel &&\n this.userOrgModel &&\n !this.isMnemonicErrorShow &&\n !this.isPublicDomain\n ) {\n const mnemonic = this.mnemonic + (this.mnemonicSubCode == null ? \"\" : this.mnemonicSubCode);\n this.organizationAndUserModel.mnemonic = mnemonic.toLocaleLowerCase();\n\n this.organizationAndUserModel.contactName = this.userModel.firstName;\n this.organizationAndUserModel.contactEmail = this.userModel.email;\n const publicUrl =\n environment.production ?\n environment.identityApi.replace(\"{org_code}\", mnemonic) : `https://${mnemonic}${this.orgDomain}`\n this.organizationAndUserModel.publicUrl = publicUrl;\n this.organizationAndUserModel.organizationDomain = environment.production ? window.location.hostname : `https://${environment.organizationCode}${this.orgDomain}`;\n this.organizationAndUserModel.userOrgModel = this.userOrgModel;\n this.organizationAndUserModel.userOrgModel.userModel.cell =\n this.intlPhone.e164Number;\n this.organizationAndUserModel.userOrgModel.userModel.organizationID = 0;\n const uri = `${this.organizationAndUserModel.mnemonic}${this.orgDomain}`;\n\n this.organizationAndUserModel.isActive = true;\n\n this.isSubmit = false;\n this.subscriptions.add(\n this.organizationService\n .apiOrganizationCreateOrganizationAndUserPost(this.organizationAndUserModel)\n .subscribe({\n complete: () => {\n this.router\n .navigate([\"auth\", \"register-welcome\"], {\n queryParams: { url: uri },\n })\n .then(() => {\n this.authService.reloadPage();\n });\n },\n error: () => {\n this.isSubmit = true;\n this.toastrService.error(\n \"Organization not register\",\n \"Error\", this.constantService.ToastError\n );\n }\n })\n );\n }\n }\n\n async checkCompromised(): Promise {\n try {\n const data = await firstValueFrom(\n this.userService.apiUsersCheckNewTenantCompromisedAccountGet(this.userModel.email)\n );\n if (data != null) {\n const modalRef = this.ngbModal.open(EmailCompromisedModal, { size: 'lg' });\n return await modalRef.result;\n } else {\n return true;\n }\n } catch (error) {\n console.error(\"An error occurred:\", error);\n return false;\n }\n }\n\n async phoneValidation(): Promise {\n const modalRef = this.ngbModal.open(PhoneValidationModal, { size: 'md' });\n modalRef.componentInstance.phone = this.intlPhone.e164Number;\n\n try {\n const isAdminValidated = await modalRef.result;\n return isAdminValidated;\n } catch (error) {\n console.error('Error in admin validation modal:', error);\n return false;\n }\n }\n\n createUser(orgData) {\n let country;\n if (this.userOrgModel) {\n this.userOrgModel.userModel.organizationID = orgData.organizationId;\n this.userOrgModel.mnemonic = this.organizationAndUserModel.mnemonic;\n const uri = `${this.organizationAndUserModel.mnemonic}${this.orgDomain}`;\n this.userOrgModel.userModel.cell = this.intlPhone.e164Number;\n country = this.workCountryList.find(\n (x) => x[\"countryId\"] == this.userModel.countryID\n );\n this.userModel.countryID = country?.countryId ? +country.countryId : null;\n this.subscriptions.add(\n this.userService.apiUsersAddOrgUserPost(this.organizationAndUserModel).subscribe({\n complete: () => {\n this.router\n .navigate([\"auth\", \"register-welcome\"], {\n queryParams: { url: uri },\n })\n .then(() => {\n this.authService.reloadPage();\n });\n },\n error: () => {\n this.toastrService.error(\n \"Organization not register\",\n \"Error\", this.constantService.ToastError\n );\n }\n }\n )\n );\n }\n }\n\n public getKey() {\n return environment.reCaptchaSiteKey;\n }\n\n companyCode(type) {\n let mnemonic;\n if (type === \"code\") {\n mnemonic = this.mnemonic;\n } else {\n const email = this.userModel.email.toLowerCase();\n let domain = email.substring(email.lastIndexOf(\"@\") + 1);\n mnemonic = domain;\n mnemonic = mnemonic.substr(0, mnemonic.indexOf(\".\"));\n this.isPublicDomain = this.checkPublicDomain(domain);\n if (this.isPublicDomain) {\n return false;\n }\n }\n mnemonic = mnemonic.replace(\".\", \"-\");\n this.mnemonic = mnemonic;\n if (this.mnemonicSubCode != null) {\n mnemonic = mnemonic + this.mnemonicSubCode;\n }\n this.checkOrganization(mnemonic);\n }\n \n private checkOrganization(code) {\n this.blackListed = false;\n this.subscriptions.add(\n this.organizationService.apiOrganizationOrganizationMnemonicGet(code)\n .subscribe((data: RegistrationResult) => {\n switch (data) {\n case RegistrationResult.Allowed:\n this.organizationAndUserModel.organizationName = code;\n this.isMnemonicErrorShow = false;\n if (this.mnemonicSubCode == null) {\n this.mnemonic = code;\n }\n if (\n this.mnemonicSubCode == null ||\n this.mnemonicSubCode === \"\"\n ) {\n this.isMnemonicShow = false;\n }\n\n if (this.getKey() === '') {\n this.isSubmit = true;\n }\n break;\n \n case RegistrationResult.TenantExists:\n //this.regForm.controls.mnemonic.setErrors({ 'incorrect': true });\n this.isMnemonicErrorShow = true;\n this.isMnemonicShow = true;\n break;\n\n case RegistrationResult.BlackListed:\n this.regForm.controls.mnemonic.setErrors({ 'incorrect': true });\n this.isMnemonicErrorShow = true;\n this.isMnemonicShow = false;\n this.blackListed = true;\n break;\n }\n\n })\n );\n }\n\n private checkPublicDomain(domain) {\n //const index = this.publicDomainService.publicDomains.findIndex(\n // (x) => x === domain\n //);\n //if (index > -1) {\n // return true;\n //} else {\n // return false;\n //}\n return false;\n }\n\n private getUsernameMaskInfo() {\n this.subscriptions.add(\n this.identityService.apiAccountGetOrganizationSettingsGet().subscribe((data) => {\n this.configSettings = data;\n if (this.configSettings[0].value === \"true\")\n this.isUsernameText = false;\n else this.isUsernameText = true;\n })\n );\n }\n\n resolved(captchaResponse: string) {\n this.organizationAndUserModel.recaptchaClientResponse = captchaResponse;\n if (captchaResponse == null) {\n this.isSubmit = false;\n } else {\n this.isSubmit = true;\n }\n }\n\n private getAllCountries() {\n this.subscriptions.add(\n this.countryService.apiCountryGetAllCountriesGet().subscribe((data) => {\n this.workCountryList = data;\n })\n );\n }\n\n\n login() {\n this.authService.login();\n }\n\n policy() {\n this.ngbModal.open(PolicyModalComponent, {\n size: \"lg\",\n windowClass: \"fadeInUp animated huge\",\n backdrop: \"static\",\n keyboard: false,\n });\n }\n\n}\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { FormArray, FormControl, FormGroup, Validators } from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { Subscription } from 'rxjs';\nimport { ConstantService } from '../../../services/common/constant.service';\nimport { QuestionSecretAnswerService, UserQuestionSecretAnswerModel } from '../../../services/identity';\nimport { AuthService } from '../../auth.service';\nimport { SharedAuthenticationService } from '../../shared/shared-authentication.service';\n\n@Component({\n selector: 'app-security-questions-answer',\n templateUrl: './security-questions-answer.component.html',\n styleUrls: ['./security-questions-answer.component.scss']\n})\nexport class SecurityQuestionsAnswerComponent implements OnInit, OnDestroy {\n\n\n subscriptions: Subscription = new Subscription;\n isSaving: boolean;\n\n orgMnemonic: string;\n username: string;\n\n questionsForm: FormGroup;\n answers: UserQuestionSecretAnswerModel[] = [];\n\n constructor(\n private constantService: ConstantService,\n private authService: AuthService,\n private secretAnswerService: QuestionSecretAnswerService,\n private sharedService: SharedAuthenticationService,\n private toastService: ToastrService\n ) { }\n\n\n ngOnInit(): void {\n this.orgMnemonic = this.constantService.getSubdomain(false);\n this.username = this.authService.userName;\n\n this.createForm();\n\n this.getUserQuestions();\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n createForm(): void {\n this.questionsForm = new FormGroup({\n questions: new FormArray([]),\n });\n }\n\n get questionControls(): FormArray { return this.questionsForm.controls.questions['controls']; }\n\n getUserQuestions() {\n this.subscriptions.add(this.secretAnswerService.apiQuestionSecretAnswerGetUserQuestionsGet(this.orgMnemonic, this.username).subscribe(data => {\n data.forEach(questionData => {\n this.addQuestion(questionData);\n })\n }))\n }\n\naddQuestion(question: any): void {\n let questions = this.questionsForm.get('questions') as FormArray;\n questions.push(new FormGroup({\n questionId: new FormControl(question?.organizationQuestionSecretId),\n question: new FormControl(question?.question ?? null),\n answer: new FormControl(null, [Validators.required, Validators.minLength(3)])\n }));\n}\n\n save() {\n this.isSaving = true;\n if (this.questionsForm.invalid) {\n return;\n }\n this.questionsForm.value.questions.forEach(x => {\n this.answers.push({ organizationQuestionSecretId: x.questionId, answer: x.answer });\n })\n this.secretAnswerService\n .apiQuestionSecretAnswerVerifyQuestionSecretOrganizationMnemonicUsernamePost(\n this.orgMnemonic, this.username, this.answers\n ).subscribe({\n next: async (data) => {\n if (data.isValid) {\n sessionStorage.setItem('dataconf', '');\n\n if (!this.authService.$enforceData._value) {\n await this.sharedService.getUserDetail();\n }\n this.authService.$enforceData._value.questionSecretStatus = '';\n setTimeout(() => {\n this.authService.redirectEnforceView(this.authService.$enforceData._value, false)\n }, 1000);\n }\n else {\n if (data.remainingAttempts <= 0) {\n this.toastService.error(`Your account has been locked temporarily. Please contact system administrator`, '', this.constantService.ToastError);\n this.sharedService.delayedSignout();\n }\n else {\n this.toastService.error(`Invalid answer(s), You have only ${data.remainingAttempts} attempt left.`, '', this.constantService.ToastError);\n this.isSaving = false;\n }\n }\n },\n error: () => {\n this.isSaving = false;\n }\n });\n }\n\n}\n","import { Component, Input, OnDestroy, OnInit } from '@angular/core';\nimport { FormArray, FormControl, FormGroup, Validators } from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { Subscription } from 'rxjs';\nimport { ConstantService } from '../../../services/common/constant.service';\nimport { QuestionSecretAnswerService, UserQuestionSecretAnswerModel } from '../../../services/identity';\nimport { OrganizationQuestionSecretModelBinding, OrganizationQuestionSecretService, OrganizationQuestionsModelBinding } from '../../../services/organization';\nimport { AuthService } from '../../auth.service';\nimport { SharedAuthenticationService } from '../../shared/shared-authentication.service';\n\n@Component({\n selector: 'app-security-questions-configure',\n templateUrl: './security-questions-configure.component.html',\n styleUrls: ['./security-questions-configure.component.scss']\n})\nexport class SecurityQuestionsConfigureComponent implements OnInit, OnDestroy {\n\n subscriptions: Subscription = new Subscription;\n questionsForm: FormGroup;\n availableQuestions: OrganizationQuestionSecretModelBinding[][] = [];\n\n orgId: number;\n orgMnemonic: string;\n username: string;\n\n orgSettings: OrganizationQuestionsModelBinding\n\n answers: UserQuestionSecretAnswerModel[] = [];\n\n isSaving: boolean;\n\n constructor(\n private authService: AuthService,\n private constantService: ConstantService,\n private orgQuestionsService: OrganizationQuestionSecretService,\n private secretAnswerService: QuestionSecretAnswerService,\n private toastService: ToastrService,\n private sharedService: SharedAuthenticationService\n ) { }\n\n\n ngOnInit(): void {\n this.orgId = this.authService.organizationId;\n this.orgMnemonic = this.constantService.getSubdomain(false);\n this.username = this.authService.userName;\n\n this.createForm();\n\n this.getOrganizationQuestionsWithSettings();\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n createForm(): void {\n this.questionsForm = new FormGroup({\n questions: new FormArray([]),\n });\n }\n\n get questionControls(): FormArray { return this.questionsForm.controls.questions['controls']; }\n\n getOrganizationQuestionsWithSettings(): void {\n this.orgQuestionsService.apiOrganizationQuestionSecretGetOrganizationQuestionWithSettingsOrganizationIdGet(this.orgId).subscribe(\n (data) => {\n this.orgSettings = data;\n this.getUserAnswers();\n });\n }\n\n getUserAnswers() {\n this.subscriptions.add(this.secretAnswerService.apiQuestionSecretAnswerGetUserAnswersGet(this.orgMnemonic, this.username).subscribe(\n (data) => {\n const noOfQuestions = this.orgSettings.noOfConfigurableQuestionSecret;\n if (data?.length > 0) {\n data.forEach((questionData) => {\n this.addQuestion(questionData);\n });\n if (noOfQuestions > data.length) {\n const remainingQuestions = noOfQuestions - data.length\n this.addRequiredQuestions(remainingQuestions);\n }\n } else {\n this.addRequiredQuestions(noOfQuestions);\n }\n this.setAvailableQuestions();\n }\n ));\n }\n\n addRequiredQuestions(requiredQuestions: number) {\n for (let index = 0; index < requiredQuestions; index++) {\n this.addQuestion();\n }\n }\n\n addQuestion(answer?: any): void {\n let questions = this.questionsForm.get('questions') as FormArray;\n questions.push(new FormGroup({\n questionId: new FormControl(answer?.organizationQuestionSecretId ?? null, [Validators.required]),\n answer: new FormControl(answer?.answer ?? null, [Validators.required, Validators.minLength(3)])\n }));\n }\n\n setAvailableQuestions(): void {\n const selectedQuestions = this.questionsForm.value.questions.map(x => x.questionId);\n for (let i = 0; i < this.orgSettings.noOfConfigurableQuestionSecret; i++) {\n const thisQuestion = selectedQuestions[i];\n this.availableQuestions[i] = this.orgSettings.organizationQuestions.filter(x => x.organizationQuestionSecretId == thisQuestion || selectedQuestions.indexOf(x.organizationQuestionSecretId) == -1);\n }\n }\n\n\n save() {\n this.isSaving = true;\n if (this.questionsForm.invalid) {\n return;\n }\n this.questionsForm.value.questions.forEach(x => {\n this.answers.push({ organizationQuestionSecretId: x.questionId, answer: x.answer });\n })\n this.secretAnswerService\n .apiQuestionSecretAnswerSaveUserQuestionSecretAnswerOrganizationMnemonicUsernamePost(\n this.orgMnemonic, this.username, this.answers\n ).subscribe({\n next: async (data) => {\n if (data > 0) {\n sessionStorage.setItem('dataconf', '');\n\n if (!this.authService.$enforceData._value) {\n await this.sharedService.getUserDetail();\n }\n this.authService.$enforceData._value.questionSecretStatus = '';\n this.toastService.success('Security Questions saved', 'Success');\n setTimeout(() => {\n this.authService.redirectEnforceView(this.authService.$enforceData._value, false)\n }, 1000);\n }\n else {\n this.toastService.info('Security Question not saved', '');\n }\n },\n error: () => {\n this.isSaving = false;\n }\n });\n }\n\n}\n","import { Component, OnInit } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\nimport { Subscription } from 'rxjs';\nimport { ConstantService, ThemeEnum } from '../../../services/common/constant.service';\nimport { OrganizationQuestionSecretService, OrganizationQuestionsModelBinding } from '../../../services/organization';\nimport { AuthService } from '../../auth.service';\n\n@Component({\n selector: 'app-security-questions-container',\n templateUrl: './security-questions-container.component.html',\n styleUrls: ['./security-questions-container.component.scss']\n})\nexport class SecurityQuestionsContainerComponent implements OnInit {\n\n subscriptions: Subscription = new Subscription;\n\n logoImage: string;\n\n isChangePass: boolean;\n isAskAnswer: boolean = true;\n\n orgSettings: OrganizationQuestionsModelBinding\n\n constructor(\n private activatedRoute: ActivatedRoute,\n private constantService: ConstantService,\n private authService: AuthService\n ) {\n }\n\n ngOnInit(): void {\n const logoImage = this.constantService.getSessionStorage(ThemeEnum.mainLogo);\n this.logoImage = logoImage ?? \"assets/images/se-white-logo.png\";\n\n this.isAskAnswer = this.activatedRoute.snapshot.params.isAskAnswer ? JSON.parse(this.activatedRoute.snapshot.params.isAskAnswer) : false;\n this.isChangePass = this.activatedRoute.snapshot.params.isChangePass ? JSON.parse(this.activatedRoute.snapshot.params.isChangePass) : false;\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n logout() {\n this.authService.signOut();\n }\n\n}\n","import { Injectable } from \"@angular/core\";\nimport { ToastrService } from \"ngx-toastr\";\nimport { ConstantService } from \"src/app/services/common/constant.service\";\nimport { UserCredentialService } from \"../../services/identity\";\nimport { AuthService } from \"../auth.service\";\n\n@Injectable({ providedIn: \"root\" })\nexport class SharedAuthenticationService {\n\n constructor(\n private authService: AuthService,\n private userCredentialService: UserCredentialService,\n private toastService: ToastrService,\n private constantService: ConstantService\n ) { }\n\n\n async getUserDetail(): Promise {\n return new Promise((resolve, reject) => {\n this.userCredentialService.apiUserCredentialGetUserPostLoginStatusGet().subscribe({\n next: (data) => {\n const userType = this.authService.userType;\n if (!userType) {\n this.toastService.error(\"Role not exists\", \"Role info\", this.constantService.ToastError);\n this.delayedSignout();\n reject();\n }\n if (!data) {\n this.toastService.error(\"User Detail is not valid\", \"User info\", this.constantService.ToastError);\n this.delayedSignout();\n reject();\n }\n this.authService.$enforceData.next(data);\n resolve()\n },\n error: () => {\n this.delayedSignout();\n reject();\n }\n });\n })\n }\n\n delayedSignout() {\n setTimeout(() => {\n this.authService.signOut();\n }, 3000);\n }\n}\nexport interface GetUserDetailParameters {\n mustChangePassword?: boolean;\n questionSecretStatus?: string;\n msg?: string;\n}\n","import { Component, OnInit, AfterViewInit } from '@angular/core';\nimport { timer } from 'rxjs';\nimport { AuthService } from '../auth.service';\n\n@Component({\n selector: 'app-signin-redirect',\n templateUrl: './signin-redirect.component.html',\n styleUrls: ['./signin-redirect.component.scss']\n})\nexport class SigninRedirectComponent implements OnInit, AfterViewInit {\n\n constructor(private authService: AuthService) { }\n\n ngOnInit() {\n }\n\n ngAfterViewInit() {\n this.signin();\n }\n\n\n signin() {\n timer(100).subscribe(() => {\n this.authService.login();\n });\n }\n\n}\n","import { Component, isDevMode, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { AuthService } from 'src/app/authentication/auth.service';\nimport { ConstantService, HomeQueryStringEnum, ThemeEnum } from 'src/app/services/common/constant.service';\nimport { AppSettingsService } from 'src/app/services/common/appsettings.service';\nimport { environment } from 'src/environments/environment';\n\n@Component({\n selector: 'app-signin',\n templateUrl: './signin.component.html',\n styleUrls: ['./signin.component.scss']\n})\nexport class SigninComponent implements OnInit {\n mainLogo: string;\n homeBackground: string;\n version: string;\n allowRegister: boolean = false;\n\n constructor(\n private authService: AuthService,\n private activatedRoute: ActivatedRoute,\n private constantService: ConstantService ) {\n this.version = environment.apiVersion;\n }\n\n ngOnInit() {\n sessionStorage.setItem('dataconf', '');\n this.constantService.resetTenant();\n \n if (this.authService.isAuthenticated()) {\n return this.authService.redirectUser();\n }\n\n const toastOption = {\n timeOut: 5000,\n preventDuplicates: false,\n enableHtml: true,\n };\n\n this.activatedRoute.queryParams.subscribe(params => {\n const app = params.app;\n if (app === HomeQueryStringEnum.error) {\n console.error(\n 'Sorry, you can not access this app because you are not assigned to this app in' + this.constantService.showOrgName + '.' +\n + '
If you are wondering why this is happening, please contact your administrator. ', 'SSO', true, toastOption);\n }\n });\n\n this.mainLogo = this.constantService.getImageFromServer(ThemeEnum.mainLogo);\n this.homeBackground = this.constantService.getImageFromServer(ThemeEnum.homeBackground);\n\n this.allowRegister = !environment.singleTenantMode;\n\n }\n\n signin() {\n this.authService.login();\n }\n\n}\n","import { Component, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\n\n@Component({\n selector: 'app-custom-redirection',\n templateUrl: './custom.redirection.html'\n})\nexport class AzureCustomRedirectionComponent implements OnInit {\n\n\n returnUrl: string;\n code: string;\n\n constructor(\n private activatedRoute: ActivatedRoute,\n private router: Router\n ) { }\n\n ngOnInit() {\n this.returnUrl = this.activatedRoute.snapshot.queryParams.state ?? null;\n this.code = this.activatedRoute.snapshot.queryParams.code ?? null;\n\n let redirect = '';\n if (this.returnUrl && this.code) {\n redirect = this.returnUrl + '?code=' + this.code;\n } else {\n redirect = this.returnUrl + '?authorizeError=true';\n }\n window.location.href = redirect;\n }\n\n}\n","import { Component, NgZone, OnInit } from '@angular/core';\nimport { environment } from '../../../environments/environment';\n\n\n\ndeclare const gapi: any;\n\n@Component({\n})\nexport class GoogleAuthIframeComponent implements OnInit {\n\n\n clientId: string;\n clientSecret: string;\n discoveryDocs: string[];\n scopes: string = [\n \"https://www.googleapis.com/auth/admin.directory.user\",\n \"https://www.googleapis.com/auth/admin.directory.group\",\n \"https://www.googleapis.com/auth/admin.directory.userschema\",\n \"https://www.googleapis.com/auth/admin.directory.user.readonly\",\n \"https://www.googleapis.com/auth/admin.directory.domain.readonly\"\n ].join(\" \");\n\n constructor(private zone: NgZone) {\n this.clientId = environment.googleDirectoryClientId;\n this.clientSecret = environment.googleDirectoryClientSecret;\n }\n\n ngOnInit(): void {\n this.loadClient().then(\n result => {\n return this.initClient()\n },\n err => { this.returnError(err) }\n ).then(result => {\n return this.signin();\n }, err => { this.returnError(err) })\n }\n\n loadClient(): Promise {\n return new Promise((resolve, reject) => {\n this.zone.run(() => {\n gapi.load('client:auth2', {\n callback: resolve,\n onerror: reject,\n timeout: 1000,\n ontimeout: reject\n });\n })\n })\n }\n\n initClient(): Promise {\n let initObj = {\n apiKey: this.clientSecret,\n clientId: this.clientId,\n discoveryDocs: this.discoveryDocs,\n scope: this.scopes,\n plugin_name: 'workaround'\n }\n return new Promise((resolve, reject) => {\n this.zone.run(() => {\n gapi.client.init(initObj).then(resolve, reject);\n });\n })\n }\n\n\n\n /**\n * Sign in the user upon button click.\n */\n signin(): Promise {\n const authInstance = gapi.auth2.getAuthInstance();\n return new Promise((resolve, reject) => {\n this.zone.run(() => {\n authInstance.grantOfflineAccess()\n .then(result => {\n window.parent.window.postMessage({ \"response\": result }, document.referrer);\n },\n err => { this.returnError(err) }).then(resolve, reject);\n })\n })\n\n }\n\n returnError(err: any) {\n window.parent.window.postMessage({ \"error\": err }, document.referrer);\n }\n\n}\n","import { DatePipe } from '@angular/common';\nimport {\n Component,\n OnDestroy,\n OnInit,\n QueryList,\n ViewChildren,\n} from '@angular/core';\nimport { FormBuilder, FormControl, FormGroup } from '@angular/forms';\nimport { NgbDateStruct } from '@ng-bootstrap/ng-bootstrap';\nimport { TranslateService } from '@ngx-translate/core';\nimport { ChartConfiguration } from 'chart.js';\nimport 'chartjs-adapter-date-fns';\nimport jsVectorMap from 'jsvectormap';\nimport 'jsvectormap/dist/maps/world.js';\nimport { BaseChartDirective } from 'ng2-charts';\nimport { Subscription } from 'rxjs';\nimport { AuthService } from '../authentication/auth.service';\nimport {\n AuthenticationsService,\n DashboardLoginsByApplicationViewModel,\n DashboardLoginsByAuthenticatorViewModel,\n DashboardLoginsViewModel,\n HeatmapAnomalyCountModel,\n HeatmapLoginCountModel,\n} from '../services/analytics';\nimport { DashboardAuthenticatorEnrollmentViewModel } from '../services/analytics/model/dashboardAuthenticatorEnrollmentViewModel';\nimport { ConstantService } from '../services/common/constant.service';\nimport { CountryService } from '../services/master';\nimport { ApplicationSettingService } from '../services/organization';\n\n@Component({\n selector: 'app-dashboard',\n templateUrl: './dashboard.component.html',\n styleUrls: ['./dashboard.component.scss'],\n})\nexport class DashboardComponent implements OnInit, OnDestroy {\n private heatmapForm: FormGroup;\n private authenticatorEnrollmentData = [];\n private authenticatorEnrollmentLabels = [];\n private authenticatorLoginsData = [];\n private authenticatorLoginsLabels = [];\n private applicationLoginsData = [];\n private applicationLoginsLabels = [];\n private failedLoginsData = [];\n startDate: Date;\n startDateDisplay: string;\n endDate: Date;\n endDateDisplay: string;\n totalUsers: number;\n configuredApplications: number;\n componentInstance = this;\n\n successfulLogins: number;\n successfulLoginsForPeriod: number;\n failedLogins: number;\n failedLoginsForPeriod: number;\n\n private colors = {\n lightBlue: '#00cccc',\n darkBlue: '#560bd0',\n };\n\n private strings = {\n authenticatorEnrollment: {\n enrolled: 'Enrolled',\n notEnrolled: 'Not Enrolled',\n },\n authenticatorLogins: {\n successful: 'Successful Logins',\n failed: 'Failed Logins',\n },\n applicationLogins: {\n successful: 'Successful Logins',\n failed: 'Failed Logins',\n otherApps: 'Other Apps',\n },\n };\n\n orgId: number;\n\n minBarLength: number = 2;\n\n private subscriptions = new Subscription();\n\n filterForm: FormGroup;\n\n datePipe: DatePipe;\n\n heatmapChart: any;\n heatmapChartData: any;\n\n @ViewChildren(BaseChartDirective) charts: QueryList;\n\n constructor(\n private authService: AuthService,\n public countryService: CountryService,\n public authenticationsService: AuthenticationsService,\n public constantService: ConstantService,\n public translateService: TranslateService,\n private applicationSettingService: ApplicationSettingService\n ) {}\n\n ngOnInit() {\n this.orgId = this.authService.organizationId;\n\n this.datePipe = new DatePipe(this.translateService.currentLang);\n\n this.subscriptions.add(\n this.translateService.onLangChange.subscribe((event) => {\n this.updateTranslations();\n })\n );\n\n this.endDate = new Date();\n this.endDateDisplay = this.formatDate(this.endDate);\n this.startDate = new Date(new Date().setDate(this.endDate.getDate() - 30));\n this.startDate.setUTCHours(0, 0, 0, 0);\n this.startDateDisplay = this.formatDate(this.startDate);\n this.heatmapChartData = {\n countryScales: {},\n countryCodes: {},\n countries: {},\n };\n this.createFilterForm();\n this.createHeatmapForm();\n this.getCharts();\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n getCharts(): void {\n this.getTotalUsers();\n this.getConfiguredApplications();\n this.getAllLogins();\n this.getHeatmapLoginCount();\n\n this.subscriptions.add(\n this.authenticationsService\n .apiDashboardAuthenticationsEnrollmentOrganizationMnemonicGet(\n this.constantService.getSubdomain()\n )\n .subscribe((result) => {\n this.setAuthenticatorEnrollment(result);\n })\n );\n this.subscriptions.add(\n this.authenticationsService\n .apiDashboardAuthenticationsLoginsByAuthenticatorOrganizationMnemonicGet(\n this.constantService.getSubdomain(),\n this.startDate.toISOString(),\n this.endDate.toISOString()\n )\n .subscribe((result) => {\n this.setAuthenticatorLogins(result);\n })\n );\n this.subscriptions.add(\n this.authenticationsService\n .apiDashboardAuthenticationsLoginsByApplicationOrganizationMnemonicGet(\n this.constantService.getSubdomain(),\n this.startDate.toISOString(),\n this.endDate.toISOString()\n )\n .subscribe((result) => {\n this.setApplicationLogins(result);\n })\n );\n this.subscriptions.add(\n this.authenticationsService\n .apiDashboardAuthenticationsFailedLoginsOrganizationMnemonicGet(\n this.constantService.getSubdomain(),\n this.startDate.toISOString(),\n this.endDate.toISOString()\n )\n .subscribe((result) => {\n this.setFailedLogins(result);\n })\n );\n\n this.updateTranslations();\n }\n\n getHeatmapAnomalyCount(): void {\n this.subscriptions.add(\n this.authenticationsService\n .apiDashboardAuthenticationsHeatmapAnomalyCountOrganizationMnemonicGet(\n this.constantService.getSubdomain(),\n this.startDate.toISOString(),\n this.endDate.toISOString()\n )\n .subscribe((result) => {\n this.setHeatmapAnomalyCountData(result);\n })\n );\n }\n\n getHeatmapLoginCount(): void {\n this.subscriptions.add(\n this.authenticationsService\n .apiDashboardAuthenticationsHeatmapLoginCountOrganizationMnemonicGet(\n this.constantService.getSubdomain(),\n this.startDate.toISOString(),\n this.endDate.toISOString()\n )\n .subscribe((result) => {\n this.setHeatmapLoginCountData(result);\n })\n );\n }\n\n formatDate(date: Date) {\n return this.datePipe.transform(date, 'longDate', '+0');\n }\n\n ngbDate(date: Date): NgbDateStruct {\n return {\n year: date.getFullYear(),\n month: date.getMonth() + 1,\n day: date.getDate(),\n };\n }\n\n createFilterForm(): void {\n this.filterForm = new FormGroup({\n startDate: new FormControl(this.ngbDate(this.startDate)),\n endDate: new FormControl(this.ngbDate(this.endDate)),\n });\n }\n\n createHeatmapForm(): void {\n this.heatmapForm = new FormGroup({\n selectedType: new FormControl('loginCount'),\n });\n }\n\n get heatmapSelectedType() {\n return this.heatmapForm.controls.selectedType;\n }\n\n private updateTranslations() {\n this.strings.authenticatorEnrollment.enrolled =\n this.translateService.instant(\n 'Dashboard.AuthenticatorEnrollmentEnrolled'\n );\n this.strings.authenticatorEnrollment.notEnrolled =\n this.translateService.instant(\n 'Dashboard.AuthenticatorEnrollmentNotEnrolled'\n );\n if (this.authenticatorEnrollmentData[0]) {\n this.authenticatorEnrollmentData[0].label =\n this.strings.authenticatorEnrollment.enrolled;\n this.authenticatorEnrollmentData[1].label =\n this.strings.authenticatorEnrollment.notEnrolled;\n }\n\n this.strings.authenticatorLogins.successful = this.translateService.instant(\n 'Dashboard.AuthenticatorLoginsSuccessful'\n );\n this.strings.authenticatorLogins.failed = this.translateService.instant(\n 'Dashboard.AuthenticatorLoginsFailed'\n );\n if (this.authenticatorLoginsData[0]) {\n this.authenticatorLoginsData[0].label =\n this.strings.authenticatorLogins.successful;\n this.authenticatorLoginsData[1].label =\n this.strings.authenticatorLogins.failed;\n }\n\n this.strings.applicationLogins.successful = this.translateService.instant(\n 'Dashboard.ApplicationLoginsSuccessful'\n );\n this.strings.applicationLogins.failed = this.translateService.instant(\n 'Dashboard.AuthenticatorLoginsFailed'\n );\n this.strings.applicationLogins.otherApps = this.translateService.instant(\n 'Dashboard.OtherApps'\n );\n if (this.authenticatorLoginsData[0]) {\n this.applicationLoginsData[0].label =\n this.strings.applicationLogins.successful;\n this.applicationLoginsData[1].label =\n this.strings.applicationLogins.failed;\n }\n\n if (this.charts) {\n this.charts.forEach((x) => {\n x.chart.update();\n });\n }\n }\n\n changeStartDate(): void {\n const date = this.filterForm.value.startDate;\n this.startDate = new Date(\n Date.UTC(date.year, date.month - 1, date.day, 0, 0, 0)\n );\n this.startDateDisplay = this.formatDate(this.startDate);\n this.getCharts();\n }\n\n changeEndDate(): void {\n const date = this.filterForm.value.endDate;\n this.endDate = new Date(\n Date.UTC(date.year, date.month - 1, date.day, 23, 59, 59, 999)\n );\n this.endDateDisplay = this.formatDate(this.endDate);\n this.getCharts();\n }\n\n setHeatmapSelectedType(value: string): void {\n if (value === 'loginCount') {\n this.getHeatmapLoginCount();\n } else {\n this.getHeatmapAnomalyCount();\n }\n }\n\n private setAuthenticatorEnrollment(\n data: DashboardAuthenticatorEnrollmentViewModel[]\n ): void {\n const enabledAuthenticators = data.filter((x) => x.isEnabled);\n this.authenticatorEnrollmentData = [\n {\n label: this.strings.authenticatorEnrollment.enrolled,\n data: enabledAuthenticators.map((x) => x.enrolledCount),\n backgroundColor: this.colors.darkBlue,\n },\n {\n label: this.strings.authenticatorEnrollment.notEnrolled,\n data: enabledAuthenticators.map((x) => x.notEnrolledCount),\n backgroundColor: this.colors.lightBlue,\n },\n ];\n this.authenticatorEnrollmentLabels = enabledAuthenticators.map(\n (x) => x.name\n );\n }\n\n authenticatorEnrollmentChartOptions: ChartConfiguration['options'] = {\n responsive: true,\n scales: {\n x: {\n stacked: true,\n },\n y: {\n stacked: true,\n ticks: {\n stepSize: 1,\n },\n },\n },\n };\n\n private setAuthenticatorLogins(\n data: DashboardLoginsByAuthenticatorViewModel[]\n ): void {\n this.authenticatorLoginsData = [\n {\n label: this.strings.authenticatorLogins.successful,\n data: data.map((x) => x.successfulLoginCount),\n backgroundColor: this.colors.lightBlue,\n minBarLength: this.minBarLength,\n },\n {\n label: this.strings.authenticatorLogins.failed,\n data: data.map((x) => x.failedLoginCount),\n backgroundColor: this.colors.darkBlue,\n minBarLength: this.minBarLength,\n },\n ];\n this.authenticatorLoginsLabels = data.map((x) => x.name);\n }\n\n authenticatorLoginsOptions: ChartConfiguration['options'] = {\n scales: {\n y: {\n ticks: {\n precision: 0,\n },\n },\n },\n };\n\n private setApplicationLogins(\n data: DashboardLoginsByApplicationViewModel[]\n ): void {\n let apps = data; //.filter(x => x.successfulLoginCount > 0);\n if (apps.length > 10) {\n apps.sort((a, b) => a.successfulLoginCount - b.successfulLoginCount);\n var removed = apps.splice(10);\n const otherSuccessfulTotal = removed.reduce((a, b) => {\n return {\n successfulLoginCount: a.successfulLoginCount + b.successfulLoginCount,\n };\n }).successfulLoginCount;\n const otherFailedTotal = removed.reduce((a, b) => {\n return { failedLoginCount: a.failedLoginCount + b.failedLoginCount };\n }).failedLoginCount;\n apps.push({\n applicationLabel: this.strings.applicationLogins.otherApps,\n successfulLoginCount: otherSuccessfulTotal,\n failedLoginCount: otherFailedTotal,\n });\n }\n this.applicationLoginsData = [\n {\n label: this.strings.applicationLogins.successful,\n data: apps.map((x) => x.successfulLoginCount),\n backgroundColor: this.colors.lightBlue,\n minBarLength: this.minBarLength,\n },\n {\n label: this.strings.applicationLogins.failed,\n data: apps.map((x) => x.failedLoginCount),\n backgroundColor: this.colors.darkBlue,\n minBarLength: this.minBarLength,\n },\n ];\n\n this.applicationLoginsLabels = apps.map((x) => x.applicationLabel);\n }\n\n applicationLoginsOptions: ChartConfiguration['options'] = {\n scales: {\n y: {\n ticks: {\n precision: 0,\n },\n },\n },\n };\n\n private setHeatmapLoginCountData(data: HeatmapLoginCountModel): void {\n this.heatmapChartData.countries = data.countries;\n this.heatmapChartData.countryCodes = Object.keys(data.countries);\n this.heatmapChartData.countryScales = {};\n this.heatmapChartData.countryCodes.forEach((code) => {\n var rate =\n data.countries[code].failedCount / data.countries[code].successfulCount;\n\n //if (rate >= 0.5) {\n // this.heatmapChartData.countryScales[code] = 'scale3';\n //} else if (rate >= 0.05 && rate < 0.5) {\n // this.heatmapChartData.countryScales[code] = 'scale1';\n //} else if (rate >= 0 && rate < 0.05) {\n // this.heatmapChartData.countryScales[code] = 'scale1';\n //}\n this.heatmapChartData.countryScales[code] = 'scale1';\n });\n\n if (!!this.heatmapChart) {\n // Empty heatmap and destroy the object\n $('#dashboard-Heatmap-container').empty();\n this.heatmapChart.destroy();\n }\n\n // Init heatmap\n this.heatmapChart = new jsVectorMap({\n data: {\n countryScales: {},\n countryCodes: {},\n countries: {},\n },\n selector: '#dashboard-Heatmap-container',\n map: 'world',\n zoomOnScroll: false,\n regionStyle: {\n initial: {},\n hover: { fill: '#17C8E5' },\n },\n // Hide for R1\n series: {\n regions: [\n {\n attribute: 'fill',\n //legend: {\n // title: 'Series',\n //},\n scale: {\n scale1: '#4061a0',\n scale2: '#6f88ba',\n scale3: '#d7e2f2',\n },\n values: this.heatmapChartData.countryScales,\n },\n ],\n },\n \n \n // tooltip\n onRegionTooltipShow(event, tooltip, code) {\n if (this.params.data.countryCodes.indexOf(code) < 0) {\n event.preventDefault();\n return;\n }\n\n tooltip.css({\n backgroundColor: '#fff',\n color: '#000',\n padding: '16px',\n });\n tooltip.text(\n `
${tooltip.text()}
` +\n `

Logins: ${this.params.data.countries[code].successfulCount} / ${this.params.data.countries[code].failedCount} (good / bad)

`,\n true // Enables HTML\n );\n },\n });\n\n this.heatmapChart.params.data = this.heatmapChartData;\n\n // this.countries = {\n // countries: data.countries\n // };\n }\n\n private setHeatmapAnomalyCountData(data: HeatmapAnomalyCountModel): void {\n this.heatmapChartData.countries = data.countries;\n this.heatmapChartData.countryCodes = Object.keys(data.countries);\n this.heatmapChartData.countryScales = {};\n this.heatmapChartData.countryCodes.forEach((code) => {\n var rate =\n data.countries[code].anomalyCount / data.countries[code].normalCount;\n\n //if (rate >= 0.5) {\n // this.heatmapChartData.countryScales[code] = 'scale3';\n //} else if (rate >= 0.05 && rate < 0.5) {\n // this.heatmapChartData.countryScales[code] = 'scale1';\n //} else if (rate >= 0 && rate < 0.05) {\n // this.heatmapChartData.countryScales[code] = 'scale1';\n //}\n this.heatmapChartData.countryScales[code] = 'scale1';\n });\n\n if (!!this.heatmapChart) {\n // Empty heatmap and destroy the object\n $('#dashboard-Heatmap-container').empty();\n this.heatmapChart.destroy();\n }\n\n // Init heatmap\n this.heatmapChart = new jsVectorMap({\n data: {\n countryScales: {},\n countryCodes: {},\n countries: {},\n },\n selector: '#dashboard-Heatmap-container',\n map: 'world',\n zoomOnScroll: false,\n regionStyle: {\n initial: {},\n hover: { fill: '#17C8E5' },\n },\n // Hide for R1\n series: {\n regions: [\n {\n attribute: 'fill',\n //legend: {\n // title: 'Series',\n //},\n scale: {\n scale1: '#4061a0',\n scale2: '#6f88ba',\n scale3: '#d7e2f2',\n },\n values: this.heatmapChartData.countryScales,\n },\n ],\n },\n \n\n // tooltip\n onRegionTooltipShow(event, tooltip, code) {\n if (this.params.data.countryCodes.indexOf(code) < 0) {\n event.preventDefault();\n return;\n }\n\n tooltip.css({\n backgroundColor: '#fff',\n color: '#000',\n padding: '16px',\n });\n tooltip.text(\n `
${tooltip.text()}
` +\n `

Logins: ${this.params.data.countries[code].anomalyCount} / ${this.params.data.countries[code].normalCount} (anomaly / normal)

`,\n true // Enables HTML\n );\n },\n });\n\n this.heatmapChart.params.data = this.heatmapChartData;\n\n // this.countries = {\n // countries: data.countries\n // };\n }\n\n private setFailedLogins(data: DashboardLoginsViewModel[]): void {\n this.failedLoginsData = [\n {\n label: '',\n data: data.map((login) => ({\n x: login.timestamp.split('T')[0],\n y: login.failedCount,\n })),\n backgroundColor: this.colors.lightBlue,\n },\n ];\n }\n\n failedLoginsOptions: ChartConfiguration['options'] = {\n scales: {\n x: {\n type: 'time',\n time: {\n minUnit: 'day',\n },\n },\n y: {\n ticks: {\n precision: 0,\n },\n },\n },\n plugins: {\n tooltip: {\n callbacks: {\n title: this.failedLoginTooltip,\n },\n },\n },\n };\n\n failedLoginTooltip(data: any): string {\n return data[0].label.split(', 12:00:00')[0];\n }\n\n getTotalUsers(): void {\n this.subscriptions.add(\n this.authenticationsService\n .apiDashboardAuthenticationsTotalUsersOrganizationMnemonicGet(\n this.constantService.getSubdomain()\n )\n .subscribe((data) => {\n this.totalUsers = data;\n })\n );\n }\n\n getConfiguredApplications(): void {\n this.subscriptions.add(\n this.applicationSettingService\n .apiApplicationSettingGetPagedConfiguredAppOrganizationIdGet(\n this.orgId,\n '',\n 1,\n 10000\n )\n .subscribe((data) => {\n this.configuredApplications = data.result.filter(\n (x) => x.isConfigured\n ).length;\n })\n );\n }\n\n getAllLogins(): void {\n this.authenticationsService\n .apiDashboardAuthenticationsAllLoginsOrganizationMnemonicGet(\n this.constantService.getSubdomain(),\n this.startDate.toISOString(),\n this.endDate.toISOString()\n )\n .subscribe((data) => {\n this.successfulLogins = data.successfulLogins;\n this.successfulLoginsForPeriod = data.successfulLoginsForPeriod;\n this.failedLogins = data.failedLogins;\n this.failedLoginsForPeriod = data.failedLoginsForPeriod;\n });\n }\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-error',\n templateUrl: './error.component.html',\n styleUrls: ['./error.component.scss']\n})\nexport class ErrorComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","import { Component } from '@angular/core';\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\nimport { Subject } from 'rxjs';\n\n@Component({\n selector: 'app-appikeys-confirm-modal',\n templateUrl: 'appikeys-confirm-modal.html'\n})\n\nexport class APIKeysConfirmModal{\n\n destroy$: Subject = new Subject();\n\n constructor( private activeModal: NgbActiveModal) {}\n\n closeModal(isContinue:boolean){\n this.activeModal.close(isContinue);\n }\n}","import { Component, OnInit, OnDestroy } from '@angular/core';\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\nimport { Subject } from 'rxjs';\n\n@Component({\n selector: 'app-password-compromised-modal',\n templateUrl: 'password-compromised-modal.html',\n})\n\nexport class PasswordCompromisedModal{\n\n destroy$: Subject = new Subject();\n\n constructor(\n private activeModal: NgbActiveModal\n ) {}\n\n closeModal(isContinue:boolean){\n this.activeModal.close(isContinue);\n }\n}","import { Component, OnDestroy, OnInit, Input } from '@angular/core';\nimport { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\nimport { TranslateService } from '@ngx-translate/core';\nimport { ToastrService } from 'ngx-toastr';\nimport { MyAppGroupApplicationService } from 'src/app/services/user';\n\n@Component({\n selector: 'app-add-application-to-group-modal',\n templateUrl: './add-application-to-group-modal.component.html',\n styleUrls: ['./add-application-to-group-modal.component.scss']\n})\nexport class AddApplicationToGroupModalComponent implements OnInit {\n public addMyAppGroupApplicationsForm: FormGroup\n @Input() userId;\n @Input() organizationId;\n @Input() applicationList;\n @Input() groupList;\n\n constructor(\n private fb: FormBuilder,\n private toastrService: ToastrService,\n private translateService: TranslateService,\n public activeModal: NgbActiveModal,\n public myAppGroupApplicationService: MyAppGroupApplicationService\n ) { }\n\n ngOnInit(): void {\n this.initForm();\n }\n private initForm() {\n this.addMyAppGroupApplicationsForm = this.fb.group({\n myAppGroupId: [Validators.compose([Validators.required])],\n });\n }\n\n save() {\n if (!this.addMyAppGroupApplicationsForm.controls.myAppGroupId.errors?.required) {\n var myAppGroupId = this.addMyAppGroupApplicationsForm.value.myAppGroupId;\n this.myAppGroupApplicationService.apiMyAppGroupApplicationAddMyAppGroupApplicationsUserIdOrganizationIdMyAppGroupIdPost(this.userId, this.organizationId, myAppGroupId, this.applicationList).subscribe(data => {\n this.toastrService.success(this.translateService.instant('Action.Success'));\n this.activeModal.close(true);\n })\n }\n\n }\n\n}\n","import { Component, OnDestroy, OnInit, Input } from '@angular/core';\nimport { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\nimport { TranslateService } from '@ngx-translate/core';\nimport { ToastrService } from 'ngx-toastr';\nimport { MyAppGroupService } from 'src/app/services/user';\n\n@Component({\n selector: 'app-delete-group-modal',\n templateUrl: './delete-group-modal.component.html',\n styleUrls: ['./delete-group-modal.component.scss']\n})\nexport class DeleteGroupModalComponent implements OnInit {\n @Input() myAppGroupId;\n\n constructor(private fb: FormBuilder,\n private toastrService: ToastrService,\n private translateService: TranslateService,\n public activeModal: NgbActiveModal,\n private myAppGroupService: MyAppGroupService) { }\n\n ngOnInit(): void {\n }\n delete() {\n this.myAppGroupService.apiMyAppGroupDeleteMyAppGroupByIdMyAppGroupIdDelete(this.myAppGroupId).subscribe({\n next: data => {\n if (data) {\n this.toastrService.success(this.translateService.instant('Action.Success'));\n this.activeModal.close(true);\n }\n },\n })\n }\n\n}\n","import { Component, OnDestroy, OnInit, Input } from '@angular/core';\nimport { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\nimport { TranslateService } from '@ngx-translate/core';\nimport { ToastrService } from 'ngx-toastr';\nimport { MyAppGroupApplicationService } from 'src/app/services/user';\n@Component({\n selector: 'app-delete-my-app-group-application-modal',\n templateUrl: './delete-my-app-group-application-modal.component.html',\n styleUrls: ['./delete-my-app-group-application-modal.component.scss']\n})\nexport class DeleteMyAppGroupApplicationModalComponent implements OnInit {\n public addMyAppGroupApplicationsForm: FormGroup\n @Input() userId;\n @Input() organizationId;\n @Input() applicationList;\n @Input() groupList;\n @Input() myAppGroupId;\n\n constructor(\n private fb: FormBuilder,\n private toastrService: ToastrService,\n private translateService: TranslateService,\n public activeModal: NgbActiveModal,\n public myAppGroupApplicationService: MyAppGroupApplicationService\n ) { }\n\n ngOnInit(): void {\n this.initForm();\n }\n private initForm() {\n }\n\n delete() {\n this.myAppGroupApplicationService.apiMyAppGroupApplicationDeletelMyAppGroupApplicationByIdUserIdOrganizationIdMyAppGroupIdDelete(this.userId, this.organizationId, this.myAppGroupId, this.applicationList).subscribe(data => {\n this.toastrService.success(this.translateService.instant('Action.Success'));\n this.activeModal.close(true);\n })\n }\n\n}\n","import { Component, OnDestroy, OnInit, Input } from '@angular/core';\nimport { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\nimport { TranslateService } from '@ngx-translate/core';\nimport { ToastrService } from 'ngx-toastr';\nimport { MyAppGroupModel, MyAppGroupService } from 'src/app/services/user';\n\n@Component({\n selector: 'app-edit-group-modal',\n templateUrl: './edit-group-modal.component.html',\n styleUrls: ['./edit-group-modal.component.scss']\n})\nexport class EditGroupModalComponent implements OnInit {\n public editMyAppGroupForm: FormGroup;\n @Input() myAppGroupmodel: MyAppGroupModel;\n @Input() userId;\n\n constructor(\n private fb: FormBuilder,\n private toastrService: ToastrService,\n private translateService: TranslateService,\n public activeModal: NgbActiveModal,\n private myAppGroupService: MyAppGroupService\n ) { }\n\n ngOnInit(): void {\n this.initForm();\n this.myAppGroupmodel.userId = this.userId;\n }\n private initForm() {\n this.editMyAppGroupForm = this.fb.group({\n groupName: [this.myAppGroupmodel.groupName, Validators.compose([Validators.required])],\n });\n }\n\n public save() {\n if (!this.editMyAppGroupForm.controls.groupName.errors?.required) {\n this.myAppGroupmodel.groupName = this.editMyAppGroupForm.value.groupName;\n this.myAppGroupService.apiMyAppGroupUpdateMyAppGroupMyAppGroupPost(this.myAppGroupmodel).subscribe(data => {\n this.toastrService.success(this.translateService.instant('Action.Success'));\n this.activeModal.close(true);\n })\n\n }\n\n }\n\n}\n","import { Component, OnInit, Input } from '@angular/core';\nimport { TranslateService } from '@ngx-translate/core';\nimport { PerfectScrollbarConfigInterface } from 'ngx-perfect-scrollbar';\nimport { ApplicationSettingService } from '../services/organization';\nimport { UserApplicationService } from '../services/user';\nimport { AuthService } from 'src/app/authentication/auth.service';\nimport { ConstantService } from '../services/common/constant.service';\nimport { ApplicationStateService } from '../application/application.service';\nimport { NewGroupModalComponent } from './new-group-modal/new-group-modal.component';\nimport { AddApplicationToGroupModalComponent } from './add-application-to-group-modal/add-application-to-group-modal.component';\nimport { DeleteGroupModalComponent } from './delete-group-modal/delete-group-modal.component';\nimport { EditGroupModalComponent } from './edit-group-modal/edit-group-modal.component';\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\nimport { MyAppGroupService, MyAppGroupModel } from '../services/user';\nimport { MyAppGroupApplicationService } from '../services/user';\nimport { DeleteMyAppGroupApplicationModalComponent } from './delete-my-app-group-application-modal/delete-my-app-group-application-modal.component';\n\n@Component({\n selector: 'app-mypplications',\n templateUrl: './mypplications.component.html',\n styleUrls: ['./mypplications.component.scss'],\n})\nexport class MyApplicationsComponent implements OnInit {\n userId = this.authService.user.profile.UserID;\n organizationId = this.authService.organizationId;\n\n applications: any[] = [];\n public scrollbarConfig: any;\n curPage: number;\n pageSize: number;\n noEntries: number[] = [5, 10, 25, 50, 100];\n lengthMenuText = this.translate\n .instant('Datatables.LengthMenu')\n .split('_MENU_');\n myAppGroups: any[] = [];\n isAddGroupActive: boolean;\n myAppGroupApplicationList: any[] = [];\n isMyAppGroup: boolean;\n currentMyAppGroupID: number;\n selectedGroup: MyAppGroupModel;\n\n constructor(\n public translate: TranslateService,\n private applicationStateService: ApplicationStateService,\n private authService: AuthService,\n private userApplicationService: UserApplicationService,\n private constantService: ConstantService,\n private modalService: NgbModal,\n private myAppGroupService: MyAppGroupService,\n private myAppGroupApplicationService: MyAppGroupApplicationService\n ) { }\n\n ngOnInit() {\n this.pageSize = this.applicationStateService.myApplicationState.pageSize;\n this.curPage = this.applicationStateService.myApplicationState.curPage;\n this.initialise();\n }\n\n initialise() {\n this.getAllUserApplications();\n this.getMyAppGroup();\n this.isAddGroupActive = false;\n this.myAppGroupApplicationList = [];\n this.isMyAppGroup = false;\n this.currentMyAppGroupID = null;\n }\n\n getAllUserApplications() {\n this.isAddGroupActive = false;\n this.myAppGroupApplicationList = [];\n this.isMyAppGroup = false;\n this.currentMyAppGroupID = null;\n this.userApplicationService\n .apiUserApplicationGetAllUserApplicationGet()\n .subscribe({\n next: (result) => (this.applications = result),\n error: (err) => {\n console.log(err);\n },\n complete: () => { },\n });\n }\n\n getAllGroupApplications(myAppGroup) {\n this.isAddGroupActive = false;\n this.myAppGroupApplicationList = [];\n var myAppGroupId = myAppGroup.myAppGroupId;\n this.isMyAppGroup = true;\n this.currentMyAppGroupID = myAppGroupId;\n this.selectedGroup = myAppGroup;\n this.myAppGroupApplicationService.apiMyAppGroupApplicationGetAllUserApplicationsbyMyGroupIdUserIdOrganizationIdMyAppGroupIdGet(this.userId, this.organizationId, myAppGroupId)\n .subscribe({\n next: (result) => (this.applications = result),\n error: (err) => {\n console.log(err);\n },\n complete: () => { },\n });\n }\n\n setAppStateURL(value) {\n const urlKey = value.relay_state ? 'relay_state' : 'thirdPartySignInUrl';\n let urlValue = value[urlKey];\n const objKeys = Object.keys(value);\n objKeys.forEach((element) => {\n if (element !== urlKey) {\n const newElement = `$${element}$`;\n urlValue = urlValue.replaceAll(newElement, value[element]);\n }\n });\n value[urlKey] = urlValue;\n }\n\n applicationDashboard(application) {\n if (!this.isAddGroupActive) {\n this.applicationDashBoardRedirect(application.attributesValue)\n }\n else {\n this.addApplicationToMyApplicationList(application)\n }\n }\n\n applicationDashBoardRedirect(appName) {\n const val = appName ? JSON.parse(appName) : undefined;\n this.setAppStateURL(val);\n if (val?.relay_state) {\n window.open(val.relay_state, '_blank');\n } else if (val?.thirdPartySignInUrl) {\n window.open(val.thirdPartySignInUrl, '_blank');\n }\n }\n\n getImageUrl(value: string) {\n if (value.startsWith('http')) {\n return value;\n } else if (!value.includes('assets/images')) {\n return this.constantService.imageUrl + value;\n }\n return value;\n }\n\n getTotalPages() {\n return Math.ceil(this.applications.length / this.pageSize);\n }\n\n setPageSizeOnChange(pageSize) {\n this.pageSize = pageSize;\n this.curPage = 1;\n this.applicationStateService.myApplicationState.pageSize = pageSize;\n this.applicationStateService.myApplicationState.curPage = 1;\n }\n\n\n\n getMyAppGroup() {\n this.myAppGroupService.apiMyAppGroupGetAllMyAppGroupsUserIdGet(this.userId).subscribe(data => {\n this.myAppGroups = data;\n })\n }\n\n enableAddMyAppGroup() {\n if (this.isAddGroupActive) {\n this.isAddGroupActive = false;\n this.myAppGroupApplicationList = [];\n }\n else {\n this.isAddGroupActive = true;\n }\n\n }\n addApplicationToMyApplicationList(application) {\n if (this.myAppGroupApplicationList.includes(application)) {\n const index = this.myAppGroupApplicationList.indexOf(application);\n if (index > -1) {\n this.myAppGroupApplicationList.splice(index, 1);\n }\n }\n else {\n this.myAppGroupApplicationList.push(application);\n }\n\n }\n\n openAddNewGroupModal() {\n const modalRef = this.modalService.open(NewGroupModalComponent, {\n size: 'md',\n windowClass: 'fadeInUp animated huge',\n backdrop: 'static',\n });\n // Set the values for modal\n modalRef.componentInstance.userId = this.userId;\n modalRef.result.then((result) => {\n if (result) {\n this.initialise();\n }\n })\n\n }\n\n openEditGroupModal() {\n const modalRef = this.modalService.open(EditGroupModalComponent, {\n size: 'md',\n windowClass: 'fadeInUp animated huge',\n backdrop: 'static',\n });\n // Set the values for modal\n modalRef.componentInstance.userId = this.userId;\n modalRef.componentInstance.myAppGroupmodel = this.selectedGroup;\n }\n\n openDeleteGroupModal() {\n const modalRef = this.modalService.open(DeleteGroupModalComponent, {\n size: 'md',\n windowClass: 'fadeInUp animated huge',\n backdrop: 'static',\n });\n // Set the values for modal\n modalRef.componentInstance.myAppGroupId = this.currentMyAppGroupID;\n modalRef.result.then((result) => {\n if (result) {\n this.initialise();\n }\n })\n\n }\n openAddApplicationToGroupModal() {\n const modalRef = this.modalService.open(AddApplicationToGroupModalComponent, {\n size: 'md',\n windowClass: 'fadeInUp animated huge',\n backdrop: 'static',\n });\n // Set the values for modal\n modalRef.componentInstance.userId = this.userId;\n modalRef.componentInstance.organizationId = this.organizationId;\n modalRef.componentInstance.groupList = this.myAppGroups;\n modalRef.componentInstance.applicationList = this.myAppGroupApplicationList;\n\n modalRef.result.then((result) => {\n if (result) {\n if(this.isMyAppGroup){\n this.getAllGroupApplications(this.selectedGroup);\n }\n }\n });\n }\n\n \n openDeleteMyAppGroupApplicationsModal() {\n const modalRef = this.modalService.open(DeleteMyAppGroupApplicationModalComponent, {\n size: 'md',\n windowClass: 'fadeInUp animated huge',\n backdrop: 'static',\n });\n // Set the values for modal\n modalRef.componentInstance.userId = this.userId;\n modalRef.componentInstance.organizationId = this.organizationId;\n modalRef.componentInstance.groupList = this.myAppGroups;\n modalRef.componentInstance.applicationList = this.myAppGroupApplicationList;\n modalRef.componentInstance.myAppGroupId = this.selectedGroup.myAppGroupId;\n modalRef.result.then((result) => {\n if (result) {\n this.getAllGroupApplications(this.selectedGroup);\n }\n })\n }\n\n\n\n selectAllApplication() {\n if (this.myAppGroupApplicationList.length == this.applications.length) {\n this.myAppGroupApplicationList = [];\n }\n else {\n this.myAppGroupApplicationList = this.applications;\n }\n }\n\n\n\n}\n","import { Component, OnDestroy, OnInit, Input } from '@angular/core';\nimport { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\nimport { TranslateService } from '@ngx-translate/core';\nimport { ToastrService } from 'ngx-toastr';\nimport { MyAppGroupModel, MyAppGroupService } from 'src/app/services/user';\n\n\n@Component({\n selector: 'app-new-group-modal',\n templateUrl: './new-group-modal.component.html',\n styleUrls: ['./new-group-modal.component.scss']\n})\nexport class NewGroupModalComponent implements OnInit {\n\n public addMyAppGroupForm: FormGroup;\n public myAppGroupmodel: MyAppGroupModel;\n @Input() userId;\n\n constructor(\n private fb: FormBuilder,\n private toastrService: ToastrService,\n private translateService: TranslateService,\n public activeModal: NgbActiveModal,\n private myAppGroupService: MyAppGroupService\n ) { }\n\n ngOnInit(): void {\n this.myAppGroupmodel = {\n \"userId\": 0,\n \"groupName\": \"\",\n };\n this.initForm();\n this.myAppGroupmodel.userId = this.userId;\n }\n\n private initForm() {\n this.addMyAppGroupForm = this.fb.group({\n groupName: [this.myAppGroupmodel.groupName, Validators.compose([Validators.required])],\n });\n }\n\n public save() {\n if (!this.addMyAppGroupForm.controls.groupName.errors?.required) {\n this.myAppGroupmodel.groupName = this.addMyAppGroupForm.value.groupName;\n this.myAppGroupService.apiMyAppGroupAddMyAppGroupPost(this.myAppGroupmodel).subscribe(data => {\n this.toastrService.success(this.translateService.instant('Action.Success'));\n this.activeModal.close(true);\n })\n }\n\n }\n\n}\n\n\n\n","import { Component, OnInit, ViewChild } from '@angular/core';\nimport { ConstantService, ThemeEnum } from '../../../services/common/constant.service';\nimport { UpdateLicenceComponent } from '../update-licence/update-licence.component';\nimport { ToastrService } from 'ngx-toastr';\nimport { ActivatedRoute } from '@angular/router';\n\n@Component({\n selector: 'app-update-expired',\n templateUrl: './update-expired.component.html',\n styleUrls: ['./update-expired.component.scss']\n})\nexport class UpdateExpiredComponent implements OnInit {\n\n private logoImage: string;\n\n private isSaving: boolean = false;\n private isDisabled: boolean = false;\n private method: string;\n private useFile: boolean = false;\n private orgName: string;\n private saveComplete: boolean = false;\n\n @ViewChild('updateLicence') updateLicenceComponent: UpdateLicenceComponent;\n\n constructor(\n private constantService: ConstantService,\n private activatedRoute: ActivatedRoute\n ) { }\n\n ngOnInit(): void {\n const logoImage = this.constantService.getSessionStorage(ThemeEnum.mainLogo);\n this.logoImage = logoImage ?? \"assets/images/se-white-logo.png\";\n\n const routeParams = this.activatedRoute.snapshot.params;\n this.method = routeParams.method;\n this.useFile = this.method == 'file';\n this.orgName = routeParams.orgName;\n }\n\n saveDisabledChanged(isDisabled: boolean) {\n this.isDisabled = isDisabled;\n }\n\n async save() {\n this.isSaving = true;\n try {\n let result = await this.updateLicenceComponent.updateLicenceSource(false);\n this.isSaving = false;\n if (result) {\n this.saveComplete = true;\n this.isDisabled = true;\n }\n }\n catch {\n this.isSaving = false;\n }\n }\n\n}\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { TranslateService } from '@ngx-translate/core';\nimport { ToastrService } from 'ngx-toastr';\nimport { Subscription } from 'rxjs';\nimport { AuthService } from 'src/app/authentication/auth.service';\nimport { ConstantService, UserRoles } from 'src/app/services/common/constant.service';\nimport { AgentService, AuthenticationType, SyslogClientModel, SyslogClientService } from 'src/app/services/organization';\nimport { HasPermissionService } from 'src/app/services/common/has-permission.service';\nimport { ValidationService } from 'src/app/services/common/validation.service';\n\n@Component({\n selector: 'app--client-form',\n templateUrl: './syslog-client-form.component.html',\n styleUrls: ['./syslog-client-form.component.scss'],\n})\nexport class SyslogClientFormComponent implements OnInit, OnDestroy {\n private subscriptions: Subscription[] = [];\n private syslogClientId: number;\n\n activeTab: string = 'configuration';\n agents: any[];\n originalAgentID = null;\n\n public syslogClientModel: SyslogClientModel = {};\n\n constructor(\n private authService: AuthService,\n private constantService: ConstantService,\n private translate: TranslateService,\n private syslogClientService: SyslogClientService,\n private agentService: AgentService,\n private toastrService: ToastrService,\n private activatedRoute: ActivatedRoute,\n private validationService: ValidationService,\n private router: Router\n ) { }\n\n ngOnInit() {\n\n this.syslogClientId = +this.constantService.decode(this.activatedRoute.snapshot.params.syslogClientId);\n\n this.activatedRoute.queryParamMap.subscribe((params) => {\n this.testConnection(false);\n });\n }\n\n\n setActiveTab(tab: string) {\n this.activeTab = tab;\n this.router.navigate([], {\n relativeTo: this.activatedRoute,\n queryParams: { activeTab: tab },\n });\n }\n\n private getClientInfo() {\n this.syslogClientService\n .apiSyslogClientIdOrganizationIdGet(this.syslogClientId, this.authService.organizationId)\n .subscribe((data) => {\n this.syslogClientModel = data;\n\n this.originalAgentID = this.syslogClientModel.agentID = this.agents.find(v => JSON.parse(v.syslogClientID)?.find(x => x == this.syslogClientModel.syslogClientId))?.agentID;\n });\n }\n\n\n submit(clientForm, isMapping?) {\n\n if (this.syslogClientModel.port != null) {\n this.syslogClientModel.port = +this.syslogClientModel.port;\n } else {\n this.syslogClientModel.port = 514;\n }\n\n const syslogClientModel = this.constantService.detachObject(\n this.syslogClientModel\n );\n\n\n if (this.syslogClientId) {\n let modelRemove = JSON.parse(JSON.stringify(syslogClientModel));\n modelRemove.agentID = this.originalAgentID;\n\n this.syslogClientService.apiSyslogClientRemoveSyslogAgentIdOrganizationIdPut(this.syslogClientId, this.authService.organizationId, modelRemove)\n .subscribe((data) => {\n this.updateSyslogClient(syslogClientModel, isMapping);\n });\n } else {\n this.createSyslogClient(syslogClientModel, clientForm);\n }\n\n\n\n }\n\n private createSyslogClient(syslogClientModel: any, clientForm: any) {\n\n this.syslogClientService\n .apiSyslogClientOrganizationIdOrganizationMnemonicPost(\n this.authService.organizationId,\n this.constantService.getSubdomain(),\n syslogClientModel\n )\n .subscribe({\n next: (data) => {\n this.toastrService.success(\n this.translate.instant('Action.Success')\n );\n this.back();\n },\n error: (e) => {\n if (e.error === 'Syslog.Error.IPUsed') {\n clientForm.form.controls['ipAddress'].setErrors({ isUsed: true });\n }\n },\n });\n }\n\n private updateSyslogClient(syslogClientModel: any, isMapping: any) {\n this.syslogClientService\n .apiSyslogClientIdOrganizationIdPut(\n this.syslogClientId,\n this.authService.organizationId,\n syslogClientModel\n )\n .subscribe((data) => {\n this.toastrService.success(\n this.translate.instant('Action.Success')\n );\n this.back();\n\n });\n }\n\n private back() {\n this.router.navigate(['premises',\n 'syslog-client']);\n }\n\n testConnection(showInfo = true): void {\n\n this.agentService.apiAgentByOrgKeyOrganizationMnemonicGet(this.constantService.getSubdomain()).subscribe(data => {\n this.agents = data;\n\n if (this.syslogClientId) {\n this.getClientInfo();\n\n } else {\n this.syslogClientModel.port = 514;\n }\n\n });\n\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach((subscription) => subscription.unsubscribe());\n }\n}\n","import { Component, OnDestroy, OnInit, ViewChild } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\nimport { TranslateService } from '@ngx-translate/core';\nimport { DataTableDirective } from 'angular-datatables';\nimport { ToastrService } from 'ngx-toastr';\nimport { Subscription } from 'rxjs';\nimport { AuthService } from 'src/app/authentication/auth.service';\nimport {\n ConstantService,\n UserRoles,\n} from 'src/app/services/common/constant.service';\nimport { HasPermissionService } from 'src/app/services/common/has-permission.service';\nimport {\n OrganizationSettingService,\n SyslogClientService,\n} from 'src/app/services/organization';\nimport { UsersService } from 'src/app/services/user';\nimport { ConfirmDialogComponent } from 'src/app/shared/confirm-dialog/confirm-dialog.component';\n\n@Component({\n selector: 'app-syslog-client',\n templateUrl: './syslog-client.component.html',\n styleUrls: ['./syslog-client.component.scss'],\n})\nexport class SyslogClientComponent implements OnInit, OnDestroy {\n @ViewChild(DataTableDirective, { static: false })\n datatableElement: any = DataTableDirective;\n private subscriptions: Subscription[] = [];\n private dtOptions: any = {};\n private lastPage: number = 0;\n private lastSearchText = '';\n private pageLength = 10;\n constructor(\n protected ngbModal: NgbModal,\n private authService: AuthService,\n private constantService: ConstantService,\n private translate: TranslateService,\n private usersService: UsersService,\n private toastrService: ToastrService,\n private syslogClientService: SyslogClientService,\n private organizationSettingService: OrganizationSettingService,\n private permission: HasPermissionService,\n private router: Router\n ) { }\n\n ngOnInit() {\n this.dtOptions = {\n language: this.constantService.TableLang,\n info: true,\n pagingType: 'full_numbers',\n pageLength: this.pageLength,\n displayStart: this.lastPage,\n search: { search: this.lastSearchText },\n autoWidth: false,\n ordering: true,\n lengthMenu: ['5', '10', '20', '50'],\n dom: 'lBfrtip', // Declare the use of the extension in the dom parameter\n buttons: this.permission.allowAccess([\n UserRoles.AdminUser,\n UserRoles.MspAdmin,\n UserRoles.SuperAdmin,\n ])\n ? [\n {\n text:\n '' +\n this.translate.instant('Button.Add'),\n attr: {\n class: 'btn btn-xs btn-primary ml-4',\n id: 'btnImport',\n },\n action: (e, dt, node, config) => {\n this.addClient();\n },\n },\n ]\n : [],\n columns: [\n { data: 'friendlyName', searchable: true, name: 'friendlyName' },\n { data: 'ipAddress', searchable: false, name: 'ipAddress' },\n { data: 'port', searchable: false, name: 'port' },\n {\n data: null,\n orderable: false,\n sortable: false,\n searchable: false,\n defaultContent: this.permission.allowAccess([\n UserRoles.AdminUser,\n UserRoles.MspAdmin,\n UserRoles.SuperAdmin,\n ])\n ? ''\n : '',\n },\n ],\n serverSide: true,\n processing: true,\n stateSave: true,\n stateSaveCallback: this.constantService.saveTableState,\n stateLoadCallback: this.constantService.loadTableState,\n ajax: (dataTablesParameters: any, callback) => {\n this.loadClients(dataTablesParameters, callback);\n },\n rowCallback: (row: Node, data: any[] | Object, index: number) => {\n $('.btnDelete', row).off('click');\n $('.btnDelete', row).on('click', () => {\n this.confirmDelete(data);\n return false;\n });\n\n const self = this;\n $('td', row).off('click');\n $('td', row).on('click', () => {\n self.viewDetail(data);\n });\n return row;\n },\n };\n }\n\n private confirmDelete(data) {\n const modalRef = this.ngbModal.open(ConfirmDialogComponent, {\n size: 'md',\n windowClass: 'fadeInUp animated huge',\n backdrop: 'static',\n keyboard: false,\n });\n\n modalRef.result.then((userResponse: boolean) => {\n if (userResponse) {\n this.syslogClientService\n .apiSyslogClientIdOrganizationIdDelete(\n data.syslogClientId,\n this.authService.organizationId\n )\n .subscribe(() => {\n this.toastrService.success(\n this.translate.instant('Action.Success')\n );\n this.reload();\n });\n }\n });\n }\n\n private reload() {\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.ajax.reload();\n });\n }\n\n private loadClients(dataTablesParameters: any, callback: any) {\n this.lastPage = dataTablesParameters.start;\n this.lastSearchText = dataTablesParameters.search.value;\n\n let currentPage =\n Math.round(dataTablesParameters.start / dataTablesParameters.length) + 1;\n let sortColumn =\n dataTablesParameters.columns[dataTablesParameters.order[0].column].data +\n ' ' +\n dataTablesParameters.order[0].dir;\n let searchCriteria: string[] = [];\n\n this.dtOptions.columns?.forEach((element) => {\n let andOr = searchCriteria.length ? 'or' : null;\n if (element.searchable) {\n searchCriteria.push(\n JSON.stringify({\n field: element.name,\n operator: 'contains',\n value: dataTablesParameters.search.value,\n andOr: andOr,\n writable: true,\n })\n );\n }\n });\n\n this.syslogClientService\n .apiSyslogClientGetPagedDataOrganizationIdGet(\n this.authService.organizationId,\n sortColumn,\n currentPage,\n dataTablesParameters.length,\n searchCriteria\n )\n .subscribe({\n next: (result) => {\n callback({\n recordsTotal: result.totalItems,\n recordsFiltered: result.totalItems,\n data: result.result,\n });\n },\n error: (err) => {\n this.dtOptions.processing = false;\n },\n });\n }\n\n private addClient() {\n this.router.navigate(['premises', 'add', 'syslog-client']);\n }\n\n private viewDetail(data) {\n this.router.navigate([\n 'premises',\n 'syslog-client',\n this.constantService.encode(data.syslogClientId),\n ]);\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach((subscription) => subscription.unsubscribe());\n }\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-profile',\n templateUrl: './profile.component.html',\n styleUrls: ['./profile.component.scss']\n})\nexport class ProfileComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n lineChartData = [{\n data: [12, 15, 18, 40, 35, 38, 32, 20, 25, 15, 25, 30],\n borderWidth: 1,\n fill: true\n }];\n\n lineChartColors = [\n {\n borderColor: 'rgba(0,123,255,1)',\n backgroundColor: 'rgba(0,123,255,.2)'\n }\n ];\n\n lineChartLabels = ['Oct 1', 'Oct 2', 'Oct 3', 'Oct 4', 'Oct 5', 'Oct 6', 'Oct 7', 'Oct 8', 'Oct 9', 'Oct 10', 'Oct 11', 'Oct 12'];\n\n lineChartOptions = {\n maintainAspectRatio: false,\n legend: {\n display: false,\n labels: {\n display: false\n }\n },\n scales: {\n yAxes: [{\n display: false,\n ticks: {\n beginAtZero:true,\n fontSize: 10,\n max: 80\n }\n }],\n xAxes: [{\n ticks: {\n beginAtZero:true,\n fontSize: 11,\n fontFamily: 'Arial'\n }\n }]\n }\n };\n\n}\n","import { NgModule, ModuleWithProviders, SkipSelf, Optional } from '@angular/core';\nimport { Configuration } from './configuration';\nimport { HttpClient } from '@angular/common/http';\n\nimport { ActivityLoggingService } from './api/activityLogging.service';\nimport { AuthenticationLoggingService } from './api/authenticationLogging.service';\nimport { AuthenticationStatsService } from './api/authenticationStats.service';\nimport { MigrationService } from './api/migration.service';\nimport { SystemLoggingService } from './api/systemLogging.service';\nimport { VersionService } from './api/version.service';\n\n@NgModule({\n imports: [],\n declarations: [],\n exports: [],\n providers: []\n})\nexport class ApiModule {\n public static forRoot(configurationFactory: () => Configuration): ModuleWithProviders {\n return {\n ngModule: ApiModule,\n providers: [ { provide: Configuration, useFactory: configurationFactory } ]\n };\n }\n\n constructor( @Optional() @SkipSelf() parentModule: ApiModule,\n @Optional() http: HttpClient) {\n if (parentModule) {\n throw new Error('ApiModule is already loaded. Import in your base AppModule only.');\n }\n if (!http) {\n throw new Error('You need to import the HttpClientModule in your AppModule! \\n' +\n 'See also https://github.com/angular/angular/issues/20575');\n }\n }\n}\n","/**\n * Activtiy Logging Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { ESPageRequest } from '../model/eSPageRequest';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ActivityLoggingService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiActivityLoggingGetActivityLogMetaDataGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiActivityLoggingGetActivityLogMetaDataGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiActivityLoggingGetActivityLogMetaDataGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiActivityLoggingGetActivityLogMetaDataGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ActivityLogging/GetActivityLogMetaData`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param eSPageRequest \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiActivityLoggingGetActivityLogsOrganizationMnemonicPost(organizationMnemonic: string, eSPageRequest?: ESPageRequest, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiActivityLoggingGetActivityLogsOrganizationMnemonicPost(organizationMnemonic: string, eSPageRequest?: ESPageRequest, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiActivityLoggingGetActivityLogsOrganizationMnemonicPost(organizationMnemonic: string, eSPageRequest?: ESPageRequest, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiActivityLoggingGetActivityLogsOrganizationMnemonicPost(organizationMnemonic: string, eSPageRequest?: ESPageRequest, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiActivityLoggingGetActivityLogsOrganizationMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ActivityLogging/GetActivityLogs/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: eSPageRequest,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param eSPageRequest \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiActivityLoggingGetActivityLogsPasswordCompromisedOrganizationMnemonicPost(organizationMnemonic: string, eSPageRequest?: ESPageRequest, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiActivityLoggingGetActivityLogsPasswordCompromisedOrganizationMnemonicPost(organizationMnemonic: string, eSPageRequest?: ESPageRequest, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiActivityLoggingGetActivityLogsPasswordCompromisedOrganizationMnemonicPost(organizationMnemonic: string, eSPageRequest?: ESPageRequest, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiActivityLoggingGetActivityLogsPasswordCompromisedOrganizationMnemonicPost(organizationMnemonic: string, eSPageRequest?: ESPageRequest, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiActivityLoggingGetActivityLogsPasswordCompromisedOrganizationMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ActivityLogging/GetActivityLogsPasswordCompromised/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: eSPageRequest,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param eSPageRequest \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiActivityLoggingGetActivityLogsPasswordCompromisedPost(organizationMnemonic: string, eSPageRequest?: ESPageRequest, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiActivityLoggingGetActivityLogsPasswordCompromisedPost(organizationMnemonic: string, eSPageRequest?: ESPageRequest, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiActivityLoggingGetActivityLogsPasswordCompromisedPost(organizationMnemonic: string, eSPageRequest?: ESPageRequest, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiActivityLoggingGetActivityLogsPasswordCompromisedPost(organizationMnemonic: string, eSPageRequest?: ESPageRequest, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiActivityLoggingGetActivityLogsPasswordCompromisedPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ActivityLogging/GetActivityLogsPasswordCompromised`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: eSPageRequest,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param eSPageRequest \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiActivityLoggingGetActivityLogsPost(organizationMnemonic: string, eSPageRequest?: ESPageRequest, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiActivityLoggingGetActivityLogsPost(organizationMnemonic: string, eSPageRequest?: ESPageRequest, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiActivityLoggingGetActivityLogsPost(organizationMnemonic: string, eSPageRequest?: ESPageRequest, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiActivityLoggingGetActivityLogsPost(organizationMnemonic: string, eSPageRequest?: ESPageRequest, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiActivityLoggingGetActivityLogsPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ActivityLogging/GetActivityLogs`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: eSPageRequest,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","export * from './activityLogging.service';\nimport { ActivityLoggingService } from './activityLogging.service';\nexport * from './authenticationLogging.service';\nimport { AuthenticationLoggingService } from './authenticationLogging.service';\nexport * from './authenticationStats.service';\nimport { AuthenticationStatsService } from './authenticationStats.service';\nexport * from './migration.service';\nimport { MigrationService } from './migration.service';\nexport * from './systemLogging.service';\nimport { SystemLoggingService } from './systemLogging.service';\nexport * from './version.service';\nimport { VersionService } from './version.service';\nexport const APIS = [ActivityLoggingService, AuthenticationLoggingService, AuthenticationStatsService, MigrationService, SystemLoggingService, VersionService];\n","/**\n * Activtiy Logging Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { ESPageRequest } from '../model/eSPageRequest';\n// @ts-ignore\nimport { UpdateActivityLogsRequest } from '../model/updateActivityLogsRequest';\n// @ts-ignore\nimport { UpdateActivityLogsSecurityNotifiedAtRequest } from '../model/updateActivityLogsSecurityNotifiedAtRequest';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AuthenticationLoggingService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param eSPageRequest \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationLoggingGetAnomalyLogsCurrentUserPost(eSPageRequest?: ESPageRequest, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationLoggingGetAnomalyLogsCurrentUserPost(eSPageRequest?: ESPageRequest, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationLoggingGetAnomalyLogsCurrentUserPost(eSPageRequest?: ESPageRequest, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationLoggingGetAnomalyLogsCurrentUserPost(eSPageRequest?: ESPageRequest, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationLogging/GetAnomalyLogsCurrentUser`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: eSPageRequest,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationLoggingGetLogMetaDataGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationLoggingGetLogMetaDataGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationLoggingGetLogMetaDataGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationLoggingGetLogMetaDataGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationLogging/GetLogMetaData`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationLoggingGetLogsAnomalyLoginGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationLoggingGetLogsAnomalyLoginGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationLoggingGetLogsAnomalyLoginGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationLoggingGetLogsAnomalyLoginGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAuthenticationLoggingGetLogsAnomalyLoginGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationLogging/GetLogsAnomalyLogin`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationLoggingGetLogsAnomalyLoginOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationLoggingGetLogsAnomalyLoginOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationLoggingGetLogsAnomalyLoginOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationLoggingGetLogsAnomalyLoginOrganizationMnemonicGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAuthenticationLoggingGetLogsAnomalyLoginOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationLogging/GetLogsAnomalyLogin/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param eSPageRequest \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationLoggingGetLogsCurrentUserPost(eSPageRequest?: ESPageRequest, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationLoggingGetLogsCurrentUserPost(eSPageRequest?: ESPageRequest, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationLoggingGetLogsCurrentUserPost(eSPageRequest?: ESPageRequest, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationLoggingGetLogsCurrentUserPost(eSPageRequest?: ESPageRequest, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationLogging/GetLogsCurrentUser`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: eSPageRequest,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param eSPageRequest \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationLoggingGetLogsOrganizationMnemonicPost(organizationMnemonic: string, eSPageRequest?: ESPageRequest, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationLoggingGetLogsOrganizationMnemonicPost(organizationMnemonic: string, eSPageRequest?: ESPageRequest, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationLoggingGetLogsOrganizationMnemonicPost(organizationMnemonic: string, eSPageRequest?: ESPageRequest, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationLoggingGetLogsOrganizationMnemonicPost(organizationMnemonic: string, eSPageRequest?: ESPageRequest, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAuthenticationLoggingGetLogsOrganizationMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationLogging/GetLogs/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: eSPageRequest,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param eSPageRequest \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationLoggingGetLogsWithoutGeoLocationPost(eSPageRequest?: ESPageRequest, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationLoggingGetLogsWithoutGeoLocationPost(eSPageRequest?: ESPageRequest, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationLoggingGetLogsWithoutGeoLocationPost(eSPageRequest?: ESPageRequest, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationLoggingGetLogsWithoutGeoLocationPost(eSPageRequest?: ESPageRequest, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationLogging/GetLogsWithoutGeoLocation`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: eSPageRequest,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param updateActivityLogsRequest \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationLoggingUpdateLogsPut(updateActivityLogsRequest?: UpdateActivityLogsRequest, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationLoggingUpdateLogsPut(updateActivityLogsRequest?: UpdateActivityLogsRequest, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationLoggingUpdateLogsPut(updateActivityLogsRequest?: UpdateActivityLogsRequest, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationLoggingUpdateLogsPut(updateActivityLogsRequest?: UpdateActivityLogsRequest, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationLogging/UpdateLogs`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: updateActivityLogsRequest,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param updateActivityLogsSecurityNotifiedAtRequest \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationLoggingUpdateLogsSecurityNotifiedAtPut(updateActivityLogsSecurityNotifiedAtRequest?: UpdateActivityLogsSecurityNotifiedAtRequest, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationLoggingUpdateLogsSecurityNotifiedAtPut(updateActivityLogsSecurityNotifiedAtRequest?: UpdateActivityLogsSecurityNotifiedAtRequest, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationLoggingUpdateLogsSecurityNotifiedAtPut(updateActivityLogsSecurityNotifiedAtRequest?: UpdateActivityLogsSecurityNotifiedAtRequest, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationLoggingUpdateLogsSecurityNotifiedAtPut(updateActivityLogsSecurityNotifiedAtRequest?: UpdateActivityLogsSecurityNotifiedAtRequest, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationLogging/UpdateLogsSecurityNotifiedAt`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: updateActivityLogsSecurityNotifiedAtRequest,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Activtiy Logging Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AuthenticationStatsService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationMnemonic \n * @param dateFrom \n * @param dateTo \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationStatsAllLoginsOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationStatsAllLoginsOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationStatsAllLoginsOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationStatsAllLoginsOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAuthenticationStatsAllLoginsOrganizationMnemonicGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (dateFrom !== undefined && dateFrom !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateFrom, 'dateFrom');\n }\n if (dateTo !== undefined && dateTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateTo, 'dateTo');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationStats/AllLogins/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param dateFrom \n * @param dateTo \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationStatsFailedLoginsOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationStatsFailedLoginsOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationStatsFailedLoginsOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationStatsFailedLoginsOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAuthenticationStatsFailedLoginsOrganizationMnemonicGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (dateFrom !== undefined && dateFrom !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateFrom, 'dateFrom');\n }\n if (dateTo !== undefined && dateTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateTo, 'dateTo');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationStats/FailedLogins/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgs \n * @param dateFrom \n * @param dateTo \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationStatsHeatmapAnomalyCountGet(orgs?: Array, dateFrom?: string, dateTo?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationStatsHeatmapAnomalyCountGet(orgs?: Array, dateFrom?: string, dateTo?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationStatsHeatmapAnomalyCountGet(orgs?: Array, dateFrom?: string, dateTo?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationStatsHeatmapAnomalyCountGet(orgs?: Array, dateFrom?: string, dateTo?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (orgs) {\n orgs.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'orgs');\n })\n }\n if (dateFrom !== undefined && dateFrom !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateFrom, 'dateFrom');\n }\n if (dateTo !== undefined && dateTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateTo, 'dateTo');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationStats/HeatmapAnomalyCount`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgs \n * @param dateFrom \n * @param dateTo \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationStatsHeatmapLoginCountGet(orgs?: Array, dateFrom?: string, dateTo?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationStatsHeatmapLoginCountGet(orgs?: Array, dateFrom?: string, dateTo?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationStatsHeatmapLoginCountGet(orgs?: Array, dateFrom?: string, dateTo?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationStatsHeatmapLoginCountGet(orgs?: Array, dateFrom?: string, dateTo?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (orgs) {\n orgs.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'orgs');\n })\n }\n if (dateFrom !== undefined && dateFrom !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateFrom, 'dateFrom');\n }\n if (dateTo !== undefined && dateTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateTo, 'dateTo');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationStats/HeatmapLoginCount`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgs \n * @param dateFrom \n * @param dateTo \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationStatsLoginCountByOrgGet(orgs?: Array, dateFrom?: string, dateTo?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationStatsLoginCountByOrgGet(orgs?: Array, dateFrom?: string, dateTo?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationStatsLoginCountByOrgGet(orgs?: Array, dateFrom?: string, dateTo?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationStatsLoginCountByOrgGet(orgs?: Array, dateFrom?: string, dateTo?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (orgs) {\n orgs.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'orgs');\n })\n }\n if (dateFrom !== undefined && dateFrom !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateFrom, 'dateFrom');\n }\n if (dateTo !== undefined && dateTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateTo, 'dateTo');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationStats/LoginCountByOrg`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgs \n * @param dateFrom \n * @param dateTo \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationStatsLoginCountGet(orgs?: Array, dateFrom?: string, dateTo?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationStatsLoginCountGet(orgs?: Array, dateFrom?: string, dateTo?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationStatsLoginCountGet(orgs?: Array, dateFrom?: string, dateTo?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationStatsLoginCountGet(orgs?: Array, dateFrom?: string, dateTo?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (orgs) {\n orgs.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'orgs');\n })\n }\n if (dateFrom !== undefined && dateFrom !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateFrom, 'dateFrom');\n }\n if (dateTo !== undefined && dateTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateTo, 'dateTo');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationStats/LoginCount`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param dateFrom \n * @param dateTo \n * @param applications \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationStatsLoginsByApplicationOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, applications?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationStatsLoginsByApplicationOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, applications?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationStatsLoginsByApplicationOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, applications?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationStatsLoginsByApplicationOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, applications?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAuthenticationStatsLoginsByApplicationOrganizationMnemonicGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (dateFrom !== undefined && dateFrom !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateFrom, 'dateFrom');\n }\n if (dateTo !== undefined && dateTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateTo, 'dateTo');\n }\n if (applications) {\n applications.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'applications');\n })\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationStats/LoginsByApplication/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param dateFrom \n * @param dateTo \n * @param authenticators \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationStatsLoginsByAuthenticatorOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, authenticators?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationStatsLoginsByAuthenticatorOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, authenticators?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationStatsLoginsByAuthenticatorOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, authenticators?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationStatsLoginsByAuthenticatorOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, authenticators?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAuthenticationStatsLoginsByAuthenticatorOrganizationMnemonicGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (dateFrom !== undefined && dateFrom !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateFrom, 'dateFrom');\n }\n if (dateTo !== undefined && dateTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateTo, 'dateTo');\n }\n if (authenticators) {\n authenticators.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'authenticators');\n })\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationStats/LoginsByAuthenticator/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param dateFrom \n * @param dateTo \n * @param includeRadius \n * @param includeWla \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationStatsLoginsForRadiusAndWlaOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, includeRadius?: boolean, includeWla?: boolean, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationStatsLoginsForRadiusAndWlaOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, includeRadius?: boolean, includeWla?: boolean, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationStatsLoginsForRadiusAndWlaOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, includeRadius?: boolean, includeWla?: boolean, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationStatsLoginsForRadiusAndWlaOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, includeRadius?: boolean, includeWla?: boolean, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAuthenticationStatsLoginsForRadiusAndWlaOrganizationMnemonicGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (dateFrom !== undefined && dateFrom !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateFrom, 'dateFrom');\n }\n if (dateTo !== undefined && dateTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateTo, 'dateTo');\n }\n if (includeRadius !== undefined && includeRadius !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n includeRadius, 'includeRadius');\n }\n if (includeWla !== undefined && includeWla !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n includeWla, 'includeWla');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationStats/LoginsForRadiusAndWla/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Activtiy Logging Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MigrationService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param filePath \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiMigrationFromJsonFilePost(filePath?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiMigrationFromJsonFilePost(filePath?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMigrationFromJsonFilePost(filePath?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMigrationFromJsonFilePost(filePath?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (filePath !== undefined && filePath !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n filePath, 'filePath');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Migration/FromJsonFile`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Activtiy Logging Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { ESPageRequest } from '../model/eSPageRequest';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SystemLoggingService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSystemLoggingGetSystemLogMetaDataGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSystemLoggingGetSystemLogMetaDataGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSystemLoggingGetSystemLogMetaDataGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSystemLoggingGetSystemLogMetaDataGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SystemLogging/GetSystemLogMetaData`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param eSPageRequest \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSystemLoggingGetSystemLogsPost(eSPageRequest?: ESPageRequest, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSystemLoggingGetSystemLogsPost(eSPageRequest?: ESPageRequest, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSystemLoggingGetSystemLogsPost(eSPageRequest?: ESPageRequest, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSystemLoggingGetSystemLogsPost(eSPageRequest?: ESPageRequest, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SystemLogging/GetSystemLogs`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: eSPageRequest,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Activtiy Logging Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class VersionService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiVersionGetVersionGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiVersionGetVersionGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiVersionGetVersionGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiVersionGetVersionGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Version/getVersion`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","import { HttpParameterCodec } from '@angular/common/http';\nimport { Param } from './param';\n\nexport interface ConfigurationParameters {\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n apiKeys?: {[ key: string ]: string};\n username?: string;\n password?: string;\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n accessToken?: string | (() => string);\n basePath?: string;\n withCredentials?: boolean;\n /**\n * Takes care of encoding query- and form-parameters.\n */\n encoder?: HttpParameterCodec;\n /**\n * Override the default method for encoding path parameters in various\n * styles.\n *

\n * See {@link README.md} for more details\n *

\n */\n encodeParam?: (param: Param) => string;\n /**\n * The keys are the names in the securitySchemes section of the OpenAPI\n * document. They should map to the value used for authentication\n * minus any standard prefixes such as 'Basic' or 'Bearer'.\n */\n credentials?: {[ key: string ]: string | (() => string | undefined)};\n}\n\nexport class Configuration {\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n apiKeys?: {[ key: string ]: string};\n username?: string;\n password?: string;\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n accessToken?: string | (() => string);\n basePath?: string;\n withCredentials?: boolean;\n /**\n * Takes care of encoding query- and form-parameters.\n */\n encoder?: HttpParameterCodec;\n /**\n * Encoding of various path parameter\n * styles.\n *

\n * See {@link README.md} for more details\n *

\n */\n encodeParam: (param: Param) => string;\n /**\n * The keys are the names in the securitySchemes section of the OpenAPI\n * document. They should map to the value used for authentication\n * minus any standard prefixes such as 'Basic' or 'Bearer'.\n */\n credentials: {[ key: string ]: string | (() => string | undefined)};\n\n constructor(configurationParameters: ConfigurationParameters = {}) {\n this.apiKeys = configurationParameters.apiKeys;\n this.username = configurationParameters.username;\n this.password = configurationParameters.password;\n this.accessToken = configurationParameters.accessToken;\n this.basePath = configurationParameters.basePath;\n this.withCredentials = configurationParameters.withCredentials;\n this.encoder = configurationParameters.encoder;\n if (configurationParameters.encodeParam) {\n this.encodeParam = configurationParameters.encodeParam;\n }\n else {\n this.encodeParam = param => this.defaultEncodeParam(param);\n }\n if (configurationParameters.credentials) {\n this.credentials = configurationParameters.credentials;\n }\n else {\n this.credentials = {};\n }\n\n // init default Bearer credential\n if (!this.credentials['Bearer']) {\n this.credentials['Bearer'] = () => {\n if (this.apiKeys === null || this.apiKeys === undefined) {\n return undefined;\n } else {\n return this.apiKeys['Bearer'] || this.apiKeys['Authorization'];\n }\n };\n }\n }\n\n /**\n * Select the correct content-type to use for a request.\n * Uses {@link Configuration#isJsonMime} to determine the correct content-type.\n * If no content type is found return the first found type if the contentTypes is not empty\n * @param contentTypes - the array of content types that are available for selection\n * @returns the selected content-type or undefined if no selection could be made.\n */\n public selectHeaderContentType (contentTypes: string[]): string | undefined {\n if (contentTypes.length === 0) {\n return undefined;\n }\n\n const type = contentTypes.find((x: string) => this.isJsonMime(x));\n if (type === undefined) {\n return contentTypes[0];\n }\n return type;\n }\n\n /**\n * Select the correct accept content-type to use for a request.\n * Uses {@link Configuration#isJsonMime} to determine the correct accept content-type.\n * If no content type is found return the first found type if the contentTypes is not empty\n * @param accepts - the array of content types that are available for selection.\n * @returns the selected content-type or undefined if no selection could be made.\n */\n public selectHeaderAccept(accepts: string[]): string | undefined {\n if (accepts.length === 0) {\n return undefined;\n }\n\n const type = accepts.find((x: string) => this.isJsonMime(x));\n if (type === undefined) {\n return accepts[0];\n }\n return type;\n }\n\n /**\n * Check if the given MIME is a JSON MIME.\n * JSON MIME examples:\n * application/json\n * application/json; charset=UTF8\n * APPLICATION/JSON\n * application/vnd.company+json\n * @param mime - MIME (Multipurpose Internet Mail Extensions)\n * @return True if the given MIME is JSON, false otherwise.\n */\n public isJsonMime(mime: string): boolean {\n const jsonMime: RegExp = new RegExp('^(application\\/json|[^;/ \\t]+\\/[^;/ \\t]+[+]json)[ \\t]*(;.*)?$', 'i');\n return mime !== null && (jsonMime.test(mime) || mime.toLowerCase() === 'application/json-patch+json');\n }\n\n public lookupCredential(key: string): string | undefined {\n const value = this.credentials[key];\n return typeof value === 'function'\n ? value()\n : value;\n }\n\n private defaultEncodeParam(param: Param): string {\n // This implementation exists as fallback for missing configuration\n // and for backwards compatibility to older typescript-angular generator versions.\n // It only works for the 'simple' parameter style.\n // Date-handling only works for the 'date-time' format.\n // All other styles and Date-formats are probably handled incorrectly.\n //\n // But: if that's all you need (i.e.: the most common use-case): no need for customization!\n\n const value = param.dataFormat === 'date-time'\n ? (param.value as Date).toISOString()\n : param.value;\n\n return encodeURIComponent(String(value));\n }\n}\n","import { HttpParameterCodec } from '@angular/common/http';\n\n/**\n * Custom HttpParameterCodec\n * Workaround for https://github.com/angular/angular/issues/18261\n */\nexport class CustomHttpParameterCodec implements HttpParameterCodec {\n encodeKey(k: string): string {\n return encodeURIComponent(k);\n }\n encodeValue(v: string): string {\n return encodeURIComponent(v);\n }\n decodeKey(k: string): string {\n return decodeURIComponent(k);\n }\n decodeValue(v: string): string {\n return decodeURIComponent(v);\n }\n}\n","export * from './api/api';\nexport * from './model/models';\nexport * from './variables';\nexport * from './configuration';\nexport * from './api.module';\nexport * from './param';\n","/**\n * Activtiy Logging Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { SearchParameterBase } from './searchParameterBase';\n\n\nexport interface ESPageRequest { \n sortColumn?: string | null;\n currentPage?: number;\n pageSize?: number;\n searchCriteria?: Array | null;\n skip?: number | null;\n sortOrder?: string | null;\n searchFilter?: Array | null;\n}\n\n","export * from './eSPageRequest';\nexport * from './searchParameterBase';\nexport * from './updateActivityLog';\nexport * from './updateActivityLogClient';\nexport * from './updateActivityLogClientGeographicalContext';\nexport * from './updateActivityLogSecurity';\nexport * from './updateActivityLogSecuritySystemContext';\nexport * from './updateActivityLogSecurityUserContext';\nexport * from './updateActivityLogsRequest';\nexport * from './updateActivityLogsSecurityNotifiedAtRequest';\n","/**\n * Activtiy Logging Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface SearchParameterBase { \n field?: string | null;\n operator?: string | null;\n value?: string | null;\n andOr?: string | null;\n}\n\n","/**\n * Activtiy Logging Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { UpdateActivityLogClient } from './updateActivityLogClient';\nimport { UpdateActivityLogSecurity } from './updateActivityLogSecurity';\n\n\nexport interface UpdateActivityLog { \n id?: string | null;\n client?: UpdateActivityLogClient;\n security?: UpdateActivityLogSecurity;\n}\n\n","/**\n * Activtiy Logging Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { UpdateActivityLogClientGeographicalContext } from './updateActivityLogClientGeographicalContext';\n\n\nexport interface UpdateActivityLogClient { \n geographicalContext?: UpdateActivityLogClientGeographicalContext;\n}\n\n","/**\n * Activtiy Logging Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface UpdateActivityLogClientGeographicalContext { \n countryCode?: string | null;\n countryName?: string | null;\n regionName?: string | null;\n cityName?: string | null;\n zipcode?: string | null;\n timezone?: string | null;\n autonomousSystemNumber?: string | null;\n autonomousSystem?: string | null;\n}\n\n","/**\n * Activtiy Logging Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { UpdateActivityLogSecuritySystemContext } from './updateActivityLogSecuritySystemContext';\nimport { UpdateActivityLogSecurityUserContext } from './updateActivityLogSecurityUserContext';\n\n\nexport interface UpdateActivityLogSecurity { \n systemContext?: UpdateActivityLogSecuritySystemContext;\n userContext?: UpdateActivityLogSecurityUserContext;\n}\n\n","/**\n * Activtiy Logging Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface UpdateActivityLogSecuritySystemContext { \n score?: number;\n status?: string | null;\n}\n\n","/**\n * Activtiy Logging Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface UpdateActivityLogSecurityUserContext { \n score?: number;\n status?: string | null;\n}\n\n","/**\n * Activtiy Logging Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { UpdateActivityLog } from './updateActivityLog';\n\n\nexport interface UpdateActivityLogsRequest { \n activityLoggings?: Array | null;\n}\n\n","/**\n * Activtiy Logging Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface UpdateActivityLogsSecurityNotifiedAtRequest { \n actorName?: string | null;\n}\n\n","/**\n * Standard parameter styles defined by OpenAPI spec\n */\nexport type StandardParamStyle =\n | 'matrix'\n | 'label'\n | 'form'\n | 'simple'\n | 'spaceDelimited'\n | 'pipeDelimited'\n | 'deepObject'\n ;\n\n/**\n * The OpenAPI standard {@link StandardParamStyle}s may be extended by custom styles by the user.\n */\nexport type ParamStyle = StandardParamStyle | string;\n\n/**\n * Standard parameter locations defined by OpenAPI spec\n */\nexport type ParamLocation = 'query' | 'header' | 'path' | 'cookie';\n\n/**\n * Standard types as defined in OpenAPI Specification: Data Types\n */\nexport type StandardDataType =\n | \"integer\"\n | \"number\"\n | \"boolean\"\n | \"string\"\n | \"object\"\n | \"array\"\n ;\n\n/**\n * Standard {@link DataType}s plus your own types/classes.\n */\nexport type DataType = StandardDataType | string;\n\n/**\n * Standard formats as defined in OpenAPI Specification: Data Types\n */\nexport type StandardDataFormat =\n | \"int32\"\n | \"int64\"\n | \"float\"\n | \"double\"\n | \"byte\"\n | \"binary\"\n | \"date\"\n | \"date-time\"\n | \"password\"\n ;\n\nexport type DataFormat = StandardDataFormat | string;\n\n/**\n * The parameter to encode.\n */\nexport interface Param {\n name: string;\n value: unknown;\n in: ParamLocation;\n style: ParamStyle,\n explode: boolean;\n dataType: DataType;\n dataFormat: DataFormat | undefined;\n}\n","import { InjectionToken } from '@angular/core';\n\nexport const BASE_PATH = new InjectionToken('basePath');\nexport const COLLECTION_FORMATS = {\n 'csv': ',',\n 'tsv': ' ',\n 'ssv': ' ',\n 'pipes': '|'\n}\n","import { NgModule, ModuleWithProviders, SkipSelf, Optional } from '@angular/core';\nimport { Configuration } from './configuration';\nimport { HttpClient } from '@angular/common/http';\n\nimport { AuthenticationsService } from './api/authentications.service';\nimport { VersionService } from './api/version.service';\n\n@NgModule({\n imports: [],\n declarations: [],\n exports: [],\n providers: []\n})\nexport class ApiModule {\n public static forRoot(configurationFactory: () => Configuration): ModuleWithProviders {\n return {\n ngModule: ApiModule,\n providers: [ { provide: Configuration, useFactory: configurationFactory } ]\n };\n }\n\n constructor( @Optional() @SkipSelf() parentModule: ApiModule,\n @Optional() http: HttpClient) {\n if (parentModule) {\n throw new Error('ApiModule is already loaded. Import in your base AppModule only.');\n }\n if (!http) {\n throw new Error('You need to import the HttpClientModule in your AppModule! \\n' +\n 'See also https://github.com/angular/angular/issues/20575');\n }\n }\n}\n","export * from './authentications.service';\nimport { AuthenticationsService } from './authentications.service';\nexport * from './version.service';\nimport { VersionService } from './version.service';\nexport const APIS = [AuthenticationsService, VersionService];\n","/**\n * Analytics Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { AllLoginsModel } from '../model/allLoginsModel';\n// @ts-ignore\nimport { DashboardAuthenticatorEnrollmentViewModel } from '../model/dashboardAuthenticatorEnrollmentViewModel';\n// @ts-ignore\nimport { DashboardLoginsByApplicationViewModel } from '../model/dashboardLoginsByApplicationViewModel';\n// @ts-ignore\nimport { DashboardLoginsByAuthenticatorViewModel } from '../model/dashboardLoginsByAuthenticatorViewModel';\n// @ts-ignore\nimport { DashboardLoginsViewModel } from '../model/dashboardLoginsViewModel';\n// @ts-ignore\nimport { HeatmapAnomalyCountModel } from '../model/heatmapAnomalyCountModel';\n// @ts-ignore\nimport { HeatmapLoginCountModel } from '../model/heatmapLoginCountModel';\n// @ts-ignore\nimport { ReportLoginViewModel } from '../model/reportLoginViewModel';\n// @ts-ignore\nimport { ReportsUserEnrollmentViewModel } from '../model/reportsUserEnrollmentViewModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AuthenticationsService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationMnemonic \n * @param dateFrom \n * @param dateTo \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiDashboardAuthenticationsAllLoginsGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public apiDashboardAuthenticationsAllLoginsGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsAllLoginsGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsAllLoginsGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiDashboardAuthenticationsAllLoginsGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (dateFrom !== undefined && dateFrom !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateFrom, 'dateFrom');\n }\n if (dateTo !== undefined && dateTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateTo, 'dateTo');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/dashboard/Authentications/AllLogins`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param dateFrom \n * @param dateTo \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiDashboardAuthenticationsAllLoginsOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public apiDashboardAuthenticationsAllLoginsOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsAllLoginsOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsAllLoginsOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiDashboardAuthenticationsAllLoginsOrganizationMnemonicGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (dateFrom !== undefined && dateFrom !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateFrom, 'dateFrom');\n }\n if (dateTo !== undefined && dateTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateTo, 'dateTo');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/dashboard/Authentications/AllLogins/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param authenticator \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiDashboardAuthenticationsEnrollmentByAuthenticatorAuthenticatorGet(organizationMnemonic: string, authenticator: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public apiDashboardAuthenticationsEnrollmentByAuthenticatorAuthenticatorGet(organizationMnemonic: string, authenticator: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsEnrollmentByAuthenticatorAuthenticatorGet(organizationMnemonic: string, authenticator: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsEnrollmentByAuthenticatorAuthenticatorGet(organizationMnemonic: string, authenticator: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiDashboardAuthenticationsEnrollmentByAuthenticatorAuthenticatorGet.');\n }\n if (authenticator === null || authenticator === undefined) {\n throw new Error('Required parameter authenticator was null or undefined when calling apiDashboardAuthenticationsEnrollmentByAuthenticatorAuthenticatorGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/dashboard/Authentications/EnrollmentByAuthenticator/${this.configuration.encodeParam({name: \"authenticator\", value: authenticator, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param authenticator \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiDashboardAuthenticationsEnrollmentByAuthenticatorOrganizationMnemonicAuthenticatorGet(organizationMnemonic: string, authenticator: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public apiDashboardAuthenticationsEnrollmentByAuthenticatorOrganizationMnemonicAuthenticatorGet(organizationMnemonic: string, authenticator: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsEnrollmentByAuthenticatorOrganizationMnemonicAuthenticatorGet(organizationMnemonic: string, authenticator: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsEnrollmentByAuthenticatorOrganizationMnemonicAuthenticatorGet(organizationMnemonic: string, authenticator: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiDashboardAuthenticationsEnrollmentByAuthenticatorOrganizationMnemonicAuthenticatorGet.');\n }\n if (authenticator === null || authenticator === undefined) {\n throw new Error('Required parameter authenticator was null or undefined when calling apiDashboardAuthenticationsEnrollmentByAuthenticatorOrganizationMnemonicAuthenticatorGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/dashboard/Authentications/EnrollmentByAuthenticator/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"authenticator\", value: authenticator, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiDashboardAuthenticationsEnrollmentGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsEnrollmentGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiDashboardAuthenticationsEnrollmentGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiDashboardAuthenticationsEnrollmentGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiDashboardAuthenticationsEnrollmentGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/dashboard/Authentications/enrollment`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiDashboardAuthenticationsEnrollmentOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsEnrollmentOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiDashboardAuthenticationsEnrollmentOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiDashboardAuthenticationsEnrollmentOrganizationMnemonicGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiDashboardAuthenticationsEnrollmentOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/dashboard/Authentications/enrollment/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param dateFrom \n * @param dateTo \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiDashboardAuthenticationsFailedLoginsGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsFailedLoginsGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiDashboardAuthenticationsFailedLoginsGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiDashboardAuthenticationsFailedLoginsGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiDashboardAuthenticationsFailedLoginsGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (dateFrom !== undefined && dateFrom !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateFrom, 'dateFrom');\n }\n if (dateTo !== undefined && dateTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateTo, 'dateTo');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/dashboard/Authentications/FailedLogins`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param dateFrom \n * @param dateTo \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiDashboardAuthenticationsFailedLoginsOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsFailedLoginsOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiDashboardAuthenticationsFailedLoginsOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiDashboardAuthenticationsFailedLoginsOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiDashboardAuthenticationsFailedLoginsOrganizationMnemonicGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (dateFrom !== undefined && dateFrom !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateFrom, 'dateFrom');\n }\n if (dateTo !== undefined && dateTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateTo, 'dateTo');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/dashboard/Authentications/FailedLogins/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param dateFrom \n * @param dateTo \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiDashboardAuthenticationsHeatmapAnomalyCountGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public apiDashboardAuthenticationsHeatmapAnomalyCountGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsHeatmapAnomalyCountGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsHeatmapAnomalyCountGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiDashboardAuthenticationsHeatmapAnomalyCountGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (dateFrom !== undefined && dateFrom !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateFrom, 'dateFrom');\n }\n if (dateTo !== undefined && dateTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateTo, 'dateTo');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/dashboard/Authentications/HeatmapAnomalyCount`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param dateFrom \n * @param dateTo \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiDashboardAuthenticationsHeatmapAnomalyCountOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public apiDashboardAuthenticationsHeatmapAnomalyCountOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsHeatmapAnomalyCountOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsHeatmapAnomalyCountOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiDashboardAuthenticationsHeatmapAnomalyCountOrganizationMnemonicGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (dateFrom !== undefined && dateFrom !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateFrom, 'dateFrom');\n }\n if (dateTo !== undefined && dateTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateTo, 'dateTo');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/dashboard/Authentications/HeatmapAnomalyCount/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param dateFrom \n * @param dateTo \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiDashboardAuthenticationsHeatmapLoginCountGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public apiDashboardAuthenticationsHeatmapLoginCountGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsHeatmapLoginCountGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsHeatmapLoginCountGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiDashboardAuthenticationsHeatmapLoginCountGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (dateFrom !== undefined && dateFrom !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateFrom, 'dateFrom');\n }\n if (dateTo !== undefined && dateTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateTo, 'dateTo');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/dashboard/Authentications/HeatmapLoginCount`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param dateFrom \n * @param dateTo \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiDashboardAuthenticationsHeatmapLoginCountOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public apiDashboardAuthenticationsHeatmapLoginCountOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsHeatmapLoginCountOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsHeatmapLoginCountOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiDashboardAuthenticationsHeatmapLoginCountOrganizationMnemonicGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (dateFrom !== undefined && dateFrom !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateFrom, 'dateFrom');\n }\n if (dateTo !== undefined && dateTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateTo, 'dateTo');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/dashboard/Authentications/HeatmapLoginCount/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param dateFrom \n * @param dateTo \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiDashboardAuthenticationsLoginsByApplicationGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsLoginsByApplicationGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiDashboardAuthenticationsLoginsByApplicationGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiDashboardAuthenticationsLoginsByApplicationGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiDashboardAuthenticationsLoginsByApplicationGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (dateFrom !== undefined && dateFrom !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateFrom, 'dateFrom');\n }\n if (dateTo !== undefined && dateTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateTo, 'dateTo');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/dashboard/Authentications/LoginsByApplication`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param dateFrom \n * @param dateTo \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiDashboardAuthenticationsLoginsByApplicationOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsLoginsByApplicationOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiDashboardAuthenticationsLoginsByApplicationOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiDashboardAuthenticationsLoginsByApplicationOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiDashboardAuthenticationsLoginsByApplicationOrganizationMnemonicGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (dateFrom !== undefined && dateFrom !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateFrom, 'dateFrom');\n }\n if (dateTo !== undefined && dateTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateTo, 'dateTo');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/dashboard/Authentications/LoginsByApplication/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param dateFrom \n * @param dateTo \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiDashboardAuthenticationsLoginsByAuthenticatorGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsLoginsByAuthenticatorGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiDashboardAuthenticationsLoginsByAuthenticatorGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiDashboardAuthenticationsLoginsByAuthenticatorGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiDashboardAuthenticationsLoginsByAuthenticatorGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (dateFrom !== undefined && dateFrom !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateFrom, 'dateFrom');\n }\n if (dateTo !== undefined && dateTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateTo, 'dateTo');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/dashboard/Authentications/LoginsByAuthenticator`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param dateFrom \n * @param dateTo \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiDashboardAuthenticationsLoginsByAuthenticatorOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsLoginsByAuthenticatorOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiDashboardAuthenticationsLoginsByAuthenticatorOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiDashboardAuthenticationsLoginsByAuthenticatorOrganizationMnemonicGet(organizationMnemonic: string, dateFrom?: string, dateTo?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiDashboardAuthenticationsLoginsByAuthenticatorOrganizationMnemonicGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (dateFrom !== undefined && dateFrom !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateFrom, 'dateFrom');\n }\n if (dateTo !== undefined && dateTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateTo, 'dateTo');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/dashboard/Authentications/LoginsByAuthenticator/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param includeRadius \n * @param includeWla \n * @param dateFrom \n * @param dateTo \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiDashboardAuthenticationsLoginsForRadiusAndWlaOrganizationMnemonicGet(organizationMnemonic: string, includeRadius?: boolean, includeWla?: boolean, dateFrom?: string, dateTo?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsLoginsForRadiusAndWlaOrganizationMnemonicGet(organizationMnemonic: string, includeRadius?: boolean, includeWla?: boolean, dateFrom?: string, dateTo?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiDashboardAuthenticationsLoginsForRadiusAndWlaOrganizationMnemonicGet(organizationMnemonic: string, includeRadius?: boolean, includeWla?: boolean, dateFrom?: string, dateTo?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiDashboardAuthenticationsLoginsForRadiusAndWlaOrganizationMnemonicGet(organizationMnemonic: string, includeRadius?: boolean, includeWla?: boolean, dateFrom?: string, dateTo?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiDashboardAuthenticationsLoginsForRadiusAndWlaOrganizationMnemonicGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (includeRadius !== undefined && includeRadius !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n includeRadius, 'includeRadius');\n }\n if (includeWla !== undefined && includeWla !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n includeWla, 'includeWla');\n }\n if (dateFrom !== undefined && dateFrom !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateFrom, 'dateFrom');\n }\n if (dateTo !== undefined && dateTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateTo, 'dateTo');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/dashboard/Authentications/LoginsForRadiusAndWla/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiDashboardAuthenticationsTotalUsersGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public apiDashboardAuthenticationsTotalUsersGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsTotalUsersGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsTotalUsersGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiDashboardAuthenticationsTotalUsersGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/dashboard/Authentications/TotalUsers`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiDashboardAuthenticationsTotalUsersOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public apiDashboardAuthenticationsTotalUsersOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsTotalUsersOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDashboardAuthenticationsTotalUsersOrganizationMnemonicGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiDashboardAuthenticationsTotalUsersOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/dashboard/Authentications/TotalUsers/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param authenticator \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiReportsAuthenticationsEnrolledByAuthenticatorAuthenticatorGet(organizationMnemonic: string, authenticator: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public apiReportsAuthenticationsEnrolledByAuthenticatorAuthenticatorGet(organizationMnemonic: string, authenticator: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiReportsAuthenticationsEnrolledByAuthenticatorAuthenticatorGet(organizationMnemonic: string, authenticator: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiReportsAuthenticationsEnrolledByAuthenticatorAuthenticatorGet(organizationMnemonic: string, authenticator: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiReportsAuthenticationsEnrolledByAuthenticatorAuthenticatorGet.');\n }\n if (authenticator === null || authenticator === undefined) {\n throw new Error('Required parameter authenticator was null or undefined when calling apiReportsAuthenticationsEnrolledByAuthenticatorAuthenticatorGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Reports/Authentications/EnrolledByAuthenticator/${this.configuration.encodeParam({name: \"authenticator\", value: authenticator, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param authenticator \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiReportsAuthenticationsEnrolledByAuthenticatorOrganizationMnemonicAuthenticatorGet(organizationMnemonic: string, authenticator: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public apiReportsAuthenticationsEnrolledByAuthenticatorOrganizationMnemonicAuthenticatorGet(organizationMnemonic: string, authenticator: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiReportsAuthenticationsEnrolledByAuthenticatorOrganizationMnemonicAuthenticatorGet(organizationMnemonic: string, authenticator: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiReportsAuthenticationsEnrolledByAuthenticatorOrganizationMnemonicAuthenticatorGet(organizationMnemonic: string, authenticator: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiReportsAuthenticationsEnrolledByAuthenticatorOrganizationMnemonicAuthenticatorGet.');\n }\n if (authenticator === null || authenticator === undefined) {\n throw new Error('Required parameter authenticator was null or undefined when calling apiReportsAuthenticationsEnrolledByAuthenticatorOrganizationMnemonicAuthenticatorGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Reports/Authentications/EnrolledByAuthenticator/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"authenticator\", value: authenticator, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiReportsAuthenticationsEnrollmentGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiReportsAuthenticationsEnrollmentGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiReportsAuthenticationsEnrollmentGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiReportsAuthenticationsEnrollmentGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiReportsAuthenticationsEnrollmentGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Reports/Authentications/Enrollment`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiReportsAuthenticationsEnrollmentOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiReportsAuthenticationsEnrollmentOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiReportsAuthenticationsEnrollmentOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiReportsAuthenticationsEnrollmentOrganizationMnemonicGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiReportsAuthenticationsEnrollmentOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Reports/Authentications/Enrollment/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param reportType \n * @param dataType \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiReportsAuthenticationsLogExportDataOrganizationMnemonicPost(organizationMnemonic: string, reportType?: string, dataType?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiReportsAuthenticationsLogExportDataOrganizationMnemonicPost(organizationMnemonic: string, reportType?: string, dataType?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiReportsAuthenticationsLogExportDataOrganizationMnemonicPost(organizationMnemonic: string, reportType?: string, dataType?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiReportsAuthenticationsLogExportDataOrganizationMnemonicPost(organizationMnemonic: string, reportType?: string, dataType?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiReportsAuthenticationsLogExportDataOrganizationMnemonicPost.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (reportType !== undefined && reportType !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n reportType, 'reportType');\n }\n if (dataType !== undefined && dataType !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dataType, 'dataType');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Reports/Authentications/LogExportData/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param apps \n * @param dateFrom \n * @param dateTo \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiReportsAuthenticationsLoginsByApplicationGet(organizationMnemonic: string, apps?: Array, dateFrom?: string, dateTo?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiReportsAuthenticationsLoginsByApplicationGet(organizationMnemonic: string, apps?: Array, dateFrom?: string, dateTo?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiReportsAuthenticationsLoginsByApplicationGet(organizationMnemonic: string, apps?: Array, dateFrom?: string, dateTo?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiReportsAuthenticationsLoginsByApplicationGet(organizationMnemonic: string, apps?: Array, dateFrom?: string, dateTo?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiReportsAuthenticationsLoginsByApplicationGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (apps) {\n apps.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'apps');\n })\n }\n if (dateFrom !== undefined && dateFrom !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateFrom, 'dateFrom');\n }\n if (dateTo !== undefined && dateTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateTo, 'dateTo');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Reports/Authentications/LoginsByApplication`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param apps \n * @param dateFrom \n * @param dateTo \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiReportsAuthenticationsLoginsByApplicationOrganizationMnemonicGet(organizationMnemonic: string, apps?: Array, dateFrom?: string, dateTo?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiReportsAuthenticationsLoginsByApplicationOrganizationMnemonicGet(organizationMnemonic: string, apps?: Array, dateFrom?: string, dateTo?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiReportsAuthenticationsLoginsByApplicationOrganizationMnemonicGet(organizationMnemonic: string, apps?: Array, dateFrom?: string, dateTo?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiReportsAuthenticationsLoginsByApplicationOrganizationMnemonicGet(organizationMnemonic: string, apps?: Array, dateFrom?: string, dateTo?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiReportsAuthenticationsLoginsByApplicationOrganizationMnemonicGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (apps) {\n apps.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'apps');\n })\n }\n if (dateFrom !== undefined && dateFrom !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateFrom, 'dateFrom');\n }\n if (dateTo !== undefined && dateTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateTo, 'dateTo');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Reports/Authentications/LoginsByApplication/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param auths \n * @param dateFrom \n * @param dateTo \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiReportsAuthenticationsLoginsByAuthenticatorGet(organizationMnemonic: string, auths?: Array, dateFrom?: string, dateTo?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiReportsAuthenticationsLoginsByAuthenticatorGet(organizationMnemonic: string, auths?: Array, dateFrom?: string, dateTo?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiReportsAuthenticationsLoginsByAuthenticatorGet(organizationMnemonic: string, auths?: Array, dateFrom?: string, dateTo?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiReportsAuthenticationsLoginsByAuthenticatorGet(organizationMnemonic: string, auths?: Array, dateFrom?: string, dateTo?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiReportsAuthenticationsLoginsByAuthenticatorGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (auths) {\n auths.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'auths');\n })\n }\n if (dateFrom !== undefined && dateFrom !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateFrom, 'dateFrom');\n }\n if (dateTo !== undefined && dateTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateTo, 'dateTo');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Reports/Authentications/LoginsByAuthenticator`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param auths \n * @param dateFrom \n * @param dateTo \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiReportsAuthenticationsLoginsByAuthenticatorOrganizationMnemonicGet(organizationMnemonic: string, auths?: Array, dateFrom?: string, dateTo?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiReportsAuthenticationsLoginsByAuthenticatorOrganizationMnemonicGet(organizationMnemonic: string, auths?: Array, dateFrom?: string, dateTo?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiReportsAuthenticationsLoginsByAuthenticatorOrganizationMnemonicGet(organizationMnemonic: string, auths?: Array, dateFrom?: string, dateTo?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiReportsAuthenticationsLoginsByAuthenticatorOrganizationMnemonicGet(organizationMnemonic: string, auths?: Array, dateFrom?: string, dateTo?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiReportsAuthenticationsLoginsByAuthenticatorOrganizationMnemonicGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (auths) {\n auths.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'auths');\n })\n }\n if (dateFrom !== undefined && dateFrom !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateFrom, 'dateFrom');\n }\n if (dateTo !== undefined && dateTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateTo, 'dateTo');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Reports/Authentications/LoginsByAuthenticator/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param auth \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiReportsAuthenticationsNotEnrolledByAuthenticatorGet(organizationMnemonic: string, auth?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiReportsAuthenticationsNotEnrolledByAuthenticatorGet(organizationMnemonic: string, auth?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiReportsAuthenticationsNotEnrolledByAuthenticatorGet(organizationMnemonic: string, auth?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiReportsAuthenticationsNotEnrolledByAuthenticatorGet(organizationMnemonic: string, auth?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiReportsAuthenticationsNotEnrolledByAuthenticatorGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (auth) {\n auth.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'auth');\n })\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Reports/Authentications/NotEnrolledByAuthenticator`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param auth \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiReportsAuthenticationsNotEnrolledByAuthenticatorOrganizationMnemonicGet(organizationMnemonic: string, auth?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiReportsAuthenticationsNotEnrolledByAuthenticatorOrganizationMnemonicGet(organizationMnemonic: string, auth?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiReportsAuthenticationsNotEnrolledByAuthenticatorOrganizationMnemonicGet(organizationMnemonic: string, auth?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiReportsAuthenticationsNotEnrolledByAuthenticatorOrganizationMnemonicGet(organizationMnemonic: string, auth?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiReportsAuthenticationsNotEnrolledByAuthenticatorOrganizationMnemonicGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (auth) {\n auth.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'auth');\n })\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Reports/Authentications/NotEnrolledByAuthenticator/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiReportsAuthenticationsNotEnrolledToAnyAuthenticatorGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiReportsAuthenticationsNotEnrolledToAnyAuthenticatorGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiReportsAuthenticationsNotEnrolledToAnyAuthenticatorGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiReportsAuthenticationsNotEnrolledToAnyAuthenticatorGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiReportsAuthenticationsNotEnrolledToAnyAuthenticatorGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Reports/Authentications/NotEnrolledToAnyAuthenticator`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiReportsAuthenticationsNotEnrolledToAnyAuthenticatorOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiReportsAuthenticationsNotEnrolledToAnyAuthenticatorOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiReportsAuthenticationsNotEnrolledToAnyAuthenticatorOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiReportsAuthenticationsNotEnrolledToAnyAuthenticatorOrganizationMnemonicGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiReportsAuthenticationsNotEnrolledToAnyAuthenticatorOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Reports/Authentications/NotEnrolledToAnyAuthenticator/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Analytics Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class VersionService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiVersionGetVersionGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiVersionGetVersionGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiVersionGetVersionGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiVersionGetVersionGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Version/getVersion`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","import { HttpParameterCodec } from '@angular/common/http';\nimport { Param } from './param';\n\nexport interface ConfigurationParameters {\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n apiKeys?: {[ key: string ]: string};\n username?: string;\n password?: string;\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n accessToken?: string | (() => string);\n basePath?: string;\n withCredentials?: boolean;\n /**\n * Takes care of encoding query- and form-parameters.\n */\n encoder?: HttpParameterCodec;\n /**\n * Override the default method for encoding path parameters in various\n * styles.\n *

\n * See {@link README.md} for more details\n *

\n */\n encodeParam?: (param: Param) => string;\n /**\n * The keys are the names in the securitySchemes section of the OpenAPI\n * document. They should map to the value used for authentication\n * minus any standard prefixes such as 'Basic' or 'Bearer'.\n */\n credentials?: {[ key: string ]: string | (() => string | undefined)};\n}\n\nexport class Configuration {\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n apiKeys?: {[ key: string ]: string};\n username?: string;\n password?: string;\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n accessToken?: string | (() => string);\n basePath?: string;\n withCredentials?: boolean;\n /**\n * Takes care of encoding query- and form-parameters.\n */\n encoder?: HttpParameterCodec;\n /**\n * Encoding of various path parameter\n * styles.\n *

\n * See {@link README.md} for more details\n *

\n */\n encodeParam: (param: Param) => string;\n /**\n * The keys are the names in the securitySchemes section of the OpenAPI\n * document. They should map to the value used for authentication\n * minus any standard prefixes such as 'Basic' or 'Bearer'.\n */\n credentials: {[ key: string ]: string | (() => string | undefined)};\n\n constructor(configurationParameters: ConfigurationParameters = {}) {\n this.apiKeys = configurationParameters.apiKeys;\n this.username = configurationParameters.username;\n this.password = configurationParameters.password;\n this.accessToken = configurationParameters.accessToken;\n this.basePath = configurationParameters.basePath;\n this.withCredentials = configurationParameters.withCredentials;\n this.encoder = configurationParameters.encoder;\n if (configurationParameters.encodeParam) {\n this.encodeParam = configurationParameters.encodeParam;\n }\n else {\n this.encodeParam = param => this.defaultEncodeParam(param);\n }\n if (configurationParameters.credentials) {\n this.credentials = configurationParameters.credentials;\n }\n else {\n this.credentials = {};\n }\n\n // init default Bearer credential\n if (!this.credentials['Bearer']) {\n this.credentials['Bearer'] = () => {\n if (this.apiKeys === null || this.apiKeys === undefined) {\n return undefined;\n } else {\n return this.apiKeys['Bearer'] || this.apiKeys['Authorization'];\n }\n };\n }\n }\n\n /**\n * Select the correct content-type to use for a request.\n * Uses {@link Configuration#isJsonMime} to determine the correct content-type.\n * If no content type is found return the first found type if the contentTypes is not empty\n * @param contentTypes - the array of content types that are available for selection\n * @returns the selected content-type or undefined if no selection could be made.\n */\n public selectHeaderContentType (contentTypes: string[]): string | undefined {\n if (contentTypes.length === 0) {\n return undefined;\n }\n\n const type = contentTypes.find((x: string) => this.isJsonMime(x));\n if (type === undefined) {\n return contentTypes[0];\n }\n return type;\n }\n\n /**\n * Select the correct accept content-type to use for a request.\n * Uses {@link Configuration#isJsonMime} to determine the correct accept content-type.\n * If no content type is found return the first found type if the contentTypes is not empty\n * @param accepts - the array of content types that are available for selection.\n * @returns the selected content-type or undefined if no selection could be made.\n */\n public selectHeaderAccept(accepts: string[]): string | undefined {\n if (accepts.length === 0) {\n return undefined;\n }\n\n const type = accepts.find((x: string) => this.isJsonMime(x));\n if (type === undefined) {\n return accepts[0];\n }\n return type;\n }\n\n /**\n * Check if the given MIME is a JSON MIME.\n * JSON MIME examples:\n * application/json\n * application/json; charset=UTF8\n * APPLICATION/JSON\n * application/vnd.company+json\n * @param mime - MIME (Multipurpose Internet Mail Extensions)\n * @return True if the given MIME is JSON, false otherwise.\n */\n public isJsonMime(mime: string): boolean {\n const jsonMime: RegExp = new RegExp('^(application\\/json|[^;/ \\t]+\\/[^;/ \\t]+[+]json)[ \\t]*(;.*)?$', 'i');\n return mime !== null && (jsonMime.test(mime) || mime.toLowerCase() === 'application/json-patch+json');\n }\n\n public lookupCredential(key: string): string | undefined {\n const value = this.credentials[key];\n return typeof value === 'function'\n ? value()\n : value;\n }\n\n private defaultEncodeParam(param: Param): string {\n // This implementation exists as fallback for missing configuration\n // and for backwards compatibility to older typescript-angular generator versions.\n // It only works for the 'simple' parameter style.\n // Date-handling only works for the 'date-time' format.\n // All other styles and Date-formats are probably handled incorrectly.\n //\n // But: if that's all you need (i.e.: the most common use-case): no need for customization!\n\n const value = param.dataFormat === 'date-time'\n ? (param.value as Date).toISOString()\n : param.value;\n\n return encodeURIComponent(String(value));\n }\n}\n","import { HttpParameterCodec } from '@angular/common/http';\n\n/**\n * Custom HttpParameterCodec\n * Workaround for https://github.com/angular/angular/issues/18261\n */\nexport class CustomHttpParameterCodec implements HttpParameterCodec {\n encodeKey(k: string): string {\n return encodeURIComponent(k);\n }\n encodeValue(v: string): string {\n return encodeURIComponent(v);\n }\n decodeKey(k: string): string {\n return decodeURIComponent(k);\n }\n decodeValue(v: string): string {\n return decodeURIComponent(v);\n }\n}\n","export * from './api/api';\nexport * from './model/models';\nexport * from './variables';\nexport * from './configuration';\nexport * from './api.module';\nexport * from './param';\n","/**\n * Analytics Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface AllLoginsModel { \n successfulLogins?: number;\n successfulLoginsForPeriod?: number;\n failedLogins?: number;\n failedLoginsForPeriod?: number;\n}\n\n","/**\n * Analytics Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface DashboardAuthenticatorEnrollmentViewModel { \n type?: string | null;\n name?: string | null;\n isEnabled?: boolean;\n enrolledCount?: number;\n notEnrolledCount?: number;\n}\n\n","/**\n * Analytics Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface DashboardLoginsByApplicationViewModel { \n applicationLabel?: string | null;\n applicationName?: string | null;\n successfulLoginCount?: number;\n failedLoginCount?: number;\n}\n\n","/**\n * Analytics Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface DashboardLoginsByAuthenticatorViewModel { \n type?: string | null;\n name?: string | null;\n successfulLoginCount?: number;\n failedLoginCount?: number;\n}\n\n","/**\n * Analytics Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface DashboardLoginsViewModel { \n timestamp?: string;\n successfulCount?: number;\n failedCount?: number;\n}\n\n","/**\n * Analytics Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface HeatmapAnomalyCountCountryModel { \n anomalyCount?: number;\n normalCount?: number;\n}\n\n","/**\n * Analytics Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { HeatmapAnomalyCountCountryModel } from './heatmapAnomalyCountCountryModel';\n\n\nexport interface HeatmapAnomalyCountModel { \n org?: string | null;\n countries?: { [key: string]: HeatmapAnomalyCountCountryModel; } | null;\n}\n\n","/**\n * Analytics Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface HeatmapLoginCountCountryModel { \n successfulCount?: number;\n failedCount?: number;\n}\n\n","/**\n * Analytics Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { HeatmapLoginCountCountryModel } from './heatmapLoginCountCountryModel';\n\n\nexport interface HeatmapLoginCountModel { \n org?: string | null;\n countries?: { [key: string]: HeatmapLoginCountCountryModel; } | null;\n}\n\n","export * from './allLoginsModel';\nexport * from './dashboardAuthenticatorEnrollmentViewModel';\nexport * from './dashboardLoginsByApplicationViewModel';\nexport * from './dashboardLoginsByAuthenticatorViewModel';\nexport * from './dashboardLoginsViewModel';\nexport * from './heatmapAnomalyCountCountryModel';\nexport * from './heatmapAnomalyCountModel';\nexport * from './heatmapLoginCountCountryModel';\nexport * from './heatmapLoginCountModel';\nexport * from './reportLoginViewModel';\nexport * from './reportsUserEnrollmentViewModel';\n","/**\n * Analytics Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface ReportLoginViewModel { \n timestamp?: string;\n userId?: number;\n userType?: string | null;\n username?: string | null;\n application?: string | null;\n authenticator?: string | null;\n isSuccess?: boolean;\n}\n\n","/**\n * Analytics Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface ReportsUserEnrollmentViewModel { \n userId?: number;\n firstName?: string | null;\n lastName?: string | null;\n username?: string | null;\n email?: string | null;\n userType?: string | null;\n authenticatorType?: string | null;\n}\n\n","/**\n * Standard parameter styles defined by OpenAPI spec\n */\nexport type StandardParamStyle =\n | 'matrix'\n | 'label'\n | 'form'\n | 'simple'\n | 'spaceDelimited'\n | 'pipeDelimited'\n | 'deepObject'\n ;\n\n/**\n * The OpenAPI standard {@link StandardParamStyle}s may be extended by custom styles by the user.\n */\nexport type ParamStyle = StandardParamStyle | string;\n\n/**\n * Standard parameter locations defined by OpenAPI spec\n */\nexport type ParamLocation = 'query' | 'header' | 'path' | 'cookie';\n\n/**\n * Standard types as defined in OpenAPI Specification: Data Types\n */\nexport type StandardDataType =\n | \"integer\"\n | \"number\"\n | \"boolean\"\n | \"string\"\n | \"object\"\n | \"array\"\n ;\n\n/**\n * Standard {@link DataType}s plus your own types/classes.\n */\nexport type DataType = StandardDataType | string;\n\n/**\n * Standard formats as defined in OpenAPI Specification: Data Types\n */\nexport type StandardDataFormat =\n | \"int32\"\n | \"int64\"\n | \"float\"\n | \"double\"\n | \"byte\"\n | \"binary\"\n | \"date\"\n | \"date-time\"\n | \"password\"\n ;\n\nexport type DataFormat = StandardDataFormat | string;\n\n/**\n * The parameter to encode.\n */\nexport interface Param {\n name: string;\n value: unknown;\n in: ParamLocation;\n style: ParamStyle,\n explode: boolean;\n dataType: DataType;\n dataFormat: DataFormat | undefined;\n}\n","import { InjectionToken } from '@angular/core';\n\nexport const BASE_PATH = new InjectionToken('basePath');\nexport const COLLECTION_FORMATS = {\n 'csv': ',',\n 'tsv': ' ',\n 'ssv': ' ',\n 'pipes': '|'\n}\n","import { NgModule, ModuleWithProviders, SkipSelf, Optional } from '@angular/core';\nimport { Configuration } from './configuration';\nimport { HttpClient } from '@angular/common/http';\n\nimport { VersionService } from './api/version.service';\n\n@NgModule({\n imports: [],\n declarations: [],\n exports: [],\n providers: []\n})\nexport class ApiModule {\n public static forRoot(configurationFactory: () => Configuration): ModuleWithProviders {\n return {\n ngModule: ApiModule,\n providers: [ { provide: Configuration, useFactory: configurationFactory } ]\n };\n }\n\n constructor( @Optional() @SkipSelf() parentModule: ApiModule,\n @Optional() http: HttpClient) {\n if (parentModule) {\n throw new Error('ApiModule is already loaded. Import in your base AppModule only.');\n }\n if (!http) {\n throw new Error('You need to import the HttpClientModule in your AppModule! \\n' +\n 'See also https://github.com/angular/angular/issues/20575');\n }\n }\n}\n","export * from './version.service';\nimport { VersionService } from './version.service';\nexport const APIS = [VersionService];\n","/**\n * A swagger API\n * powered by Flasgger\n *\n * The version of the OpenAPI document: 0.0.1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class VersionService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * Retrieve version details\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public versionGetVersionGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public versionGetVersionGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public versionGetVersionGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public versionGetVersionGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Version/getVersion`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","import { HttpParameterCodec } from '@angular/common/http';\nimport { Param } from './param';\n\nexport interface ConfigurationParameters {\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n apiKeys?: {[ key: string ]: string};\n username?: string;\n password?: string;\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n accessToken?: string | (() => string);\n basePath?: string;\n withCredentials?: boolean;\n /**\n * Takes care of encoding query- and form-parameters.\n */\n encoder?: HttpParameterCodec;\n /**\n * Override the default method for encoding path parameters in various\n * styles.\n *

\n * See {@link README.md} for more details\n *

\n */\n encodeParam?: (param: Param) => string;\n /**\n * The keys are the names in the securitySchemes section of the OpenAPI\n * document. They should map to the value used for authentication\n * minus any standard prefixes such as 'Basic' or 'Bearer'.\n */\n credentials?: {[ key: string ]: string | (() => string | undefined)};\n}\n\nexport class Configuration {\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n apiKeys?: {[ key: string ]: string};\n username?: string;\n password?: string;\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n accessToken?: string | (() => string);\n basePath?: string;\n withCredentials?: boolean;\n /**\n * Takes care of encoding query- and form-parameters.\n */\n encoder?: HttpParameterCodec;\n /**\n * Encoding of various path parameter\n * styles.\n *

\n * See {@link README.md} for more details\n *

\n */\n encodeParam: (param: Param) => string;\n /**\n * The keys are the names in the securitySchemes section of the OpenAPI\n * document. They should map to the value used for authentication\n * minus any standard prefixes such as 'Basic' or 'Bearer'.\n */\n credentials: {[ key: string ]: string | (() => string | undefined)};\n\n constructor(configurationParameters: ConfigurationParameters = {}) {\n this.apiKeys = configurationParameters.apiKeys;\n this.username = configurationParameters.username;\n this.password = configurationParameters.password;\n this.accessToken = configurationParameters.accessToken;\n this.basePath = configurationParameters.basePath;\n this.withCredentials = configurationParameters.withCredentials;\n this.encoder = configurationParameters.encoder;\n if (configurationParameters.encodeParam) {\n this.encodeParam = configurationParameters.encodeParam;\n }\n else {\n this.encodeParam = param => this.defaultEncodeParam(param);\n }\n if (configurationParameters.credentials) {\n this.credentials = configurationParameters.credentials;\n }\n else {\n this.credentials = {};\n }\n }\n\n /**\n * Select the correct content-type to use for a request.\n * Uses {@link Configuration#isJsonMime} to determine the correct content-type.\n * If no content type is found return the first found type if the contentTypes is not empty\n * @param contentTypes - the array of content types that are available for selection\n * @returns the selected content-type or undefined if no selection could be made.\n */\n public selectHeaderContentType (contentTypes: string[]): string | undefined {\n if (contentTypes.length === 0) {\n return undefined;\n }\n\n const type = contentTypes.find((x: string) => this.isJsonMime(x));\n if (type === undefined) {\n return contentTypes[0];\n }\n return type;\n }\n\n /**\n * Select the correct accept content-type to use for a request.\n * Uses {@link Configuration#isJsonMime} to determine the correct accept content-type.\n * If no content type is found return the first found type if the contentTypes is not empty\n * @param accepts - the array of content types that are available for selection.\n * @returns the selected content-type or undefined if no selection could be made.\n */\n public selectHeaderAccept(accepts: string[]): string | undefined {\n if (accepts.length === 0) {\n return undefined;\n }\n\n const type = accepts.find((x: string) => this.isJsonMime(x));\n if (type === undefined) {\n return accepts[0];\n }\n return type;\n }\n\n /**\n * Check if the given MIME is a JSON MIME.\n * JSON MIME examples:\n * application/json\n * application/json; charset=UTF8\n * APPLICATION/JSON\n * application/vnd.company+json\n * @param mime - MIME (Multipurpose Internet Mail Extensions)\n * @return True if the given MIME is JSON, false otherwise.\n */\n public isJsonMime(mime: string): boolean {\n const jsonMime: RegExp = new RegExp('^(application\\/json|[^;/ \\t]+\\/[^;/ \\t]+[+]json)[ \\t]*(;.*)?$', 'i');\n return mime !== null && (jsonMime.test(mime) || mime.toLowerCase() === 'application/json-patch+json');\n }\n\n public lookupCredential(key: string): string | undefined {\n const value = this.credentials[key];\n return typeof value === 'function'\n ? value()\n : value;\n }\n\n private defaultEncodeParam(param: Param): string {\n // This implementation exists as fallback for missing configuration\n // and for backwards compatibility to older typescript-angular generator versions.\n // It only works for the 'simple' parameter style.\n // Date-handling only works for the 'date-time' format.\n // All other styles and Date-formats are probably handled incorrectly.\n //\n // But: if that's all you need (i.e.: the most common use-case): no need for customization!\n\n const value = param.dataFormat === 'date-time'\n ? (param.value as Date).toISOString()\n : param.value;\n\n return encodeURIComponent(String(value));\n }\n}\n","import { HttpParameterCodec } from '@angular/common/http';\n\n/**\n * Custom HttpParameterCodec\n * Workaround for https://github.com/angular/angular/issues/18261\n */\nexport class CustomHttpParameterCodec implements HttpParameterCodec {\n encodeKey(k: string): string {\n return encodeURIComponent(k);\n }\n encodeValue(v: string): string {\n return encodeURIComponent(v);\n }\n decodeKey(k: string): string {\n return decodeURIComponent(k);\n }\n decodeValue(v: string): string {\n return decodeURIComponent(v);\n }\n}\n","export * from './api/api';\nexport * from './model/models';\nexport * from './variables';\nexport * from './configuration';\nexport * from './api.module';\nexport * from './param';\n","export interface Model { }","/**\n * Standard parameter styles defined by OpenAPI spec\n */\nexport type StandardParamStyle =\n | 'matrix'\n | 'label'\n | 'form'\n | 'simple'\n | 'spaceDelimited'\n | 'pipeDelimited'\n | 'deepObject'\n ;\n\n/**\n * The OpenAPI standard {@link StandardParamStyle}s may be extended by custom styles by the user.\n */\nexport type ParamStyle = StandardParamStyle | string;\n\n/**\n * Standard parameter locations defined by OpenAPI spec\n */\nexport type ParamLocation = 'query' | 'header' | 'path' | 'cookie';\n\n/**\n * Standard types as defined in OpenAPI Specification: Data Types\n */\nexport type StandardDataType =\n | \"integer\"\n | \"number\"\n | \"boolean\"\n | \"string\"\n | \"object\"\n | \"array\"\n ;\n\n/**\n * Standard {@link DataType}s plus your own types/classes.\n */\nexport type DataType = StandardDataType | string;\n\n/**\n * Standard formats as defined in OpenAPI Specification: Data Types\n */\nexport type StandardDataFormat =\n | \"int32\"\n | \"int64\"\n | \"float\"\n | \"double\"\n | \"byte\"\n | \"binary\"\n | \"date\"\n | \"date-time\"\n | \"password\"\n ;\n\nexport type DataFormat = StandardDataFormat | string;\n\n/**\n * The parameter to encode.\n */\nexport interface Param {\n name: string;\n value: unknown;\n in: ParamLocation;\n style: ParamStyle,\n explode: boolean;\n dataType: DataType;\n dataFormat: DataFormat | undefined;\n}\n","import { InjectionToken } from '@angular/core';\n\nexport const BASE_PATH = new InjectionToken('basePath');\nexport const COLLECTION_FORMATS = {\n 'csv': ',',\n 'tsv': ' ',\n 'ssv': ' ',\n 'pipes': '|'\n}\n","import { Injectable } from '@angular/core';\nimport {\n CanActivate,\n Router,\n ActivatedRouteSnapshot,\n RouterStateSnapshot,\n CanActivateChild,\n UrlTree,\n} from '@angular/router';\nimport { AuthService } from 'src/app/authentication/auth.service';\nimport { HasPermissionService } from './has-permission.service';\nimport { UserRoles } from './constant.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ActivateAdmin implements CanActivate, CanActivateChild {\n constructor(\n private router: Router,\n private hasPermission: HasPermissionService\n ) {}\n\n canActivate(\n route: ActivatedRouteSnapshot,\n state: RouterStateSnapshot\n ): Promise {\n var roles: UserRoles[] = [\n UserRoles.HelpDeskUser,\n UserRoles.AdminUser,\n UserRoles.MspAdmin,\n UserRoles.SuperAdmin,\n ];\n return this.hasPermission.allowAccessAsync(roles, route);\n }\n\n canActivateChild(\n route: ActivatedRouteSnapshot,\n state: RouterStateSnapshot\n ): Promise {\n return this.canActivate(route, state);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { CanActivate, Router, ActivatedRouteSnapshot, RouterStateSnapshot, CanActivateChild, UrlTree } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ActivateAnonymous implements CanActivate, CanActivateChild {\n constructor(private router: Router) { }\n\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): true | UrlTree {\n return true;\n }\n\n canActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): true | UrlTree {\n return this.canActivate(route, state);\n }\n\n}","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate, CanActivateChild, Router, RouterStateSnapshot, UrlTree } from '@angular/router';\nimport { environment } from '../../../environments/environment';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ActivateMultiTenant implements CanActivate, CanActivateChild {\n constructor(private router: Router) { }\n\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean | UrlTree {\n return environment.singleTenantMode == false;\n }\n\n canActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean | UrlTree {\n return this.canActivate(route, state);\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport {\n ActivatedRouteSnapshot,\n CanActivate,\n CanActivateChild,\n Router,\n RouterStateSnapshot,\n UrlTree,\n} from '@angular/router';\nimport { UserRoles } from './constant.service';\nimport { HasPermissionService } from './has-permission.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ActivateUsers implements CanActivate, CanActivateChild {\n constructor(\n private router: Router,\n private hasPermission: HasPermissionService\n ) {}\n\n canActivate(\n route: ActivatedRouteSnapshot,\n state: RouterStateSnapshot\n ): Promise {\n var roles: UserRoles[] = [\n UserRoles.User,\n UserRoles.HelpDeskUser,\n UserRoles.AdminUser,\n UserRoles.MspAdmin,\n UserRoles.SuperAdmin,\n ];\n return this.hasPermission.allowAccessAsync(roles, route);\n }\n\n canActivateChild(\n route: ActivatedRouteSnapshot,\n state: RouterStateSnapshot\n ): Promise {\n return this.canActivate(route, state);\n }\n}\n","export class AppSettings {\n constructor(public version: string, \n public adminMenu: boolean,\n public locale: string,\n public rtl: boolean,\n public showLeftMenu: boolean,\n public rootUrl: string) { }\n}","import { Injectable } from '@angular/core';\nimport { AppSettings } from './appsettings.model';\n\n@Injectable()\nexport class AppSettingsService {\n public settings = new AppSettings(\"3.0 beta 1\", false, \"en\", false, true, '');\n\n _selectedGroup = null;\n\n set selectedGroup(group: any) {\n localStorage.setItem('selectedGroup', JSON.stringify(group));\n this._selectedGroup = group;\n }\n\n get selectedGroup(): any {\n return this._selectedGroup;\n }\n\n constructor() {\n this.selectedGroup = JSON.parse(localStorage.getItem('selectedGroup')) || null;\n }\n\n}","import { Injectable } from '@angular/core';\nimport {\n HttpInterceptor,\n HttpRequest,\n HttpHandler,\n HttpClient,\n HttpErrorResponse,\n HttpEvent,\n HttpResponse,\n} from '@angular/common/http';\nimport { AuthService } from 'src/app/authentication/auth.service';\nimport { Router } from '@angular/router';\nimport { catchError, EMPTY, of, tap } from 'rxjs';\nimport { ToastrService } from 'ngx-toastr';\nimport { ConstantService } from './constant.service';\nimport { TranslateService } from '@ngx-translate/core';\n\n@Injectable({\n providedIn: 'root',\n})\n@Injectable()\nexport class AuthInterceptor implements HttpInterceptor {\n\n private knownErrors: string[] = [\n 'Max limit reached for user creation against your organization.'\n ]\n\n constructor(\n private auth: AuthService,\n private router: Router,\n private toastrService: ToastrService,\n private constantService: ConstantService,\n private translateService: TranslateService,\n private httpClient: HttpClient\n ) {}\n\n intercept(req: HttpRequest, next: HttpHandler) {\n // Get the auth token from the service.\n const authToken: string = this.auth.authorizationHeaderValue;\n\n if (this.auth?.isLoginExpired) {\n this.auth.signOut();\n }\n\n let authReq = req.clone({\n url: req.url\n .replace('{org_code}', this.constantService.getSubdomain(false))\n .replace(RegExp('^(?:.*?/api/){2}'), function (x) {\n return x.replace(RegExp('/api/' + '$'), '/');\n }),\n });\n\n if (authToken) {\n authReq = authReq.clone({\n headers: authReq.headers.set('Authorization', authToken),\n });\n }\n\n // send cloned request with header to the next handler.\n return next.handle(authReq).pipe(\n tap({\n next: (event: HttpEvent) => {\n if (event instanceof HttpResponse) {\n //console.log('hide waiting spinners');\n }\n },\n error: (err) => {\n if (err instanceof HttpErrorResponse && !this.auth?.isLoginExpired) {\n console.log(err.status, err);\n if (req.url?.toLowerCase().includes('/getversion')) {\n return;\n }\n if (req.url?.toLowerCase().includes('/updatelastactive')) {\n return EMPTY;\n }\n if (req.url?.toLowerCase().includes('/licence/')) {\n return EMPTY;\n }\n if (err.error?.error instanceof SyntaxError && !err.error?.text.startsWith('<')) {\n this.toastrService.error(err.error.text, 'General Error', this.constantService.ToastError);\n return of();\n }\n switch (err.status) {\n case 401:\n if (authToken) {\n this.toastrService.error(\n 'Unauthorized Error',\n err.statusText,\n this.constantService.ToastError\n );\n } else {\n this.router.navigate(['login'], {\n state: { errorMessage: err.message },\n });\n }\n break;\n\n case 403:\n //this.router.navigate(['error'], { state: { errorMessage: err.message } })\n this.toastrService.error(\n 'Forbidden Error',\n err.statusText,\n this.constantService.ToastError\n );\n break;\n case 500: \n if (err.error && this.knownErrors.indexOf(err.error) >= 0) {\n this.toastrService.error(\n err.error,\n err.statusText,\n this.constantService.ToastError\n );\n return EMPTY;\n } else {\n this.toastrService.error(\n 'Service Error',\n err.statusText,\n this.constantService.ToastError\n );\n }\n break;\n case 400:\n this.toastrService.error(\n 'General Error',\n err.statusText,\n this.constantService.ToastError\n );\n break;\n case 409:\n this.toastrService.error(\n this.translateService.instant(err.error),\n this.translateService.instant('Action.Error'),\n this.constantService.ToastError\n );\n break;\n default:\n //this.router.navigate(['error'], { state: { errorMessage: err.statusText } })\n this.toastrService.error(\n 'General Error',\n err.statusText,\n this.constantService.ToastError\n );\n }\n }\n },\n })\n );\n }\n}\n","import {\n Directive,\n ElementRef,\n HostListener,\n Input,\n OnInit,\n TemplateRef,\n ViewContainerRef,\n} from '@angular/core';\nimport { User } from 'oidc-client';\nimport { AuthService } from 'src/app/authentication/auth.service';\nimport { UserRoles } from './constant.service';\nimport { HasPermissionService } from './has-permission.service';\n\n@Directive({\n selector: '[blockCopyPaste]',\n})\nexport class BlockCopyPasteDirective {\n constructor() {}\n\n @HostListener('paste', ['$event']) blockPaste(e: KeyboardEvent) {\n e.preventDefault();\n }\n\n @HostListener('copy', ['$event']) blockCopy(e: KeyboardEvent) {\n e.preventDefault();\n }\n\n @HostListener('cut', ['$event']) blockCut(e: KeyboardEvent) {\n e.preventDefault();\n }\n}\n","import { environment } from \"src/environments/environment\";\nimport { Configuration as MasterConfiguration, ConfigurationParameters } from \"../master\";\nimport { Configuration as AnalyticsConfiguration } from \"../analytics\";\nimport { Configuration as UserConfiguration } from \"../user\";\nimport { Configuration as ActivityLoggingConfiguration } from \"../activitylogging\";\nimport { Configuration as FileStoreConfiguration } from \"../fileStore\";\nimport { Configuration as NotificationConfiguration } from \"../notification\";\nimport { Configuration as IdentityConfiguration } from \"../identity\";\nimport { Configuration as OrganizationCOnfiguration } from \"../organization\";\nimport { Configuration as ConditionalAccessConfiguration } from \"../conditional-access\";\nimport { Configuration as MigrationConfiguration } from \"../migration\";\nimport { Configuration as ReportConfiguration } from \"../report\";\nimport { Configuration as AnomalyDetectionConfiguration } from \"../anomalydetection\";\n\nexport function getApi(api: string) {\n switch (api) {\n case 'master':\n return environment.master;\n case 'analytics':\n return environment.analytics;\n case 'user':\n return environment.user;\n case 'notification':\n return environment.notification;\n case 'filestore':\n return environment.filestore;\n case 'activitylogging':\n return environment.activityLogging;\n case 'identity':\n return environment.identity;\n case 'organization':\n return environment.organization;\n case 'conditionalAccess':\n return environment.conditionalAccess;\n case 'migration':\n return environment.migration;\n case 'report':\n return environment.report\n case 'anomalydetection':\n return environment.anomalydetection\n default:\n return '';\n }\n};\n\nexport function apiMaster(): MasterConfiguration {\n const params: ConfigurationParameters = {\n basePath: getApi('master')\n }\n return new MasterConfiguration(params);\n};\n\nexport function apiAnalytics(): AnalyticsConfiguration {\n const params: ConfigurationParameters = {\n basePath: getApi('analytics')\n }\n return new AnalyticsConfiguration(params);\n};\n\nexport function apiUser(): UserConfiguration {\n const params: ConfigurationParameters = {\n basePath: getApi('user')\n }\n return new UserConfiguration(params);\n};\n\nexport function apiNotification(): NotificationConfiguration {\n const params: ConfigurationParameters = {\n basePath: getApi('notification')\n }\n return new NotificationConfiguration(params);\n};\nexport function apiFileStore(): FileStoreConfiguration {\n const params: ConfigurationParameters = {\n basePath: getApi('filestore')\n }\n return new FileStoreConfiguration(params);\n};\nexport function apiActivitylogging(): ActivityLoggingConfiguration {\n const params: ConfigurationParameters = {\n basePath: getApi('activitylogging')\n }\n return new ActivityLoggingConfiguration(params);\n};\n\nexport function apiIdentity(): IdentityConfiguration {\n const params: ConfigurationParameters = {\n basePath: getApi('identity')\n }\n return new IdentityConfiguration(params);\n};\n\nexport function apiOrganization(): OrganizationCOnfiguration {\n const params: ConfigurationParameters = {\n basePath: getApi('organization')\n }\n return new OrganizationCOnfiguration(params);\n};\n\nexport function apiConditionalAccess(): ConditionalAccessConfiguration {\n const params: ConfigurationParameters = {\n basePath: getApi('conditionalAccess')\n }\n return new ConditionalAccessConfiguration(params);\n};\n\nexport function apiMigration(): MigrationConfiguration {\n const params: ConfigurationParameters = {\n basePath: getApi('migration')\n }\n return new MigrationConfiguration(params);\n};\n\nexport function apiReport(): ReportConfiguration {\n const params: ConfigurationParameters = {\n basePath: getApi('report')\n }\n return new ReportConfiguration(params);\n};\n\nexport function apiAnomalyDetection(): AnomalyDetectionConfiguration {\n const params: ConfigurationParameters = {\n basePath: getApi('anomalydetection')\n }\n return new AnomalyDetectionConfiguration(params);\n};\n","import { Injectable, isDevMode } from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { Router } from '@angular/router';\nimport { TranslateService } from '@ngx-translate/core';\nimport { format } from 'date-fns';\nimport { environment } from 'src/environments/environment';\nimport { OrganizationModel, SecuritySettingModel } from '../organization';\nimport { AngularEditorConfig } from '@kolkov/angular-editor';\nimport {\n FormStyle,\n getLocaleDayNames,\n getLocaleMonthNames,\n TranslationWidth,\n} from '@angular/common';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ConstantService {\n public ToastError = { timeOut: 8000 };\n public TableLang: any;\n public AuthEnrollment = 'AuthEnrollment';\n public MultiFAEnrollment = 'MultiFAEnrollment';\n public readonly LoginAgent = 'LoginAgent';\n public readonly CloudMigration = 'CloudMigration';\n public readonly CloudMigrationMetadata = 'CloudMigrationMetadata';\n public readonly MaintenanceWindow = 'MaintenanceWindow';\n public readonly yubikeyCharMaxLength = 32;\n public readonly yubikeyCharMinLength = 12;\n public readonly maxSizeApplicationLogoInMB = 2;\n public readonly mfa = 'MFA';\n public readonly claims: string[] = [\n 'https://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier',\n 'https://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn',\n 'https://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress',\n 'https://schemas.xmlsoap.org/ws/2005/05/identity/claims/name',\n 'https://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname',\n 'https://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname',\n 'https://schemas.securenvoy.com/phone',\n 'https://schemas.securenvoy.com/cell',\n 'https://schemas.securenvoy.com/fax',\n 'https://schemas.xmlsoap.org/ws/2005/05/identity/claims/streetaddress',\n 'https://schemas.securenvoy.com/pobox',\n 'https://schemas.xmlsoap.org/ws/2005/05/identity/claims/stateorprovince',\n 'https://schemas.securenvoy.com/city',\n 'https://schemas.xmlsoap.org/ws/2005/05/identity/claims/postalcode',\n 'http://schemas.xmlsoap.org/ws/2005/05/identity/claims/employeeid',\n 'https://schemas.securenvoy.com/department',\n 'https://schemas.securenvoy.com/jobtitle',\n 'https://schemas.securenvoy.com/employeetype',\n 'https://schemas.securenvoy.com/workcountry',\n ];\n public readonly allowAttempts = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];\n public readonly allowAttemptsDurations = [1, 5, 10, 15, 20, 30, 60];\n public readonly temporaryBlockMinutes = [0, 15, 30, 45, 60];\n public readonly minimumPasswordLengths = [8, 10, 12];\n public readonly hardwareTokenTimes = [30, 60];\n public readonly adminValidationDurations = [0, 15, 30, 60, 120, 240, 480];\n public readonly userAutoLockInactiveDays = [30, 60, 90, 120, 150, 180];\n\n public readonly dataTypes = ['string', 'number', 'date'];\n public readonly tonTypes = ['AlphaNumeric', 'ShortNumber', 'MSISDN'];\n public readonly dcsTypes = ['Text', 'GSM', 'Binary', 'UCS2'];\n public readonly priorityTypes = ['HIGH', 'NORMAL', 'LOW'];\n public readonly delimiters = [\n {\n displayName: 'Comma',\n value: ',',\n },\n {\n displayName: 'Tab',\n value: '\\t',\n },\n {\n displayName: 'Semicolon',\n value: ';',\n },\n {\n displayName: 'Space',\n value: ' ',\n },\n {\n displayName: 'Pipe',\n value: '|',\n },\n ];\n\n public attributeTypes = [\n {\n id: 'string',\n value: 'string',\n },\n {\n id: 'integer',\n value: 'integer',\n },\n {\n id: 'octet',\n value: 'octet',\n },\n {\n id: 'tagged-integer',\n value: 'tagged-integer',\n },\n {\n id: 'tagged-string',\n value: 'tagged-string',\n },\n {\n id: 'ipaddr',\n value: 'ipaddr',\n },\n {\n id: 'date',\n value: 'date',\n },\n ];\n\n public authenticationTypes = [\n {\n id: 'SecondFactorAuth',\n value: 'Secondary Factor',\n isChecked: false,\n isDisabled: false,\n isMain: true,\n },\n {\n id: 'SecondFactorEnforce',\n value: 'Method Enforcement',\n isChecked: false,\n isDisabled: false,\n isSubType: true,\n parent: 'SecondFactorAuth',\n },\n { id: 'PassCode', value: 'PassCode', isChecked: false, isDisabled: false },\n {\n id: 'PassCodeSMS',\n value: 'SMS',\n isChecked: false,\n isDisabled: false,\n isSubType: true,\n parent: 'PassCode',\n },\n {\n id: 'PassCodeEmail',\n value: 'Email',\n isChecked: false,\n isDisabled: false,\n isSubType: true,\n parent: 'PassCode',\n },\n {\n id: 'Push',\n value: 'Push / SoftToken',\n isChecked: false,\n isDisabled: false,\n },\n {\n id: 'PushEnforce',\n value: 'Push Enforcement',\n isChecked: false,\n isDisabled: false,\n isSubType: true,\n parent: 'Push',\n },\n {\n id: 'UserCode',\n value: 'Static Code',\n isChecked: false,\n isDisabled: false,\n },\n { id: 'Hardware', value: 'Hardware', isChecked: false, isDisabled: false },\n { id: 'Yubikey', value: 'Yubikey', isChecked: false, isDisabled: false },\n {\n id: 'FidoToken',\n value: 'FidoToken',\n isChecked: false,\n isDisabled: false,\n },\n ];\n public readonly passCodeAllowedTypes = ['AlphaNumeric', 'Numeric'];\n public readonly pushTimesInSeconds = [30, 40, 50, 60];\n public readonly userCodeMinCharLengths = [2, 4, 6, 8, 10];\n\n public readonly regexIpAddress =\n '^([01]?\\\\d\\\\d?|2[0-4]\\\\d|25[0-5])\\\\.([01]?\\\\d\\\\d?|2[0-4]\\\\d|25[0-5])\\\\.([01]?\\\\d\\\\d?|2[0-4]\\\\d|25[0-5])\\\\.([01]?\\\\d\\\\d?|2[0-4]\\\\d|25[0-5])$';\n public regexUserEmail =\n '^[^<>!=*!@#$%&*()=+^][^<>!=*!@#$%&*()=^]*@[a-zA-Z0-9-]+(\\\\.[a-zA-Z0-9-]+)*\\\\.[a-zA-Z]{2,30}$';\n\n public regexUserName = '^[a-zA-Z0-9._-]*$';\n public regexAlphaNumWithOutSpaceDot = '^[a-zA-Z0-9]*$';\n\n private currentTenant: OrganizationModel = null;\n\n settingId: string;\n showOrgName: string = 'SecurEnvoy';\n imageUrl =\n environment.filestore.indexOf('/api/') >= 0\n ? environment.filestore + '/Filestore/GetImageByID/'\n : environment.filestore + '/api/Filestore/GetImageByID/';\n\n public dayNames: string[];\n public monthNames: string[];\n\n constructor(private translate: TranslateService) {\n this.settingId = 'settingId';\n const tenantData = localStorage.getItem('tenant');\n this.currentTenant = tenantData\n ? JSON.parse(localStorage.getItem('tenant'))\n : null;\n\n this.translate.onLangChange.subscribe((x) => {\n this.dayNames = getLocaleDayNames(\n x.lang,\n FormStyle.Standalone,\n TranslationWidth.Wide\n ).map((x) => x.toString());\n this.monthNames = getLocaleMonthNames(\n x.lang,\n FormStyle.Standalone,\n TranslationWidth.Wide\n ).map((x) => x.toString());\n });\n }\n\n editorConfig: AngularEditorConfig = {\n editable: false,\n spellcheck: true,\n height: '15rem',\n minHeight: '5rem',\n placeholder: '',\n translate: 'no',\n defaultParagraphSeparator: 'p',\n defaultFontName: 'Arial',\n showToolbar: false,\n toolbarHiddenButtons: [['insertVideo', 'insertImage']],\n customClasses: [\n {\n name: 'quote',\n class: 'quote',\n },\n {\n name: 'redText',\n class: 'redText',\n },\n {\n name: 'titleText',\n class: 'titleText',\n tag: 'h1',\n },\n ],\n };\n\n public resetTenant() {\n localStorage.removeItem('tenant');\n this.currentTenant = null;\n }\n\n setImageUrl(data) {\n data.forEach((element) => {\n if (element.logoUrl.startsWith('http')) {\n } else if (!element.logoUrl.includes('assets/images')) {\n element.logoUrl = this.imageUrl + element.logoUrl;\n }\n });\n }\n\n getImageUrl(value: string) {\n if (value.startsWith('http')) {\n return value;\n } else if (!value.includes('assets/images')) {\n return this.imageUrl + value;\n }\n return value;\n }\n\n copyInputMessage(inputElement) {\n inputElement.select();\n document.execCommand('copy');\n inputElement.setSelectionRange(0, 0);\n }\n\n getTimestamp(date: string | number | Date) {\n if (date) {\n return format(this.getUTC(date), 'yyyy-MM-dd HH:mm:ss');\n }\n return '';\n }\n\n getDate(date: string | number | Date) {\n if (date) {\n return format(this.getUTC(date), 'yyyy-MM-dd');\n }\n return '';\n }\n\n getUTC(value) {\n let date: Date;\n if (value instanceof Date) {\n date = value;\n } else {\n date = new Date(value);\n }\n return !value?.includes('Z')\n ? date\n : new Date(date.getTime() + date.getTimezoneOffset() * 60000);\n }\n\n keyDown(event: any) {\n return false;\n }\n\n detachObject(object: any) {\n return JSON.parse(JSON.stringify(object));\n }\n\n setTableLang() {\n this.TableLang = {\n sProcessing: this.translate.instant('Datatables.Processing'),\n sSearch: this.translate.instant('Datatables.Search'),\n sLengthMenu: this.translate.instant('Datatables.LengthMenu'),\n sInfo: this.translate.instant('Datatables.Info'),\n sInfoEmpty: this.translate.instant('Datatables.InfoEmpty'),\n sInfoFiltered: this.translate.instant('Datatables.InfoFiltered'),\n sInfoPostFix: this.translate.instant('Datatables.InfoPostFix'),\n sLoadingRecords: this.translate.instant('Datatables.LoadingRecords'),\n sZeroRecords: this.translate.instant('Datatables.ZeroRecords'),\n sEmptyTable: this.translate.instant('Datatables.EmptyTable'),\n oPaginate: {\n sFirst: this.translate.instant('Datatables.First'),\n sPrevious: this.translate.instant('Datatables.Previous'),\n sNext: this.translate.instant('Datatables.Next'),\n sLast: this.translate.instant('Datatables.Last'),\n },\n oAria: {\n sSortAscending: this.translate.instant('Datatables.SortAscending'),\n sSortDescending: this.translate.instant('Datatables.SortDescending'),\n },\n };\n }\n getImageFromServer(key: string) {\n const uri = sessionStorage.getItem(key);\n return uri == null\n ? null\n : this.imageUrl.replace(RegExp('^(?:.*?/api/){2}'), function (x) {\n return x.replace(RegExp('/api/' + '$'), '/');\n }) + uri;\n }\n\n setSessionStorage(data) {\n for (const property in data) {\n if (property && data?.[property] && ThemeEnum.hasOwnProperty(property)) {\n sessionStorage.setItem(property, data[property]);\n }\n }\n }\n\n getSessionStorage(key: string) {\n return sessionStorage.getItem(key) ?? null;\n }\n\n removeSessionStorage(data) {\n for (const property in data) {\n if (property && ThemeEnum.hasOwnProperty(property)) {\n sessionStorage.removeItem(property);\n }\n }\n }\n\n public get mspTenant(): any {\n return this.currentTenant;\n }\n\n getNewKey(oldKey) {\n if (!isNaN(oldKey)) {\n oldKey = (+oldKey + 1).toString();\n }\n const newKey = oldKey.replace(/([A-Z])/g, ' $1').replace(/^./, (str) => {\n return str.toUpperCase();\n });\n const result = newKey.replace(\n /^([a-zA-Z])(.*)\\.([^.]+)$/,\n function (match, grp1, grp2, grp3, offset, s) {\n return (\n grp1.toUpperCase() +\n grp2 +\n ' ' +\n grp3.replace(/^./, (str) => {\n return str.toUpperCase();\n })\n );\n }\n );\n return result;\n }\n\n public setMspTenant(tenant: OrganizationModel) {\n localStorage.setItem('tenant', JSON.stringify(tenant));\n this.currentTenant = tenant;\n }\n\n public getDefaultTenant() {\n if (environment.production) {\n const hostname = window.location.hostname;\n return hostname.includes('.') ? hostname.split('.')[0] : hostname;\n }\n return environment.organizationCode;\n }\n\n public getSubdomain(fromTenantSelector: boolean = true) {\n let subdomain = environment.organizationCode;\n if (environment.production && !environment.singleTenantMode) {\n let hostname = window.location.hostname;\n if (hostname.includes('.')) {\n hostname = hostname.split('.')[0];\n }\n subdomain = hostname;\n }\n\n if (!fromTenantSelector) {\n return subdomain;\n }\n return this.currentTenant?.mnemonic ?? subdomain;\n }\n\n encode(value) {\n if (value) {\n return btoa(value);\n }\n }\n\n decode(value) {\n if (value) {\n return atob(value);\n }\n }\n\n markFormGroupTouched(formGroup: FormGroup) {\n (Object).values(formGroup.controls).forEach((control) => {\n control.markAsTouched();\n\n if (control.controls) {\n this.markFormGroupTouched(control);\n }\n });\n }\n\n getValues(form: FormGroup) {\n const values = {};\n Object.keys(form.controls).forEach((key) => {\n const currentControl = form.controls[key];\n values[key] = currentControl.value;\n });\n return values;\n }\n\n setFormValue(formValues: any, configValues: any) {\n configValues.forEach((configValue) => {\n configValue.fields.forEach((config) => {\n if (config?.name && formValues[config.name]) {\n if (config?.value !== undefined) {\n config.value = formValues[config?.name];\n return;\n }\n if (config?.readonlyValue !== undefined) {\n config.readonlyValue = formValues[config?.name];\n return;\n }\n }\n });\n });\n\n return configValues;\n }\n\n generateRandomPasswordSelection(securitySettings: SecuritySettingModel) {\n let length = 8 || securitySettings.passwordMinLength;\n let passwordLength = this.randomIntFromInterval(length, length + 2);\n let numberChars = securitySettings.pwdMustIncludeNumber ? '0123456789' : '';\n let upperChars = securitySettings.pwdMustIncludeUppercase\n ? 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'\n : '';\n let lowerChars = securitySettings.pwdMustIncludeLowercase\n ? 'abcdefghijklmnopqrstuvwxyz'\n : '';\n let specialChars = securitySettings.pwdMustIncludeSpecialCharacter\n ? \"(!@#$%^&*()_{}[]+=|'\"\n : '';\n let allChars = numberChars + upperChars + lowerChars + specialChars;\n let randPasswordArray = Array(passwordLength);\n randPasswordArray[0] = numberChars;\n randPasswordArray[1] = upperChars;\n randPasswordArray[2] = lowerChars;\n randPasswordArray[3] = specialChars;\n randPasswordArray = randPasswordArray.fill(allChars, 4);\n if (window.crypto && window.crypto.getRandomValues) {\n return this.shuffleArray(\n randPasswordArray.map(function (x) {\n return x[\n Math.floor(\n (window.crypto.getRandomValues(new Uint32Array(1))[0] /\n (0xffffffff + 1)) *\n x.length\n )\n ];\n })\n ).join('');\n } else {\n return this.shuffleArray(\n randPasswordArray.map(function (x) {\n return x[Math.floor(Math.random() * x.length)];\n })\n ).join('');\n }\n }\n\n shuffleArray(array) {\n for (var i = array.length - 1; i > 0; i--) {\n var j = Math.floor(Math.random() * (i + 1));\n var temp = array[i];\n array[i] = array[j];\n array[j] = temp;\n }\n return array;\n }\n\n //generate random number in the range (min and max included)\n randomIntFromInterval(min, max) {\n return Math.floor(Math.random() * (max - min + 1) + min);\n }\n\n saveTableState(settings, data) {\n const stateData = { order: data.order, length: data.length };\n localStorage.setItem(\n `tableState-${settings.sTableId}`,\n JSON.stringify(stateData)\n );\n }\n\n loadTableState(settings) {\n try {\n const data = JSON.parse(\n localStorage.getItem(`tableState-${settings.sTableId}`)\n );\n data.time = new Date();\n return data;\n } catch (e) {\n return {};\n }\n }\n\n public getOrdinalSuffix(value: string) {\n const lang = this.translate.currentLang;\n switch (lang) {\n case 'de':\n return this.getGermanOrdinalSuffix(value);\n case 'es':\n return this.getSpanishOrdinalSuffix(value);\n case 'en':\n return this.getEnglishOrdinalSuffix(value);\n case 'fr':\n return this.getFrenchOrdinalSuffix(value);\n default:\n return this.getEnglishOrdinalSuffix(value);\n }\n }\n\n private getEnglishOrdinalSuffix(value: string) {\n if (value.length > 1) {\n const secondToLastDigit = value.charAt(value.length - 2);\n if (secondToLastDigit === '1') {\n return 'th';\n }\n }\n\n const lastDigit = value.charAt(value.length - 1);\n switch (lastDigit) {\n case '1':\n return 'st';\n case '2':\n return 'nd';\n case '3':\n return 'rd';\n default:\n return 'th';\n }\n }\n\n private getGermanOrdinalSuffix(value: string) {\n return '.';\n }\n\n private getSpanishOrdinalSuffix(value: string) {\n return '.\\u1D43';\n }\n\n private getFrenchOrdinalSuffix(value: string) {\n if (value == '1') {\n return 're';\n }\n return 'e';\n }\n\n getPdfFromHttpBlob(fileName: string, blob: any) {\n // It is necessary to create a new blob object with mime-type explicitly set\n // otherwise only Chrome works like it should\n var newBlob = new Blob([blob], { type: 'application/pdf' });\n\n // IE doesn't allow using a blob object directly as link href\n // instead it is necessary to use msSaveOrOpenBlob\n // @ts-ignore\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\n // @ts-ignore\n window.navigator.msSaveOrOpenBlob(newBlob, fileName);\n return;\n }\n\n // For other browsers:\n // Create a link pointing to the ObjectURL containing the blob.\n const data = window.URL.createObjectURL(newBlob);\n\n var link = document.createElement('a');\n link.href = data;\n link.download = fileName;\n // this is necessary as link.click() does not work on the latest firefox\n link.dispatchEvent(\n new MouseEvent('click', { bubbles: true, cancelable: true, view: window })\n );\n\n setTimeout(function () {\n // For Firefox it is necessary to delay revoking the ObjectURL\n window.URL.revokeObjectURL(data);\n link.remove();\n }, 100);\n }\n}\n\n// tslint:disable-next-line: no-namespace\nexport namespace AuthenticationMethod {\n export function values(userFlag?: boolean) {\n const authenticationTypeCheck = ['values', 'updateValues'];\n if (userFlag) {\n authenticationTypeCheck.push(AuthenticationMethod.Push);\n return Object.keys(AuthenticationMethod).filter(\n (type) => isNaN(type) && !authenticationTypeCheck.includes(type)\n );\n } else {\n return Object.keys(AuthenticationMethod).filter(\n (type) => isNaN(type) && !authenticationTypeCheck.includes(type)\n );\n }\n }\n\n export function updateValues(removeKey?: string[], userFlag?: boolean) {\n const authenticationTypeCheck = ['values', 'updateValues'];\n if (userFlag) {\n authenticationTypeCheck.push(AuthenticationMethod.Push);\n if (removeKey.length > 0) {\n removeKey.push(...authenticationTypeCheck);\n return Object.keys(AuthenticationMethod).filter(\n (type) => isNaN(type) && !removeKey.includes(type)\n );\n } else {\n return Object.keys(AuthenticationMethod).filter(\n (type) => isNaN(type) && !authenticationTypeCheck.includes(type)\n );\n }\n } else {\n if (removeKey.length > 0) {\n removeKey.push(...authenticationTypeCheck);\n return Object.keys(AuthenticationMethod).filter(\n (type) => isNaN(type) && !removeKey.includes(type)\n );\n } else {\n return Object.keys(AuthenticationMethod).filter(\n (type) => isNaN(type) && !authenticationTypeCheck.includes(type)\n );\n }\n }\n }\n}\n\nexport enum UserRoles {\n User = 'user',\n HelpDeskUser = 'helpdeskuser',\n AdminUser = 'adminuser',\n MspAdmin = 'mspadmin',\n SuperAdmin = 'superadmin',\n}\n\nexport enum Permissions {\n NoAccess = 0,\n ReadOnly = 1,\n Full = 2,\n}\n\nexport enum AuthenticationMethod {\n Password = 'Password',\n PassCode = 'PassCode',\n Push = 'Push',\n Yubikey = 'Yubikey',\n UserCode = 'UserCode',\n Hardware = 'Hardware',\n}\n\nexport enum AuthenticationMethodSettings {\n PushEnforce = 'PushEnforce',\n}\n\nexport enum PassCodeSourceType {\n Sms = 'Sms',\n Email = 'Email',\n}\n\nexport enum PassCodeSource {\n PassCodeSMS = 'PassCodeSMS',\n PassCodeEmail = 'PassCodeEmail',\n}\n\nexport enum ConfigurationSettingsEnum {\n gsuite = 'Google Workspace',\n azureDirectory = 'Microsoft Entra ID',\n activeDirectory = 'Active Directory',\n template = 'template',\n gateway = 'gateway',\n orgSettings = 'orgSettings',\n MFA = 'MFA',\n loggerSettings = 'loggerSettings',\n authEnrollment = 'authEnrollment',\n wla = 'wla',\n radius = 'radius',\n hardwareToken = 'HardwareToken',\n maxFailedLoginAttempts = 'MaxFailedLoginAttempts',\n temporaryUserLockedPeriod = 'TemporaryUserLockedPeriod',\n usernameMaskingEnabled = 'UsernameMaskingEnabled',\n lock = 'lock',\n userCodeFormat = 'UserCodeFormat',\n disablePrimaryFactory = 'DisablePrimaryFactory',\n pinProtectSoftToken = 'PinProtectSoftToken',\n Configurations = 'Configurations',\n Notification = 'Notification',\n MinimumPasswordExpiryNumberOfDays = 'MinimumPasswordExpiryNumberOfDays',\n MaximumPasswordExpiryNumberOfDays = 'MaximumPasswordExpiryNumberOfDays',\n DisablePasswordExpiryDays = 'DisablePasswordExpiryDays',\n MultiFAEnrollment = 'MultiFAEnrollment',\n SSOConfiguration = 'SSOConfiguration',\n Location = 'Location',\n SyncedUsers = 'SyncedUsers',\n AdminValidationEnabled = 'AdminValidationEnabled',\n AdminValidationDuration = 'AdminValidationDuration',\n ServerCountryCode = 'ServerCountryCode',\n AnomalyLoginNotification = 'AnomalyLoginNotification',\n MobileVerificationCheckingFrequency = 'MobileVerificationCheckingFrequency',\n UserAutoLockEnabled = 'UserAutoLockEnabled',\n UserAutoLockInactiveDays = 'UserAutoLockInactiveDays'\n}\n\nexport enum HomeQueryStringEnum {\n error = 'error',\n}\n\nexport enum SecretQuestionEnum {\n mustAskQuestionSecret = 'MustAskQuestionSecret',\n mustConfigureQuestionSecret = 'MustConfigureQuestionSecret',\n}\n\nexport enum OrganizationTypeEnum {\n normal = 'Normal',\n msp = 'MSP',\n}\n\nexport enum ThemeEnum {\n mainLogo = 'mainLogo',\n signinLogo = 'signinLogo',\n loginBackground = 'loginBackground',\n signupBackground = 'signupBackground',\n homeBackground = 'homeBackground',\n primaryColor = 'primaryColor',\n secondaryColor = 'secondaryColor',\n profileLogo = 'profileLogo',\n favicon = 'favicon',\n signOutBackground = 'signOutBackground',\n resetBackground = 'resetBackground',\n}\n\nexport enum AppTypeEnum {\n configured = 'configured',\n notConfigured = 'not-configured',\n}\n\nexport enum themeType {\n Web = 'web',\n Mobile = 'mobile',\n}\n\nexport enum SubmitEnum {\n Save = 'save',\n Cancel = 'cancel',\n Delete = 'delete',\n Mapping = 'mapping',\n}\n\nexport enum ApplicationEnum {\n gsuite = 'gsuite',\n activeDirectory = 'activeDirectory',\n office365 = 'Office 365',\n salesforce = 'Salesforce',\n googlegsuit = 'Google G-Suite',\n}\n\nexport enum MultiAuthenticationMethod {\n SecondFactorAuth = 'SecondFactorAuth',\n}\nexport enum SecondFactorAuthSourceEnum {\n SecondFactorEnforce = 'SecondFactorEnforce',\n}\n\nexport enum DirectoryStatusEnum {\n connected = 'Connected',\n configured = 'Configured',\n notConfigured = 'Not Configured',\n notAuthenticated = 'Not Authenticated',\n reAuthenticate = 'Re Authenticate',\n}\n\nexport enum DirectoryEnum {\n google = 'Google Directory',\n ad = 'Active Directory',\n ldap = 'LDAP',\n azure = 'Microsoft Entra ID',\n}\n\nexport enum GatewaykeyEnum {\n email = 'EMail',\n sms = 'SMS',\n googlefirebase = 'GoogleFirebasePush',\n applepush = 'ApplePush',\n smtpemail = 'SMTPEmail',\n cmsms = 'CMSMS',\n twiliosms = 'TwilioSMS',\n aqlsmslegacy = 'AQLSMSLegacy',\n googlefirebasepush = 'GoogleFirebasePush',\n linkMobility = 'LinkMobility',\n awssms = 'AWSSMS',\n}\n\nexport enum GroupsEnum {\n SuperAdmin = 'superadmin',\n Administrators = 'administrators',\n User = 'user',\n Everyone = 'everyone',\n MSP = 'msp',\n MspAdmin = 'mspadmin',\n}\n\nexport enum DefaultTemplateColor {\n defaultColor = '#22BCE5',\n defaultPrimaryColor = '#342f89',\n}\n\nexport const UserRoleLevels = {\n superadmin: 16,\n mspadmin: 8,\n adminuser: 4,\n helpdeskuser: 2,\n user: 1,\n};\n\nexport enum MapTypeEnum {\n both = 'Both',\n upStream = 'UpStream',\n downStream = 'DownStream',\n notMapped = 'NotMapped',\n}\n","import { Directive, Input, OnInit, TemplateRef, ViewContainerRef } from '@angular/core';\nimport { User } from 'oidc-client';\nimport { UserRoles } from './constant.service';\nimport { HasPermissionService } from './has-permission.service';\n\n// Helps to find if the current logged in user role has access to do actions for the target role\n\n@Directive({\n selector: '[hasPermissionForTarget]'\n})\nexport class HasPermissionForTargetDirective implements OnInit {\n private targetRole:UserRoles;\n\n constructor(private templateRef: TemplateRef,private viewContainer: ViewContainerRef, private permissions: HasPermissionService)\n {\n }\n\n async ngOnInit() {\n this.updateView();\n }\n\n @Input()\n set hasPermissionForTarget(val: UserRoles) {\n\n this.targetRole = val?val:UserRoles.User;\n this.updateView();\n }\n\n private updateView() {\n this.viewContainer.clear();\n if (this.permissions.allowAccessForTarget(this.targetRole)) {\n this.viewContainer.createEmbeddedView(this.templateRef);\n }\n }\n\n}\n\n","import { Directive, ElementRef, Input, OnInit, TemplateRef, ViewContainerRef } from '@angular/core';\nimport { User } from 'oidc-client';\nimport { AuthService } from 'src/app/authentication/auth.service';\nimport { UserRoles } from './constant.service';\nimport { HasPermissionService } from './has-permission.service';\n\n\n@Directive({\n selector: '[hasPermission]'\n})\nexport class HasPermissionDirective implements OnInit {\n private currentUser: User;\n private roles = [];\n\n constructor(private templateRef: TemplateRef,private viewContainer: ViewContainerRef, private permissions: HasPermissionService) \n {\n }\n\n async ngOnInit() {\n this.updateView();\n }\n\n @Input()\n set hasPermission(val: UserRoles[]) {\n this.roles = val;\n this.updateView();\n }\n\n private updateView() {\n this.viewContainer.clear();\n if (this.permissions.allowAccess(this.roles)) {\n this.viewContainer.createEmbeddedView(this.templateRef);\n }\n }\n\n}\n\n","import {\n Directive,\n ElementRef,\n Injectable,\n Input,\n OnInit,\n TemplateRef,\n ViewContainerRef,\n} from '@angular/core';\nimport { User } from 'oidc-client';\nimport { AuthService } from 'src/app/authentication/auth.service';\nimport { UserRoleLevels, UserRoles } from './constant.service';\nimport { ActivatedRouteSnapshot, UrlSegment } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class HasPermissionService {\n private roles = [];\n private targetRole = UserRoles.User;\n\n constructor(private authService: AuthService) {}\n\n async ngOnInit() {}\n\n public allowAccess(val: UserRoles[]) {\n this.roles = val;\n return this.checkPermission();\n }\n\n public async allowAccessAsync(\n val: UserRoles[],\n route: ActivatedRouteSnapshot\n ) {\n this.roles = val;\n return await this.checkPermissionAsync(route);\n }\n\n private checkPermission() {\n let hasPermission = false;\n const userType = this.userType;\n if (userType) {\n const found = this.roles.find(\n (x) => x.toUpperCase() === userType.toUpperCase()\n );\n hasPermission = !this.isNullOrUndef(found);\n }\n return hasPermission;\n }\n\n private async checkPermissionAsync(route: ActivatedRouteSnapshot) {\n let hasPermission = false;\n const user = await this.authService.getUser();\n if (this.authService.authRequired) {\n // Extract the route path and parameters from the snapshot\n const routePath = this.buildRouteFromSnapshot(route); // Construct the full path\n const queryParams = route.queryParams; // Extract query parameters\n sessionStorage.setItem(\n 'auth-redirect',\n JSON.stringify({\n routePath,\n queryParams,\n })\n );\n }\n const userType = user?.profile?.UserType;\n if (userType) {\n const found = this.roles.find(\n (x) => x.toUpperCase() === userType.toUpperCase()\n );\n hasPermission = !this.isNullOrUndef(found);\n }\n return hasPermission;\n }\n\n get userType(): string {\n return this.authService.user?.profile?.UserType;\n }\n\n private isNullOrUndef(value: any) {\n return value === null || value === undefined;\n }\n\n allowAccessForTarget(val: UserRoles): boolean {\n this.targetRole = val;\n // levels for current and target user roles\n let currentuserlevel = UserRoleLevels[this.userType.toLowerCase()];\n let targetuserlevel = UserRoleLevels[this.targetRole.toLowerCase()];\n\n if (\n currentuserlevel &&\n targetuserlevel &&\n currentuserlevel >= targetuserlevel\n ) {\n return true;\n }\n\n return false;\n }\n\n private buildRouteFromSnapshot(snapshot: ActivatedRouteSnapshot): string[] {\n const fullPath = this.getFullPathFromSnapshot(snapshot); // Get full path with parameters replaced\n return fullPath.split('/'); // Return the full path as an array of segments\n }\n\n // Helper to recursively get the full path, including children\n private getFullPathFromSnapshot(snapshot: ActivatedRouteSnapshot): string {\n // Extract the current path and replace dynamic parameters\n const currentPath =\n snapshot.routeConfig?.path\n ?.split('/')\n .map((segment) =>\n segment.startsWith(':')\n ? snapshot.params[segment.substring(1)] || 'null'\n : segment\n )\n .join('/') || ''; // Replace parameters or use 'null' if missing\n\n // Recursively process children\n const childPaths = snapshot.children.map((child) =>\n this.getFullPathFromSnapshot(child)\n );\n\n // Combine the current path with child paths\n return [currentPath, ...childPaths].filter(Boolean).join('/');\n }\n}\n","import { Injectable, NgModule } from '@angular/core';\nimport { environment } from 'src/environments/environment';\nimport { AppSettings } from './appsettings.model';\nimport { AppSettingsService } from './appsettings.service';\n\n@NgModule({\n declarations: [],\n imports: [],\n providers: [AppSettingsService],\n})\nexport class SettingsService {\n public static config: [{ key; value }];\n\n constructor(public appSettings: AppSettingsService) {\n this.setDefaults();\n }\n\n private static getConfig() {\n if (SettingsService.config == null) {\n SettingsService.config = SettingsService.getDataSynchronous();\n }\n\n return SettingsService.config;\n }\n\n private setDefaults() {\n //let isDevMode: boolean = window.location.host.indexOf('localhost') >= 0;\n const config = SettingsService.getConfig();\n\n if (!config) {\n return;\n }\n\n let publicUrl = config.find((k) => k.key == 'PublicUrl')?.value;\n environment.publicUrl = '.' + publicUrl;\n environment.reCaptchaSiteKey = config.find(\n (k) => k.key == 'PublicCaptchaSiteKey'\n )?.value;\n\n const appUrl = publicUrl + this.appSettings.settings.rootUrl;\n let orgCodePlaceholder = '{org_code}.';\n environment.azureLoginUri = config.find((k) => k.key == 'PublicAzureLoginUri')?.value;\n environment.azureClientId = config.find((k) => k.key == 'PublicAzureClientId')?.value;\n environment.azureRedirect = 'https://' + publicUrl + environment.azureRedirect;\n environment.contactUrl = config.find((k) => k.key == 'PublicContactUrl')?.value;\n\n environment.googleDirectoryAllowedOrigin = 'https://' + publicUrl;\n environment.googleDirectoryClientId = config.find((k) => k.key == 'GoogleClientId')?.value;\n environment.googleDirectoryClientSecret = config.find((k) => k.key == 'GoogleClientSecret')?.value;\n\n environment.downloadcookie_domain = publicUrl;\n\n let singleTenant = config.find((k) => k.key == 'SingleTenant')?.value;\n if (singleTenant && singleTenant.length > 0) {\n environment.singleTenantMode = true;\n environment.organizationCode = singleTenant;\n orgCodePlaceholder = '';\n } else {\n environment.singleTenantMode = false;\n }\n\n var value = config.find( v=> v.key == \"Environment\")?.value ?? 'Production';\n switch (value) {\n case 'OnPremises':\n environment.organization = 'https://' + publicUrl + ':3002';\n environment.user = 'https://' + publicUrl + ':3005';\n environment.master = 'https://' + publicUrl + ':3004';\n environment.activityLogging = 'https://' + publicUrl + ':3001';\n environment.analytics = 'https://' + publicUrl + ':3008';\n environment.filestore = 'https://' + publicUrl + ':3011';\n environment.notification = 'https://' + publicUrl + ':3007';\n environment.conditionalAccess = 'https://' + publicUrl + ':3006';\n environment.identity = 'https://' + orgCodePlaceholder + publicUrl + '/identity';\n environment.migration = 'https://' + publicUrl + ':3012';\n \n environment.identityApi = environment.identity;\n environment.identityRedirect = 'https://' + orgCodePlaceholder + appUrl + '/auth-callback';\n environment.identityChangePassword = 'https://' + orgCodePlaceholder + appUrl + '/auth-callback&changePassword=true';\n environment.identityLogout = 'https://' + orgCodePlaceholder + appUrl + '/auth/logout';\n environment.identitySilentRedirect = 'https://' + orgCodePlaceholder + appUrl + '/silent-refresh';\n environment.identityInitiatedUrl = environment.identity + '/saml2?app=$app_id$&ServiceProvider=$thirdPartyEntityId$&AssertConsumerUrl=$thirdPartySignInUrl$';\n \n break;\n \n case 'Production':\n environment.organization = 'https://' + publicUrl + '/api/organization';\n environment.user = 'https://' + publicUrl + '/api/user';\n environment.master = 'https://' + publicUrl + '/api/master';\n environment.activityLogging = 'https://' + publicUrl + '/api/activitylogging';\n environment.analytics = 'https://' + publicUrl + '/api/analytics';\n environment.filestore = 'https://' + publicUrl + '/api/filestore';\n environment.notification = 'https://' + publicUrl + '/notification';\n environment.conditionalAccess = 'https://' + publicUrl + '/api/conditionalaccess';\n environment.identity = 'https://' + orgCodePlaceholder + publicUrl + '/identity';\n environment.migration = 'https://' + publicUrl + '/api/migration';\n environment.report = 'https://' + publicUrl + '/api/report';\n environment.anomalydetection = 'https://' + publicUrl + '/api/anomalydetection';\n \n environment.identityApi = 'https://' + orgCodePlaceholder + publicUrl + '/identity';\n environment.identityRedirect = 'https://' + orgCodePlaceholder + appUrl + '/auth-callback';\n environment.identityChangePassword = 'https://' + orgCodePlaceholder + appUrl + '/auth-callback&changePassword=true';\n environment.identityLogout = 'https://' + orgCodePlaceholder + appUrl + '/auth/logout';\n environment.identitySilentRedirect = 'https://' + orgCodePlaceholder + appUrl + '/assets/silent-renew.html';\n environment.identityInitiatedUrl = 'https://' + orgCodePlaceholder + publicUrl + '/identity/saml2?app=$app_id$&ServiceProvider=$thirdPartyEntityId$&AssertConsumerUrl=$thirdPartySignInUrl$';\n \n break;\n }\n\n }\n\n static getDataSynchronous() {\n try {\n var request = new XMLHttpRequest();\n request.open('GET', '/settings', false);\n \n request.send();\n \n if (request.status === 200) {\n return JSON.parse(request.response);\n }\n } catch (error) {\n console.log('Error getting settings', error);\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AbstractControl, ValidationErrors, ValidatorFn } from '@angular/forms';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ValidationService {\n\n constructor() { }\n\n public regOnlyAlphabetic = '^(?!\\\\s)[a-zA-Z_\\\\s-]*$';\n public regAlphaNumeric = '^[^-\\\\s][a-zA-Z0-9_\\\\s-]+$';\n public regEmail = '[_a-zA-Z0-9\\-+]+(\\\\.[_a-zA-Z0-9\\-]+)*@[a-zA-Z0-9-]+(\\\\.[a-zA-Z0-9-]+)*(\\\\.[a-zA-Z]{2,15})';\n public regUserEmail = '[^<>!=`*!@#$%&*()=^]+(\\\\.[^<>!=`*!@#$%&*()=+^])*@[a-zA-Z0-9-]+(\\\\.[a-zA-Z0-9-]+)*(\\\\.[a-zA-Z]{1,100})'\n public regOnlyNumber = '[0-9]+';\n public regGeneralPhone = '[0-9 +]+';\n public regAlphaNumWithOutSpcae = '^[a-zA-Z0-9]*$';\n public regCustomAttribute = '^[a-zA-Z0-9:_]*$';\n public regAlphaNumWithOutSpcaeDot = '^[a-zA-Z0-9]*$';\n public regPassword = '^(?=.*[a-z])(?=.*[A-Z])(?=.*\\\\d)(?=.*[@$!%*?&])[A-Za-z\\\\d@$!%*?&]{8,}$';\n public regGroupName = '^[^-\\\\s][a-zA-Z0-9. -]*$';\n public regAddSpaceCharacterInput = /^(.{3})(.{3})(.{3})(.{4})(.*)$/;\n public regAddSpaceCharacterInputThirdParty = /^(.{4})(.{4})(.{4})(.{4})(.*)$/;\n public regAddSpaceCharacterOutput = '$1 $2 $3 $4 $5';\n public regNoSpaceAndSpecialcChar = '/\\\\`|\\\\~|\\\\!|\\\\ |\\\\#|\\\\$|\\\\%|\\\\^|\\\\&|\\\\*|\\\\(|\\\\)|\\\\+|\\\\=|\\\\[|\\\\{|\\\\]|\\\\}|\\\\||\\\\\\\\|\\\\\\'|\\\\<|\\\\,|\\\\>|\\\\?|\\\\/|\\\\;|\\\\:|\\\\s/g';\n public regUserName = '^[a-zA-Z0-9._-]*$';\n public regPhoneNumber = '^[ 0-9()+-]*$';\n public regGeneralField = '^[ A-Za-z0-9_$@./#+-]*$';\n public regIPAddress = '^([01]?\\\\d\\\\d?|2[0-4]\\\\d|25[0-5])\\\\.([01]?\\\\d\\\\d?|2[0-4]\\\\d|25[0-5])\\\\.([01]?\\\\d\\\\d?|2[0-4]\\\\d|25[0-5])\\\\.([01]?\\\\d\\\\d?|2[0-4]\\\\d|25[0-5])$';\n public regGsuitCustomAttr = '[_a-zA-Z0-9\\-]*:[a-zA-Z0-9-]{1,1000}';\n public reghttps = '^(http:\\/\\/www\\.|https:\\/\\/www\\.|http:\\/\\/|https:\\/\\/)[a-z0-9]+([\\-\\.]{1}[a-z0-9]+)*\\.[a-z]{2,5}(:[0-9]{1,5})?(\\/.*)?$';\n public regAccuracy = '[0-9]+(\\.[0-9]{1,2})?';\n public regZerotoTwelve = '([1-9]|1[0-2])';\n public regMinThirty = '([3-9][0-9])|([2-9][0-9][0-9])|([1-9]\\d{3}\\d*)';\n public regNoStartingSpace = /^[^\\s]+[a-zA-Z\\d-_]*/;\n public regTenantMnemonic = '^([a-z]|[0-9]|-)*$';\n public regGuid = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;\n\n OnlySpaceValidator(control) {\n return (control && control.value && control.value.toString() || '').trim().length === 0;\n }\n\n onlyMinusValidator(event) {\n const k = event.charCode;\n return ((k > 64 && k < 91) || (k > 96 && k < 123) || k == 8 || k == 32 || (k >= 48 && k <= 57));\n }\n\n public static emailArrayValidator(): ValidatorFn {\n return (control: AbstractControl): ValidationErrors | null => {\n\n const emailsAllValid = control.value.every((value: string) => {\n return this.validateEmail(value);\n });\n if (emailsAllValid) {\n return null;\n }\n return { 'emailIsInvalid': true };\n }\n }\n static validateEmail(email: string): boolean {\n // Email Regex from: https://github.com/angular/angular/blob/master/packages/forms/src/validators.ts\n const EMAIL_REGEXP =\n /^(?=.{1,254}$)(?=.{1,64}@)[-!#$%&'*+/0-9=?A-Z^_`a-z{|}~]+(\\.[-!#$%&'*+/0-9=?A-Z^_`a-z{|}~]+)*@[A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?(\\.[A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?)*$/;\n return EMAIL_REGEXP.test(String(email).toLowerCase());\n }\n\n}\n","import { NgModule, ModuleWithProviders, SkipSelf, Optional } from '@angular/core';\nimport { Configuration } from './configuration';\nimport { HttpClient } from '@angular/common/http';\n\nimport { EndpointAgentsService } from './api/endpointAgents.service';\nimport { FieldsService } from './api/fields.service';\nimport { OrganizationService } from './api/organization.service';\nimport { PolicyService } from './api/policy.service';\nimport { PolicyStatsService } from './api/policyStats.service';\nimport { TenantCleanupService } from './api/tenantCleanup.service';\nimport { ValidateService } from './api/validate.service';\nimport { ValidationResultsService } from './api/validationResults.service';\nimport { VersionService } from './api/version.service';\n\n@NgModule({\n imports: [],\n declarations: [],\n exports: [],\n providers: []\n})\nexport class ApiModule {\n public static forRoot(configurationFactory: () => Configuration): ModuleWithProviders {\n return {\n ngModule: ApiModule,\n providers: [ { provide: Configuration, useFactory: configurationFactory } ]\n };\n }\n\n constructor( @Optional() @SkipSelf() parentModule: ApiModule,\n @Optional() http: HttpClient) {\n if (parentModule) {\n throw new Error('ApiModule is already loaded. Import in your base AppModule only.');\n }\n if (!http) {\n throw new Error('You need to import the HttpClientModule in your AppModule! \\n' +\n 'See also https://github.com/angular/angular/issues/20575');\n }\n }\n}\n","export * from './endpointAgents.service';\nimport { EndpointAgentsService } from './endpointAgents.service';\nexport * from './fields.service';\nimport { FieldsService } from './fields.service';\nexport * from './organization.service';\nimport { OrganizationService } from './organization.service';\nexport * from './policy.service';\nimport { PolicyService } from './policy.service';\nexport * from './policyStats.service';\nimport { PolicyStatsService } from './policyStats.service';\nexport * from './tenantCleanup.service';\nimport { TenantCleanupService } from './tenantCleanup.service';\nexport * from './validate.service';\nimport { ValidateService } from './validate.service';\nexport * from './validationResults.service';\nimport { ValidationResultsService } from './validationResults.service';\nexport * from './version.service';\nimport { VersionService } from './version.service';\nexport const APIS = [EndpointAgentsService, FieldsService, OrganizationService, PolicyService, PolicyStatsService, TenantCleanupService, ValidateService, ValidationResultsService, VersionService];\n","/**\n * Conditional Access Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { EndpointAgentModel } from '../model/endpointAgentModel';\n// @ts-ignore\nimport { EndpointAgentPagedResult } from '../model/endpointAgentPagedResult';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class EndpointAgentsService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationId \n * @param requestBody \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public endpointAgentsOrganizationIdDelete(organizationId: number, requestBody?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public endpointAgentsOrganizationIdDelete(organizationId: number, requestBody?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public endpointAgentsOrganizationIdDelete(organizationId: number, requestBody?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public endpointAgentsOrganizationIdDelete(organizationId: number, requestBody?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling endpointAgentsOrganizationIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/EndpointAgents/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: requestBody,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public endpointAgentsOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public endpointAgentsOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public endpointAgentsOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public endpointAgentsOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling endpointAgentsOrganizationIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/EndpointAgents/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param endpointAgentModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public endpointAgentsStoreDetailsPost(endpointAgentModel?: EndpointAgentModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public endpointAgentsStoreDetailsPost(endpointAgentModel?: EndpointAgentModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public endpointAgentsStoreDetailsPost(endpointAgentModel?: EndpointAgentModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public endpointAgentsStoreDetailsPost(endpointAgentModel?: EndpointAgentModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/EndpointAgents/StoreDetails`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: endpointAgentModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Conditional Access Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class FieldsService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public fieldsGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public fieldsGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public fieldsGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public fieldsGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Fields`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Conditional Access Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { OrganizationSettingsInputModel } from '../model/organizationSettingsInputModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class OrganizationService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public organizationConfiguredApplicationsGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public organizationConfiguredApplicationsGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public organizationConfiguredApplicationsGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public organizationConfiguredApplicationsGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling organizationConfiguredApplicationsGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Organization/ConfiguredApplications`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public organizationConfiguredApplicationsOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public organizationConfiguredApplicationsOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public organizationConfiguredApplicationsOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public organizationConfiguredApplicationsOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling organizationConfiguredApplicationsOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Organization/ConfiguredApplications/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public organizationSettingsGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public organizationSettingsGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public organizationSettingsGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public organizationSettingsGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling organizationSettingsGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Organization/settings`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public organizationSettingsOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public organizationSettingsOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public organizationSettingsOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public organizationSettingsOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling organizationSettingsOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Organization/settings/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationSettingsInputModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public organizationSettingsOrganizationIdPut(organizationId: number, organizationSettingsInputModel?: OrganizationSettingsInputModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public organizationSettingsOrganizationIdPut(organizationId: number, organizationSettingsInputModel?: OrganizationSettingsInputModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public organizationSettingsOrganizationIdPut(organizationId: number, organizationSettingsInputModel?: OrganizationSettingsInputModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public organizationSettingsOrganizationIdPut(organizationId: number, organizationSettingsInputModel?: OrganizationSettingsInputModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling organizationSettingsOrganizationIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Organization/settings/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organizationSettingsInputModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationSettingsInputModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public organizationSettingsPut(organizationId: number, organizationSettingsInputModel?: OrganizationSettingsInputModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public organizationSettingsPut(organizationId: number, organizationSettingsInputModel?: OrganizationSettingsInputModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public organizationSettingsPut(organizationId: number, organizationSettingsInputModel?: OrganizationSettingsInputModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public organizationSettingsPut(organizationId: number, organizationSettingsInputModel?: OrganizationSettingsInputModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling organizationSettingsPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Organization/settings`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organizationSettingsInputModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Conditional Access Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { QueryBuilderInputModel } from '../model/queryBuilderInputModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class PolicyService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public policyAllGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public policyAllGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyAllGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyAllGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling policyAllGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Policy/All`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public policyAllOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public policyAllOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyAllOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyAllOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling policyAllOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Policy/All/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param policyId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public policyOrganizationIdPolicyIdDelete(organizationId: number, policyId: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public policyOrganizationIdPolicyIdDelete(organizationId: number, policyId: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyOrganizationIdPolicyIdDelete(organizationId: number, policyId: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyOrganizationIdPolicyIdDelete(organizationId: number, policyId: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling policyOrganizationIdPolicyIdDelete.');\n }\n if (policyId === null || policyId === undefined) {\n throw new Error('Required parameter policyId was null or undefined when calling policyOrganizationIdPolicyIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Policy/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"policyId\", value: policyId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param policyId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public policyOrganizationIdPolicyIdGet(organizationId: number, policyId: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public policyOrganizationIdPolicyIdGet(organizationId: number, policyId: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyOrganizationIdPolicyIdGet(organizationId: number, policyId: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyOrganizationIdPolicyIdGet(organizationId: number, policyId: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling policyOrganizationIdPolicyIdGet.');\n }\n if (policyId === null || policyId === undefined) {\n throw new Error('Required parameter policyId was null or undefined when calling policyOrganizationIdPolicyIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Policy/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"policyId\", value: policyId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public policyPagedPoliciesGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public policyPagedPoliciesGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyPagedPoliciesGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyPagedPoliciesGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling policyPagedPoliciesGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Policy/PagedPolicies`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public policyPagedPoliciesOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public policyPagedPoliciesOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyPagedPoliciesOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyPagedPoliciesOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling policyPagedPoliciesOrganizationIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Policy/PagedPolicies/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public policyPagedRulesGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public policyPagedRulesGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyPagedRulesGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyPagedRulesGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling policyPagedRulesGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Policy/PagedRules`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public policyPagedRulesOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public policyPagedRulesOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyPagedRulesOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyPagedRulesOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling policyPagedRulesOrganizationIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Policy/PagedRules/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param policyId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public policyPolicyIdDelete(organizationId: number, policyId: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public policyPolicyIdDelete(organizationId: number, policyId: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyPolicyIdDelete(organizationId: number, policyId: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyPolicyIdDelete(organizationId: number, policyId: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling policyPolicyIdDelete.');\n }\n if (policyId === null || policyId === undefined) {\n throw new Error('Required parameter policyId was null or undefined when calling policyPolicyIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Policy/${this.configuration.encodeParam({name: \"policyId\", value: policyId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param policyId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public policyPolicyIdGet(organizationId: number, policyId: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public policyPolicyIdGet(organizationId: number, policyId: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyPolicyIdGet(organizationId: number, policyId: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyPolicyIdGet(organizationId: number, policyId: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling policyPolicyIdGet.');\n }\n if (policyId === null || policyId === undefined) {\n throw new Error('Required parameter policyId was null or undefined when calling policyPolicyIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Policy/${this.configuration.encodeParam({name: \"policyId\", value: policyId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public policyQueryBuilderBlankGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public policyQueryBuilderBlankGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyQueryBuilderBlankGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyQueryBuilderBlankGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling policyQueryBuilderBlankGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Policy/QueryBuilder/Blank`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public policyQueryBuilderIdGet(organizationId: number, id: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public policyQueryBuilderIdGet(organizationId: number, id: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyQueryBuilderIdGet(organizationId: number, id: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyQueryBuilderIdGet(organizationId: number, id: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling policyQueryBuilderIdGet.');\n }\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling policyQueryBuilderIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Policy/QueryBuilder/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public policyQueryBuilderOrganizationIdBlankGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public policyQueryBuilderOrganizationIdBlankGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyQueryBuilderOrganizationIdBlankGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyQueryBuilderOrganizationIdBlankGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling policyQueryBuilderOrganizationIdBlankGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Policy/QueryBuilder/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/Blank`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public policyQueryBuilderOrganizationIdIdGet(organizationId: number, id: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public policyQueryBuilderOrganizationIdIdGet(organizationId: number, id: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyQueryBuilderOrganizationIdIdGet(organizationId: number, id: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyQueryBuilderOrganizationIdIdGet(organizationId: number, id: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling policyQueryBuilderOrganizationIdIdGet.');\n }\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling policyQueryBuilderOrganizationIdIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Policy/QueryBuilder/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param policyId \n * @param queryBuilderInputModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public policyQueryBuilderOrganizationIdPolicyIdPut(organizationId: number, policyId: string, queryBuilderInputModel?: QueryBuilderInputModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public policyQueryBuilderOrganizationIdPolicyIdPut(organizationId: number, policyId: string, queryBuilderInputModel?: QueryBuilderInputModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyQueryBuilderOrganizationIdPolicyIdPut(organizationId: number, policyId: string, queryBuilderInputModel?: QueryBuilderInputModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyQueryBuilderOrganizationIdPolicyIdPut(organizationId: number, policyId: string, queryBuilderInputModel?: QueryBuilderInputModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling policyQueryBuilderOrganizationIdPolicyIdPut.');\n }\n if (policyId === null || policyId === undefined) {\n throw new Error('Required parameter policyId was null or undefined when calling policyQueryBuilderOrganizationIdPolicyIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Policy/QueryBuilder/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"policyId\", value: policyId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: queryBuilderInputModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param queryBuilderInputModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public policyQueryBuilderOrganizationIdPost(organizationId: number, queryBuilderInputModel?: QueryBuilderInputModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public policyQueryBuilderOrganizationIdPost(organizationId: number, queryBuilderInputModel?: QueryBuilderInputModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyQueryBuilderOrganizationIdPost(organizationId: number, queryBuilderInputModel?: QueryBuilderInputModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyQueryBuilderOrganizationIdPost(organizationId: number, queryBuilderInputModel?: QueryBuilderInputModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling policyQueryBuilderOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Policy/QueryBuilder/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: queryBuilderInputModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param policyId \n * @param queryBuilderInputModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public policyQueryBuilderPolicyIdPut(organizationId: number, policyId: string, queryBuilderInputModel?: QueryBuilderInputModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public policyQueryBuilderPolicyIdPut(organizationId: number, policyId: string, queryBuilderInputModel?: QueryBuilderInputModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyQueryBuilderPolicyIdPut(organizationId: number, policyId: string, queryBuilderInputModel?: QueryBuilderInputModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyQueryBuilderPolicyIdPut(organizationId: number, policyId: string, queryBuilderInputModel?: QueryBuilderInputModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling policyQueryBuilderPolicyIdPut.');\n }\n if (policyId === null || policyId === undefined) {\n throw new Error('Required parameter policyId was null or undefined when calling policyQueryBuilderPolicyIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Policy/QueryBuilder/${this.configuration.encodeParam({name: \"policyId\", value: policyId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: queryBuilderInputModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param queryBuilderInputModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public policyQueryBuilderPost(organizationId: number, queryBuilderInputModel?: QueryBuilderInputModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public policyQueryBuilderPost(organizationId: number, queryBuilderInputModel?: QueryBuilderInputModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyQueryBuilderPost(organizationId: number, queryBuilderInputModel?: QueryBuilderInputModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public policyQueryBuilderPost(organizationId: number, queryBuilderInputModel?: QueryBuilderInputModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling policyQueryBuilderPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Policy/QueryBuilder`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: queryBuilderInputModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public rulesAllGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public rulesAllGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesAllGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesAllGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling rulesAllGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/rules/All`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public rulesAllOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public rulesAllOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesAllOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesAllOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling rulesAllOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/rules/All/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param policyId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public rulesOrganizationIdPolicyIdDelete(organizationId: number, policyId: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public rulesOrganizationIdPolicyIdDelete(organizationId: number, policyId: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesOrganizationIdPolicyIdDelete(organizationId: number, policyId: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesOrganizationIdPolicyIdDelete(organizationId: number, policyId: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling rulesOrganizationIdPolicyIdDelete.');\n }\n if (policyId === null || policyId === undefined) {\n throw new Error('Required parameter policyId was null or undefined when calling rulesOrganizationIdPolicyIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/rules/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"policyId\", value: policyId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param policyId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public rulesOrganizationIdPolicyIdGet(organizationId: number, policyId: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public rulesOrganizationIdPolicyIdGet(organizationId: number, policyId: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesOrganizationIdPolicyIdGet(organizationId: number, policyId: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesOrganizationIdPolicyIdGet(organizationId: number, policyId: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling rulesOrganizationIdPolicyIdGet.');\n }\n if (policyId === null || policyId === undefined) {\n throw new Error('Required parameter policyId was null or undefined when calling rulesOrganizationIdPolicyIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/rules/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"policyId\", value: policyId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public rulesPagedPoliciesGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public rulesPagedPoliciesGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesPagedPoliciesGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesPagedPoliciesGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling rulesPagedPoliciesGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/rules/PagedPolicies`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public rulesPagedPoliciesOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public rulesPagedPoliciesOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesPagedPoliciesOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesPagedPoliciesOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling rulesPagedPoliciesOrganizationIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/rules/PagedPolicies/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public rulesPagedRulesGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public rulesPagedRulesGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesPagedRulesGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesPagedRulesGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling rulesPagedRulesGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/rules/PagedRules`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public rulesPagedRulesOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public rulesPagedRulesOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesPagedRulesOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesPagedRulesOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling rulesPagedRulesOrganizationIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/rules/PagedRules/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param policyId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public rulesPolicyIdDelete(organizationId: number, policyId: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public rulesPolicyIdDelete(organizationId: number, policyId: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesPolicyIdDelete(organizationId: number, policyId: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesPolicyIdDelete(organizationId: number, policyId: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling rulesPolicyIdDelete.');\n }\n if (policyId === null || policyId === undefined) {\n throw new Error('Required parameter policyId was null or undefined when calling rulesPolicyIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/rules/${this.configuration.encodeParam({name: \"policyId\", value: policyId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param policyId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public rulesPolicyIdGet(organizationId: number, policyId: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public rulesPolicyIdGet(organizationId: number, policyId: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesPolicyIdGet(organizationId: number, policyId: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesPolicyIdGet(organizationId: number, policyId: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling rulesPolicyIdGet.');\n }\n if (policyId === null || policyId === undefined) {\n throw new Error('Required parameter policyId was null or undefined when calling rulesPolicyIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/rules/${this.configuration.encodeParam({name: \"policyId\", value: policyId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public rulesQueryBuilderBlankGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public rulesQueryBuilderBlankGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesQueryBuilderBlankGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesQueryBuilderBlankGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling rulesQueryBuilderBlankGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/rules/QueryBuilder/Blank`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public rulesQueryBuilderIdGet(organizationId: number, id: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public rulesQueryBuilderIdGet(organizationId: number, id: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesQueryBuilderIdGet(organizationId: number, id: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesQueryBuilderIdGet(organizationId: number, id: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling rulesQueryBuilderIdGet.');\n }\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling rulesQueryBuilderIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/rules/QueryBuilder/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public rulesQueryBuilderOrganizationIdBlankGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public rulesQueryBuilderOrganizationIdBlankGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesQueryBuilderOrganizationIdBlankGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesQueryBuilderOrganizationIdBlankGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling rulesQueryBuilderOrganizationIdBlankGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/rules/QueryBuilder/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/Blank`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public rulesQueryBuilderOrganizationIdIdGet(organizationId: number, id: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public rulesQueryBuilderOrganizationIdIdGet(organizationId: number, id: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesQueryBuilderOrganizationIdIdGet(organizationId: number, id: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesQueryBuilderOrganizationIdIdGet(organizationId: number, id: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling rulesQueryBuilderOrganizationIdIdGet.');\n }\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling rulesQueryBuilderOrganizationIdIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/rules/QueryBuilder/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param policyId \n * @param queryBuilderInputModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public rulesQueryBuilderOrganizationIdPolicyIdPut(organizationId: number, policyId: string, queryBuilderInputModel?: QueryBuilderInputModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public rulesQueryBuilderOrganizationIdPolicyIdPut(organizationId: number, policyId: string, queryBuilderInputModel?: QueryBuilderInputModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesQueryBuilderOrganizationIdPolicyIdPut(organizationId: number, policyId: string, queryBuilderInputModel?: QueryBuilderInputModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesQueryBuilderOrganizationIdPolicyIdPut(organizationId: number, policyId: string, queryBuilderInputModel?: QueryBuilderInputModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling rulesQueryBuilderOrganizationIdPolicyIdPut.');\n }\n if (policyId === null || policyId === undefined) {\n throw new Error('Required parameter policyId was null or undefined when calling rulesQueryBuilderOrganizationIdPolicyIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/rules/QueryBuilder/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"policyId\", value: policyId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: queryBuilderInputModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param queryBuilderInputModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public rulesQueryBuilderOrganizationIdPost(organizationId: number, queryBuilderInputModel?: QueryBuilderInputModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public rulesQueryBuilderOrganizationIdPost(organizationId: number, queryBuilderInputModel?: QueryBuilderInputModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesQueryBuilderOrganizationIdPost(organizationId: number, queryBuilderInputModel?: QueryBuilderInputModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesQueryBuilderOrganizationIdPost(organizationId: number, queryBuilderInputModel?: QueryBuilderInputModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling rulesQueryBuilderOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/rules/QueryBuilder/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: queryBuilderInputModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param policyId \n * @param queryBuilderInputModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public rulesQueryBuilderPolicyIdPut(organizationId: number, policyId: string, queryBuilderInputModel?: QueryBuilderInputModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public rulesQueryBuilderPolicyIdPut(organizationId: number, policyId: string, queryBuilderInputModel?: QueryBuilderInputModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesQueryBuilderPolicyIdPut(organizationId: number, policyId: string, queryBuilderInputModel?: QueryBuilderInputModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesQueryBuilderPolicyIdPut(organizationId: number, policyId: string, queryBuilderInputModel?: QueryBuilderInputModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling rulesQueryBuilderPolicyIdPut.');\n }\n if (policyId === null || policyId === undefined) {\n throw new Error('Required parameter policyId was null or undefined when calling rulesQueryBuilderPolicyIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/rules/QueryBuilder/${this.configuration.encodeParam({name: \"policyId\", value: policyId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: queryBuilderInputModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param queryBuilderInputModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public rulesQueryBuilderPost(organizationId: number, queryBuilderInputModel?: QueryBuilderInputModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public rulesQueryBuilderPost(organizationId: number, queryBuilderInputModel?: QueryBuilderInputModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesQueryBuilderPost(organizationId: number, queryBuilderInputModel?: QueryBuilderInputModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public rulesQueryBuilderPost(organizationId: number, queryBuilderInputModel?: QueryBuilderInputModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling rulesQueryBuilderPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/rules/QueryBuilder`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: queryBuilderInputModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Conditional Access Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { PagedPolicyStatsViewModel } from '../model/pagedPolicyStatsViewModel';\n// @ts-ignore\nimport { PolicyIdAndNameViewModel } from '../model/policyIdAndNameViewModel';\n// @ts-ignore\nimport { PolicyStatViewModel } from '../model/policyStatViewModel';\n// @ts-ignore\nimport { PolicyStatsFilterOptions } from '../model/policyStatsFilterOptions';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class PolicyStatsService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationId \n * @param policyId \n * @param policyStatsFilterOptions \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public policyStatsByPolicyIdOrganizationIdPolicyIdGet(organizationId: number, policyId: string, policyStatsFilterOptions?: PolicyStatsFilterOptions, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public policyStatsByPolicyIdOrganizationIdPolicyIdGet(organizationId: number, policyId: string, policyStatsFilterOptions?: PolicyStatsFilterOptions, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public policyStatsByPolicyIdOrganizationIdPolicyIdGet(organizationId: number, policyId: string, policyStatsFilterOptions?: PolicyStatsFilterOptions, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public policyStatsByPolicyIdOrganizationIdPolicyIdGet(organizationId: number, policyId: string, policyStatsFilterOptions?: PolicyStatsFilterOptions, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling policyStatsByPolicyIdOrganizationIdPolicyIdGet.');\n }\n if (policyId === null || policyId === undefined) {\n throw new Error('Required parameter policyId was null or undefined when calling policyStatsByPolicyIdOrganizationIdPolicyIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/PolicyStats/ByPolicyId/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"policyId\", value: policyId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: policyStatsFilterOptions,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param policyId \n * @param policyStatsFilterOptions \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public policyStatsByRuleIdOrganizationIdPolicyIdGet(organizationId: number, policyId: string, policyStatsFilterOptions?: PolicyStatsFilterOptions, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public policyStatsByRuleIdOrganizationIdPolicyIdGet(organizationId: number, policyId: string, policyStatsFilterOptions?: PolicyStatsFilterOptions, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public policyStatsByRuleIdOrganizationIdPolicyIdGet(organizationId: number, policyId: string, policyStatsFilterOptions?: PolicyStatsFilterOptions, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public policyStatsByRuleIdOrganizationIdPolicyIdGet(organizationId: number, policyId: string, policyStatsFilterOptions?: PolicyStatsFilterOptions, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling policyStatsByRuleIdOrganizationIdPolicyIdGet.');\n }\n if (policyId === null || policyId === undefined) {\n throw new Error('Required parameter policyId was null or undefined when calling policyStatsByRuleIdOrganizationIdPolicyIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/PolicyStats/ByRuleId/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"policyId\", value: policyId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: policyStatsFilterOptions,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param dateFrom \n * @param dateTo \n * @param policyIds \n * @param match \n * @param results \n * @param pageSize \n * @param page \n * @param sortColumn \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public policyStatsForOrgOrganizationIdGet(organizationId: number, dateFrom?: string, dateTo?: string, policyIds?: Array, match?: string, results?: Array, pageSize?: number, page?: number, sortColumn?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public policyStatsForOrgOrganizationIdGet(organizationId: number, dateFrom?: string, dateTo?: string, policyIds?: Array, match?: string, results?: Array, pageSize?: number, page?: number, sortColumn?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public policyStatsForOrgOrganizationIdGet(organizationId: number, dateFrom?: string, dateTo?: string, policyIds?: Array, match?: string, results?: Array, pageSize?: number, page?: number, sortColumn?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public policyStatsForOrgOrganizationIdGet(organizationId: number, dateFrom?: string, dateTo?: string, policyIds?: Array, match?: string, results?: Array, pageSize?: number, page?: number, sortColumn?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling policyStatsForOrgOrganizationIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (dateFrom !== undefined && dateFrom !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateFrom, 'DateFrom');\n }\n if (dateTo !== undefined && dateTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateTo, 'DateTo');\n }\n if (policyIds) {\n policyIds.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'PolicyIds');\n })\n }\n if (match !== undefined && match !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n match, 'Match');\n }\n if (results) {\n results.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'Results');\n })\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (page !== undefined && page !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n page, 'Page');\n }\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/PolicyStats/ForOrg/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public policyStatsGetPolicyIdsAndNamesOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public policyStatsGetPolicyIdsAndNamesOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public policyStatsGetPolicyIdsAndNamesOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public policyStatsGetPolicyIdsAndNamesOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling policyStatsGetPolicyIdsAndNamesOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/PolicyStats/GetPolicyIdsAndNames/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param policyId \n * @param policyStatsFilterOptions \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public rulestatsByPolicyIdOrganizationIdPolicyIdGet(organizationId: number, policyId: string, policyStatsFilterOptions?: PolicyStatsFilterOptions, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public rulestatsByPolicyIdOrganizationIdPolicyIdGet(organizationId: number, policyId: string, policyStatsFilterOptions?: PolicyStatsFilterOptions, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public rulestatsByPolicyIdOrganizationIdPolicyIdGet(organizationId: number, policyId: string, policyStatsFilterOptions?: PolicyStatsFilterOptions, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public rulestatsByPolicyIdOrganizationIdPolicyIdGet(organizationId: number, policyId: string, policyStatsFilterOptions?: PolicyStatsFilterOptions, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling rulestatsByPolicyIdOrganizationIdPolicyIdGet.');\n }\n if (policyId === null || policyId === undefined) {\n throw new Error('Required parameter policyId was null or undefined when calling rulestatsByPolicyIdOrganizationIdPolicyIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/rulestats/ByPolicyId/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"policyId\", value: policyId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: policyStatsFilterOptions,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param policyId \n * @param policyStatsFilterOptions \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public rulestatsByRuleIdOrganizationIdPolicyIdGet(organizationId: number, policyId: string, policyStatsFilterOptions?: PolicyStatsFilterOptions, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public rulestatsByRuleIdOrganizationIdPolicyIdGet(organizationId: number, policyId: string, policyStatsFilterOptions?: PolicyStatsFilterOptions, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public rulestatsByRuleIdOrganizationIdPolicyIdGet(organizationId: number, policyId: string, policyStatsFilterOptions?: PolicyStatsFilterOptions, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public rulestatsByRuleIdOrganizationIdPolicyIdGet(organizationId: number, policyId: string, policyStatsFilterOptions?: PolicyStatsFilterOptions, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling rulestatsByRuleIdOrganizationIdPolicyIdGet.');\n }\n if (policyId === null || policyId === undefined) {\n throw new Error('Required parameter policyId was null or undefined when calling rulestatsByRuleIdOrganizationIdPolicyIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/rulestats/ByRuleId/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"policyId\", value: policyId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: policyStatsFilterOptions,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param dateFrom \n * @param dateTo \n * @param policyIds \n * @param match \n * @param results \n * @param pageSize \n * @param page \n * @param sortColumn \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public rulestatsForOrgOrganizationIdGet(organizationId: number, dateFrom?: string, dateTo?: string, policyIds?: Array, match?: string, results?: Array, pageSize?: number, page?: number, sortColumn?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public rulestatsForOrgOrganizationIdGet(organizationId: number, dateFrom?: string, dateTo?: string, policyIds?: Array, match?: string, results?: Array, pageSize?: number, page?: number, sortColumn?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public rulestatsForOrgOrganizationIdGet(organizationId: number, dateFrom?: string, dateTo?: string, policyIds?: Array, match?: string, results?: Array, pageSize?: number, page?: number, sortColumn?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public rulestatsForOrgOrganizationIdGet(organizationId: number, dateFrom?: string, dateTo?: string, policyIds?: Array, match?: string, results?: Array, pageSize?: number, page?: number, sortColumn?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling rulestatsForOrgOrganizationIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (dateFrom !== undefined && dateFrom !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateFrom, 'DateFrom');\n }\n if (dateTo !== undefined && dateTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n dateTo, 'DateTo');\n }\n if (policyIds) {\n policyIds.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'PolicyIds');\n })\n }\n if (match !== undefined && match !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n match, 'Match');\n }\n if (results) {\n results.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'Results');\n })\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (page !== undefined && page !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n page, 'Page');\n }\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/rulestats/ForOrg/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public rulestatsGetPolicyIdsAndNamesOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public rulestatsGetPolicyIdsAndNamesOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public rulestatsGetPolicyIdsAndNamesOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public rulestatsGetPolicyIdsAndNamesOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling rulestatsGetPolicyIdsAndNamesOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/rulestats/GetPolicyIdsAndNames/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Conditional Access Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class TenantCleanupService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationId \n * @param body \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiTenantCleanupOrganizationIdDelete(organizationId: number, body?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiTenantCleanupOrganizationIdDelete(organizationId: number, body?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiTenantCleanupOrganizationIdDelete(organizationId: number, body?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiTenantCleanupOrganizationIdDelete(organizationId: number, body?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiTenantCleanupOrganizationIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/TenantCleanup/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: body,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Conditional Access Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { LoginDetails } from '../model/loginDetails';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ValidateService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public validateIpAddressGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public validateIpAddressGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public validateIpAddressGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public validateIpAddressGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Validate/IpAddress`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param loginDetails \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public validateOrganizationIdPost(organizationId: number, loginDetails?: LoginDetails, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public validateOrganizationIdPost(organizationId: number, loginDetails?: LoginDetails, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public validateOrganizationIdPost(organizationId: number, loginDetails?: LoginDetails, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public validateOrganizationIdPost(organizationId: number, loginDetails?: LoginDetails, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling validateOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Validate/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: loginDetails,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public validateUserAgentsGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public validateUserAgentsGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public validateUserAgentsGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public validateUserAgentsGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Validate/UserAgents`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Conditional Access Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { ValidationResultViewModel } from '../model/validationResultViewModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ValidationResultsService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public validationResultsGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public validationResultsGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public validationResultsGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public validationResultsGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/ValidationResults`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Conditional Access Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class VersionService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public versionGetVersionGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public versionGetVersionGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public versionGetVersionGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public versionGetVersionGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Version/getVersion`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","import { HttpParameterCodec } from '@angular/common/http';\nimport { Param } from './param';\n\nexport interface ConfigurationParameters {\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n apiKeys?: {[ key: string ]: string};\n username?: string;\n password?: string;\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n accessToken?: string | (() => string);\n basePath?: string;\n withCredentials?: boolean;\n /**\n * Takes care of encoding query- and form-parameters.\n */\n encoder?: HttpParameterCodec;\n /**\n * Override the default method for encoding path parameters in various\n * styles.\n *

\n * See {@link README.md} for more details\n *

\n */\n encodeParam?: (param: Param) => string;\n /**\n * The keys are the names in the securitySchemes section of the OpenAPI\n * document. They should map to the value used for authentication\n * minus any standard prefixes such as 'Basic' or 'Bearer'.\n */\n credentials?: {[ key: string ]: string | (() => string | undefined)};\n}\n\nexport class Configuration {\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n apiKeys?: {[ key: string ]: string};\n username?: string;\n password?: string;\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n accessToken?: string | (() => string);\n basePath?: string;\n withCredentials?: boolean;\n /**\n * Takes care of encoding query- and form-parameters.\n */\n encoder?: HttpParameterCodec;\n /**\n * Encoding of various path parameter\n * styles.\n *

\n * See {@link README.md} for more details\n *

\n */\n encodeParam: (param: Param) => string;\n /**\n * The keys are the names in the securitySchemes section of the OpenAPI\n * document. They should map to the value used for authentication\n * minus any standard prefixes such as 'Basic' or 'Bearer'.\n */\n credentials: {[ key: string ]: string | (() => string | undefined)};\n\n constructor(configurationParameters: ConfigurationParameters = {}) {\n this.apiKeys = configurationParameters.apiKeys;\n this.username = configurationParameters.username;\n this.password = configurationParameters.password;\n this.accessToken = configurationParameters.accessToken;\n this.basePath = configurationParameters.basePath;\n this.withCredentials = configurationParameters.withCredentials;\n this.encoder = configurationParameters.encoder;\n if (configurationParameters.encodeParam) {\n this.encodeParam = configurationParameters.encodeParam;\n }\n else {\n this.encodeParam = param => this.defaultEncodeParam(param);\n }\n if (configurationParameters.credentials) {\n this.credentials = configurationParameters.credentials;\n }\n else {\n this.credentials = {};\n }\n\n // init default Bearer credential\n if (!this.credentials['Bearer']) {\n this.credentials['Bearer'] = () => {\n if (this.apiKeys === null || this.apiKeys === undefined) {\n return undefined;\n } else {\n return this.apiKeys['Bearer'] || this.apiKeys['Authorization'];\n }\n };\n }\n }\n\n /**\n * Select the correct content-type to use for a request.\n * Uses {@link Configuration#isJsonMime} to determine the correct content-type.\n * If no content type is found return the first found type if the contentTypes is not empty\n * @param contentTypes - the array of content types that are available for selection\n * @returns the selected content-type or undefined if no selection could be made.\n */\n public selectHeaderContentType (contentTypes: string[]): string | undefined {\n if (contentTypes.length === 0) {\n return undefined;\n }\n\n const type = contentTypes.find((x: string) => this.isJsonMime(x));\n if (type === undefined) {\n return contentTypes[0];\n }\n return type;\n }\n\n /**\n * Select the correct accept content-type to use for a request.\n * Uses {@link Configuration#isJsonMime} to determine the correct accept content-type.\n * If no content type is found return the first found type if the contentTypes is not empty\n * @param accepts - the array of content types that are available for selection.\n * @returns the selected content-type or undefined if no selection could be made.\n */\n public selectHeaderAccept(accepts: string[]): string | undefined {\n if (accepts.length === 0) {\n return undefined;\n }\n\n const type = accepts.find((x: string) => this.isJsonMime(x));\n if (type === undefined) {\n return accepts[0];\n }\n return type;\n }\n\n /**\n * Check if the given MIME is a JSON MIME.\n * JSON MIME examples:\n * application/json\n * application/json; charset=UTF8\n * APPLICATION/JSON\n * application/vnd.company+json\n * @param mime - MIME (Multipurpose Internet Mail Extensions)\n * @return True if the given MIME is JSON, false otherwise.\n */\n public isJsonMime(mime: string): boolean {\n const jsonMime: RegExp = new RegExp('^(application\\/json|[^;/ \\t]+\\/[^;/ \\t]+[+]json)[ \\t]*(;.*)?$', 'i');\n return mime !== null && (jsonMime.test(mime) || mime.toLowerCase() === 'application/json-patch+json');\n }\n\n public lookupCredential(key: string): string | undefined {\n const value = this.credentials[key];\n return typeof value === 'function'\n ? value()\n : value;\n }\n\n private defaultEncodeParam(param: Param): string {\n // This implementation exists as fallback for missing configuration\n // and for backwards compatibility to older typescript-angular generator versions.\n // It only works for the 'simple' parameter style.\n // Date-handling only works for the 'date-time' format.\n // All other styles and Date-formats are probably handled incorrectly.\n //\n // But: if that's all you need (i.e.: the most common use-case): no need for customization!\n\n const value = param.dataFormat === 'date-time'\n ? (param.value as Date).toISOString()\n : param.value;\n\n return encodeURIComponent(String(value));\n }\n}\n","import { HttpParameterCodec } from '@angular/common/http';\n\n/**\n * Custom HttpParameterCodec\n * Workaround for https://github.com/angular/angular/issues/18261\n */\nexport class CustomHttpParameterCodec implements HttpParameterCodec {\n encodeKey(k: string): string {\n return encodeURIComponent(k);\n }\n encodeValue(v: string): string {\n return encodeURIComponent(v);\n }\n decodeKey(k: string): string {\n return decodeURIComponent(k);\n }\n decodeValue(v: string): string {\n return decodeURIComponent(v);\n }\n}\n","export * from './api/api';\nexport * from './model/models';\nexport * from './variables';\nexport * from './configuration';\nexport * from './api.module';\nexport * from './param';\n","/**\n * Conditional Access Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { EndpointAgentIpAddress } from './endpointAgentIpAddress';\n\n\nexport interface EndpointAgent { \n id?: string | null;\n organizationId?: number;\n username?: string | null;\n machineName?: string | null;\n osPlatform?: string | null;\n os?: string | null;\n osVersion?: string | null;\n domainName?: string | null;\n firstSeenUtc?: string;\n lastSeenUtc?: string;\n ipAddresses?: Array | null;\n}\n\n","/**\n * Conditional Access Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { EndpointAgent } from './endpointAgent';\n\n\nexport interface EndpointAgentIpAddress { \n ipAddress?: string | null;\n endpointAgentId?: string | null;\n endpointAgent?: EndpointAgent;\n}\n\n","/**\n * Conditional Access Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface EndpointAgentModel { \n id?: string | null;\n organizationId?: number;\n machineName?: string | null;\n osPlatform?: string | null;\n os?: string | null;\n osVersion?: string | null;\n domainName?: string | null;\n ipAddresses?: Array | null;\n}\n\n","/**\n * Conditional Access Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { EndpointAgent } from './endpointAgent';\n\n\nexport interface EndpointAgentPagedResult { \n currentPage?: number;\n pageSize?: number;\n totalItems?: number;\n totalPages?: number;\n result?: Array | null;\n}\n\n","/**\n * Conditional Access Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { ValidateReason } from './validateReason';\nimport { StringStringKeyValuePair } from './stringStringKeyValuePair';\n\n\nexport interface LoginDetails { \n organizationId?: string | null;\n organizationMnemonic?: string | null;\n username?: string | null;\n ipAddress?: string | null;\n loginDate?: string | null;\n application?: string | null;\n userAgent?: string | null;\n endpointAgentId?: string | null;\n validateReason?: ValidateReason;\n extraDetails?: Array | null;\n}\n\n","export * from './endpointAgent';\nexport * from './endpointAgentIpAddress';\nexport * from './endpointAgentModel';\nexport * from './endpointAgentPagedResult';\nexport * from './loginDetails';\nexport * from './organizationSettingsInputModel';\nexport * from './pagedPolicyStatsViewModel';\nexport * from './policyIdAndNameViewModel';\nexport * from './policyStatViewModel';\nexport * from './policyStatsFilterOptions';\nexport * from './queryBuilderInputModel';\nexport * from './queryBuilderRuleInputModel';\nexport * from './stringStringKeyValuePair';\nexport * from './validateReason';\nexport * from './validationResultViewModel';\n","/**\n * Conditional Access Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface OrganizationSettingsInputModel { \n organizationId?: string | null;\n isConditionalAccessEnabled?: boolean;\n defaultValidationResult?: string | null;\n notificationAddresses?: Array | null;\n}\n\n","/**\n * Conditional Access Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { PolicyStatViewModel } from './policyStatViewModel';\n\n\nexport interface PagedPolicyStatsViewModel { \n policyStats?: Array | null;\n totalItems?: number;\n filteredItems?: number;\n}\n\n","/**\n * Conditional Access Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface PolicyIdAndNameViewModel { \n id?: string | null;\n name?: string | null;\n}\n\n","/**\n * Conditional Access Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface PolicyStatViewModel { \n policyId?: string | null;\n policyName?: string | null;\n ranAt?: string;\n match?: string | null;\n result?: string | null;\n inputs?: { [key: string]: any; } | null;\n}\n\n","/**\n * Conditional Access Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface PolicyStatsFilterOptions { \n dateFrom?: string | null;\n dateTo?: string | null;\n policyIds?: Array | null;\n match?: string | null;\n results?: Array | null;\n pageSize?: number;\n page?: number;\n sortColumn?: string | null;\n}\n\n","/**\n * Conditional Access Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { QueryBuilderRuleInputModel } from './queryBuilderRuleInputModel';\n\n\nexport interface QueryBuilderInputModel { \n organizationId?: string | null;\n id?: string | null;\n name?: string | null;\n isEnabled?: boolean;\n rules?: QueryBuilderRuleInputModel;\n result?: string | null;\n notificationAddresses?: Array | null;\n}\n\n","/**\n * Conditional Access Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface QueryBuilderRuleInputModel { \n field?: string | null;\n type?: string | null;\n operator?: string | null;\n value?: any | null;\n condition?: string | null;\n rules?: Array | null;\n}\n\n","/**\n * Conditional Access Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface StringStringKeyValuePair { \n key?: string | null;\n value?: string | null;\n}\n\n","/**\n * Conditional Access Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport type ValidateReason = 0 | 1 | 2;\n\nexport const ValidateReason = {\n NUMBER_0: 0 as ValidateReason,\n NUMBER_1: 1 as ValidateReason,\n NUMBER_2: 2 as ValidateReason\n};\n\n","/**\n * Conditional Access Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface ValidationResultViewModel { \n name?: string | null;\n displayName?: string | null;\n description?: string | null;\n}\n\n","/**\n * Standard parameter styles defined by OpenAPI spec\n */\nexport type StandardParamStyle =\n | 'matrix'\n | 'label'\n | 'form'\n | 'simple'\n | 'spaceDelimited'\n | 'pipeDelimited'\n | 'deepObject'\n ;\n\n/**\n * The OpenAPI standard {@link StandardParamStyle}s may be extended by custom styles by the user.\n */\nexport type ParamStyle = StandardParamStyle | string;\n\n/**\n * Standard parameter locations defined by OpenAPI spec\n */\nexport type ParamLocation = 'query' | 'header' | 'path' | 'cookie';\n\n/**\n * Standard types as defined in OpenAPI Specification: Data Types\n */\nexport type StandardDataType =\n | \"integer\"\n | \"number\"\n | \"boolean\"\n | \"string\"\n | \"object\"\n | \"array\"\n ;\n\n/**\n * Standard {@link DataType}s plus your own types/classes.\n */\nexport type DataType = StandardDataType | string;\n\n/**\n * Standard formats as defined in OpenAPI Specification: Data Types\n */\nexport type StandardDataFormat =\n | \"int32\"\n | \"int64\"\n | \"float\"\n | \"double\"\n | \"byte\"\n | \"binary\"\n | \"date\"\n | \"date-time\"\n | \"password\"\n ;\n\nexport type DataFormat = StandardDataFormat | string;\n\n/**\n * The parameter to encode.\n */\nexport interface Param {\n name: string;\n value: unknown;\n in: ParamLocation;\n style: ParamStyle,\n explode: boolean;\n dataType: DataType;\n dataFormat: DataFormat | undefined;\n}\n","import { InjectionToken } from '@angular/core';\n\nexport const BASE_PATH = new InjectionToken('basePath');\nexport const COLLECTION_FORMATS = {\n 'csv': ',',\n 'tsv': ' ',\n 'ssv': ' ',\n 'pipes': '|'\n}\n","import { NgModule, ModuleWithProviders, SkipSelf, Optional } from '@angular/core';\nimport { Configuration } from './configuration';\nimport { HttpClient } from '@angular/common/http';\n\nimport { FileStoreService } from './api/fileStore.service';\nimport { VersionService } from './api/version.service';\n\n@NgModule({\n imports: [],\n declarations: [],\n exports: [],\n providers: []\n})\nexport class ApiModule {\n public static forRoot(configurationFactory: () => Configuration): ModuleWithProviders {\n return {\n ngModule: ApiModule,\n providers: [ { provide: Configuration, useFactory: configurationFactory } ]\n };\n }\n\n constructor( @Optional() @SkipSelf() parentModule: ApiModule,\n @Optional() http: HttpClient) {\n if (parentModule) {\n throw new Error('ApiModule is already loaded. Import in your base AppModule only.');\n }\n if (!http) {\n throw new Error('You need to import the HttpClientModule in your AppModule! \\n' +\n 'See also https://github.com/angular/angular/issues/20575');\n }\n }\n}\n","export * from './fileStore.service';\nimport { FileStoreService } from './fileStore.service';\nexport * from './version.service';\nimport { VersionService } from './version.service';\nexport const APIS = [FileStoreService, VersionService];\n","/**\n * Filestorage Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { PostFileVM } from '../model/postFileVM';\n// @ts-ignore\nimport { UpdateFileInfoVM } from '../model/updateFileInfoVM';\n// @ts-ignore\nimport { UpdateFileVM } from '../model/updateFileVM';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class FileStoreService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param postFileVM \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiFileStoreAddNewFilePost(postFileVM?: PostFileVM, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiFileStoreAddNewFilePost(postFileVM?: PostFileVM, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiFileStoreAddNewFilePost(postFileVM?: PostFileVM, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiFileStoreAddNewFilePost(postFileVM?: PostFileVM, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/FileStore/addNewFile`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: postFileVM,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param fileId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiFileStoreDeleteFileFileIdDelete(fileId: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiFileStoreDeleteFileFileIdDelete(fileId: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiFileStoreDeleteFileFileIdDelete(fileId: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiFileStoreDeleteFileFileIdDelete(fileId: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (fileId === null || fileId === undefined) {\n throw new Error('Required parameter fileId was null or undefined when calling apiFileStoreDeleteFileFileIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/FileStore/deleteFile/${this.configuration.encodeParam({name: \"fileId\", value: fileId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param fileId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiFileStoreGetFileByIdFileIdGet(fileId: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiFileStoreGetFileByIdFileIdGet(fileId: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiFileStoreGetFileByIdFileIdGet(fileId: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiFileStoreGetFileByIdFileIdGet(fileId: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (fileId === null || fileId === undefined) {\n throw new Error('Required parameter fileId was null or undefined when calling apiFileStoreGetFileByIdFileIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/FileStore/getFileById/${this.configuration.encodeParam({name: \"fileId\", value: fileId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param referenceId \n * @param referenceType \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiFileStoreGetFilesByReferenceReferenceReferenceIdReferenceTypeGet(referenceId: string, referenceType: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiFileStoreGetFilesByReferenceReferenceReferenceIdReferenceTypeGet(referenceId: string, referenceType: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiFileStoreGetFilesByReferenceReferenceReferenceIdReferenceTypeGet(referenceId: string, referenceType: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiFileStoreGetFilesByReferenceReferenceReferenceIdReferenceTypeGet(referenceId: string, referenceType: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (referenceId === null || referenceId === undefined) {\n throw new Error('Required parameter referenceId was null or undefined when calling apiFileStoreGetFilesByReferenceReferenceReferenceIdReferenceTypeGet.');\n }\n if (referenceType === null || referenceType === undefined) {\n throw new Error('Required parameter referenceType was null or undefined when calling apiFileStoreGetFilesByReferenceReferenceReferenceIdReferenceTypeGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/FileStore/getFilesByReferenceReference/${this.configuration.encodeParam({name: \"referenceId\", value: referenceId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"referenceType\", value: referenceType, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param postFileVM \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiFileStoreGetFilesByTypeAndReferenceGet(postFileVM?: PostFileVM, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiFileStoreGetFilesByTypeAndReferenceGet(postFileVM?: PostFileVM, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiFileStoreGetFilesByTypeAndReferenceGet(postFileVM?: PostFileVM, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiFileStoreGetFilesByTypeAndReferenceGet(postFileVM?: PostFileVM, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/FileStore/getFilesByTypeAndReference`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: postFileVM,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param fileId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiFileStoreGetImageByIDOrganizationIdFileIdGet(organizationId: string, fileId: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiFileStoreGetImageByIDOrganizationIdFileIdGet(organizationId: string, fileId: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiFileStoreGetImageByIDOrganizationIdFileIdGet(organizationId: string, fileId: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiFileStoreGetImageByIDOrganizationIdFileIdGet(organizationId: string, fileId: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiFileStoreGetImageByIDOrganizationIdFileIdGet.');\n }\n if (fileId === null || fileId === undefined) {\n throw new Error('Required parameter fileId was null or undefined when calling apiFileStoreGetImageByIDOrganizationIdFileIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/FileStore/GetImageByID/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"fileId\", value: fileId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param fileId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiFileStoreOrganizationIdFileIdGet(organizationId: string, fileId: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiFileStoreOrganizationIdFileIdGet(organizationId: string, fileId: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiFileStoreOrganizationIdFileIdGet(organizationId: string, fileId: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiFileStoreOrganizationIdFileIdGet(organizationId: string, fileId: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiFileStoreOrganizationIdFileIdGet.');\n }\n if (fileId === null || fileId === undefined) {\n throw new Error('Required parameter fileId was null or undefined when calling apiFileStoreOrganizationIdFileIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/FileStore/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"fileId\", value: fileId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param updateFileInfoVM \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiFileStoreUpdateFileInfoPut(updateFileInfoVM?: UpdateFileInfoVM, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiFileStoreUpdateFileInfoPut(updateFileInfoVM?: UpdateFileInfoVM, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiFileStoreUpdateFileInfoPut(updateFileInfoVM?: UpdateFileInfoVM, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiFileStoreUpdateFileInfoPut(updateFileInfoVM?: UpdateFileInfoVM, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/FileStore/updateFileInfo`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: updateFileInfoVM,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param updateFileVM \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiFileStoreUpdateFilePut(updateFileVM?: UpdateFileVM, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiFileStoreUpdateFilePut(updateFileVM?: UpdateFileVM, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiFileStoreUpdateFilePut(updateFileVM?: UpdateFileVM, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiFileStoreUpdateFilePut(updateFileVM?: UpdateFileVM, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/FileStore/updateFile`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: updateFileVM,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Filestorage Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class VersionService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiVersionGetVersionGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiVersionGetVersionGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiVersionGetVersionGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiVersionGetVersionGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Version/getVersion`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","import { HttpParameterCodec } from '@angular/common/http';\nimport { Param } from './param';\n\nexport interface ConfigurationParameters {\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n apiKeys?: {[ key: string ]: string};\n username?: string;\n password?: string;\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n accessToken?: string | (() => string);\n basePath?: string;\n withCredentials?: boolean;\n /**\n * Takes care of encoding query- and form-parameters.\n */\n encoder?: HttpParameterCodec;\n /**\n * Override the default method for encoding path parameters in various\n * styles.\n *

\n * See {@link README.md} for more details\n *

\n */\n encodeParam?: (param: Param) => string;\n /**\n * The keys are the names in the securitySchemes section of the OpenAPI\n * document. They should map to the value used for authentication\n * minus any standard prefixes such as 'Basic' or 'Bearer'.\n */\n credentials?: {[ key: string ]: string | (() => string | undefined)};\n}\n\nexport class Configuration {\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n apiKeys?: {[ key: string ]: string};\n username?: string;\n password?: string;\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n accessToken?: string | (() => string);\n basePath?: string;\n withCredentials?: boolean;\n /**\n * Takes care of encoding query- and form-parameters.\n */\n encoder?: HttpParameterCodec;\n /**\n * Encoding of various path parameter\n * styles.\n *

\n * See {@link README.md} for more details\n *

\n */\n encodeParam: (param: Param) => string;\n /**\n * The keys are the names in the securitySchemes section of the OpenAPI\n * document. They should map to the value used for authentication\n * minus any standard prefixes such as 'Basic' or 'Bearer'.\n */\n credentials: {[ key: string ]: string | (() => string | undefined)};\n\n constructor(configurationParameters: ConfigurationParameters = {}) {\n this.apiKeys = configurationParameters.apiKeys;\n this.username = configurationParameters.username;\n this.password = configurationParameters.password;\n this.accessToken = configurationParameters.accessToken;\n this.basePath = configurationParameters.basePath;\n this.withCredentials = configurationParameters.withCredentials;\n this.encoder = configurationParameters.encoder;\n if (configurationParameters.encodeParam) {\n this.encodeParam = configurationParameters.encodeParam;\n }\n else {\n this.encodeParam = param => this.defaultEncodeParam(param);\n }\n if (configurationParameters.credentials) {\n this.credentials = configurationParameters.credentials;\n }\n else {\n this.credentials = {};\n }\n }\n\n /**\n * Select the correct content-type to use for a request.\n * Uses {@link Configuration#isJsonMime} to determine the correct content-type.\n * If no content type is found return the first found type if the contentTypes is not empty\n * @param contentTypes - the array of content types that are available for selection\n * @returns the selected content-type or undefined if no selection could be made.\n */\n public selectHeaderContentType (contentTypes: string[]): string | undefined {\n if (contentTypes.length === 0) {\n return undefined;\n }\n\n const type = contentTypes.find((x: string) => this.isJsonMime(x));\n if (type === undefined) {\n return contentTypes[0];\n }\n return type;\n }\n\n /**\n * Select the correct accept content-type to use for a request.\n * Uses {@link Configuration#isJsonMime} to determine the correct accept content-type.\n * If no content type is found return the first found type if the contentTypes is not empty\n * @param accepts - the array of content types that are available for selection.\n * @returns the selected content-type or undefined if no selection could be made.\n */\n public selectHeaderAccept(accepts: string[]): string | undefined {\n if (accepts.length === 0) {\n return undefined;\n }\n\n const type = accepts.find((x: string) => this.isJsonMime(x));\n if (type === undefined) {\n return accepts[0];\n }\n return type;\n }\n\n /**\n * Check if the given MIME is a JSON MIME.\n * JSON MIME examples:\n * application/json\n * application/json; charset=UTF8\n * APPLICATION/JSON\n * application/vnd.company+json\n * @param mime - MIME (Multipurpose Internet Mail Extensions)\n * @return True if the given MIME is JSON, false otherwise.\n */\n public isJsonMime(mime: string): boolean {\n const jsonMime: RegExp = new RegExp('^(application\\/json|[^;/ \\t]+\\/[^;/ \\t]+[+]json)[ \\t]*(;.*)?$', 'i');\n return mime !== null && (jsonMime.test(mime) || mime.toLowerCase() === 'application/json-patch+json');\n }\n\n public lookupCredential(key: string): string | undefined {\n const value = this.credentials[key];\n return typeof value === 'function'\n ? value()\n : value;\n }\n\n private defaultEncodeParam(param: Param): string {\n // This implementation exists as fallback for missing configuration\n // and for backwards compatibility to older typescript-angular generator versions.\n // It only works for the 'simple' parameter style.\n // Date-handling only works for the 'date-time' format.\n // All other styles and Date-formats are probably handled incorrectly.\n //\n // But: if that's all you need (i.e.: the most common use-case): no need for customization!\n\n const value = param.dataFormat === 'date-time'\n ? (param.value as Date).toISOString()\n : param.value;\n\n return encodeURIComponent(String(value));\n }\n}\n","import { HttpParameterCodec } from '@angular/common/http';\n\n/**\n * Custom HttpParameterCodec\n * Workaround for https://github.com/angular/angular/issues/18261\n */\nexport class CustomHttpParameterCodec implements HttpParameterCodec {\n encodeKey(k: string): string {\n return encodeURIComponent(k);\n }\n encodeValue(v: string): string {\n return encodeURIComponent(v);\n }\n decodeKey(k: string): string {\n return decodeURIComponent(k);\n }\n decodeValue(v: string): string {\n return decodeURIComponent(v);\n }\n}\n","export * from './api/api';\nexport * from './model/models';\nexport * from './variables';\nexport * from './configuration';\nexport * from './api.module';\nexport * from './param';\n","export * from './postFileVM';\nexport * from './updateFileInfoVM';\nexport * from './updateFileVM';\n","/**\n * Filestorage Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface PostFileVM { \n fullName: string;\n description?: string | null;\n fileData: string;\n contentType?: string | null;\n createdBy?: string | null;\n referenceId?: string | null;\n referenceType?: string | null;\n organizationId: number;\n mnemonic: string;\n}\n\n","/**\n * Filestorage Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface UpdateFileInfoVM { \n fileId: string;\n name?: string | null;\n fileKey?: string | null;\n description?: string | null;\n fullName: string;\n contentType?: string | null;\n modifiedBy?: string | null;\n isDeleted?: boolean;\n isActive?: boolean;\n referenceId?: string | null;\n referenceType?: string | null;\n organizationId: number;\n mnemonic: string;\n}\n\n","/**\n * Filestorage Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface UpdateFileVM { \n fileId: string;\n name?: string | null;\n fileKey?: string | null;\n description?: string | null;\n fileData: string;\n fullName: string;\n contentType?: string | null;\n modifiedBy?: string | null;\n isDeleted?: boolean;\n isActive?: boolean;\n referenceId?: string | null;\n referenceType?: string | null;\n organizationId: number;\n mnemonic: string;\n}\n\n","/**\n * Standard parameter styles defined by OpenAPI spec\n */\nexport type StandardParamStyle =\n | 'matrix'\n | 'label'\n | 'form'\n | 'simple'\n | 'spaceDelimited'\n | 'pipeDelimited'\n | 'deepObject'\n ;\n\n/**\n * The OpenAPI standard {@link StandardParamStyle}s may be extended by custom styles by the user.\n */\nexport type ParamStyle = StandardParamStyle | string;\n\n/**\n * Standard parameter locations defined by OpenAPI spec\n */\nexport type ParamLocation = 'query' | 'header' | 'path' | 'cookie';\n\n/**\n * Standard types as defined in OpenAPI Specification: Data Types\n */\nexport type StandardDataType =\n | \"integer\"\n | \"number\"\n | \"boolean\"\n | \"string\"\n | \"object\"\n | \"array\"\n ;\n\n/**\n * Standard {@link DataType}s plus your own types/classes.\n */\nexport type DataType = StandardDataType | string;\n\n/**\n * Standard formats as defined in OpenAPI Specification: Data Types\n */\nexport type StandardDataFormat =\n | \"int32\"\n | \"int64\"\n | \"float\"\n | \"double\"\n | \"byte\"\n | \"binary\"\n | \"date\"\n | \"date-time\"\n | \"password\"\n ;\n\nexport type DataFormat = StandardDataFormat | string;\n\n/**\n * The parameter to encode.\n */\nexport interface Param {\n name: string;\n value: unknown;\n in: ParamLocation;\n style: ParamStyle,\n explode: boolean;\n dataType: DataType;\n dataFormat: DataFormat | undefined;\n}\n","import { InjectionToken } from '@angular/core';\n\nexport const BASE_PATH = new InjectionToken('basePath');\nexport const COLLECTION_FORMATS = {\n 'csv': ',',\n 'tsv': ' ',\n 'ssv': ' ',\n 'pipes': '|'\n}\n","import { NgModule, ModuleWithProviders, SkipSelf, Optional } from '@angular/core';\nimport { Configuration } from './configuration';\nimport { HttpClient } from '@angular/common/http';\n\nimport { AccountService } from './api/account.service';\nimport { AuthenticationTypeService } from './api/authenticationType.service';\nimport { CertificateService } from './api/certificate.service';\nimport { CredentialResetService } from './api/credentialReset.service';\nimport { HardwareTokenService } from './api/hardwareToken.service';\nimport { LegacySecurEnvoyAppService } from './api/legacySecurEnvoyApp.service';\nimport { LoginHistoryService } from './api/loginHistory.service';\nimport { QuestionSecretAnswerService } from './api/questionSecretAnswer.service';\nimport { RedirectService } from './api/redirect.service';\nimport { SettingsService } from './api/settings.service';\nimport { TenantCleanupService } from './api/tenantCleanup.service';\nimport { UserAuthCredentialService } from './api/userAuthCredential.service';\nimport { UserCredentialService } from './api/userCredential.service';\nimport { UserSessionService } from './api/userSession.service';\nimport { UserTokenService } from './api/userToken.service';\nimport { VersionService } from './api/version.service';\n\n@NgModule({\n imports: [],\n declarations: [],\n exports: [],\n providers: []\n})\nexport class ApiModule {\n public static forRoot(configurationFactory: () => Configuration): ModuleWithProviders {\n return {\n ngModule: ApiModule,\n providers: [ { provide: Configuration, useFactory: configurationFactory } ]\n };\n }\n\n constructor( @Optional() @SkipSelf() parentModule: ApiModule,\n @Optional() http: HttpClient) {\n if (parentModule) {\n throw new Error('ApiModule is already loaded. Import in your base AppModule only.');\n }\n if (!http) {\n throw new Error('You need to import the HttpClientModule in your AppModule! \\n' +\n 'See also https://github.com/angular/angular/issues/20575');\n }\n }\n}\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { AuthenticationMethod } from '../model/authenticationMethod';\n// @ts-ignore\nimport { ChallengeReply } from '../model/challengeReply';\n// @ts-ignore\nimport { LoginModel } from '../model/loginModel';\n// @ts-ignore\nimport { LoginModelWithAssertion } from '../model/loginModelWithAssertion';\n// @ts-ignore\nimport { OneStepLoginModel } from '../model/oneStepLoginModel';\n// @ts-ignore\nimport { PushResponse } from '../model/pushResponse';\n// @ts-ignore\nimport { RadiusCredential } from '../model/radiusCredential';\n// @ts-ignore\nimport { SkipPasswordSecret } from '../model/skipPasswordSecret';\n// @ts-ignore\nimport { UserCredentialModel } from '../model/userCredentialModel';\n// @ts-ignore\nimport { UserGroupValidationModel } from '../model/userGroupValidationModel';\n// @ts-ignore\nimport { UserQuestionSecretAnswerModel } from '../model/userQuestionSecretAnswerModel';\n// @ts-ignore\nimport { WLALoginModel } from '../model/wLALoginModel';\n// @ts-ignore\nimport { WlaSettingsModel } from '../model/wlaSettingsModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AccountService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param id \n * @param challengeReply \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountCheckLoginPasswordCompromisedIdPost(id: string, challengeReply?: ChallengeReply, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountCheckLoginPasswordCompromisedIdPost(id: string, challengeReply?: ChallengeReply, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountCheckLoginPasswordCompromisedIdPost(id: string, challengeReply?: ChallengeReply, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountCheckLoginPasswordCompromisedIdPost(id: string, challengeReply?: ChallengeReply, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAccountCheckLoginPasswordCompromisedIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/CheckLoginPasswordCompromised/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: challengeReply,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param challengeReply \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountCheckPasswordCompromisedPost(challengeReply?: ChallengeReply, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountCheckPasswordCompromisedPost(challengeReply?: ChallengeReply, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountCheckPasswordCompromisedPost(challengeReply?: ChallengeReply, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountCheckPasswordCompromisedPost(challengeReply?: ChallengeReply, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/CheckPasswordCompromised`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: challengeReply,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param key \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountCheckPushStatusApiKeyIdKeyGet(id: string, key: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountCheckPushStatusApiKeyIdKeyGet(id: string, key: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountCheckPushStatusApiKeyIdKeyGet(id: string, key: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountCheckPushStatusApiKeyIdKeyGet(id: string, key: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAccountCheckPushStatusApiKeyIdKeyGet.');\n }\n if (key === null || key === undefined) {\n throw new Error('Required parameter key was null or undefined when calling apiAccountCheckPushStatusApiKeyIdKeyGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/CheckPushStatusApiKey/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"key\", value: key, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param key \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountCheckPushStatusIdKeyGet(id: string, key: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountCheckPushStatusIdKeyGet(id: string, key: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountCheckPushStatusIdKeyGet(id: string, key: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountCheckPushStatusIdKeyGet(id: string, key: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAccountCheckPushStatusIdKeyGet.');\n }\n if (key === null || key === undefined) {\n throw new Error('Required parameter key was null or undefined when calling apiAccountCheckPushStatusIdKeyGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/CheckPushStatus/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"key\", value: key, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param challengeReply \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountContinueLoginIdPost(id: string, challengeReply?: ChallengeReply, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountContinueLoginIdPost(id: string, challengeReply?: ChallengeReply, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountContinueLoginIdPost(id: string, challengeReply?: ChallengeReply, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountContinueLoginIdPost(id: string, challengeReply?: ChallengeReply, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAccountContinueLoginIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/ContinueLogin/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: challengeReply,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param username \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountGetLockStatusOrganizationMnemonicUsernameGet(organizationMnemonic: string, username: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountGetLockStatusOrganizationMnemonicUsernameGet(organizationMnemonic: string, username: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountGetLockStatusOrganizationMnemonicUsernameGet(organizationMnemonic: string, username: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountGetLockStatusOrganizationMnemonicUsernameGet(organizationMnemonic: string, username: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAccountGetLockStatusOrganizationMnemonicUsernameGet.');\n }\n if (username === null || username === undefined) {\n throw new Error('Required parameter username was null or undefined when calling apiAccountGetLockStatusOrganizationMnemonicUsernameGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/GetLockStatus/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"username\", value: username, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param groupKey \n * @param key \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountGetOrgSettingOrganizationMnemonicGroupKeyKeyGet(organizationMnemonic: string, groupKey: string, key: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountGetOrgSettingOrganizationMnemonicGroupKeyKeyGet(organizationMnemonic: string, groupKey: string, key: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountGetOrgSettingOrganizationMnemonicGroupKeyKeyGet(organizationMnemonic: string, groupKey: string, key: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountGetOrgSettingOrganizationMnemonicGroupKeyKeyGet(organizationMnemonic: string, groupKey: string, key: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAccountGetOrgSettingOrganizationMnemonicGroupKeyKeyGet.');\n }\n if (groupKey === null || groupKey === undefined) {\n throw new Error('Required parameter groupKey was null or undefined when calling apiAccountGetOrgSettingOrganizationMnemonicGroupKeyKeyGet.');\n }\n if (key === null || key === undefined) {\n throw new Error('Required parameter key was null or undefined when calling apiAccountGetOrgSettingOrganizationMnemonicGroupKeyKeyGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/GetOrgSetting/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"groupKey\", value: groupKey, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"key\", value: key, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgCode \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountGetOrganizationSettingsGet(orgCode?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountGetOrganizationSettingsGet(orgCode?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountGetOrganizationSettingsGet(orgCode?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountGetOrganizationSettingsGet(orgCode?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (orgCode !== undefined && orgCode !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n orgCode, 'orgCode');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/GetOrganizationSettings`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountGetUserLoginDetailsIdGet(id: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountGetUserLoginDetailsIdGet(id: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountGetUserLoginDetailsIdGet(id: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountGetUserLoginDetailsIdGet(id: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAccountGetUserLoginDetailsIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/GetUserLoginDetails/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountGetUserOfflineSupportIdGet(id: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountGetUserOfflineSupportIdGet(id: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountGetUserOfflineSupportIdGet(id: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountGetUserOfflineSupportIdGet(id: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAccountGetUserOfflineSupportIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/GetUserOfflineSupport/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param username \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountGetUserQuestionsOrganizationMnemonicUsernameGet(organizationMnemonic: string, username: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountGetUserQuestionsOrganizationMnemonicUsernameGet(organizationMnemonic: string, username: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountGetUserQuestionsOrganizationMnemonicUsernameGet(organizationMnemonic: string, username: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountGetUserQuestionsOrganizationMnemonicUsernameGet(organizationMnemonic: string, username: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAccountGetUserQuestionsOrganizationMnemonicUsernameGet.');\n }\n if (username === null || username === undefined) {\n throw new Error('Required parameter username was null or undefined when calling apiAccountGetUserQuestionsOrganizationMnemonicUsernameGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/GetUserQuestions/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"username\", value: username, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountGetUserSessionPassIdGet(id: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountGetUserSessionPassIdGet(id: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountGetUserSessionPassIdGet(id: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountGetUserSessionPassIdGet(id: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAccountGetUserSessionPassIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/GetUserSessionPass/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountGetUserStateOrSignInApiKeyIdGet(id: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountGetUserStateOrSignInApiKeyIdGet(id: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountGetUserStateOrSignInApiKeyIdGet(id: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountGetUserStateOrSignInApiKeyIdGet(id: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAccountGetUserStateOrSignInApiKeyIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/GetUserStateOrSignInApiKey/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountGetUserStateOrSignInIdGet(id: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountGetUserStateOrSignInIdGet(id: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountGetUserStateOrSignInIdGet(id: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountGetUserStateOrSignInIdGet(id: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAccountGetUserStateOrSignInIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/GetUserStateOrSignIn/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountGetUserWlaSecretIdGet(id: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountGetUserWlaSecretIdGet(id: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountGetUserWlaSecretIdGet(id: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountGetUserWlaSecretIdGet(id: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAccountGetUserWlaSecretIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/GetUserWlaSecret/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param loginModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountLoginPost(loginModel?: LoginModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountLoginPost(loginModel?: LoginModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountLoginPost(loginModel?: LoginModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountLoginPost(loginModel?: LoginModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/Login`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: loginModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param isFidoUsernameless \n * @param loginModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountLoginWithUserNameApiKeyPost(isFidoUsernameless?: boolean, loginModel?: LoginModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountLoginWithUserNameApiKeyPost(isFidoUsernameless?: boolean, loginModel?: LoginModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountLoginWithUserNameApiKeyPost(isFidoUsernameless?: boolean, loginModel?: LoginModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountLoginWithUserNameApiKeyPost(isFidoUsernameless?: boolean, loginModel?: LoginModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (isFidoUsernameless !== undefined && isFidoUsernameless !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n isFidoUsernameless, 'isFidoUsernameless');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/LoginWithUserNameApiKey`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: loginModel,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param loginModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountLoginWithUserNameForWLAPost(loginModel?: LoginModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountLoginWithUserNameForWLAPost(loginModel?: LoginModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountLoginWithUserNameForWLAPost(loginModel?: LoginModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountLoginWithUserNameForWLAPost(loginModel?: LoginModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/LoginWithUserNameForWLA`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: loginModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param isFidoUsernameless \n * @param loginModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountLoginWithUserNamePost(isFidoUsernameless?: boolean, loginModel?: LoginModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountLoginWithUserNamePost(isFidoUsernameless?: boolean, loginModel?: LoginModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountLoginWithUserNamePost(isFidoUsernameless?: boolean, loginModel?: LoginModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountLoginWithUserNamePost(isFidoUsernameless?: boolean, loginModel?: LoginModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (isFidoUsernameless !== undefined && isFidoUsernameless !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n isFidoUsernameless, 'isFidoUsernameless');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/LoginWithUserName`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: loginModel,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param logoutId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountLogoutGet(logoutId?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountLogoutGet(logoutId?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountLogoutGet(logoutId?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountLogoutGet(logoutId?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (logoutId !== undefined && logoutId !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n logoutId, 'logoutId');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/logout`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param oneStepLoginModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountOneStepLoginPost(oneStepLoginModel?: OneStepLoginModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountOneStepLoginPost(oneStepLoginModel?: OneStepLoginModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountOneStepLoginPost(oneStepLoginModel?: OneStepLoginModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountOneStepLoginPost(oneStepLoginModel?: OneStepLoginModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/OneStepLogin`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: oneStepLoginModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param pushResponse \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountPushPost(pushResponse?: PushResponse, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountPushPost(pushResponse?: PushResponse, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountPushPost(pushResponse?: PushResponse, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountPushPost(pushResponse?: PushResponse, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/push`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: pushResponse,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organization \n * @param userName \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountRadiusChallengeLengthApiKeyOrganizationUserNamePost(organization: string, userName: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountRadiusChallengeLengthApiKeyOrganizationUserNamePost(organization: string, userName: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountRadiusChallengeLengthApiKeyOrganizationUserNamePost(organization: string, userName: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountRadiusChallengeLengthApiKeyOrganizationUserNamePost(organization: string, userName: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organization === null || organization === undefined) {\n throw new Error('Required parameter organization was null or undefined when calling apiAccountRadiusChallengeLengthApiKeyOrganizationUserNamePost.');\n }\n if (userName === null || userName === undefined) {\n throw new Error('Required parameter userName was null or undefined when calling apiAccountRadiusChallengeLengthApiKeyOrganizationUserNamePost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/RadiusChallengeLengthApiKey/${this.configuration.encodeParam({name: \"organization\", value: organization, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"userName\", value: userName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param skipPasswordSecret \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountRadiusSkipPasswordApiKeyIdPost(id: string, skipPasswordSecret?: SkipPasswordSecret, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountRadiusSkipPasswordApiKeyIdPost(id: string, skipPasswordSecret?: SkipPasswordSecret, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountRadiusSkipPasswordApiKeyIdPost(id: string, skipPasswordSecret?: SkipPasswordSecret, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountRadiusSkipPasswordApiKeyIdPost(id: string, skipPasswordSecret?: SkipPasswordSecret, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAccountRadiusSkipPasswordApiKeyIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/RadiusSkipPasswordApiKey/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: skipPasswordSecret,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param skipPasswordSecret \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountRadiusSkipPasswordIdPost(id: string, skipPasswordSecret?: SkipPasswordSecret, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountRadiusSkipPasswordIdPost(id: string, skipPasswordSecret?: SkipPasswordSecret, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountRadiusSkipPasswordIdPost(id: string, skipPasswordSecret?: SkipPasswordSecret, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountRadiusSkipPasswordIdPost(id: string, skipPasswordSecret?: SkipPasswordSecret, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAccountRadiusSkipPasswordIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/RadiusSkipPassword/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: skipPasswordSecret,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param radiusCredential \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountRadiusValidateCredentialApiKeyIdPost(id: string, radiusCredential?: RadiusCredential, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountRadiusValidateCredentialApiKeyIdPost(id: string, radiusCredential?: RadiusCredential, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountRadiusValidateCredentialApiKeyIdPost(id: string, radiusCredential?: RadiusCredential, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountRadiusValidateCredentialApiKeyIdPost(id: string, radiusCredential?: RadiusCredential, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAccountRadiusValidateCredentialApiKeyIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/RadiusValidateCredentialApiKey/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: radiusCredential,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param radiusCredential \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountRadiusValidateCredentialIdPost(id: string, radiusCredential?: RadiusCredential, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountRadiusValidateCredentialIdPost(id: string, radiusCredential?: RadiusCredential, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountRadiusValidateCredentialIdPost(id: string, radiusCredential?: RadiusCredential, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountRadiusValidateCredentialIdPost(id: string, radiusCredential?: RadiusCredential, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAccountRadiusValidateCredentialIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/RadiusValidateCredential/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: radiusCredential,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param userCredentialModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountResetUserPasswordAtLoginIdPost(id: string, userCredentialModel?: UserCredentialModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountResetUserPasswordAtLoginIdPost(id: string, userCredentialModel?: UserCredentialModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountResetUserPasswordAtLoginIdPost(id: string, userCredentialModel?: UserCredentialModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountResetUserPasswordAtLoginIdPost(id: string, userCredentialModel?: UserCredentialModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAccountResetUserPasswordAtLoginIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/ResetUserPasswordAtLogin/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userCredentialModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountSigninCompleteIdPut(id: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountSigninCompleteIdPut(id: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountSigninCompleteIdPut(id: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountSigninCompleteIdPut(id: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAccountSigninCompleteIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/SigninComplete/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountStatusCacheOrganizationMnemonicDelete(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountStatusCacheOrganizationMnemonicDelete(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountStatusCacheOrganizationMnemonicDelete(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountStatusCacheOrganizationMnemonicDelete(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAccountStatusCacheOrganizationMnemonicDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/StatusCache/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param method \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountTriggerChallengeIdMethodGet(id: string, method: AuthenticationMethod, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountTriggerChallengeIdMethodGet(id: string, method: AuthenticationMethod, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountTriggerChallengeIdMethodGet(id: string, method: AuthenticationMethod, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountTriggerChallengeIdMethodGet(id: string, method: AuthenticationMethod, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAccountTriggerChallengeIdMethodGet.');\n }\n if (method === null || method === undefined) {\n throw new Error('Required parameter method was null or undefined when calling apiAccountTriggerChallengeIdMethodGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/TriggerChallenge/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"method\", value: method, in: \"path\", style: \"simple\", explode: false, dataType: \"AuthenticationMethod\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organization \n * @param user \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountTriggerPasswordResetPushOrganizationUserGet(organization: string, user: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountTriggerPasswordResetPushOrganizationUserGet(organization: string, user: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountTriggerPasswordResetPushOrganizationUserGet(organization: string, user: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountTriggerPasswordResetPushOrganizationUserGet(organization: string, user: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organization === null || organization === undefined) {\n throw new Error('Required parameter organization was null or undefined when calling apiAccountTriggerPasswordResetPushOrganizationUserGet.');\n }\n if (user === null || user === undefined) {\n throw new Error('Required parameter user was null or undefined when calling apiAccountTriggerPasswordResetPushOrganizationUserGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/TriggerPasswordResetPush/${this.configuration.encodeParam({name: \"organization\", value: organization, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"user\", value: user, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param loginModelWithAssertion \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountUsernamelessLoginPost(loginModelWithAssertion?: LoginModelWithAssertion, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountUsernamelessLoginPost(loginModelWithAssertion?: LoginModelWithAssertion, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountUsernamelessLoginPost(loginModelWithAssertion?: LoginModelWithAssertion, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountUsernamelessLoginPost(loginModelWithAssertion?: LoginModelWithAssertion, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/UsernamelessLogin`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: loginModelWithAssertion,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param mnemonics \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountValidateUrlForWLAMnemonicsGet(mnemonics: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountValidateUrlForWLAMnemonicsGet(mnemonics: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountValidateUrlForWLAMnemonicsGet(mnemonics: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountValidateUrlForWLAMnemonicsGet(mnemonics: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (mnemonics === null || mnemonics === undefined) {\n throw new Error('Required parameter mnemonics was null or undefined when calling apiAccountValidateUrlForWLAMnemonicsGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/ValidateUrlForWLA/${this.configuration.encodeParam({name: \"mnemonics\", value: mnemonics, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param mnemonics \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountValidateUrlMnemonicsGet(mnemonics: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountValidateUrlMnemonicsGet(mnemonics: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountValidateUrlMnemonicsGet(mnemonics: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountValidateUrlMnemonicsGet(mnemonics: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (mnemonics === null || mnemonics === undefined) {\n throw new Error('Required parameter mnemonics was null or undefined when calling apiAccountValidateUrlMnemonicsGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/ValidateUrl/${this.configuration.encodeParam({name: \"mnemonics\", value: mnemonics, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param username \n * @param userQuestionSecretAnswerModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountVerifyQuestionSecretOrganizationMnemonicUsernamePost(organizationMnemonic: string, username: string, userQuestionSecretAnswerModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountVerifyQuestionSecretOrganizationMnemonicUsernamePost(organizationMnemonic: string, username: string, userQuestionSecretAnswerModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountVerifyQuestionSecretOrganizationMnemonicUsernamePost(organizationMnemonic: string, username: string, userQuestionSecretAnswerModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountVerifyQuestionSecretOrganizationMnemonicUsernamePost(organizationMnemonic: string, username: string, userQuestionSecretAnswerModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAccountVerifyQuestionSecretOrganizationMnemonicUsernamePost.');\n }\n if (username === null || username === undefined) {\n throw new Error('Required parameter username was null or undefined when calling apiAccountVerifyQuestionSecretOrganizationMnemonicUsernamePost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/VerifyQuestionSecret/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"username\", value: username, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userQuestionSecretAnswerModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param userGroupValidationModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountVerifyUserGroupIdPost(id: string, userGroupValidationModel?: UserGroupValidationModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountVerifyUserGroupIdPost(id: string, userGroupValidationModel?: UserGroupValidationModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountVerifyUserGroupIdPost(id: string, userGroupValidationModel?: UserGroupValidationModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountVerifyUserGroupIdPost(id: string, userGroupValidationModel?: UserGroupValidationModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAccountVerifyUserGroupIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/VerifyUserGroup/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userGroupValidationModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param username \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountWLAGetSettingbyUserOrganizationMnemonicUsernameGet(organizationMnemonic: string, username: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountWLAGetSettingbyUserOrganizationMnemonicUsernameGet(organizationMnemonic: string, username: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountWLAGetSettingbyUserOrganizationMnemonicUsernameGet(organizationMnemonic: string, username: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountWLAGetSettingbyUserOrganizationMnemonicUsernameGet(organizationMnemonic: string, username: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAccountWLAGetSettingbyUserOrganizationMnemonicUsernameGet.');\n }\n if (username === null || username === undefined) {\n throw new Error('Required parameter username was null or undefined when calling apiAccountWLAGetSettingbyUserOrganizationMnemonicUsernameGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/WLAGetSettingbyUser/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"username\", value: username, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountWLAGetUserLoginDetailsIdGet(id: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountWLAGetUserLoginDetailsIdGet(id: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountWLAGetUserLoginDetailsIdGet(id: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountWLAGetUserLoginDetailsIdGet(id: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAccountWLAGetUserLoginDetailsIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/WLAGetUserLoginDetails/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param username \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountWLAGetUserQuestionsOrganizationMnemonicUsernameGet(organizationMnemonic: string, username: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountWLAGetUserQuestionsOrganizationMnemonicUsernameGet(organizationMnemonic: string, username: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountWLAGetUserQuestionsOrganizationMnemonicUsernameGet(organizationMnemonic: string, username: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountWLAGetUserQuestionsOrganizationMnemonicUsernameGet(organizationMnemonic: string, username: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAccountWLAGetUserQuestionsOrganizationMnemonicUsernameGet.');\n }\n if (username === null || username === undefined) {\n throw new Error('Required parameter username was null or undefined when calling apiAccountWLAGetUserQuestionsOrganizationMnemonicUsernameGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/WLAGetUserQuestions/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"username\", value: username, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param wLALoginModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountWLAIs2FANeededPost(wLALoginModel?: WLALoginModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountWLAIs2FANeededPost(wLALoginModel?: WLALoginModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountWLAIs2FANeededPost(wLALoginModel?: WLALoginModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountWLAIs2FANeededPost(wLALoginModel?: WLALoginModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/WLAIs2FANeeded`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: wLALoginModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param loginModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountWLALoginWithUserNamePost(loginModel?: LoginModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountWLALoginWithUserNamePost(loginModel?: LoginModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountWLALoginWithUserNamePost(loginModel?: LoginModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountWLALoginWithUserNamePost(loginModel?: LoginModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/WLALoginWithUserName`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: loginModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param wlaSettingsModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountWLASettingsPost(wlaSettingsModel?: WlaSettingsModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountWLASettingsPost(wlaSettingsModel?: WlaSettingsModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountWLASettingsPost(wlaSettingsModel?: WlaSettingsModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountWLASettingsPost(wlaSettingsModel?: WlaSettingsModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/WLASettings`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: wlaSettingsModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param skipPasswordSecret \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountWLASkipPasswordIdPost(id: string, skipPasswordSecret?: SkipPasswordSecret, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountWLASkipPasswordIdPost(id: string, skipPasswordSecret?: SkipPasswordSecret, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountWLASkipPasswordIdPost(id: string, skipPasswordSecret?: SkipPasswordSecret, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountWLASkipPasswordIdPost(id: string, skipPasswordSecret?: SkipPasswordSecret, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAccountWLASkipPasswordIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/WLASkipPassword/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: skipPasswordSecret,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param mnemonics \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountWLAValidateUrlMnemonicsGet(mnemonics: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountWLAValidateUrlMnemonicsGet(mnemonics: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountWLAValidateUrlMnemonicsGet(mnemonics: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountWLAValidateUrlMnemonicsGet(mnemonics: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (mnemonics === null || mnemonics === undefined) {\n throw new Error('Required parameter mnemonics was null or undefined when calling apiAccountWLAValidateUrlMnemonicsGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/WLAValidateUrl/${this.configuration.encodeParam({name: \"mnemonics\", value: mnemonics, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param username \n * @param userQuestionSecretAnswerModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAccountWLAVerifyQuestionSecretOrganizationMnemonicUsernamePost(organizationMnemonic: string, username: string, userQuestionSecretAnswerModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAccountWLAVerifyQuestionSecretOrganizationMnemonicUsernamePost(organizationMnemonic: string, username: string, userQuestionSecretAnswerModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountWLAVerifyQuestionSecretOrganizationMnemonicUsernamePost(organizationMnemonic: string, username: string, userQuestionSecretAnswerModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAccountWLAVerifyQuestionSecretOrganizationMnemonicUsernamePost(organizationMnemonic: string, username: string, userQuestionSecretAnswerModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAccountWLAVerifyQuestionSecretOrganizationMnemonicUsernamePost.');\n }\n if (username === null || username === undefined) {\n throw new Error('Required parameter username was null or undefined when calling apiAccountWLAVerifyQuestionSecretOrganizationMnemonicUsernamePost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Account/WLAVerifyQuestionSecret/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"username\", value: username, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userQuestionSecretAnswerModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","export * from './account.service';\nimport { AccountService } from './account.service';\nexport * from './authenticationType.service';\nimport { AuthenticationTypeService } from './authenticationType.service';\nexport * from './certificate.service';\nimport { CertificateService } from './certificate.service';\nexport * from './credentialReset.service';\nimport { CredentialResetService } from './credentialReset.service';\nexport * from './hardwareToken.service';\nimport { HardwareTokenService } from './hardwareToken.service';\nexport * from './legacySecurEnvoyApp.service';\nimport { LegacySecurEnvoyAppService } from './legacySecurEnvoyApp.service';\nexport * from './loginHistory.service';\nimport { LoginHistoryService } from './loginHistory.service';\nexport * from './questionSecretAnswer.service';\nimport { QuestionSecretAnswerService } from './questionSecretAnswer.service';\nexport * from './redirect.service';\nimport { RedirectService } from './redirect.service';\nexport * from './settings.service';\nimport { SettingsService } from './settings.service';\nexport * from './tenantCleanup.service';\nimport { TenantCleanupService } from './tenantCleanup.service';\nexport * from './userAuthCredential.service';\nimport { UserAuthCredentialService } from './userAuthCredential.service';\nexport * from './userCredential.service';\nimport { UserCredentialService } from './userCredential.service';\nexport * from './userSession.service';\nimport { UserSessionService } from './userSession.service';\nexport * from './userToken.service';\nimport { UserTokenService } from './userToken.service';\nexport * from './version.service';\nimport { VersionService } from './version.service';\nexport const APIS = [AccountService, AuthenticationTypeService, CertificateService, CredentialResetService, HardwareTokenService, LegacySecurEnvoyAppService, LoginHistoryService, QuestionSecretAnswerService, RedirectService, SettingsService, TenantCleanupService, UserAuthCredentialService, UserCredentialService, UserSessionService, UserTokenService, VersionService];\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { AuthenticationTypeModel } from '../model/authenticationTypeModel';\n// @ts-ignore\nimport { ImportAuthenticationTypeModel } from '../model/importAuthenticationTypeModel';\n// @ts-ignore\nimport { UserCheckEnrollCodeModel } from '../model/userCheckEnrollCodeModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AuthenticationTypeService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationMnemonic \n * @param authenticationTypeModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationTypeDisableOrganizationUserEnrollmentsOrganizationMnemonicPost(organizationMnemonic: string, authenticationTypeModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationTypeDisableOrganizationUserEnrollmentsOrganizationMnemonicPost(organizationMnemonic: string, authenticationTypeModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeDisableOrganizationUserEnrollmentsOrganizationMnemonicPost(organizationMnemonic: string, authenticationTypeModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeDisableOrganizationUserEnrollmentsOrganizationMnemonicPost(organizationMnemonic: string, authenticationTypeModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAuthenticationTypeDisableOrganizationUserEnrollmentsOrganizationMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationType/disableOrganizationUserEnrollments/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: authenticationTypeModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param userName \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationTypeFidoAssertionOptionsOrganizationMnemonicUserNameGet(organizationMnemonic: string, userName: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationTypeFidoAssertionOptionsOrganizationMnemonicUserNameGet(organizationMnemonic: string, userName: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeFidoAssertionOptionsOrganizationMnemonicUserNameGet(organizationMnemonic: string, userName: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeFidoAssertionOptionsOrganizationMnemonicUserNameGet(organizationMnemonic: string, userName: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAuthenticationTypeFidoAssertionOptionsOrganizationMnemonicUserNameGet.');\n }\n if (userName === null || userName === undefined) {\n throw new Error('Required parameter userName was null or undefined when calling apiAuthenticationTypeFidoAssertionOptionsOrganizationMnemonicUserNameGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationType/FidoAssertionOptions/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"userName\", value: userName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param userName \n * @param residentKey \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationTypeFidoCredentialOptionsOrganizationMnemonicUserNameGet(organizationMnemonic: string, userName: string, residentKey?: boolean, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationTypeFidoCredentialOptionsOrganizationMnemonicUserNameGet(organizationMnemonic: string, userName: string, residentKey?: boolean, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeFidoCredentialOptionsOrganizationMnemonicUserNameGet(organizationMnemonic: string, userName: string, residentKey?: boolean, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeFidoCredentialOptionsOrganizationMnemonicUserNameGet(organizationMnemonic: string, userName: string, residentKey?: boolean, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAuthenticationTypeFidoCredentialOptionsOrganizationMnemonicUserNameGet.');\n }\n if (userName === null || userName === undefined) {\n throw new Error('Required parameter userName was null or undefined when calling apiAuthenticationTypeFidoCredentialOptionsOrganizationMnemonicUserNameGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (residentKey !== undefined && residentKey !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n residentKey, 'residentKey');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationType/FidoCredentialOptions/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"userName\", value: userName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param sessionId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationTypeFidoUsernamelessAssertionOptionsOrganizationMnemonicSessionIdGet(organizationMnemonic: string, sessionId: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationTypeFidoUsernamelessAssertionOptionsOrganizationMnemonicSessionIdGet(organizationMnemonic: string, sessionId: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeFidoUsernamelessAssertionOptionsOrganizationMnemonicSessionIdGet(organizationMnemonic: string, sessionId: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeFidoUsernamelessAssertionOptionsOrganizationMnemonicSessionIdGet(organizationMnemonic: string, sessionId: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAuthenticationTypeFidoUsernamelessAssertionOptionsOrganizationMnemonicSessionIdGet.');\n }\n if (sessionId === null || sessionId === undefined) {\n throw new Error('Required parameter sessionId was null or undefined when calling apiAuthenticationTypeFidoUsernamelessAssertionOptionsOrganizationMnemonicSessionIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationType/FidoUsernamelessAssertionOptions/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"sessionId\", value: sessionId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param isSoftTokenOnly \n * @param isGenericToken \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationTypeGetUserSeedUrlGet(isSoftTokenOnly?: boolean, isGenericToken?: boolean, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationTypeGetUserSeedUrlGet(isSoftTokenOnly?: boolean, isGenericToken?: boolean, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeGetUserSeedUrlGet(isSoftTokenOnly?: boolean, isGenericToken?: boolean, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeGetUserSeedUrlGet(isSoftTokenOnly?: boolean, isGenericToken?: boolean, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (isSoftTokenOnly !== undefined && isSoftTokenOnly !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n isSoftTokenOnly, 'isSoftTokenOnly');\n }\n if (isGenericToken !== undefined && isGenericToken !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n isGenericToken, 'isGenericToken');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationType/getUserSeedUrl`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgMnemonic \n * @param requestBody \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationTypeGetallUserAuthenticationTypeByUserNameOrgMnemonicPost(orgMnemonic: string, requestBody?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationTypeGetallUserAuthenticationTypeByUserNameOrgMnemonicPost(orgMnemonic: string, requestBody?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeGetallUserAuthenticationTypeByUserNameOrgMnemonicPost(orgMnemonic: string, requestBody?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeGetallUserAuthenticationTypeByUserNameOrgMnemonicPost(orgMnemonic: string, requestBody?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgMnemonic === null || orgMnemonic === undefined) {\n throw new Error('Required parameter orgMnemonic was null or undefined when calling apiAuthenticationTypeGetallUserAuthenticationTypeByUserNameOrgMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationType/getallUserAuthenticationTypeByUserName/${this.configuration.encodeParam({name: \"orgMnemonic\", value: orgMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: requestBody,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationTypeGetallUserAuthenticationTypeGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationTypeGetallUserAuthenticationTypeGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeGetallUserAuthenticationTypeGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeGetallUserAuthenticationTypeGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationType/getallUserAuthenticationType`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userName \n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationTypeGetallUserAuthenticationTypeUserNameGet(userName: string, organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationTypeGetallUserAuthenticationTypeUserNameGet(userName: string, organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeGetallUserAuthenticationTypeUserNameGet(userName: string, organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeGetallUserAuthenticationTypeUserNameGet(userName: string, organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userName === null || userName === undefined) {\n throw new Error('Required parameter userName was null or undefined when calling apiAuthenticationTypeGetallUserAuthenticationTypeUserNameGet.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAuthenticationTypeGetallUserAuthenticationTypeUserNameGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationType/getallUserAuthenticationType/${this.configuration.encodeParam({name: \"userName\", value: userName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userName \n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationTypeGetallUserAuthenticationTypeUserNameOrganizationMnemonicGet(userName: string, organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationTypeGetallUserAuthenticationTypeUserNameOrganizationMnemonicGet(userName: string, organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeGetallUserAuthenticationTypeUserNameOrganizationMnemonicGet(userName: string, organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeGetallUserAuthenticationTypeUserNameOrganizationMnemonicGet(userName: string, organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userName === null || userName === undefined) {\n throw new Error('Required parameter userName was null or undefined when calling apiAuthenticationTypeGetallUserAuthenticationTypeUserNameOrganizationMnemonicGet.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAuthenticationTypeGetallUserAuthenticationTypeUserNameOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationType/getallUserAuthenticationType/${this.configuration.encodeParam({name: \"userName\", value: userName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param userName \n * @param body \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationTypeIdentifyTokenOrganizationMnemonicUserNamePost(organizationMnemonic: string, userName: string, body?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationTypeIdentifyTokenOrganizationMnemonicUserNamePost(organizationMnemonic: string, userName: string, body?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeIdentifyTokenOrganizationMnemonicUserNamePost(organizationMnemonic: string, userName: string, body?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeIdentifyTokenOrganizationMnemonicUserNamePost(organizationMnemonic: string, userName: string, body?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAuthenticationTypeIdentifyTokenOrganizationMnemonicUserNamePost.');\n }\n if (userName === null || userName === undefined) {\n throw new Error('Required parameter userName was null or undefined when calling apiAuthenticationTypeIdentifyTokenOrganizationMnemonicUserNamePost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationType/IdentifyToken/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"userName\", value: userName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: body,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param importAuthenticationTypeModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationTypeImportAuthTypesOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, importAuthenticationTypeModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationTypeImportAuthTypesOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, importAuthenticationTypeModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeImportAuthTypesOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, importAuthenticationTypeModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeImportAuthTypesOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, importAuthenticationTypeModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAuthenticationTypeImportAuthTypesOrganizationIdOrganizationMnemonicPost.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAuthenticationTypeImportAuthTypesOrganizationIdOrganizationMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationType/importAuthTypes/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: importAuthenticationTypeModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param importAuthenticationTypeModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationTypeImportAuthTypesPost(organizationId: number, organizationMnemonic: string, importAuthenticationTypeModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationTypeImportAuthTypesPost(organizationId: number, organizationMnemonic: string, importAuthenticationTypeModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeImportAuthTypesPost(organizationId: number, organizationMnemonic: string, importAuthenticationTypeModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeImportAuthTypesPost(organizationId: number, organizationMnemonic: string, importAuthenticationTypeModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAuthenticationTypeImportAuthTypesPost.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAuthenticationTypeImportAuthTypesPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationType/importAuthTypes`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: importAuthenticationTypeModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param authenticationTypeModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationTypeInactiveAuthenticationTypePost(authenticationTypeModel?: AuthenticationTypeModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationTypeInactiveAuthenticationTypePost(authenticationTypeModel?: AuthenticationTypeModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeInactiveAuthenticationTypePost(authenticationTypeModel?: AuthenticationTypeModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeInactiveAuthenticationTypePost(authenticationTypeModel?: AuthenticationTypeModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationType/inactiveAuthenticationType`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: authenticationTypeModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationTypeInactiveUser2ndFactorGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationTypeInactiveUser2ndFactorGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeInactiveUser2ndFactorGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeInactiveUser2ndFactorGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationType/inactiveUser2ndFactor`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userName \n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationTypeInactiveUser2ndFactorUserNameGet(userName: string, organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationTypeInactiveUser2ndFactorUserNameGet(userName: string, organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeInactiveUser2ndFactorUserNameGet(userName: string, organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeInactiveUser2ndFactorUserNameGet(userName: string, organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userName === null || userName === undefined) {\n throw new Error('Required parameter userName was null or undefined when calling apiAuthenticationTypeInactiveUser2ndFactorUserNameGet.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAuthenticationTypeInactiveUser2ndFactorUserNameGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationType/inactiveUser2ndFactor/${this.configuration.encodeParam({name: \"userName\", value: userName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userName \n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationTypeInactiveUser2ndFactorUserNameOrganizationMnemonicGet(userName: string, organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationTypeInactiveUser2ndFactorUserNameOrganizationMnemonicGet(userName: string, organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeInactiveUser2ndFactorUserNameOrganizationMnemonicGet(userName: string, organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeInactiveUser2ndFactorUserNameOrganizationMnemonicGet(userName: string, organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userName === null || userName === undefined) {\n throw new Error('Required parameter userName was null or undefined when calling apiAuthenticationTypeInactiveUser2ndFactorUserNameOrganizationMnemonicGet.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAuthenticationTypeInactiveUser2ndFactorUserNameOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationType/inactiveUser2ndFactor/${this.configuration.encodeParam({name: \"userName\", value: userName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param authenticationTypeModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationTypeIsExistsOrganizationAuthTypeEnrollmentsPost(authenticationTypeModel?: AuthenticationTypeModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationTypeIsExistsOrganizationAuthTypeEnrollmentsPost(authenticationTypeModel?: AuthenticationTypeModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeIsExistsOrganizationAuthTypeEnrollmentsPost(authenticationTypeModel?: AuthenticationTypeModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeIsExistsOrganizationAuthTypeEnrollmentsPost(authenticationTypeModel?: AuthenticationTypeModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationType/isExistsOrganizationAuthTypeEnrollments`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: authenticationTypeModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationTypeIsSecondFactorEnableForOrganizationGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationTypeIsSecondFactorEnableForOrganizationGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeIsSecondFactorEnableForOrganizationGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeIsSecondFactorEnableForOrganizationGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAuthenticationTypeIsSecondFactorEnableForOrganizationGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationType/IsSecondFactorEnableForOrganization`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationTypeIsSecondFactorEnableForOrganizationOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationTypeIsSecondFactorEnableForOrganizationOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeIsSecondFactorEnableForOrganizationOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeIsSecondFactorEnableForOrganizationOrganizationMnemonicGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAuthenticationTypeIsSecondFactorEnableForOrganizationOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationType/IsSecondFactorEnableForOrganization/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param authenticationTypeModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationTypeRemoveOrganizationAuthTypeEnrollmentsDelete(authenticationTypeModel?: AuthenticationTypeModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationTypeRemoveOrganizationAuthTypeEnrollmentsDelete(authenticationTypeModel?: AuthenticationTypeModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeRemoveOrganizationAuthTypeEnrollmentsDelete(authenticationTypeModel?: AuthenticationTypeModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeRemoveOrganizationAuthTypeEnrollmentsDelete(authenticationTypeModel?: AuthenticationTypeModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationType/removeOrganizationAuthTypeEnrollments`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: authenticationTypeModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param authenticationTypeModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationTypeSaveOrUpdateUserAuthenticationTypeForUserOrganizationMnemonicPost(organizationMnemonic: string, authenticationTypeModel?: AuthenticationTypeModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationTypeSaveOrUpdateUserAuthenticationTypeForUserOrganizationMnemonicPost(organizationMnemonic: string, authenticationTypeModel?: AuthenticationTypeModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeSaveOrUpdateUserAuthenticationTypeForUserOrganizationMnemonicPost(organizationMnemonic: string, authenticationTypeModel?: AuthenticationTypeModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeSaveOrUpdateUserAuthenticationTypeForUserOrganizationMnemonicPost(organizationMnemonic: string, authenticationTypeModel?: AuthenticationTypeModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAuthenticationTypeSaveOrUpdateUserAuthenticationTypeForUserOrganizationMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationType/saveOrUpdateUserAuthenticationTypeForUser/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: authenticationTypeModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param authenticationTypeModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationTypeSaveOrUpdateUserAuthenticationTypeForUserPost(organizationMnemonic: string, authenticationTypeModel?: AuthenticationTypeModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationTypeSaveOrUpdateUserAuthenticationTypeForUserPost(organizationMnemonic: string, authenticationTypeModel?: AuthenticationTypeModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeSaveOrUpdateUserAuthenticationTypeForUserPost(organizationMnemonic: string, authenticationTypeModel?: AuthenticationTypeModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeSaveOrUpdateUserAuthenticationTypeForUserPost(organizationMnemonic: string, authenticationTypeModel?: AuthenticationTypeModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAuthenticationTypeSaveOrUpdateUserAuthenticationTypeForUserPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationType/saveOrUpdateUserAuthenticationTypeForUser`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: authenticationTypeModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param authenticationTypeModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationTypeSaveOrUpdateUserAuthenticationTypePost(authenticationTypeModel?: AuthenticationTypeModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationTypeSaveOrUpdateUserAuthenticationTypePost(authenticationTypeModel?: AuthenticationTypeModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeSaveOrUpdateUserAuthenticationTypePost(authenticationTypeModel?: AuthenticationTypeModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeSaveOrUpdateUserAuthenticationTypePost(authenticationTypeModel?: AuthenticationTypeModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationType/saveOrUpdateUserAuthenticationType`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: authenticationTypeModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userCheckEnrollCodeModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationTypeUserCheckEnrollCodePost(userCheckEnrollCodeModel?: UserCheckEnrollCodeModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationTypeUserCheckEnrollCodePost(userCheckEnrollCodeModel?: UserCheckEnrollCodeModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeUserCheckEnrollCodePost(userCheckEnrollCodeModel?: UserCheckEnrollCodeModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeUserCheckEnrollCodePost(userCheckEnrollCodeModel?: UserCheckEnrollCodeModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationType/userCheckEnrollCode`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userCheckEnrollCodeModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param isSoftTokenOnly \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationTypeUserEnrollReadyStatusGet(isSoftTokenOnly?: boolean, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationTypeUserEnrollReadyStatusGet(isSoftTokenOnly?: boolean, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeUserEnrollReadyStatusGet(isSoftTokenOnly?: boolean, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeUserEnrollReadyStatusGet(isSoftTokenOnly?: boolean, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (isSoftTokenOnly !== undefined && isSoftTokenOnly !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n isSoftTokenOnly, 'isSoftTokenOnly');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationType/userEnrollReadyStatus`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param types \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationTypeUsersEnrolledToTypesOrganizationMnemonicGet(organizationMnemonic: string, types?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationTypeUsersEnrolledToTypesOrganizationMnemonicGet(organizationMnemonic: string, types?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeUsersEnrolledToTypesOrganizationMnemonicGet(organizationMnemonic: string, types?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeUsersEnrolledToTypesOrganizationMnemonicGet(organizationMnemonic: string, types?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAuthenticationTypeUsersEnrolledToTypesOrganizationMnemonicGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (types) {\n types.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'types');\n })\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationType/UsersEnrolledToTypes/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param userName \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAuthenticationTypeWLAFidoAssertionOptionsOrganizationMnemonicUserNameGet(organizationMnemonic: string, userName: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAuthenticationTypeWLAFidoAssertionOptionsOrganizationMnemonicUserNameGet(organizationMnemonic: string, userName: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeWLAFidoAssertionOptionsOrganizationMnemonicUserNameGet(organizationMnemonic: string, userName: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAuthenticationTypeWLAFidoAssertionOptionsOrganizationMnemonicUserNameGet(organizationMnemonic: string, userName: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAuthenticationTypeWLAFidoAssertionOptionsOrganizationMnemonicUserNameGet.');\n }\n if (userName === null || userName === undefined) {\n throw new Error('Required parameter userName was null or undefined when calling apiAuthenticationTypeWLAFidoAssertionOptionsOrganizationMnemonicUserNameGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AuthenticationType/WLAFidoAssertionOptions/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"userName\", value: userName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CertificateService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiCertificateSigningcertGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiCertificateSigningcertGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiCertificateSigningcertGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiCertificateSigningcertGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Certificate/signingcert`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param noLineBreaks \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiCertificateSigningcertstringGet(noLineBreaks?: boolean, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiCertificateSigningcertstringGet(noLineBreaks?: boolean, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiCertificateSigningcertstringGet(noLineBreaks?: boolean, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiCertificateSigningcertstringGet(noLineBreaks?: boolean, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (noLineBreaks !== undefined && noLineBreaks !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n noLineBreaks, 'noLineBreaks');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Certificate/signingcertstring`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { CredentialResetSettingsViewModel } from '../model/credentialResetSettingsViewModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CredentialResetService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiCredentialResetOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public apiCredentialResetOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiCredentialResetOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiCredentialResetOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiCredentialResetOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/CredentialReset/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param credentialResetSettingsViewModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiCredentialResetOrganizationIdPost(organizationId: number, credentialResetSettingsViewModel?: CredentialResetSettingsViewModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public apiCredentialResetOrganizationIdPost(organizationId: number, credentialResetSettingsViewModel?: CredentialResetSettingsViewModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiCredentialResetOrganizationIdPost(organizationId: number, credentialResetSettingsViewModel?: CredentialResetSettingsViewModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiCredentialResetOrganizationIdPost(organizationId: number, credentialResetSettingsViewModel?: CredentialResetSettingsViewModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiCredentialResetOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/CredentialReset/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: credentialResetSettingsViewModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { HardwareTokenModel } from '../model/hardwareTokenModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class HardwareTokenService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiHardwareTokenAllGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiHardwareTokenAllGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenAllGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenAllGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiHardwareTokenAllGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/HardwareToken/all`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiHardwareTokenAllOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiHardwareTokenAllOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenAllOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenAllOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiHardwareTokenAllOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/HardwareToken/all/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param assignedTo \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiHardwareTokenGetByUsernameAndUnAssignedGet(organizationId: number, assignedTo?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiHardwareTokenGetByUsernameAndUnAssignedGet(organizationId: number, assignedTo?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenGetByUsernameAndUnAssignedGet(organizationId: number, assignedTo?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenGetByUsernameAndUnAssignedGet(organizationId: number, assignedTo?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiHardwareTokenGetByUsernameAndUnAssignedGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (assignedTo !== undefined && assignedTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n assignedTo, 'assignedTo');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/HardwareToken/getByUsernameAndUnAssigned`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param assignedTo \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiHardwareTokenGetByUsernameAndUnAssignedOrganizationIdGet(organizationId: number, assignedTo?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiHardwareTokenGetByUsernameAndUnAssignedOrganizationIdGet(organizationId: number, assignedTo?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenGetByUsernameAndUnAssignedOrganizationIdGet(organizationId: number, assignedTo?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenGetByUsernameAndUnAssignedOrganizationIdGet(organizationId: number, assignedTo?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiHardwareTokenGetByUsernameAndUnAssignedOrganizationIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (assignedTo !== undefined && assignedTo !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n assignedTo, 'assignedTo');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/HardwareToken/getByUsernameAndUnAssigned/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiHardwareTokenGetByUsernameGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiHardwareTokenGetByUsernameGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenGetByUsernameGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenGetByUsernameGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/HardwareToken/getByUsername`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiHardwareTokenGetPagedHardwareTokensGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiHardwareTokenGetPagedHardwareTokensGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenGetPagedHardwareTokensGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenGetPagedHardwareTokensGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiHardwareTokenGetPagedHardwareTokensGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/HardwareToken/getPagedHardwareTokens`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiHardwareTokenGetPagedHardwareTokensOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiHardwareTokenGetPagedHardwareTokensOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenGetPagedHardwareTokensOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenGetPagedHardwareTokensOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiHardwareTokenGetPagedHardwareTokensOrganizationIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/HardwareToken/getPagedHardwareTokens/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiHardwareTokenGetPropertiesGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiHardwareTokenGetPropertiesGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenGetPropertiesGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenGetPropertiesGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/HardwareToken/getProperties`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiHardwareTokenIdDelete(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiHardwareTokenIdDelete(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenIdDelete(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenIdDelete(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiHardwareTokenIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiHardwareTokenIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/HardwareToken/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int32\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiHardwareTokenIdGet(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiHardwareTokenIdGet(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenIdGet(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenIdGet(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiHardwareTokenIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiHardwareTokenIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/HardwareToken/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiHardwareTokenIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiHardwareTokenIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenIdOrganizationIdDelete(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiHardwareTokenIdOrganizationIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiHardwareTokenIdOrganizationIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/HardwareToken/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int32\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiHardwareTokenIdOrganizationIdGet(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiHardwareTokenIdOrganizationIdGet(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenIdOrganizationIdGet(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenIdOrganizationIdGet(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiHardwareTokenIdOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiHardwareTokenIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/HardwareToken/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param hardwareTokenModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiHardwareTokenOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, hardwareTokenModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiHardwareTokenOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, hardwareTokenModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, hardwareTokenModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, hardwareTokenModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiHardwareTokenOrganizationIdOrganizationMnemonicPost.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiHardwareTokenOrganizationIdOrganizationMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/HardwareToken/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: hardwareTokenModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param hardwareTokenModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiHardwareTokenOrganizationIdPut(organizationId: number, hardwareTokenModel?: HardwareTokenModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiHardwareTokenOrganizationIdPut(organizationId: number, hardwareTokenModel?: HardwareTokenModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenOrganizationIdPut(organizationId: number, hardwareTokenModel?: HardwareTokenModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenOrganizationIdPut(organizationId: number, hardwareTokenModel?: HardwareTokenModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiHardwareTokenOrganizationIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/HardwareToken/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: hardwareTokenModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param hardwareTokenModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiHardwareTokenPost(organizationId: number, organizationMnemonic: string, hardwareTokenModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiHardwareTokenPost(organizationId: number, organizationMnemonic: string, hardwareTokenModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenPost(organizationId: number, organizationMnemonic: string, hardwareTokenModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenPost(organizationId: number, organizationMnemonic: string, hardwareTokenModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiHardwareTokenPost.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiHardwareTokenPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/HardwareToken`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: hardwareTokenModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param hardwareTokenModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiHardwareTokenPut(organizationId: number, hardwareTokenModel?: HardwareTokenModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiHardwareTokenPut(organizationId: number, hardwareTokenModel?: HardwareTokenModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenPut(organizationId: number, hardwareTokenModel?: HardwareTokenModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenPut(organizationId: number, hardwareTokenModel?: HardwareTokenModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiHardwareTokenPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/HardwareToken`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: hardwareTokenModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiHardwareTokenResetIdOrganizationIdOrganizationMnemonicPost(id: number, organizationId: number, organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiHardwareTokenResetIdOrganizationIdOrganizationMnemonicPost(id: number, organizationId: number, organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenResetIdOrganizationIdOrganizationMnemonicPost(id: number, organizationId: number, organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenResetIdOrganizationIdOrganizationMnemonicPost(id: number, organizationId: number, organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiHardwareTokenResetIdOrganizationIdOrganizationMnemonicPost.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiHardwareTokenResetIdOrganizationIdOrganizationMnemonicPost.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiHardwareTokenResetIdOrganizationIdOrganizationMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/HardwareToken/reset/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int32\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiHardwareTokenResetIdPost(id: number, organizationId: number, organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiHardwareTokenResetIdPost(id: number, organizationId: number, organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenResetIdPost(id: number, organizationId: number, organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiHardwareTokenResetIdPost(id: number, organizationId: number, organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiHardwareTokenResetIdPost.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiHardwareTokenResetIdPost.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiHardwareTokenResetIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/HardwareToken/reset/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int32\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LegacySecurEnvoyAppService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public secenrolEnrolExePost(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public secenrolEnrolExePost(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public secenrolEnrolExePost(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public secenrolEnrolExePost(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/secenrol/enrol.exe`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LoginHistoryService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiLoginHistoryGetPagedLoginHistoryCurrentUserGet(sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiLoginHistoryGetPagedLoginHistoryCurrentUserGet(sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLoginHistoryGetPagedLoginHistoryCurrentUserGet(sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLoginHistoryGetPagedLoginHistoryCurrentUserGet(sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/LoginHistory/GetPagedLoginHistoryCurrentUser`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param organizationMnemonic \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiLoginHistoryGetPagedLoginHistoryUserIdGet(userId: number, organizationMnemonic: string, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiLoginHistoryGetPagedLoginHistoryUserIdGet(userId: number, organizationMnemonic: string, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLoginHistoryGetPagedLoginHistoryUserIdGet(userId: number, organizationMnemonic: string, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLoginHistoryGetPagedLoginHistoryUserIdGet(userId: number, organizationMnemonic: string, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiLoginHistoryGetPagedLoginHistoryUserIdGet.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiLoginHistoryGetPagedLoginHistoryUserIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/LoginHistory/GetPagedLoginHistory/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param organizationMnemonic \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiLoginHistoryGetPagedLoginHistoryUserIdOrganizationMnemonicGet(userId: number, organizationMnemonic: string, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiLoginHistoryGetPagedLoginHistoryUserIdOrganizationMnemonicGet(userId: number, organizationMnemonic: string, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLoginHistoryGetPagedLoginHistoryUserIdOrganizationMnemonicGet(userId: number, organizationMnemonic: string, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLoginHistoryGetPagedLoginHistoryUserIdOrganizationMnemonicGet(userId: number, organizationMnemonic: string, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiLoginHistoryGetPagedLoginHistoryUserIdOrganizationMnemonicGet.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiLoginHistoryGetPagedLoginHistoryUserIdOrganizationMnemonicGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/LoginHistory/GetPagedLoginHistory/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { UserQuestionSecretAnswerModel } from '../model/userQuestionSecretAnswerModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class QuestionSecretAnswerService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiQuestionSecretAnswerGetAssignedQuestionIdsGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiQuestionSecretAnswerGetAssignedQuestionIdsGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiQuestionSecretAnswerGetAssignedQuestionIdsGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiQuestionSecretAnswerGetAssignedQuestionIdsGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiQuestionSecretAnswerGetAssignedQuestionIdsGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/QuestionSecretAnswer/GetAssignedQuestionIds`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiQuestionSecretAnswerGetAssignedQuestionIdsOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiQuestionSecretAnswerGetAssignedQuestionIdsOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiQuestionSecretAnswerGetAssignedQuestionIdsOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiQuestionSecretAnswerGetAssignedQuestionIdsOrganizationMnemonicGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiQuestionSecretAnswerGetAssignedQuestionIdsOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/QuestionSecretAnswer/GetAssignedQuestionIds/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param username \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiQuestionSecretAnswerGetUserAnswersGet(organizationMnemonic: string, username: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiQuestionSecretAnswerGetUserAnswersGet(organizationMnemonic: string, username: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiQuestionSecretAnswerGetUserAnswersGet(organizationMnemonic: string, username: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiQuestionSecretAnswerGetUserAnswersGet(organizationMnemonic: string, username: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiQuestionSecretAnswerGetUserAnswersGet.');\n }\n if (username === null || username === undefined) {\n throw new Error('Required parameter username was null or undefined when calling apiQuestionSecretAnswerGetUserAnswersGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/QuestionSecretAnswer/GetUserAnswers`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param username \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiQuestionSecretAnswerGetUserAnswersOrganizationMnemonicUsernameGet(organizationMnemonic: string, username: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiQuestionSecretAnswerGetUserAnswersOrganizationMnemonicUsernameGet(organizationMnemonic: string, username: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiQuestionSecretAnswerGetUserAnswersOrganizationMnemonicUsernameGet(organizationMnemonic: string, username: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiQuestionSecretAnswerGetUserAnswersOrganizationMnemonicUsernameGet(organizationMnemonic: string, username: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiQuestionSecretAnswerGetUserAnswersOrganizationMnemonicUsernameGet.');\n }\n if (username === null || username === undefined) {\n throw new Error('Required parameter username was null or undefined when calling apiQuestionSecretAnswerGetUserAnswersOrganizationMnemonicUsernameGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/QuestionSecretAnswer/GetUserAnswers/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"username\", value: username, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param username \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiQuestionSecretAnswerGetUserQuestionsGet(organizationMnemonic: string, username: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiQuestionSecretAnswerGetUserQuestionsGet(organizationMnemonic: string, username: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiQuestionSecretAnswerGetUserQuestionsGet(organizationMnemonic: string, username: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiQuestionSecretAnswerGetUserQuestionsGet(organizationMnemonic: string, username: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiQuestionSecretAnswerGetUserQuestionsGet.');\n }\n if (username === null || username === undefined) {\n throw new Error('Required parameter username was null or undefined when calling apiQuestionSecretAnswerGetUserQuestionsGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/QuestionSecretAnswer/GetUserQuestions`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param username \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiQuestionSecretAnswerGetUserQuestionsOrganizationMnemonicUsernameGet(organizationMnemonic: string, username: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiQuestionSecretAnswerGetUserQuestionsOrganizationMnemonicUsernameGet(organizationMnemonic: string, username: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiQuestionSecretAnswerGetUserQuestionsOrganizationMnemonicUsernameGet(organizationMnemonic: string, username: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiQuestionSecretAnswerGetUserQuestionsOrganizationMnemonicUsernameGet(organizationMnemonic: string, username: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiQuestionSecretAnswerGetUserQuestionsOrganizationMnemonicUsernameGet.');\n }\n if (username === null || username === undefined) {\n throw new Error('Required parameter username was null or undefined when calling apiQuestionSecretAnswerGetUserQuestionsOrganizationMnemonicUsernameGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/QuestionSecretAnswer/GetUserQuestions/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"username\", value: username, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiQuestionSecretAnswerImportUserQuestionSecretAnswerOrganizationMnemonicPost(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiQuestionSecretAnswerImportUserQuestionSecretAnswerOrganizationMnemonicPost(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiQuestionSecretAnswerImportUserQuestionSecretAnswerOrganizationMnemonicPost(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiQuestionSecretAnswerImportUserQuestionSecretAnswerOrganizationMnemonicPost(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiQuestionSecretAnswerImportUserQuestionSecretAnswerOrganizationMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/QuestionSecretAnswer/ImportUserQuestionSecretAnswer/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiQuestionSecretAnswerImportUserQuestionSecretAnswerPost(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiQuestionSecretAnswerImportUserQuestionSecretAnswerPost(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiQuestionSecretAnswerImportUserQuestionSecretAnswerPost(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiQuestionSecretAnswerImportUserQuestionSecretAnswerPost(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiQuestionSecretAnswerImportUserQuestionSecretAnswerPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/QuestionSecretAnswer/ImportUserQuestionSecretAnswer`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param username \n * @param userQuestionSecretAnswerModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiQuestionSecretAnswerSaveUserQuestionSecretAnswerOrganizationMnemonicUsernamePost(organizationMnemonic: string, username: string, userQuestionSecretAnswerModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiQuestionSecretAnswerSaveUserQuestionSecretAnswerOrganizationMnemonicUsernamePost(organizationMnemonic: string, username: string, userQuestionSecretAnswerModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiQuestionSecretAnswerSaveUserQuestionSecretAnswerOrganizationMnemonicUsernamePost(organizationMnemonic: string, username: string, userQuestionSecretAnswerModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiQuestionSecretAnswerSaveUserQuestionSecretAnswerOrganizationMnemonicUsernamePost(organizationMnemonic: string, username: string, userQuestionSecretAnswerModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiQuestionSecretAnswerSaveUserQuestionSecretAnswerOrganizationMnemonicUsernamePost.');\n }\n if (username === null || username === undefined) {\n throw new Error('Required parameter username was null or undefined when calling apiQuestionSecretAnswerSaveUserQuestionSecretAnswerOrganizationMnemonicUsernamePost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/QuestionSecretAnswer/SaveUserQuestionSecretAnswer/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"username\", value: username, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userQuestionSecretAnswerModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param username \n * @param userQuestionSecretAnswerModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiQuestionSecretAnswerSaveUserQuestionSecretAnswerPost(organizationMnemonic: string, username: string, userQuestionSecretAnswerModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiQuestionSecretAnswerSaveUserQuestionSecretAnswerPost(organizationMnemonic: string, username: string, userQuestionSecretAnswerModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiQuestionSecretAnswerSaveUserQuestionSecretAnswerPost(organizationMnemonic: string, username: string, userQuestionSecretAnswerModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiQuestionSecretAnswerSaveUserQuestionSecretAnswerPost(organizationMnemonic: string, username: string, userQuestionSecretAnswerModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiQuestionSecretAnswerSaveUserQuestionSecretAnswerPost.');\n }\n if (username === null || username === undefined) {\n throw new Error('Required parameter username was null or undefined when calling apiQuestionSecretAnswerSaveUserQuestionSecretAnswerPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/QuestionSecretAnswer/SaveUserQuestionSecretAnswer`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userQuestionSecretAnswerModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param username \n * @param userQuestionSecretAnswerModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiQuestionSecretAnswerVerifyQuestionSecretOrganizationMnemonicUsernamePost(organizationMnemonic: string, username: string, userQuestionSecretAnswerModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiQuestionSecretAnswerVerifyQuestionSecretOrganizationMnemonicUsernamePost(organizationMnemonic: string, username: string, userQuestionSecretAnswerModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiQuestionSecretAnswerVerifyQuestionSecretOrganizationMnemonicUsernamePost(organizationMnemonic: string, username: string, userQuestionSecretAnswerModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiQuestionSecretAnswerVerifyQuestionSecretOrganizationMnemonicUsernamePost(organizationMnemonic: string, username: string, userQuestionSecretAnswerModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiQuestionSecretAnswerVerifyQuestionSecretOrganizationMnemonicUsernamePost.');\n }\n if (username === null || username === undefined) {\n throw new Error('Required parameter username was null or undefined when calling apiQuestionSecretAnswerVerifyQuestionSecretOrganizationMnemonicUsernamePost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/QuestionSecretAnswer/VerifyQuestionSecret/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"username\", value: username, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userQuestionSecretAnswerModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param username \n * @param userQuestionSecretAnswerModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiQuestionSecretAnswerVerifyQuestionSecretPost(organizationMnemonic: string, username: string, userQuestionSecretAnswerModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiQuestionSecretAnswerVerifyQuestionSecretPost(organizationMnemonic: string, username: string, userQuestionSecretAnswerModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiQuestionSecretAnswerVerifyQuestionSecretPost(organizationMnemonic: string, username: string, userQuestionSecretAnswerModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiQuestionSecretAnswerVerifyQuestionSecretPost(organizationMnemonic: string, username: string, userQuestionSecretAnswerModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiQuestionSecretAnswerVerifyQuestionSecretPost.');\n }\n if (username === null || username === undefined) {\n throw new Error('Required parameter username was null or undefined when calling apiQuestionSecretAnswerVerifyQuestionSecretPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/QuestionSecretAnswer/VerifyQuestionSecret`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userQuestionSecretAnswerModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class RedirectService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param url \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRedirectGet(url?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRedirectGet(url?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRedirectGet(url?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRedirectGet(url?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (url !== undefined && url !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n url, 'url');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Redirect`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { SettingsModel } from '../model/settingsModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SettingsService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSettingsGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiSettingsGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiSettingsGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiSettingsGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Settings`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class TenantCleanupService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationId \n * @param body \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiTenantCleanupOrganizationIdDelete(organizationId: number, body?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiTenantCleanupOrganizationIdDelete(organizationId: number, body?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiTenantCleanupOrganizationIdDelete(organizationId: number, body?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiTenantCleanupOrganizationIdDelete(organizationId: number, body?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiTenantCleanupOrganizationIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/TenantCleanup/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: body,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class UserAuthCredentialService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param userId \n * @param userName \n * @param orgCode \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserAuthCredentialUserIdUserNameOrgCodeDelete(userId: number, userName: string, orgCode: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserAuthCredentialUserIdUserNameOrgCodeDelete(userId: number, userName: string, orgCode: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserAuthCredentialUserIdUserNameOrgCodeDelete(userId: number, userName: string, orgCode: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserAuthCredentialUserIdUserNameOrgCodeDelete(userId: number, userName: string, orgCode: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUserAuthCredentialUserIdUserNameOrgCodeDelete.');\n }\n if (userName === null || userName === undefined) {\n throw new Error('Required parameter userName was null or undefined when calling apiUserAuthCredentialUserIdUserNameOrgCodeDelete.');\n }\n if (orgCode === null || orgCode === undefined) {\n throw new Error('Required parameter orgCode was null or undefined when calling apiUserAuthCredentialUserIdUserNameOrgCodeDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserAuthCredential/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"userName\", value: userName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"orgCode\", value: orgCode, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { UserCredentialModel } from '../model/userCredentialModel';\n// @ts-ignore\nimport { UserPostLoginModel } from '../model/userPostLoginModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class UserCredentialService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param userCredentialModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCredentialChangePasswordPost(userCredentialModel?: UserCredentialModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCredentialChangePasswordPost(userCredentialModel?: UserCredentialModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialChangePasswordPost(userCredentialModel?: UserCredentialModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialChangePasswordPost(userCredentialModel?: UserCredentialModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCredential/ChangePassword`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userCredentialModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userCredentialModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCredentialChangeUserPasswordPost(userCredentialModel?: UserCredentialModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCredentialChangeUserPasswordPost(userCredentialModel?: UserCredentialModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialChangeUserPasswordPost(userCredentialModel?: UserCredentialModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialChangeUserPasswordPost(userCredentialModel?: UserCredentialModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCredential/ChangeUserPassword`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userCredentialModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCredentialDeleteUserCredentialUserIdDelete(userId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCredentialDeleteUserCredentialUserIdDelete(userId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialDeleteUserCredentialUserIdDelete(userId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialDeleteUserCredentialUserIdDelete(userId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUserCredentialDeleteUserCredentialUserIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCredential/DeleteUserCredential/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgmnemonic \n * @param lastSyncTime \n * @param orgDirId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCredentialGetModifiedPasswordsOrgmnemonicGet(orgmnemonic: string, lastSyncTime?: string, orgDirId?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCredentialGetModifiedPasswordsOrgmnemonicGet(orgmnemonic: string, lastSyncTime?: string, orgDirId?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialGetModifiedPasswordsOrgmnemonicGet(orgmnemonic: string, lastSyncTime?: string, orgDirId?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialGetModifiedPasswordsOrgmnemonicGet(orgmnemonic: string, lastSyncTime?: string, orgDirId?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgmnemonic === null || orgmnemonic === undefined) {\n throw new Error('Required parameter orgmnemonic was null or undefined when calling apiUserCredentialGetModifiedPasswordsOrgmnemonicGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (lastSyncTime !== undefined && lastSyncTime !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n lastSyncTime, 'lastSyncTime');\n }\n if (orgDirId !== undefined && orgDirId !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n orgDirId, 'orgDirId');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCredential/GetModifiedPasswords/${this.configuration.encodeParam({name: \"orgmnemonic\", value: orgmnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCredentialGetPasswordUserIdGet(userId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCredentialGetPasswordUserIdGet(userId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialGetPasswordUserIdGet(userId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialGetPasswordUserIdGet(userId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUserCredentialGetPasswordUserIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCredential/GetPassword/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCredentialGetPasswordsLastCreationTimeOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCredentialGetPasswordsLastCreationTimeOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialGetPasswordsLastCreationTimeOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialGetPasswordsLastCreationTimeOrganizationMnemonicGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiUserCredentialGetPasswordsLastCreationTimeOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCredential/GetPasswordsLastCreationTime/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userIds \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCredentialGetPasswordsUserIdsGet(userIds: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCredentialGetPasswordsUserIdsGet(userIds: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialGetPasswordsUserIdsGet(userIds: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialGetPasswordsUserIdsGet(userIds: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userIds === null || userIds === undefined) {\n throw new Error('Required parameter userIds was null or undefined when calling apiUserCredentialGetPasswordsUserIdsGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCredential/GetPasswords/${this.configuration.encodeParam({name: \"userIds\", value: userIds, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param username \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCredentialGetUserAuthEnforcementStatusOrganizationMnemonicUsernameGet(organizationMnemonic: string, username: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCredentialGetUserAuthEnforcementStatusOrganizationMnemonicUsernameGet(organizationMnemonic: string, username: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialGetUserAuthEnforcementStatusOrganizationMnemonicUsernameGet(organizationMnemonic: string, username: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialGetUserAuthEnforcementStatusOrganizationMnemonicUsernameGet(organizationMnemonic: string, username: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiUserCredentialGetUserAuthEnforcementStatusOrganizationMnemonicUsernameGet.');\n }\n if (username === null || username === undefined) {\n throw new Error('Required parameter username was null or undefined when calling apiUserCredentialGetUserAuthEnforcementStatusOrganizationMnemonicUsernameGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCredential/GetUserAuthEnforcementStatus/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"username\", value: username, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgCode \n * @param requestBody \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCredentialGetUserCredentialListOrgCodePost(orgCode: string, requestBody?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCredentialGetUserCredentialListOrgCodePost(orgCode: string, requestBody?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialGetUserCredentialListOrgCodePost(orgCode: string, requestBody?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialGetUserCredentialListOrgCodePost(orgCode: string, requestBody?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgCode === null || orgCode === undefined) {\n throw new Error('Required parameter orgCode was null or undefined when calling apiUserCredentialGetUserCredentialListOrgCodePost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCredential/GetUserCredentialList/${this.configuration.encodeParam({name: \"orgCode\", value: orgCode, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: requestBody,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param orgCode \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCredentialGetUserCredentialUserIdOrgCodeGet(userId: number, orgCode: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCredentialGetUserCredentialUserIdOrgCodeGet(userId: number, orgCode: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialGetUserCredentialUserIdOrgCodeGet(userId: number, orgCode: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialGetUserCredentialUserIdOrgCodeGet(userId: number, orgCode: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUserCredentialGetUserCredentialUserIdOrgCodeGet.');\n }\n if (orgCode === null || orgCode === undefined) {\n throw new Error('Required parameter orgCode was null or undefined when calling apiUserCredentialGetUserCredentialUserIdOrgCodeGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCredential/GetUserCredential/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"orgCode\", value: orgCode, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCredentialGetUserPostLoginStatusGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCredentialGetUserPostLoginStatusGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialGetUserPostLoginStatusGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialGetUserPostLoginStatusGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCredential/GetUserPostLoginStatus`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCredentialGetUserPostLoginStatusUserIdGet(userId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCredentialGetUserPostLoginStatusUserIdGet(userId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialGetUserPostLoginStatusUserIdGet(userId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialGetUserPostLoginStatusUserIdGet(userId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUserCredentialGetUserPostLoginStatusUserIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCredential/GetUserPostLoginStatus/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCredentialIsUserPasswordExistsUserIdGet(userId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCredentialIsUserPasswordExistsUserIdGet(userId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialIsUserPasswordExistsUserIdGet(userId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialIsUserPasswordExistsUserIdGet(userId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUserCredentialIsUserPasswordExistsUserIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCredential/IsUserPasswordExists/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param userName \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCredentialRenewPasswordHistoryOrganizationMnemonicUserNamePost(organizationMnemonic: string, userName: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCredentialRenewPasswordHistoryOrganizationMnemonicUserNamePost(organizationMnemonic: string, userName: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialRenewPasswordHistoryOrganizationMnemonicUserNamePost(organizationMnemonic: string, userName: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialRenewPasswordHistoryOrganizationMnemonicUserNamePost(organizationMnemonic: string, userName: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiUserCredentialRenewPasswordHistoryOrganizationMnemonicUserNamePost.');\n }\n if (userName === null || userName === undefined) {\n throw new Error('Required parameter userName was null or undefined when calling apiUserCredentialRenewPasswordHistoryOrganizationMnemonicUserNamePost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCredential/RenewPasswordHistory/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"userName\", value: userName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userCredentialModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCredentialResetPasswordPost(userCredentialModel?: UserCredentialModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCredentialResetPasswordPost(userCredentialModel?: UserCredentialModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialResetPasswordPost(userCredentialModel?: UserCredentialModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialResetPasswordPost(userCredentialModel?: UserCredentialModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCredential/ResetPassword`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userCredentialModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userCredentialModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCredentialResetUserCredentialPost(userCredentialModel?: UserCredentialModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCredentialResetUserCredentialPost(userCredentialModel?: UserCredentialModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialResetUserCredentialPost(userCredentialModel?: UserCredentialModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialResetUserCredentialPost(userCredentialModel?: UserCredentialModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCredential/ResetUserCredential`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userCredentialModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userCredentialModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCredentialResetUserPasswordPost(userCredentialModel?: UserCredentialModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCredentialResetUserPasswordPost(userCredentialModel?: UserCredentialModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialResetUserPasswordPost(userCredentialModel?: UserCredentialModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialResetUserPasswordPost(userCredentialModel?: UserCredentialModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCredential/ResetUserPassword`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userCredentialModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userCredentialModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCredentialSaveUserCredentialPost(userCredentialModel?: UserCredentialModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCredentialSaveUserCredentialPost(userCredentialModel?: UserCredentialModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialSaveUserCredentialPost(userCredentialModel?: UserCredentialModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialSaveUserCredentialPost(userCredentialModel?: UserCredentialModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCredential/SaveUserCredential`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userCredentialModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param userPostLoginModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCredentialUpdateUserAuthEnforcementStatusOrganizationMnemonicPut(organizationMnemonic: string, userPostLoginModel?: UserPostLoginModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCredentialUpdateUserAuthEnforcementStatusOrganizationMnemonicPut(organizationMnemonic: string, userPostLoginModel?: UserPostLoginModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialUpdateUserAuthEnforcementStatusOrganizationMnemonicPut(organizationMnemonic: string, userPostLoginModel?: UserPostLoginModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialUpdateUserAuthEnforcementStatusOrganizationMnemonicPut(organizationMnemonic: string, userPostLoginModel?: UserPostLoginModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiUserCredentialUpdateUserAuthEnforcementStatusOrganizationMnemonicPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCredential/UpdateUserAuthEnforcementStatus/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userPostLoginModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param userPostLoginModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCredentialUpdateUserAuthEnforcementStatusPut(organizationMnemonic: string, userPostLoginModel?: UserPostLoginModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCredentialUpdateUserAuthEnforcementStatusPut(organizationMnemonic: string, userPostLoginModel?: UserPostLoginModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialUpdateUserAuthEnforcementStatusPut(organizationMnemonic: string, userPostLoginModel?: UserPostLoginModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialUpdateUserAuthEnforcementStatusPut(organizationMnemonic: string, userPostLoginModel?: UserPostLoginModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiUserCredentialUpdateUserAuthEnforcementStatusPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCredential/UpdateUserAuthEnforcementStatus`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userPostLoginModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgId \n * @param nOfQues \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCredentialUpdateUserQuestionSecretStatusOrgIdNOfQuesPost(orgId: number, nOfQues: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCredentialUpdateUserQuestionSecretStatusOrgIdNOfQuesPost(orgId: number, nOfQues: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialUpdateUserQuestionSecretStatusOrgIdNOfQuesPost(orgId: number, nOfQues: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialUpdateUserQuestionSecretStatusOrgIdNOfQuesPost(orgId: number, nOfQues: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiUserCredentialUpdateUserQuestionSecretStatusOrgIdNOfQuesPost.');\n }\n if (nOfQues === null || nOfQues === undefined) {\n throw new Error('Required parameter nOfQues was null or undefined when calling apiUserCredentialUpdateUserQuestionSecretStatusOrgIdNOfQuesPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCredential/UpdateUserQuestionSecretStatus/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"nOfQues\", value: nOfQues, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int32\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userCredentialModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCredentialUpdateUsernamePost(userCredentialModel?: UserCredentialModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCredentialUpdateUsernamePost(userCredentialModel?: UserCredentialModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialUpdateUsernamePost(userCredentialModel?: UserCredentialModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialUpdateUsernamePost(userCredentialModel?: UserCredentialModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCredential/UpdateUsername`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userCredentialModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCredentialWarnUserToConfigureQuestionsGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCredentialWarnUserToConfigureQuestionsGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialWarnUserToConfigureQuestionsGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCredentialWarnUserToConfigureQuestionsGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCredential/WarnUserToConfigureQuestions`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { UserSessionViewModel } from '../model/userSessionViewModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class UserSessionService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserSessionActiveSessionGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public apiUserSessionActiveSessionGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiUserSessionActiveSessionGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiUserSessionActiveSessionGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserSession/ActiveSession`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param requestBody \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserSessionDelete(requestBody?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserSessionDelete(requestBody?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserSessionDelete(requestBody?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserSessionDelete(requestBody?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserSession`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: requestBody,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param userId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserSessionOrganizationIdUserIdDelete(organizationId: number, userId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserSessionOrganizationIdUserIdDelete(organizationId: number, userId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserSessionOrganizationIdUserIdDelete(organizationId: number, userId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserSessionOrganizationIdUserIdDelete(organizationId: number, userId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserSessionOrganizationIdUserIdDelete.');\n }\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUserSessionOrganizationIdUserIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserSession/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param userId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserSessionOrganizationIdUserIdGet(organizationId: number, userId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiUserSessionOrganizationIdUserIdGet(organizationId: number, userId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiUserSessionOrganizationIdUserIdGet(organizationId: number, userId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiUserSessionOrganizationIdUserIdGet(organizationId: number, userId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserSessionOrganizationIdUserIdGet.');\n }\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUserSessionOrganizationIdUserIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserSession/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param userId \n * @param sessionId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserSessionOrganizationIdUserIdSessionIdDelete(organizationId: number, userId: number, sessionId: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserSessionOrganizationIdUserIdSessionIdDelete(organizationId: number, userId: number, sessionId: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserSessionOrganizationIdUserIdSessionIdDelete(organizationId: number, userId: number, sessionId: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserSessionOrganizationIdUserIdSessionIdDelete(organizationId: number, userId: number, sessionId: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserSessionOrganizationIdUserIdSessionIdDelete.');\n }\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUserSessionOrganizationIdUserIdSessionIdDelete.');\n }\n if (sessionId === null || sessionId === undefined) {\n throw new Error('Required parameter sessionId was null or undefined when calling apiUserSessionOrganizationIdUserIdSessionIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserSession/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"sessionId\", value: sessionId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param userId \n * @param sessionId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserSessionUpdateLastActiveOrganizationIdUserIdSessionIdPut(organizationId: number, userId: number, sessionId: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserSessionUpdateLastActiveOrganizationIdUserIdSessionIdPut(organizationId: number, userId: number, sessionId: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserSessionUpdateLastActiveOrganizationIdUserIdSessionIdPut(organizationId: number, userId: number, sessionId: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserSessionUpdateLastActiveOrganizationIdUserIdSessionIdPut(organizationId: number, userId: number, sessionId: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserSessionUpdateLastActiveOrganizationIdUserIdSessionIdPut.');\n }\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUserSessionUpdateLastActiveOrganizationIdUserIdSessionIdPut.');\n }\n if (sessionId === null || sessionId === undefined) {\n throw new Error('Required parameter sessionId was null or undefined when calling apiUserSessionUpdateLastActiveOrganizationIdUserIdSessionIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserSession/UpdateLastActive/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"sessionId\", value: sessionId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { CreateOrUpdateUserTokensModel } from '../model/createOrUpdateUserTokensModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class UserTokenService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserTokenGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserTokenGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserTokenGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserTokenGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserToken`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param createOrUpdateUserTokensModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserTokenPost(createOrUpdateUserTokensModel?: CreateOrUpdateUserTokensModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserTokenPost(createOrUpdateUserTokensModel?: CreateOrUpdateUserTokensModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserTokenPost(createOrUpdateUserTokensModel?: CreateOrUpdateUserTokensModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserTokenPost(createOrUpdateUserTokensModel?: CreateOrUpdateUserTokensModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserToken`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: createOrUpdateUserTokensModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class VersionService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiVersionGetVersionGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiVersionGetVersionGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiVersionGetVersionGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiVersionGetVersionGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Version/getVersion`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","import { HttpParameterCodec } from '@angular/common/http';\nimport { Param } from './param';\n\nexport interface ConfigurationParameters {\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n apiKeys?: {[ key: string ]: string};\n username?: string;\n password?: string;\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n accessToken?: string | (() => string);\n basePath?: string;\n withCredentials?: boolean;\n /**\n * Takes care of encoding query- and form-parameters.\n */\n encoder?: HttpParameterCodec;\n /**\n * Override the default method for encoding path parameters in various\n * styles.\n *

\n * See {@link README.md} for more details\n *

\n */\n encodeParam?: (param: Param) => string;\n /**\n * The keys are the names in the securitySchemes section of the OpenAPI\n * document. They should map to the value used for authentication\n * minus any standard prefixes such as 'Basic' or 'Bearer'.\n */\n credentials?: {[ key: string ]: string | (() => string | undefined)};\n}\n\nexport class Configuration {\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n apiKeys?: {[ key: string ]: string};\n username?: string;\n password?: string;\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n accessToken?: string | (() => string);\n basePath?: string;\n withCredentials?: boolean;\n /**\n * Takes care of encoding query- and form-parameters.\n */\n encoder?: HttpParameterCodec;\n /**\n * Encoding of various path parameter\n * styles.\n *

\n * See {@link README.md} for more details\n *

\n */\n encodeParam: (param: Param) => string;\n /**\n * The keys are the names in the securitySchemes section of the OpenAPI\n * document. They should map to the value used for authentication\n * minus any standard prefixes such as 'Basic' or 'Bearer'.\n */\n credentials: {[ key: string ]: string | (() => string | undefined)};\n\n constructor(configurationParameters: ConfigurationParameters = {}) {\n this.apiKeys = configurationParameters.apiKeys;\n this.username = configurationParameters.username;\n this.password = configurationParameters.password;\n this.accessToken = configurationParameters.accessToken;\n this.basePath = configurationParameters.basePath;\n this.withCredentials = configurationParameters.withCredentials;\n this.encoder = configurationParameters.encoder;\n if (configurationParameters.encodeParam) {\n this.encodeParam = configurationParameters.encodeParam;\n }\n else {\n this.encodeParam = param => this.defaultEncodeParam(param);\n }\n if (configurationParameters.credentials) {\n this.credentials = configurationParameters.credentials;\n }\n else {\n this.credentials = {};\n }\n }\n\n /**\n * Select the correct content-type to use for a request.\n * Uses {@link Configuration#isJsonMime} to determine the correct content-type.\n * If no content type is found return the first found type if the contentTypes is not empty\n * @param contentTypes - the array of content types that are available for selection\n * @returns the selected content-type or undefined if no selection could be made.\n */\n public selectHeaderContentType (contentTypes: string[]): string | undefined {\n if (contentTypes.length === 0) {\n return undefined;\n }\n\n const type = contentTypes.find((x: string) => this.isJsonMime(x));\n if (type === undefined) {\n return contentTypes[0];\n }\n return type;\n }\n\n /**\n * Select the correct accept content-type to use for a request.\n * Uses {@link Configuration#isJsonMime} to determine the correct accept content-type.\n * If no content type is found return the first found type if the contentTypes is not empty\n * @param accepts - the array of content types that are available for selection.\n * @returns the selected content-type or undefined if no selection could be made.\n */\n public selectHeaderAccept(accepts: string[]): string | undefined {\n if (accepts.length === 0) {\n return undefined;\n }\n\n const type = accepts.find((x: string) => this.isJsonMime(x));\n if (type === undefined) {\n return accepts[0];\n }\n return type;\n }\n\n /**\n * Check if the given MIME is a JSON MIME.\n * JSON MIME examples:\n * application/json\n * application/json; charset=UTF8\n * APPLICATION/JSON\n * application/vnd.company+json\n * @param mime - MIME (Multipurpose Internet Mail Extensions)\n * @return True if the given MIME is JSON, false otherwise.\n */\n public isJsonMime(mime: string): boolean {\n const jsonMime: RegExp = new RegExp('^(application\\/json|[^;/ \\t]+\\/[^;/ \\t]+[+]json)[ \\t]*(;.*)?$', 'i');\n return mime !== null && (jsonMime.test(mime) || mime.toLowerCase() === 'application/json-patch+json');\n }\n\n public lookupCredential(key: string): string | undefined {\n const value = this.credentials[key];\n return typeof value === 'function'\n ? value()\n : value;\n }\n\n private defaultEncodeParam(param: Param): string {\n // This implementation exists as fallback for missing configuration\n // and for backwards compatibility to older typescript-angular generator versions.\n // It only works for the 'simple' parameter style.\n // Date-handling only works for the 'date-time' format.\n // All other styles and Date-formats are probably handled incorrectly.\n //\n // But: if that's all you need (i.e.: the most common use-case): no need for customization!\n\n const value = param.dataFormat === 'date-time'\n ? (param.value as Date).toISOString()\n : param.value;\n\n return encodeURIComponent(String(value));\n }\n}\n","import { HttpParameterCodec } from '@angular/common/http';\n\n/**\n * Custom HttpParameterCodec\n * Workaround for https://github.com/angular/angular/issues/18261\n */\nexport class CustomHttpParameterCodec implements HttpParameterCodec {\n encodeKey(k: string): string {\n return encodeURIComponent(k);\n }\n encodeValue(v: string): string {\n return encodeURIComponent(v);\n }\n decodeKey(k: string): string {\n return decodeURIComponent(k);\n }\n decodeValue(v: string): string {\n return decodeURIComponent(v);\n }\n}\n","export * from './api/api';\nexport * from './model/models';\nexport * from './variables';\nexport * from './configuration';\nexport * from './api.module';\nexport * from './param';\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport type AuthenticationMethod = 'Password' | 'PassCode' | 'UserCode' | 'Push' | 'Hardware' | 'Yubikey' | 'FidoToken';\n\nexport const AuthenticationMethod = {\n Password: 'Password' as AuthenticationMethod,\n PassCode: 'PassCode' as AuthenticationMethod,\n UserCode: 'UserCode' as AuthenticationMethod,\n Push: 'Push' as AuthenticationMethod,\n Hardware: 'Hardware' as AuthenticationMethod,\n Yubikey: 'Yubikey' as AuthenticationMethod,\n FidoToken: 'FidoToken' as AuthenticationMethod\n};\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport type AuthenticationMethodRadius = 'Password' | 'PassCode' | 'UserCode' | 'Push' | 'Hardware' | 'Yubikey';\n\nexport const AuthenticationMethodRadius = {\n Password: 'Password' as AuthenticationMethodRadius,\n PassCode: 'PassCode' as AuthenticationMethodRadius,\n UserCode: 'UserCode' as AuthenticationMethodRadius,\n Push: 'Push' as AuthenticationMethodRadius,\n Hardware: 'Hardware' as AuthenticationMethodRadius,\n Yubikey: 'Yubikey' as AuthenticationMethodRadius\n};\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { UserCheckEnrollCodeModel } from './userCheckEnrollCodeModel';\n\n\nexport interface AuthenticationTypeModel { \n authenticationTypeId?: number;\n authenticationTypeName?: string | null;\n userName?: string | null;\n organizationMnemonic?: string | null;\n sequence?: number;\n isActive?: boolean;\n isDefault?: boolean;\n jsonData?: string | null;\n tokenCounter?: string | null;\n modifiedBy?: string | null;\n userCheckEnrollCodeModel?: UserCheckEnrollCodeModel;\n pushEnabled?: boolean;\n}\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { Credential } from './credential';\n\n\nexport interface ChallengeReply { \n credential: Credential;\n}\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface CreateOrUpdateUserTokensModel { \n userName: string;\n password: string;\n organizationMnemonic: string;\n tokens?: Array | null;\n}\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { AuthenticationMethod } from './authenticationMethod';\n\n\nexport interface Credential { \n type: AuthenticationMethod;\n userInput?: string | null;\n}\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport type CredentialResetLimitPeriodType = 'Days' | 'Weeks' | 'Months' | 'Years';\n\nexport const CredentialResetLimitPeriodType = {\n Days: 'Days' as CredentialResetLimitPeriodType,\n Weeks: 'Weeks' as CredentialResetLimitPeriodType,\n Months: 'Months' as CredentialResetLimitPeriodType,\n Years: 'Years' as CredentialResetLimitPeriodType\n};\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport type CredentialResetMethodAppliesTo = 'AllUsers' | 'SpecificGroups';\n\nexport const CredentialResetMethodAppliesTo = {\n AllUsers: 'AllUsers' as CredentialResetMethodAppliesTo,\n SpecificGroups: 'SpecificGroups' as CredentialResetMethodAppliesTo\n};\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport type CredentialResetMethodSendVia = 'NotApplicable' | 'Sms' | 'Email' | 'UserChoice';\n\nexport const CredentialResetMethodSendVia = {\n NotApplicable: 'NotApplicable' as CredentialResetMethodSendVia,\n Sms: 'Sms' as CredentialResetMethodSendVia,\n Email: 'Email' as CredentialResetMethodSendVia,\n UserChoice: 'UserChoice' as CredentialResetMethodSendVia\n};\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { CredentialResetMethodAppliesTo } from './credentialResetMethodAppliesTo';\nimport { CredentialResetMethodSendVia } from './credentialResetMethodSendVia';\n\n\nexport interface CredentialResetMethodViewModel { \n id?: string;\n name?: string | null;\n isEnabled?: boolean;\n enforce2ndFactor?: boolean;\n appliesTo?: CredentialResetMethodAppliesTo;\n groupIds?: Array | null;\n sendVia?: CredentialResetMethodSendVia;\n extraSettings?: { [key: string]: any; } | null;\n}\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { CredentialResetLimitPeriodType } from './credentialResetLimitPeriodType';\nimport { CredentialResetMethodViewModel } from './credentialResetMethodViewModel';\n\n\nexport interface CredentialResetSettingsViewModel { \n id?: string;\n orgId?: number;\n isEnabled?: boolean;\n allowLockedAccounts?: boolean;\n methods?: Array | null;\n isResetLimitEnabled?: boolean;\n numberOfResets?: number;\n resetLimitPeriod?: number;\n resetLimitPeriodType?: CredentialResetLimitPeriodType;\n alertGroupIds?: Array | null;\n}\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface HardwareTokenModel { \n id?: number;\n organizationId?: number;\n organizationMnemonic?: string | null;\n assignedTo?: string | null;\n type?: number;\n serialId?: string | null;\n seed?: string | null;\n isActive?: boolean | null;\n other?: string | null;\n createdBy?: string | null;\n createdOn?: string;\n modifiedBy?: string | null;\n modifiedOn?: string | null;\n}\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface ImportAuthenticationTypeModel { \n dn?: string | null;\n username?: string | null;\n authMethod?: string | null;\n sendTo?: string | null;\n mobile?: string | null;\n email?: string | null;\n seed?: string | null;\n serialId?: string | null;\n period?: string | null;\n deviceType?: string | null;\n deviceToken?: string | null;\n value?: string | null;\n createdBy?: string | null;\n createdOn?: string;\n modifiedBy?: string | null;\n modifiedOn?: string | null;\n}\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface LoginModel { \n userName: string;\n password?: string | null;\n returnUrl?: string | null;\n organizationCode?: string | null;\n stop2FATriggerChallenge?: boolean;\n application?: string | null;\n endpointAgentId?: string | null;\n}\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface LoginModelWithAssertion { \n userName?: string | null;\n returnUrl?: string | null;\n assertion?: string | null;\n endpointAgentId?: string | null;\n}\n\n","export * from './authenticationMethod';\nexport * from './authenticationMethodRadius';\nexport * from './authenticationTypeModel';\nexport * from './challengeReply';\nexport * from './createOrUpdateUserTokensModel';\nexport * from './credential';\nexport * from './credentialResetLimitPeriodType';\nexport * from './credentialResetMethodAppliesTo';\nexport * from './credentialResetMethodSendVia';\nexport * from './credentialResetMethodViewModel';\nexport * from './credentialResetSettingsViewModel';\nexport * from './hardwareTokenModel';\nexport * from './importAuthenticationTypeModel';\nexport * from './loginModel';\nexport * from './loginModelWithAssertion';\nexport * from './oneStepLoginModel';\nexport * from './pushResponse';\nexport * from './radProtocol';\nexport * from './radiusAuthentication';\nexport * from './radiusCredential';\nexport * from './settingsModel';\nexport * from './skipPasswordSecret';\nexport * from './userCheckEnrollCodeModel';\nexport * from './userCredentialModel';\nexport * from './userGroupValidationModel';\nexport * from './userPostLoginModel';\nexport * from './userQuestionSecretAnswerModel';\nexport * from './userSessionViewModel';\nexport * from './wLAGroupType';\nexport * from './wLALoginModel';\nexport * from './wlaSettingsModel';\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface OneStepLoginModel { \n userName: string;\n password?: string | null;\n code?: string | null;\n subDomain?: string | null;\n organization?: string | null;\n}\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface PushResponse { \n secret?: string | null;\n name?: string | null;\n url?: string | null;\n organization?: string | null;\n notificationTime?: string;\n isAccepted?: boolean;\n secureCode?: string | null;\n}\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport type RadProtocol = 'PAP' | 'CHAP' | 'MSCHAP' | 'MSCHAP2' | 'EAP';\n\nexport const RadProtocol = {\n Pap: 'PAP' as RadProtocol,\n Chap: 'CHAP' as RadProtocol,\n Mschap: 'MSCHAP' as RadProtocol,\n Mschap2: 'MSCHAP2' as RadProtocol,\n Eap: 'EAP' as RadProtocol\n};\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { RadProtocol } from './radProtocol';\n\n\nexport interface RadiusAuthentication { \n userInput?: string | null;\n challenge?: string | null;\n identifier?: string | null;\n requiredHash?: string | null;\n radProtocol?: RadProtocol;\n}\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { AuthenticationMethodRadius } from './authenticationMethodRadius';\nimport { RadiusAuthentication } from './radiusAuthentication';\n\n\nexport interface RadiusCredential { \n type?: AuthenticationMethodRadius;\n userInput?: string | null;\n radiusAuthentication?: RadiusAuthentication;\n}\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface SettingsModel { \n key?: string | null;\n value?: string | null;\n}\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface SkipPasswordSecret { \n key?: string | null;\n}\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface UserCheckEnrollCodeModel { \n enrollUrl?: string | null;\n checkCode?: string | null;\n}\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface UserCredentialModel { \n userCredentialID?: number;\n userID?: number;\n username?: string | null;\n email?: string | null;\n organizationMnemonic?: string | null;\n password?: string | null;\n newPassword?: string | null;\n modifiedBy?: string | null;\n modifiedDate?: string;\n isMustChangePassword?: boolean | null;\n questionSecretStatus?: string | null;\n modifiedById?: number | null;\n ignorePasswordHistory?: boolean;\n userType?: string | null;\n}\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface UserGroupValidationModel { \n allowedGroups?: string | null;\n restrictedGroups?: string | null;\n}\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface UserPostLoginModel { \n userName?: string | null;\n isMustChangePassword?: boolean | null;\n questionSecretStatus?: string | null;\n authEnforcement?: string | null;\n isEnforcedSecondFactor?: boolean | null;\n}\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface UserQuestionSecretAnswerModel { \n organizationQuestionSecretId?: number;\n answer?: string | null;\n}\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface UserSessionViewModel { \n id?: string;\n location?: string | null;\n platform?: string | null;\n browser?: string | null;\n isMobile?: boolean;\n lastActive?: string | null;\n isCurrent?: boolean;\n}\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport type WLAGroupType = 'Member2FA_NonMember1FA' | 'NonMember2FA_Member1FA';\n\nexport const WLAGroupType = {\n Member2FaNonMember1Fa: 'Member2FA_NonMember1FA' as WLAGroupType,\n NonMember2FaMember1Fa: 'NonMember2FA_Member1FA' as WLAGroupType\n};\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { WLAGroupType } from './wLAGroupType';\n\n\nexport interface WLALoginModel { \n sessionId?: string | null;\n groupName?: string | null;\n groupType?: WLAGroupType;\n}\n\n","/**\n * Identity Server Services\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface WlaSettingsModel { \n name?: string | null;\n id?: string | null;\n domain?: string | null;\n}\n\n","/**\n * Standard parameter styles defined by OpenAPI spec\n */\nexport type StandardParamStyle =\n | 'matrix'\n | 'label'\n | 'form'\n | 'simple'\n | 'spaceDelimited'\n | 'pipeDelimited'\n | 'deepObject'\n ;\n\n/**\n * The OpenAPI standard {@link StandardParamStyle}s may be extended by custom styles by the user.\n */\nexport type ParamStyle = StandardParamStyle | string;\n\n/**\n * Standard parameter locations defined by OpenAPI spec\n */\nexport type ParamLocation = 'query' | 'header' | 'path' | 'cookie';\n\n/**\n * Standard types as defined in OpenAPI Specification: Data Types\n */\nexport type StandardDataType =\n | \"integer\"\n | \"number\"\n | \"boolean\"\n | \"string\"\n | \"object\"\n | \"array\"\n ;\n\n/**\n * Standard {@link DataType}s plus your own types/classes.\n */\nexport type DataType = StandardDataType | string;\n\n/**\n * Standard formats as defined in OpenAPI Specification: Data Types\n */\nexport type StandardDataFormat =\n | \"int32\"\n | \"int64\"\n | \"float\"\n | \"double\"\n | \"byte\"\n | \"binary\"\n | \"date\"\n | \"date-time\"\n | \"password\"\n ;\n\nexport type DataFormat = StandardDataFormat | string;\n\n/**\n * The parameter to encode.\n */\nexport interface Param {\n name: string;\n value: unknown;\n in: ParamLocation;\n style: ParamStyle,\n explode: boolean;\n dataType: DataType;\n dataFormat: DataFormat | undefined;\n}\n","import { InjectionToken } from '@angular/core';\n\nexport const BASE_PATH = new InjectionToken('basePath');\nexport const COLLECTION_FORMATS = {\n 'csv': ',',\n 'tsv': ' ',\n 'ssv': ' ',\n 'pipes': '|'\n}\n","import { NgModule, ModuleWithProviders, SkipSelf, Optional } from '@angular/core';\nimport { Configuration } from './configuration';\nimport { HttpClient } from '@angular/common/http';\n\nimport { ApplicationService } from './api/application.service';\nimport { CountryService } from './api/country.service';\nimport { DirectoryService } from './api/directory.service';\nimport { DownloadsService } from './api/downloads.service';\nimport { EmployeeTypeService } from './api/employeeType.service';\nimport { JobTitleService } from './api/jobTitle.service';\nimport { MessageTemplateService } from './api/messageTemplate.service';\nimport { PredefinedAttributeService } from './api/predefinedAttribute.service';\nimport { PredefinedAttributeMappingService } from './api/predefinedAttributeMapping.service';\nimport { QuestionSecretService } from './api/questionSecret.service';\nimport { RadiusServiceService } from './api/radiusService.service';\nimport { ReleaseNotesService } from './api/releaseNotes.service';\nimport { SystemSettingService } from './api/systemSetting.service';\nimport { VersionService } from './api/version.service';\n\n@NgModule({\n imports: [],\n declarations: [],\n exports: [],\n providers: []\n})\nexport class ApiModule {\n public static forRoot(configurationFactory: () => Configuration): ModuleWithProviders {\n return {\n ngModule: ApiModule,\n providers: [ { provide: Configuration, useFactory: configurationFactory } ]\n };\n }\n\n constructor( @Optional() @SkipSelf() parentModule: ApiModule,\n @Optional() http: HttpClient) {\n if (parentModule) {\n throw new Error('ApiModule is already loaded. Import in your base AppModule only.');\n }\n if (!http) {\n throw new Error('You need to import the HttpClientModule in your AppModule! \\n' +\n 'See also https://github.com/angular/angular/issues/20575');\n }\n }\n}\n","export * from './application.service';\nimport { ApplicationService } from './application.service';\nexport * from './country.service';\nimport { CountryService } from './country.service';\nexport * from './directory.service';\nimport { DirectoryService } from './directory.service';\nexport * from './downloads.service';\nimport { DownloadsService } from './downloads.service';\nexport * from './employeeType.service';\nimport { EmployeeTypeService } from './employeeType.service';\nexport * from './jobTitle.service';\nimport { JobTitleService } from './jobTitle.service';\nexport * from './messageTemplate.service';\nimport { MessageTemplateService } from './messageTemplate.service';\nexport * from './predefinedAttribute.service';\nimport { PredefinedAttributeService } from './predefinedAttribute.service';\nexport * from './predefinedAttributeMapping.service';\nimport { PredefinedAttributeMappingService } from './predefinedAttributeMapping.service';\nexport * from './questionSecret.service';\nimport { QuestionSecretService } from './questionSecret.service';\nexport * from './radiusService.service';\nimport { RadiusServiceService } from './radiusService.service';\nexport * from './releaseNotes.service';\nimport { ReleaseNotesService } from './releaseNotes.service';\nexport * from './systemSetting.service';\nimport { SystemSettingService } from './systemSetting.service';\nexport * from './version.service';\nimport { VersionService } from './version.service';\nexport const APIS = [ApplicationService, CountryService, DirectoryService, DownloadsService, EmployeeTypeService, JobTitleService, MessageTemplateService, PredefinedAttributeService, PredefinedAttributeMappingService, QuestionSecretService, RadiusServiceService, ReleaseNotesService, SystemSettingService, VersionService];\n","/**\n * Master Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { ApplicationModel } from '../model/applicationModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ApplicationService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param applicationModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationAddNewApplicationPost(applicationModel?: ApplicationModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationAddNewApplicationPost(applicationModel?: ApplicationModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationAddNewApplicationPost(applicationModel?: ApplicationModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationAddNewApplicationPost(applicationModel?: ApplicationModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Application/addNewApplication`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: applicationModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param applicationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationDeleteApplicationApplicationIdDelete(applicationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationDeleteApplicationApplicationIdDelete(applicationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationDeleteApplicationApplicationIdDelete(applicationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationDeleteApplicationApplicationIdDelete(applicationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (applicationId === null || applicationId === undefined) {\n throw new Error('Required parameter applicationId was null or undefined when calling apiApplicationDeleteApplicationApplicationIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Application/deleteApplication/${this.configuration.encodeParam({name: \"applicationId\", value: applicationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param applicationId \n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationGetApplicationByIdApplicationIdGet(applicationId: number, organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationGetApplicationByIdApplicationIdGet(applicationId: number, organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationGetApplicationByIdApplicationIdGet(applicationId: number, organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationGetApplicationByIdApplicationIdGet(applicationId: number, organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (applicationId === null || applicationId === undefined) {\n throw new Error('Required parameter applicationId was null or undefined when calling apiApplicationGetApplicationByIdApplicationIdGet.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiApplicationGetApplicationByIdApplicationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Application/getApplicationById/${this.configuration.encodeParam({name: \"applicationId\", value: applicationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param applicationId \n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationGetApplicationByIdApplicationIdOrganizationMnemonicGet(applicationId: number, organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationGetApplicationByIdApplicationIdOrganizationMnemonicGet(applicationId: number, organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationGetApplicationByIdApplicationIdOrganizationMnemonicGet(applicationId: number, organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationGetApplicationByIdApplicationIdOrganizationMnemonicGet(applicationId: number, organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (applicationId === null || applicationId === undefined) {\n throw new Error('Required parameter applicationId was null or undefined when calling apiApplicationGetApplicationByIdApplicationIdOrganizationMnemonicGet.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiApplicationGetApplicationByIdApplicationIdOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Application/getApplicationById/${this.configuration.encodeParam({name: \"applicationId\", value: applicationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationGetApplicationListByIdsGet(id?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationGetApplicationListByIdsGet(id?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationGetApplicationListByIdsGet(id?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationGetApplicationListByIdsGet(id?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (id) {\n id.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'id');\n })\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Application/GetApplicationListByIds`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param applicationId \n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationGetApplicationMetaDataApplicationIdOrganizationMnemonicGet(applicationId: number, organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationGetApplicationMetaDataApplicationIdOrganizationMnemonicGet(applicationId: number, organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationGetApplicationMetaDataApplicationIdOrganizationMnemonicGet(applicationId: number, organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationGetApplicationMetaDataApplicationIdOrganizationMnemonicGet(applicationId: number, organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (applicationId === null || applicationId === undefined) {\n throw new Error('Required parameter applicationId was null or undefined when calling apiApplicationGetApplicationMetaDataApplicationIdOrganizationMnemonicGet.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiApplicationGetApplicationMetaDataApplicationIdOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Application/getApplicationMetaData/${this.configuration.encodeParam({name: \"applicationId\", value: applicationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param appType \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationGetApplicationsByTypeAppTypeGet(appType: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationGetApplicationsByTypeAppTypeGet(appType: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationGetApplicationsByTypeAppTypeGet(appType: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationGetApplicationsByTypeAppTypeGet(appType: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (appType === null || appType === undefined) {\n throw new Error('Required parameter appType was null or undefined when calling apiApplicationGetApplicationsByTypeAppTypeGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Application/getApplicationsByType/${this.configuration.encodeParam({name: \"appType\", value: appType, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param applicationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationGetMasterApplicationByIdApplicationIdGet(applicationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationGetMasterApplicationByIdApplicationIdGet(applicationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationGetMasterApplicationByIdApplicationIdGet(applicationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationGetMasterApplicationByIdApplicationIdGet(applicationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (applicationId === null || applicationId === undefined) {\n throw new Error('Required parameter applicationId was null or undefined when calling apiApplicationGetMasterApplicationByIdApplicationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Application/getMasterApplicationById/${this.configuration.encodeParam({name: \"applicationId\", value: applicationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationGetPagedApplicationsGet(sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationGetPagedApplicationsGet(sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationGetPagedApplicationsGet(sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationGetPagedApplicationsGet(sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Application/getPagedApplications`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param signInUrl \n * @param logoutUrl \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationTestConnectionGet(signInUrl: string, logoutUrl: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationTestConnectionGet(signInUrl: string, logoutUrl: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationTestConnectionGet(signInUrl: string, logoutUrl: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationTestConnectionGet(signInUrl: string, logoutUrl: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (signInUrl === null || signInUrl === undefined) {\n throw new Error('Required parameter signInUrl was null or undefined when calling apiApplicationTestConnectionGet.');\n }\n if (logoutUrl === null || logoutUrl === undefined) {\n throw new Error('Required parameter logoutUrl was null or undefined when calling apiApplicationTestConnectionGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (signInUrl !== undefined && signInUrl !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n signInUrl, 'SignInUrl');\n }\n if (logoutUrl !== undefined && logoutUrl !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n logoutUrl, 'LogoutUrl');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Application/testConnection`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param applicationModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationUpdateApplicationPut(applicationModel?: ApplicationModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationUpdateApplicationPut(applicationModel?: ApplicationModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationUpdateApplicationPut(applicationModel?: ApplicationModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationUpdateApplicationPut(applicationModel?: ApplicationModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Application/updateApplication`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: applicationModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Master Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CountryService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiCountryGetAllCountriesGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiCountryGetAllCountriesGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiCountryGetAllCountriesGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiCountryGetAllCountriesGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Country/getAllCountries`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Master Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DirectoryService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiDirectoryGetAllDirectoriesGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiDirectoryGetAllDirectoriesGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiDirectoryGetAllDirectoriesGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiDirectoryGetAllDirectoriesGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Directory/getAllDirectories`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param directoryId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiDirectoryGetDirectoryByIdDirectoryIdGet(directoryId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiDirectoryGetDirectoryByIdDirectoryIdGet(directoryId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiDirectoryGetDirectoryByIdDirectoryIdGet(directoryId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiDirectoryGetDirectoryByIdDirectoryIdGet(directoryId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (directoryId === null || directoryId === undefined) {\n throw new Error('Required parameter directoryId was null or undefined when calling apiDirectoryGetDirectoryByIdDirectoryIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Directory/getDirectoryById/${this.configuration.encodeParam({name: \"directoryId\", value: directoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Master Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DownloadsService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param downloadName \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiDownloadsDownloadNameGet(downloadName: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiDownloadsDownloadNameGet(downloadName: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiDownloadsDownloadNameGet(downloadName: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiDownloadsDownloadNameGet(downloadName: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (downloadName === null || downloadName === undefined) {\n throw new Error('Required parameter downloadName was null or undefined when calling apiDownloadsDownloadNameGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Downloads/${this.configuration.encodeParam({name: \"downloadName\", value: downloadName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiDownloadsGetUpdatesGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiDownloadsGetUpdatesGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiDownloadsGetUpdatesGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiDownloadsGetUpdatesGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Downloads/getUpdates`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param updateName \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiDownloadsGetVersionUpdateNameGet(updateName: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiDownloadsGetVersionUpdateNameGet(updateName: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiDownloadsGetVersionUpdateNameGet(updateName: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiDownloadsGetVersionUpdateNameGet(updateName: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (updateName === null || updateName === undefined) {\n throw new Error('Required parameter updateName was null or undefined when calling apiDownloadsGetVersionUpdateNameGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Downloads/getVersion/${this.configuration.encodeParam({name: \"updateName\", value: updateName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param updateName \n * @param version \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiDownloadsUpdateNameVersionPost(updateName: string, version: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiDownloadsUpdateNameVersionPost(updateName: string, version: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiDownloadsUpdateNameVersionPost(updateName: string, version: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiDownloadsUpdateNameVersionPost(updateName: string, version: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (updateName === null || updateName === undefined) {\n throw new Error('Required parameter updateName was null or undefined when calling apiDownloadsUpdateNameVersionPost.');\n }\n if (version === null || version === undefined) {\n throw new Error('Required parameter version was null or undefined when calling apiDownloadsUpdateNameVersionPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Downloads/${this.configuration.encodeParam({name: \"updateName\", value: updateName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"version\", value: version, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Master Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class EmployeeTypeService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiEmployeeTypeGetAllEmployeeTypesGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiEmployeeTypeGetAllEmployeeTypesGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiEmployeeTypeGetAllEmployeeTypesGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiEmployeeTypeGetAllEmployeeTypesGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/EmployeeType/getAllEmployeeTypes`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Master Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class JobTitleService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiJobTitleGetAllJobTitlesGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiJobTitleGetAllJobTitlesGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiJobTitleGetAllJobTitlesGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiJobTitleGetAllJobTitlesGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/JobTitle/getAllJobTitles`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Master Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { MessageTemplateModel } from '../model/messageTemplateModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MessageTemplateService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param messageTemplateModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiMessageTemplateCreatePost(messageTemplateModel?: MessageTemplateModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiMessageTemplateCreatePost(messageTemplateModel?: MessageTemplateModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMessageTemplateCreatePost(messageTemplateModel?: MessageTemplateModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMessageTemplateCreatePost(messageTemplateModel?: MessageTemplateModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/MessageTemplate/Create`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: messageTemplateModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param templateName \n * @param templateType \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiMessageTemplateGetGet(templateName?: string, templateType?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiMessageTemplateGetGet(templateName?: string, templateType?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMessageTemplateGetGet(templateName?: string, templateType?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMessageTemplateGetGet(templateName?: string, templateType?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (templateName !== undefined && templateName !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n templateName, 'templateName');\n }\n if (templateType !== undefined && templateType !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n templateType, 'templateType');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/MessageTemplate/Get`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param templateName \n * @param templateType \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiMessageTemplateGetListGet(templateName?: string, templateType?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiMessageTemplateGetListGet(templateName?: string, templateType?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMessageTemplateGetListGet(templateName?: string, templateType?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMessageTemplateGetListGet(templateName?: string, templateType?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (templateName !== undefined && templateName !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n templateName, 'templateName');\n }\n if (templateType !== undefined && templateType !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n templateType, 'templateType');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/MessageTemplate/GetList`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param messageTemplateModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiMessageTemplateUpdatePost(messageTemplateModel?: MessageTemplateModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiMessageTemplateUpdatePost(messageTemplateModel?: MessageTemplateModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMessageTemplateUpdatePost(messageTemplateModel?: MessageTemplateModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMessageTemplateUpdatePost(messageTemplateModel?: MessageTemplateModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/MessageTemplate/Update`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: messageTemplateModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Master Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class PredefinedAttributeService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param udTableName \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiPredefinedAttributeGetPredefinedAttributesByUdTableNameUdTableNameGet(udTableName: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiPredefinedAttributeGetPredefinedAttributesByUdTableNameUdTableNameGet(udTableName: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiPredefinedAttributeGetPredefinedAttributesByUdTableNameUdTableNameGet(udTableName: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiPredefinedAttributeGetPredefinedAttributesByUdTableNameUdTableNameGet(udTableName: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (udTableName === null || udTableName === undefined) {\n throw new Error('Required parameter udTableName was null or undefined when calling apiPredefinedAttributeGetPredefinedAttributesByUdTableNameUdTableNameGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/PredefinedAttribute/getPredefinedAttributesByUdTableName/${this.configuration.encodeParam({name: \"udTableName\", value: udTableName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Master Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { AttributeMappingModel } from '../model/attributeMappingModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class PredefinedAttributeMappingService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param attributeMappingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiPredefinedAttributeMappingAddNewPredefinedAttributeMappingPost(attributeMappingModel?: AttributeMappingModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiPredefinedAttributeMappingAddNewPredefinedAttributeMappingPost(attributeMappingModel?: AttributeMappingModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiPredefinedAttributeMappingAddNewPredefinedAttributeMappingPost(attributeMappingModel?: AttributeMappingModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiPredefinedAttributeMappingAddNewPredefinedAttributeMappingPost(attributeMappingModel?: AttributeMappingModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/PredefinedAttributeMapping/addNewPredefinedAttributeMapping`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: attributeMappingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param predefinedAttributeMappingId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiPredefinedAttributeMappingDeletePredefinedAttributeMappingPredefinedAttributeMappingIdDelete(predefinedAttributeMappingId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiPredefinedAttributeMappingDeletePredefinedAttributeMappingPredefinedAttributeMappingIdDelete(predefinedAttributeMappingId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiPredefinedAttributeMappingDeletePredefinedAttributeMappingPredefinedAttributeMappingIdDelete(predefinedAttributeMappingId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiPredefinedAttributeMappingDeletePredefinedAttributeMappingPredefinedAttributeMappingIdDelete(predefinedAttributeMappingId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (predefinedAttributeMappingId === null || predefinedAttributeMappingId === undefined) {\n throw new Error('Required parameter predefinedAttributeMappingId was null or undefined when calling apiPredefinedAttributeMappingDeletePredefinedAttributeMappingPredefinedAttributeMappingIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/PredefinedAttributeMapping/deletePredefinedAttributeMapping/${this.configuration.encodeParam({name: \"predefinedAttributeMappingId\", value: predefinedAttributeMappingId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param mappingId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiPredefinedAttributeMappingGetPredefinedAttributeMappingByIdMappingIdGet(mappingId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiPredefinedAttributeMappingGetPredefinedAttributeMappingByIdMappingIdGet(mappingId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiPredefinedAttributeMappingGetPredefinedAttributeMappingByIdMappingIdGet(mappingId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiPredefinedAttributeMappingGetPredefinedAttributeMappingByIdMappingIdGet(mappingId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (mappingId === null || mappingId === undefined) {\n throw new Error('Required parameter mappingId was null or undefined when calling apiPredefinedAttributeMappingGetPredefinedAttributeMappingByIdMappingIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/PredefinedAttributeMapping/getPredefinedAttributeMappingById/${this.configuration.encodeParam({name: \"mappingId\", value: mappingId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param directoryId \n * @param mappingType \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiPredefinedAttributeMappingGetPredefinedAttributeMappingsByMappingTypeDirectoryIdMappingTypeGet(directoryId: number, mappingType: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiPredefinedAttributeMappingGetPredefinedAttributeMappingsByMappingTypeDirectoryIdMappingTypeGet(directoryId: number, mappingType: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiPredefinedAttributeMappingGetPredefinedAttributeMappingsByMappingTypeDirectoryIdMappingTypeGet(directoryId: number, mappingType: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiPredefinedAttributeMappingGetPredefinedAttributeMappingsByMappingTypeDirectoryIdMappingTypeGet(directoryId: number, mappingType: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (directoryId === null || directoryId === undefined) {\n throw new Error('Required parameter directoryId was null or undefined when calling apiPredefinedAttributeMappingGetPredefinedAttributeMappingsByMappingTypeDirectoryIdMappingTypeGet.');\n }\n if (mappingType === null || mappingType === undefined) {\n throw new Error('Required parameter mappingType was null or undefined when calling apiPredefinedAttributeMappingGetPredefinedAttributeMappingsByMappingTypeDirectoryIdMappingTypeGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/PredefinedAttributeMapping/getPredefinedAttributeMappingsByMappingType/${this.configuration.encodeParam({name: \"directoryId\", value: directoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"mappingType\", value: mappingType, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param directoryId \n * @param udTableName \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiPredefinedAttributeMappingGetPredefinedAttributeMappingsByUDTableNameDirectoryIdUdTableNameGet(directoryId: number, udTableName: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiPredefinedAttributeMappingGetPredefinedAttributeMappingsByUDTableNameDirectoryIdUdTableNameGet(directoryId: number, udTableName: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiPredefinedAttributeMappingGetPredefinedAttributeMappingsByUDTableNameDirectoryIdUdTableNameGet(directoryId: number, udTableName: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiPredefinedAttributeMappingGetPredefinedAttributeMappingsByUDTableNameDirectoryIdUdTableNameGet(directoryId: number, udTableName: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (directoryId === null || directoryId === undefined) {\n throw new Error('Required parameter directoryId was null or undefined when calling apiPredefinedAttributeMappingGetPredefinedAttributeMappingsByUDTableNameDirectoryIdUdTableNameGet.');\n }\n if (udTableName === null || udTableName === undefined) {\n throw new Error('Required parameter udTableName was null or undefined when calling apiPredefinedAttributeMappingGetPredefinedAttributeMappingsByUDTableNameDirectoryIdUdTableNameGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/PredefinedAttributeMapping/getPredefinedAttributeMappingsByUDTableName/${this.configuration.encodeParam({name: \"directoryId\", value: directoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"udTableName\", value: udTableName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param directoryId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiPredefinedAttributeMappingGetPredefinedAttributeMappingsDirectoryIdGet(directoryId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiPredefinedAttributeMappingGetPredefinedAttributeMappingsDirectoryIdGet(directoryId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiPredefinedAttributeMappingGetPredefinedAttributeMappingsDirectoryIdGet(directoryId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiPredefinedAttributeMappingGetPredefinedAttributeMappingsDirectoryIdGet(directoryId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (directoryId === null || directoryId === undefined) {\n throw new Error('Required parameter directoryId was null or undefined when calling apiPredefinedAttributeMappingGetPredefinedAttributeMappingsDirectoryIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/PredefinedAttributeMapping/getPredefinedAttributeMappings/${this.configuration.encodeParam({name: \"directoryId\", value: directoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param attributeMappingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiPredefinedAttributeMappingUpdatePredefinedAttributeMappingPut(attributeMappingModel?: AttributeMappingModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiPredefinedAttributeMappingUpdatePredefinedAttributeMappingPut(attributeMappingModel?: AttributeMappingModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiPredefinedAttributeMappingUpdatePredefinedAttributeMappingPut(attributeMappingModel?: AttributeMappingModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiPredefinedAttributeMappingUpdatePredefinedAttributeMappingPut(attributeMappingModel?: AttributeMappingModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/PredefinedAttributeMapping/updatePredefinedAttributeMapping`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: attributeMappingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Master Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class QuestionSecretService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiQuestionSecretGetAllQuestionSecretGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiQuestionSecretGetAllQuestionSecretGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiQuestionSecretGetAllQuestionSecretGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiQuestionSecretGetAllQuestionSecretGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/QuestionSecret/GetAllQuestionSecret`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Master Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { RadiusServiceSettings } from '../model/radiusServiceSettings';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class RadiusServiceService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusServiceGeneralAttributesGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusServiceGeneralAttributesGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusServiceGeneralAttributesGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusServiceGeneralAttributesGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusService/generalAttributes`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusServiceGetRadiusDictionaryApiKeyGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusServiceGetRadiusDictionaryApiKeyGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusServiceGetRadiusDictionaryApiKeyGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusServiceGetRadiusDictionaryApiKeyGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusService/getRadiusDictionaryApiKey`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusServiceGetRadiusDictionaryGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusServiceGetRadiusDictionaryGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusServiceGetRadiusDictionaryGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusServiceGetRadiusDictionaryGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusService/getRadiusDictionary`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusServiceGetRadiusDirectoryGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusServiceGetRadiusDirectoryGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusServiceGetRadiusDirectoryGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusServiceGetRadiusDirectoryGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusService/getRadiusDirectory`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusServiceGetRadiusSettingGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusServiceGetRadiusSettingGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusServiceGetRadiusSettingGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusServiceGetRadiusSettingGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusService/getRadiusSetting`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param radiusServiceSettings \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusServiceSetRadiusSettingPost(radiusServiceSettings?: RadiusServiceSettings, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusServiceSetRadiusSettingPost(radiusServiceSettings?: RadiusServiceSettings, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusServiceSetRadiusSettingPost(radiusServiceSettings?: RadiusServiceSettings, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusServiceSetRadiusSettingPost(radiusServiceSettings?: RadiusServiceSettings, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusService/setRadiusSetting`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: radiusServiceSettings,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusServiceVenderListGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusServiceVenderListGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusServiceVenderListGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusServiceVenderListGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusService/venderList`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusServiceVendorAttributesIdGet(id: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusServiceVendorAttributesIdGet(id: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusServiceVendorAttributesIdGet(id: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusServiceVendorAttributesIdGet(id: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiRadiusServiceVendorAttributesIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusService/vendorAttributes/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int32\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Master Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ReleaseNotesService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiReleaseNotesGetAllReleaseNotesGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiReleaseNotesGetAllReleaseNotesGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiReleaseNotesGetAllReleaseNotesGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiReleaseNotesGetAllReleaseNotesGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ReleaseNotes/getAllReleaseNotes`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiReleaseNotesGetReleaseNotesGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiReleaseNotesGetReleaseNotesGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiReleaseNotesGetReleaseNotesGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiReleaseNotesGetReleaseNotesGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ReleaseNotes/getReleaseNotes`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Master Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SystemSettingService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param groupKey \n * @param key \n * @param component \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSystemSettingByOrganizationGet(groupKey?: string, key?: string, component?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSystemSettingByOrganizationGet(groupKey?: string, key?: string, component?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSystemSettingByOrganizationGet(groupKey?: string, key?: string, component?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSystemSettingByOrganizationGet(groupKey?: string, key?: string, component?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (groupKey !== undefined && groupKey !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n groupKey, 'groupKey');\n }\n if (key !== undefined && key !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n key, 'key');\n }\n if (component !== undefined && component !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n component, 'component');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SystemSetting/ByOrganization`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param groupKey \n * @param key \n * @param component \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSystemSettingGet(groupKey?: string, key?: string, component?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSystemSettingGet(groupKey?: string, key?: string, component?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSystemSettingGet(groupKey?: string, key?: string, component?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSystemSettingGet(groupKey?: string, key?: string, component?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (groupKey !== undefined && groupKey !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n groupKey, 'groupKey');\n }\n if (key !== undefined && key !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n key, 'key');\n }\n if (component !== undefined && component !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n component, 'component');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SystemSetting`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgCode \n * @param groupKey \n * @param key \n * @param component \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSystemSettingGetKeyValueGet(orgCode?: string, groupKey?: string, key?: string, component?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSystemSettingGetKeyValueGet(orgCode?: string, groupKey?: string, key?: string, component?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSystemSettingGetKeyValueGet(orgCode?: string, groupKey?: string, key?: string, component?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSystemSettingGetKeyValueGet(orgCode?: string, groupKey?: string, key?: string, component?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (orgCode !== undefined && orgCode !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n orgCode, 'orgCode');\n }\n if (groupKey !== undefined && groupKey !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n groupKey, 'groupKey');\n }\n if (key !== undefined && key !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n key, 'key');\n }\n if (component !== undefined && component !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n component, 'component');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SystemSetting/GetKeyValue`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param key \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSystemSettingMessageGet(key?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public apiSystemSettingMessageGet(key?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiSystemSettingMessageGet(key?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiSystemSettingMessageGet(key?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (key !== undefined && key !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n key, 'key');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SystemSetting/Message`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param groupKey \n * @param key \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSystemSettingValueGet(groupKey?: string, key?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSystemSettingValueGet(groupKey?: string, key?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSystemSettingValueGet(groupKey?: string, key?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSystemSettingValueGet(groupKey?: string, key?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (groupKey !== undefined && groupKey !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n groupKey, 'groupKey');\n }\n if (key !== undefined && key !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n key, 'key');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SystemSetting/value`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Master Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class VersionService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiVersionGetVersionGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiVersionGetVersionGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiVersionGetVersionGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiVersionGetVersionGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Version/getVersion`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","import { HttpParameterCodec } from '@angular/common/http';\nimport { Param } from './param';\n\nexport interface ConfigurationParameters {\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n apiKeys?: {[ key: string ]: string};\n username?: string;\n password?: string;\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n accessToken?: string | (() => string);\n basePath?: string;\n withCredentials?: boolean;\n /**\n * Takes care of encoding query- and form-parameters.\n */\n encoder?: HttpParameterCodec;\n /**\n * Override the default method for encoding path parameters in various\n * styles.\n *

\n * See {@link README.md} for more details\n *

\n */\n encodeParam?: (param: Param) => string;\n /**\n * The keys are the names in the securitySchemes section of the OpenAPI\n * document. They should map to the value used for authentication\n * minus any standard prefixes such as 'Basic' or 'Bearer'.\n */\n credentials?: {[ key: string ]: string | (() => string | undefined)};\n}\n\nexport class Configuration {\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n apiKeys?: {[ key: string ]: string};\n username?: string;\n password?: string;\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n accessToken?: string | (() => string);\n basePath?: string;\n withCredentials?: boolean;\n /**\n * Takes care of encoding query- and form-parameters.\n */\n encoder?: HttpParameterCodec;\n /**\n * Encoding of various path parameter\n * styles.\n *

\n * See {@link README.md} for more details\n *

\n */\n encodeParam: (param: Param) => string;\n /**\n * The keys are the names in the securitySchemes section of the OpenAPI\n * document. They should map to the value used for authentication\n * minus any standard prefixes such as 'Basic' or 'Bearer'.\n */\n credentials: {[ key: string ]: string | (() => string | undefined)};\n\n constructor(configurationParameters: ConfigurationParameters = {}) {\n this.apiKeys = configurationParameters.apiKeys;\n this.username = configurationParameters.username;\n this.password = configurationParameters.password;\n this.accessToken = configurationParameters.accessToken;\n this.basePath = configurationParameters.basePath;\n this.withCredentials = configurationParameters.withCredentials;\n this.encoder = configurationParameters.encoder;\n if (configurationParameters.encodeParam) {\n this.encodeParam = configurationParameters.encodeParam;\n }\n else {\n this.encodeParam = param => this.defaultEncodeParam(param);\n }\n if (configurationParameters.credentials) {\n this.credentials = configurationParameters.credentials;\n }\n else {\n this.credentials = {};\n }\n\n // init default Bearer credential\n if (!this.credentials['Bearer']) {\n this.credentials['Bearer'] = () => {\n if (this.apiKeys === null || this.apiKeys === undefined) {\n return undefined;\n } else {\n return this.apiKeys['Bearer'] || this.apiKeys['Authorization'];\n }\n };\n }\n }\n\n /**\n * Select the correct content-type to use for a request.\n * Uses {@link Configuration#isJsonMime} to determine the correct content-type.\n * If no content type is found return the first found type if the contentTypes is not empty\n * @param contentTypes - the array of content types that are available for selection\n * @returns the selected content-type or undefined if no selection could be made.\n */\n public selectHeaderContentType (contentTypes: string[]): string | undefined {\n if (contentTypes.length === 0) {\n return undefined;\n }\n\n const type = contentTypes.find((x: string) => this.isJsonMime(x));\n if (type === undefined) {\n return contentTypes[0];\n }\n return type;\n }\n\n /**\n * Select the correct accept content-type to use for a request.\n * Uses {@link Configuration#isJsonMime} to determine the correct accept content-type.\n * If no content type is found return the first found type if the contentTypes is not empty\n * @param accepts - the array of content types that are available for selection.\n * @returns the selected content-type or undefined if no selection could be made.\n */\n public selectHeaderAccept(accepts: string[]): string | undefined {\n if (accepts.length === 0) {\n return undefined;\n }\n\n const type = accepts.find((x: string) => this.isJsonMime(x));\n if (type === undefined) {\n return accepts[0];\n }\n return type;\n }\n\n /**\n * Check if the given MIME is a JSON MIME.\n * JSON MIME examples:\n * application/json\n * application/json; charset=UTF8\n * APPLICATION/JSON\n * application/vnd.company+json\n * @param mime - MIME (Multipurpose Internet Mail Extensions)\n * @return True if the given MIME is JSON, false otherwise.\n */\n public isJsonMime(mime: string): boolean {\n const jsonMime: RegExp = new RegExp('^(application\\/json|[^;/ \\t]+\\/[^;/ \\t]+[+]json)[ \\t]*(;.*)?$', 'i');\n return mime !== null && (jsonMime.test(mime) || mime.toLowerCase() === 'application/json-patch+json');\n }\n\n public lookupCredential(key: string): string | undefined {\n const value = this.credentials[key];\n return typeof value === 'function'\n ? value()\n : value;\n }\n\n private defaultEncodeParam(param: Param): string {\n // This implementation exists as fallback for missing configuration\n // and for backwards compatibility to older typescript-angular generator versions.\n // It only works for the 'simple' parameter style.\n // Date-handling only works for the 'date-time' format.\n // All other styles and Date-formats are probably handled incorrectly.\n //\n // But: if that's all you need (i.e.: the most common use-case): no need for customization!\n\n const value = param.dataFormat === 'date-time'\n ? (param.value as Date).toISOString()\n : param.value;\n\n return encodeURIComponent(String(value));\n }\n}\n","import { HttpParameterCodec } from '@angular/common/http';\n\n/**\n * Custom HttpParameterCodec\n * Workaround for https://github.com/angular/angular/issues/18261\n */\nexport class CustomHttpParameterCodec implements HttpParameterCodec {\n encodeKey(k: string): string {\n return encodeURIComponent(k);\n }\n encodeValue(v: string): string {\n return encodeURIComponent(v);\n }\n decodeKey(k: string): string {\n return decodeURIComponent(k);\n }\n decodeValue(v: string): string {\n return decodeURIComponent(v);\n }\n}\n","export * from './api/api';\nexport * from './model/models';\nexport * from './variables';\nexport * from './configuration';\nexport * from './api.module';\nexport * from './param';\n","/**\n * Master Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface ApplicationModel { \n applicationId?: number;\n applicationName: string;\n applicationLabel: string;\n description?: string | null;\n modifiedBy?: string | null;\n isActive?: boolean;\n isVerfied?: boolean;\n applicationMetadata: string;\n applicationType?: string | null;\n logoUrl?: string | null;\n mapping?: string | null;\n}\n\n","/**\n * Master Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface AttributeMappingModel { \n attributeMappingId?: number;\n directoryId: number;\n sourceColumnName: string;\n destinationColumnName: string;\n mappingType?: string | null;\n udTableName: string;\n isReadonly?: boolean;\n displayName?: string | null;\n description?: string | null;\n modifiedBy?: string | null;\n isActive?: boolean;\n isTypeReadOnly?: boolean;\n}\n\n","/**\n * Master Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface MessageTemplateModel { \n messageTemplateID?: number;\n subject: string;\n body: string;\n templateType: string;\n templateName: string;\n templateDisplayName: string;\n isActive: boolean;\n createdBy: string;\n modifiedBy: string;\n createdDate: string;\n modifiedDate: string;\n}\n\n","export * from './applicationModel';\nexport * from './attributeMappingModel';\nexport * from './messageTemplateModel';\nexport * from './radiusServiceSettings';\n","/**\n * Master Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface RadiusServiceSettings { \n isActive?: boolean;\n port: number;\n ipAddress?: string | null;\n}\n\n","/**\n * Standard parameter styles defined by OpenAPI spec\n */\nexport type StandardParamStyle =\n | 'matrix'\n | 'label'\n | 'form'\n | 'simple'\n | 'spaceDelimited'\n | 'pipeDelimited'\n | 'deepObject'\n ;\n\n/**\n * The OpenAPI standard {@link StandardParamStyle}s may be extended by custom styles by the user.\n */\nexport type ParamStyle = StandardParamStyle | string;\n\n/**\n * Standard parameter locations defined by OpenAPI spec\n */\nexport type ParamLocation = 'query' | 'header' | 'path' | 'cookie';\n\n/**\n * Standard types as defined in OpenAPI Specification: Data Types\n */\nexport type StandardDataType =\n | \"integer\"\n | \"number\"\n | \"boolean\"\n | \"string\"\n | \"object\"\n | \"array\"\n ;\n\n/**\n * Standard {@link DataType}s plus your own types/classes.\n */\nexport type DataType = StandardDataType | string;\n\n/**\n * Standard formats as defined in OpenAPI Specification: Data Types\n */\nexport type StandardDataFormat =\n | \"int32\"\n | \"int64\"\n | \"float\"\n | \"double\"\n | \"byte\"\n | \"binary\"\n | \"date\"\n | \"date-time\"\n | \"password\"\n ;\n\nexport type DataFormat = StandardDataFormat | string;\n\n/**\n * The parameter to encode.\n */\nexport interface Param {\n name: string;\n value: unknown;\n in: ParamLocation;\n style: ParamStyle,\n explode: boolean;\n dataType: DataType;\n dataFormat: DataFormat | undefined;\n}\n","import { InjectionToken } from '@angular/core';\n\nexport const BASE_PATH = new InjectionToken('basePath');\nexport const COLLECTION_FORMATS = {\n 'csv': ',',\n 'tsv': ' ',\n 'ssv': ' ',\n 'pipes': '|'\n}\n","import { NgModule, ModuleWithProviders, SkipSelf, Optional } from '@angular/core';\nimport { Configuration } from './configuration';\nimport { HttpClient } from '@angular/common/http';\n\nimport { ExportService } from './api/export.service';\nimport { ImportService } from './api/import.service';\nimport { VersionService } from './api/version.service';\n\n@NgModule({\n imports: [],\n declarations: [],\n exports: [],\n providers: []\n})\nexport class ApiModule {\n public static forRoot(configurationFactory: () => Configuration): ModuleWithProviders {\n return {\n ngModule: ApiModule,\n providers: [ { provide: Configuration, useFactory: configurationFactory } ]\n };\n }\n\n constructor( @Optional() @SkipSelf() parentModule: ApiModule,\n @Optional() http: HttpClient) {\n if (parentModule) {\n throw new Error('ApiModule is already loaded. Import in your base AppModule only.');\n }\n if (!http) {\n throw new Error('You need to import the HttpClientModule in your AppModule! \\n' +\n 'See also https://github.com/angular/angular/issues/20575');\n }\n }\n}\n","export * from './export.service';\nimport { ExportService } from './export.service';\nexport * from './import.service';\nimport { ImportService } from './import.service';\nexport * from './version.service'\nimport { VersionService} from './version.service';\nexport const APIS = [ExportService, ImportService,VersionService];\n","/**\n * SecurEnvoy.Migration\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: 1.0\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ExportService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param orgMnemonic \n * @param body \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiExportOrgMnemonicPost(orgMnemonic: string, body?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiExportOrgMnemonicPost(orgMnemonic: string, body?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiExportOrgMnemonicPost(orgMnemonic: string, body?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiExportOrgMnemonicPost(orgMnemonic: string, body?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgMnemonic === null || orgMnemonic === undefined) {\n throw new Error('Required parameter orgMnemonic was null or undefined when calling apiExportOrgMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Export/${this.configuration.encodeParam({name: \"orgMnemonic\", value: orgMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: body,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * SecurEnvoy.Migration\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: 1.0\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { ImportRequestModel } from '../model/importRequestModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ImportService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param importRequestModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiImportPost(importRequestModel?: ImportRequestModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiImportPost(importRequestModel?: ImportRequestModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiImportPost(importRequestModel?: ImportRequestModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiImportPost(importRequestModel?: ImportRequestModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Import`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: importRequestModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * SecurEnvoy.Migration\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class VersionService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiVersionGetVersionGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiVersionGetVersionGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiVersionGetVersionGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiVersionGetVersionGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Version/getVersion`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","import { HttpParameterCodec } from '@angular/common/http';\nimport { Param } from './param';\n\nexport interface ConfigurationParameters {\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n apiKeys?: {[ key: string ]: string};\n username?: string;\n password?: string;\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n accessToken?: string | (() => string);\n basePath?: string;\n withCredentials?: boolean;\n /**\n * Takes care of encoding query- and form-parameters.\n */\n encoder?: HttpParameterCodec;\n /**\n * Override the default method for encoding path parameters in various\n * styles.\n *

\n * See {@link README.md} for more details\n *

\n */\n encodeParam?: (param: Param) => string;\n /**\n * The keys are the names in the securitySchemes section of the OpenAPI\n * document. They should map to the value used for authentication\n * minus any standard prefixes such as 'Basic' or 'Bearer'.\n */\n credentials?: {[ key: string ]: string | (() => string | undefined)};\n}\n\nexport class Configuration {\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n apiKeys?: {[ key: string ]: string};\n username?: string;\n password?: string;\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n accessToken?: string | (() => string);\n basePath?: string;\n withCredentials?: boolean;\n /**\n * Takes care of encoding query- and form-parameters.\n */\n encoder?: HttpParameterCodec;\n /**\n * Encoding of various path parameter\n * styles.\n *

\n * See {@link README.md} for more details\n *

\n */\n encodeParam: (param: Param) => string;\n /**\n * The keys are the names in the securitySchemes section of the OpenAPI\n * document. They should map to the value used for authentication\n * minus any standard prefixes such as 'Basic' or 'Bearer'.\n */\n credentials: {[ key: string ]: string | (() => string | undefined)};\n\n constructor(configurationParameters: ConfigurationParameters = {}) {\n this.apiKeys = configurationParameters.apiKeys;\n this.username = configurationParameters.username;\n this.password = configurationParameters.password;\n this.accessToken = configurationParameters.accessToken;\n this.basePath = configurationParameters.basePath;\n this.withCredentials = configurationParameters.withCredentials;\n this.encoder = configurationParameters.encoder;\n if (configurationParameters.encodeParam) {\n this.encodeParam = configurationParameters.encodeParam;\n }\n else {\n this.encodeParam = param => this.defaultEncodeParam(param);\n }\n if (configurationParameters.credentials) {\n this.credentials = configurationParameters.credentials;\n }\n else {\n this.credentials = {};\n }\n\n // init default Bearer credential\n if (!this.credentials['Bearer']) {\n this.credentials['Bearer'] = () => {\n if (this.apiKeys === null || this.apiKeys === undefined) {\n return undefined;\n } else {\n return this.apiKeys['Bearer'] || this.apiKeys['Authorization'];\n }\n };\n }\n }\n\n /**\n * Select the correct content-type to use for a request.\n * Uses {@link Configuration#isJsonMime} to determine the correct content-type.\n * If no content type is found return the first found type if the contentTypes is not empty\n * @param contentTypes - the array of content types that are available for selection\n * @returns the selected content-type or undefined if no selection could be made.\n */\n public selectHeaderContentType (contentTypes: string[]): string | undefined {\n if (contentTypes.length === 0) {\n return undefined;\n }\n\n const type = contentTypes.find((x: string) => this.isJsonMime(x));\n if (type === undefined) {\n return contentTypes[0];\n }\n return type;\n }\n\n /**\n * Select the correct accept content-type to use for a request.\n * Uses {@link Configuration#isJsonMime} to determine the correct accept content-type.\n * If no content type is found return the first found type if the contentTypes is not empty\n * @param accepts - the array of content types that are available for selection.\n * @returns the selected content-type or undefined if no selection could be made.\n */\n public selectHeaderAccept(accepts: string[]): string | undefined {\n if (accepts.length === 0) {\n return undefined;\n }\n\n const type = accepts.find((x: string) => this.isJsonMime(x));\n if (type === undefined) {\n return accepts[0];\n }\n return type;\n }\n\n /**\n * Check if the given MIME is a JSON MIME.\n * JSON MIME examples:\n * application/json\n * application/json; charset=UTF8\n * APPLICATION/JSON\n * application/vnd.company+json\n * @param mime - MIME (Multipurpose Internet Mail Extensions)\n * @return True if the given MIME is JSON, false otherwise.\n */\n public isJsonMime(mime: string): boolean {\n const jsonMime: RegExp = new RegExp('^(application\\/json|[^;/ \\t]+\\/[^;/ \\t]+[+]json)[ \\t]*(;.*)?$', 'i');\n return mime !== null && (jsonMime.test(mime) || mime.toLowerCase() === 'application/json-patch+json');\n }\n\n public lookupCredential(key: string): string | undefined {\n const value = this.credentials[key];\n return typeof value === 'function'\n ? value()\n : value;\n }\n\n private defaultEncodeParam(param: Param): string {\n // This implementation exists as fallback for missing configuration\n // and for backwards compatibility to older typescript-angular generator versions.\n // It only works for the 'simple' parameter style.\n // Date-handling only works for the 'date-time' format.\n // All other styles and Date-formats are probably handled incorrectly.\n //\n // But: if that's all you need (i.e.: the most common use-case): no need for customization!\n\n const value = param.dataFormat === 'date-time'\n ? (param.value as Date).toISOString()\n : param.value;\n\n return encodeURIComponent(String(value));\n }\n}\n","import { HttpParameterCodec } from '@angular/common/http';\n\n/**\n * Custom HttpParameterCodec\n * Workaround for https://github.com/angular/angular/issues/18261\n */\nexport class CustomHttpParameterCodec implements HttpParameterCodec {\n encodeKey(k: string): string {\n return encodeURIComponent(k);\n }\n encodeValue(v: string): string {\n return encodeURIComponent(v);\n }\n decodeKey(k: string): string {\n return decodeURIComponent(k);\n }\n decodeValue(v: string): string {\n return decodeURIComponent(v);\n }\n}\n","export * from './api/api';\nexport * from './model/models';\nexport * from './variables';\nexport * from './configuration';\nexport * from './api.module';\nexport * from './param';\n","/**\n * SecurEnvoy.Migration\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: 1.0\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { ConditionalAccessData } from './conditionalAccessData';\nimport { OrganizationData } from './organizationData';\nimport { UserData } from './userData';\nimport { IdentityData } from './identityData';\n\n\nexport interface AllData { \n identity?: IdentityData;\n conditionalAccess?: ConditionalAccessData;\n organization?: OrganizationData;\n user?: UserData;\n}\n\n","/**\n * SecurEnvoy.Migration\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: 1.0\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { QueryResult } from './queryResult';\n\n\nexport interface ConditionalAccessData { \n organizationSettings?: QueryResult;\n policies?: QueryResult;\n policyStats?: QueryResult;\n rules?: QueryResult;\n}\n\n","/**\n * SecurEnvoy.Migration\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: 1.0\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { QueryResult } from './queryResult';\n\n\nexport interface IdentityData { \n authenticationTypes?: QueryResult;\n hardwareTokens?: QueryResult;\n loginHistory?: QueryResult;\n passwordHistory?: QueryResult;\n userCredentials?: QueryResult;\n secretAnswers?: QueryResult;\n}\n\n","/**\n * SecurEnvoy.Migration\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: 1.0\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { AllData } from './allData';\n\n\nexport interface ImportRequestModel { \n connectionString?: string | null;\n data?: AllData;\n}\n\n","export * from './allData';\nexport * from './conditionalAccessData';\nexport * from './identityData';\nexport * from './importRequestModel';\nexport * from './organizationData';\nexport * from './queryResult';\nexport * from './userData';\n","/**\n * SecurEnvoy.Migration\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: 1.0\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { QueryResult } from './queryResult';\n\n\nexport interface OrganizationData { \n appSettings?: QueryResult;\n attributeMappings?: QueryResult;\n attributeMetadata?: QueryResult;\n groups?: QueryResult;\n groupApplications?: QueryResult;\n groupDirectories?: QueryResult;\n messageTemplate?: QueryResult;\n organization?: QueryResult;\n directories?: QueryResult;\n radiusClients?: QueryResult;\n radiusAttributeMappings?: QueryResult;\n secretQuestions?: QueryResult;\n settings?: QueryResult;\n safeLocations?: QueryResult;\n securitySettings?: QueryResult;\n syncServiceHistories?: QueryResult;\n theme?: QueryResult;\n}\n\n","/**\n * SecurEnvoy.Migration\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: 1.0\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface QueryResult { \n columnNames?: Array | null;\n rows?: Array> | null;\n}\n\n","/**\n * SecurEnvoy.Migration\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: 1.0\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { QueryResult } from './queryResult';\n\n\nexport interface UserData { \n forgetPasswords?: QueryResult;\n users?: QueryResult;\n applications?: QueryResult;\n customAttributes?: QueryResult;\n directories?: QueryResult;\n groups?: QueryResult;\n groupApplications?: QueryResult;\n settings?: QueryResult;\n}\n\n","/**\n * Standard parameter styles defined by OpenAPI spec\n */\nexport type StandardParamStyle =\n | 'matrix'\n | 'label'\n | 'form'\n | 'simple'\n | 'spaceDelimited'\n | 'pipeDelimited'\n | 'deepObject'\n ;\n\n/**\n * The OpenAPI standard {@link StandardParamStyle}s may be extended by custom styles by the user.\n */\nexport type ParamStyle = StandardParamStyle | string;\n\n/**\n * Standard parameter locations defined by OpenAPI spec\n */\nexport type ParamLocation = 'query' | 'header' | 'path' | 'cookie';\n\n/**\n * Standard types as defined in OpenAPI Specification: Data Types\n */\nexport type StandardDataType =\n | \"integer\"\n | \"number\"\n | \"boolean\"\n | \"string\"\n | \"object\"\n | \"array\"\n ;\n\n/**\n * Standard {@link DataType}s plus your own types/classes.\n */\nexport type DataType = StandardDataType | string;\n\n/**\n * Standard formats as defined in OpenAPI Specification: Data Types\n */\nexport type StandardDataFormat =\n | \"int32\"\n | \"int64\"\n | \"float\"\n | \"double\"\n | \"byte\"\n | \"binary\"\n | \"date\"\n | \"date-time\"\n | \"password\"\n ;\n\nexport type DataFormat = StandardDataFormat | string;\n\n/**\n * The parameter to encode.\n */\nexport interface Param {\n name: string;\n value: unknown;\n in: ParamLocation;\n style: ParamStyle,\n explode: boolean;\n dataType: DataType;\n dataFormat: DataFormat | undefined;\n}\n","import { InjectionToken } from '@angular/core';\n\nexport const BASE_PATH = new InjectionToken('basePath');\nexport const COLLECTION_FORMATS = {\n 'csv': ',',\n 'tsv': ' ',\n 'ssv': ' ',\n 'pipes': '|'\n}\n","import { NgModule, ModuleWithProviders, SkipSelf, Optional } from '@angular/core';\nimport { Configuration } from './configuration';\nimport { HttpClient } from '@angular/common/http';\n\nimport { ADSyncService } from './api/aDSync.service';\nimport { AgentService } from './api/agent.service';\nimport { VersionService } from './api/version.service';\n\n@NgModule({\n imports: [],\n declarations: [],\n exports: [],\n providers: []\n})\nexport class ApiModule {\n public static forRoot(configurationFactory: () => Configuration): ModuleWithProviders {\n return {\n ngModule: ApiModule,\n providers: [ { provide: Configuration, useFactory: configurationFactory } ]\n };\n }\n\n constructor( @Optional() @SkipSelf() parentModule: ApiModule,\n @Optional() http: HttpClient) {\n if (parentModule) {\n throw new Error('ApiModule is already loaded. Import in your base AppModule only.');\n }\n if (!http) {\n throw new Error('You need to import the HttpClientModule in your AppModule! \\n' +\n 'See also https://github.com/angular/angular/issues/20575');\n }\n }\n}\n","/**\n * Notification Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { UserAuthenticationModel } from '../model/userAuthenticationModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ADSyncService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param userAuthenticationModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiADSyncAuthenticationadsyncuserPost(userAuthenticationModel?: UserAuthenticationModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiADSyncAuthenticationadsyncuserPost(userAuthenticationModel?: UserAuthenticationModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiADSyncAuthenticationadsyncuserPost(userAuthenticationModel?: UserAuthenticationModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiADSyncAuthenticationadsyncuserPost(userAuthenticationModel?: UserAuthenticationModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ADSync/authenticationadsyncuser`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userAuthenticationModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userAuthenticationModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiADSyncPut(userAuthenticationModel?: UserAuthenticationModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiADSyncPut(userAuthenticationModel?: UserAuthenticationModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiADSyncPut(userAuthenticationModel?: UserAuthenticationModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiADSyncPut(userAuthenticationModel?: UserAuthenticationModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ADSync`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userAuthenticationModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiADSyncTestIdPost(id: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiADSyncTestIdPost(id: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiADSyncTestIdPost(id: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiADSyncTestIdPost(id: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiADSyncTestIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ADSync/Test/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Notification Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { ApiKeyVerificationModel } from '../model/apiKeyVerificationModel';\n// @ts-ignore\nimport { DirectoryConfiguration } from '../model/directoryConfiguration';\n// @ts-ignore\nimport { RadiusConfiguration } from '../model/radiusConfiguration';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AgentService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param id \n * @param apiKeyVerificationModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAgentCheckApiKeyIdPost(id: string, apiKeyVerificationModel?: ApiKeyVerificationModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAgentCheckApiKeyIdPost(id: string, apiKeyVerificationModel?: ApiKeyVerificationModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentCheckApiKeyIdPost(id: string, apiKeyVerificationModel?: ApiKeyVerificationModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentCheckApiKeyIdPost(id: string, apiKeyVerificationModel?: ApiKeyVerificationModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAgentCheckApiKeyIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Agent/checkApiKey/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: apiKeyVerificationModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param directoryConfiguration \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAgentGetGroupsIdGet(id: string, directoryConfiguration?: DirectoryConfiguration, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAgentGetGroupsIdGet(id: string, directoryConfiguration?: DirectoryConfiguration, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentGetGroupsIdGet(id: string, directoryConfiguration?: DirectoryConfiguration, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentGetGroupsIdGet(id: string, directoryConfiguration?: DirectoryConfiguration, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAgentGetGroupsIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Agent/getGroups/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: directoryConfiguration,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param destination \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAgentGetLogsGet(id?: string, destination?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAgentGetLogsGet(id?: string, destination?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentGetLogsGet(id?: string, destination?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentGetLogsGet(id?: string, destination?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (id !== undefined && id !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n id, 'id');\n }\n if (destination !== undefined && destination !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n destination, 'destination');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Agent/getLogs`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param destination \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAgentPingGet(id?: string, destination?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAgentPingGet(id?: string, destination?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentPingGet(id?: string, destination?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentPingGet(id?: string, destination?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (id !== undefined && id !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n id, 'id');\n }\n if (destination !== undefined && destination !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n destination, 'destination');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Agent/ping`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param directoryConfiguration \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAgentSetDirectoryConfigurationPost(id?: string, directoryConfiguration?: DirectoryConfiguration, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAgentSetDirectoryConfigurationPost(id?: string, directoryConfiguration?: DirectoryConfiguration, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentSetDirectoryConfigurationPost(id?: string, directoryConfiguration?: DirectoryConfiguration, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentSetDirectoryConfigurationPost(id?: string, directoryConfiguration?: DirectoryConfiguration, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (id !== undefined && id !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n id, 'id');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Agent/setDirectoryConfiguration`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: directoryConfiguration,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param radiusConfiguration \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAgentSetRadiusConfigurationPost(id?: string, radiusConfiguration?: RadiusConfiguration, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAgentSetRadiusConfigurationPost(id?: string, radiusConfiguration?: RadiusConfiguration, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentSetRadiusConfigurationPost(id?: string, radiusConfiguration?: RadiusConfiguration, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentSetRadiusConfigurationPost(id?: string, radiusConfiguration?: RadiusConfiguration, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (id !== undefined && id !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n id, 'id');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Agent/setRadiusConfiguration`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: radiusConfiguration,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param destination \n * @param directoryConfiguration \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAgentTestConfigurationIdDestinationPost(id: string, destination: string, directoryConfiguration?: DirectoryConfiguration, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAgentTestConfigurationIdDestinationPost(id: string, destination: string, directoryConfiguration?: DirectoryConfiguration, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentTestConfigurationIdDestinationPost(id: string, destination: string, directoryConfiguration?: DirectoryConfiguration, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentTestConfigurationIdDestinationPost(id: string, destination: string, directoryConfiguration?: DirectoryConfiguration, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAgentTestConfigurationIdDestinationPost.');\n }\n if (destination === null || destination === undefined) {\n throw new Error('Required parameter destination was null or undefined when calling apiAgentTestConfigurationIdDestinationPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Agent/testConfiguration/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"destination\", value: destination, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: directoryConfiguration,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","export * from './aDSync.service';\nimport { ADSyncService } from './aDSync.service';\nexport * from './agent.service';\nimport { AgentService } from './agent.service';\nexport * from './version.service';\nimport { VersionService } from './version.service';\nexport const APIS = [ADSyncService, AgentService, VersionService];\n","/**\n * Notification Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class VersionService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiVersionGetVersionGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiVersionGetVersionGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiVersionGetVersionGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiVersionGetVersionGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Version/getVersion`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","import { HttpParameterCodec } from '@angular/common/http';\nimport { Param } from './param';\n\nexport interface ConfigurationParameters {\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n apiKeys?: {[ key: string ]: string};\n username?: string;\n password?: string;\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n accessToken?: string | (() => string);\n basePath?: string;\n withCredentials?: boolean;\n /**\n * Takes care of encoding query- and form-parameters.\n */\n encoder?: HttpParameterCodec;\n /**\n * Override the default method for encoding path parameters in various\n * styles.\n *

\n * See {@link README.md} for more details\n *

\n */\n encodeParam?: (param: Param) => string;\n /**\n * The keys are the names in the securitySchemes section of the OpenAPI\n * document. They should map to the value used for authentication\n * minus any standard prefixes such as 'Basic' or 'Bearer'.\n */\n credentials?: {[ key: string ]: string | (() => string | undefined)};\n}\n\nexport class Configuration {\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n apiKeys?: {[ key: string ]: string};\n username?: string;\n password?: string;\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n accessToken?: string | (() => string);\n basePath?: string;\n withCredentials?: boolean;\n /**\n * Takes care of encoding query- and form-parameters.\n */\n encoder?: HttpParameterCodec;\n /**\n * Encoding of various path parameter\n * styles.\n *

\n * See {@link README.md} for more details\n *

\n */\n encodeParam: (param: Param) => string;\n /**\n * The keys are the names in the securitySchemes section of the OpenAPI\n * document. They should map to the value used for authentication\n * minus any standard prefixes such as 'Basic' or 'Bearer'.\n */\n credentials: {[ key: string ]: string | (() => string | undefined)};\n\n constructor(configurationParameters: ConfigurationParameters = {}) {\n this.apiKeys = configurationParameters.apiKeys;\n this.username = configurationParameters.username;\n this.password = configurationParameters.password;\n this.accessToken = configurationParameters.accessToken;\n this.basePath = configurationParameters.basePath;\n this.withCredentials = configurationParameters.withCredentials;\n this.encoder = configurationParameters.encoder;\n if (configurationParameters.encodeParam) {\n this.encodeParam = configurationParameters.encodeParam;\n }\n else {\n this.encodeParam = param => this.defaultEncodeParam(param);\n }\n if (configurationParameters.credentials) {\n this.credentials = configurationParameters.credentials;\n }\n else {\n this.credentials = {};\n }\n\n // init default Bearer credential\n if (!this.credentials['Bearer']) {\n this.credentials['Bearer'] = () => {\n if (this.apiKeys === null || this.apiKeys === undefined) {\n return undefined;\n } else {\n return this.apiKeys['Bearer'] || this.apiKeys['Authorization'];\n }\n };\n }\n }\n\n /**\n * Select the correct content-type to use for a request.\n * Uses {@link Configuration#isJsonMime} to determine the correct content-type.\n * If no content type is found return the first found type if the contentTypes is not empty\n * @param contentTypes - the array of content types that are available for selection\n * @returns the selected content-type or undefined if no selection could be made.\n */\n public selectHeaderContentType (contentTypes: string[]): string | undefined {\n if (contentTypes.length === 0) {\n return undefined;\n }\n\n const type = contentTypes.find((x: string) => this.isJsonMime(x));\n if (type === undefined) {\n return contentTypes[0];\n }\n return type;\n }\n\n /**\n * Select the correct accept content-type to use for a request.\n * Uses {@link Configuration#isJsonMime} to determine the correct accept content-type.\n * If no content type is found return the first found type if the contentTypes is not empty\n * @param accepts - the array of content types that are available for selection.\n * @returns the selected content-type or undefined if no selection could be made.\n */\n public selectHeaderAccept(accepts: string[]): string | undefined {\n if (accepts.length === 0) {\n return undefined;\n }\n\n const type = accepts.find((x: string) => this.isJsonMime(x));\n if (type === undefined) {\n return accepts[0];\n }\n return type;\n }\n\n /**\n * Check if the given MIME is a JSON MIME.\n * JSON MIME examples:\n * application/json\n * application/json; charset=UTF8\n * APPLICATION/JSON\n * application/vnd.company+json\n * @param mime - MIME (Multipurpose Internet Mail Extensions)\n * @return True if the given MIME is JSON, false otherwise.\n */\n public isJsonMime(mime: string): boolean {\n const jsonMime: RegExp = new RegExp('^(application\\/json|[^;/ \\t]+\\/[^;/ \\t]+[+]json)[ \\t]*(;.*)?$', 'i');\n return mime !== null && (jsonMime.test(mime) || mime.toLowerCase() === 'application/json-patch+json');\n }\n\n public lookupCredential(key: string): string | undefined {\n const value = this.credentials[key];\n return typeof value === 'function'\n ? value()\n : value;\n }\n\n private defaultEncodeParam(param: Param): string {\n // This implementation exists as fallback for missing configuration\n // and for backwards compatibility to older typescript-angular generator versions.\n // It only works for the 'simple' parameter style.\n // Date-handling only works for the 'date-time' format.\n // All other styles and Date-formats are probably handled incorrectly.\n //\n // But: if that's all you need (i.e.: the most common use-case): no need for customization!\n\n const value = param.dataFormat === 'date-time'\n ? (param.value as Date).toISOString()\n : param.value;\n\n return encodeURIComponent(String(value));\n }\n}\n","import { HttpParameterCodec } from '@angular/common/http';\n\n/**\n * Custom HttpParameterCodec\n * Workaround for https://github.com/angular/angular/issues/18261\n */\nexport class CustomHttpParameterCodec implements HttpParameterCodec {\n encodeKey(k: string): string {\n return encodeURIComponent(k);\n }\n encodeValue(v: string): string {\n return encodeURIComponent(v);\n }\n decodeKey(k: string): string {\n return decodeURIComponent(k);\n }\n decodeValue(v: string): string {\n return decodeURIComponent(v);\n }\n}\n","export * from './api/api';\nexport * from './model/models';\nexport * from './variables';\nexport * from './configuration';\nexport * from './api.module';\nexport * from './param';\n","/**\n * Notification Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface ApiKeyVerificationModel { \n destination?: string | null;\n key?: string | null;\n}\n\n","/**\n * Notification Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { DirectoryType } from './directoryType';\n\n\nexport interface DirectoryConfiguration { \n zone?: string | null;\n domainName?: string | null;\n subdomainName?: string | null;\n netbiosName?: string | null;\n directoryType?: DirectoryType;\n authType?: number;\n groups?: Array | null;\n importGroup?: string | null;\n userAccount?: string | null;\n organizationId?: number;\n directoryId?: number;\n organizationDirectoryId?: number;\n isImportGroup?: boolean;\n isExportGroup?: boolean;\n isImportUser?: boolean;\n isExportUser?: boolean;\n isImportCustomAttribute?: boolean;\n isExportCustomAttribute?: boolean;\n destination?: string | null;\n port?: number;\n address?: string | null;\n password?: string | null;\n username?: string | null;\n}\n\n","/**\n * Notification Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport type DirectoryType = 'ActiveDirectory' | 'LDAP';\n\nexport const DirectoryType = {\n ActiveDirectory: 'ActiveDirectory' as DirectoryType,\n Ldap: 'LDAP' as DirectoryType\n};\n\n","export * from './apiKeyVerificationModel';\nexport * from './directoryConfiguration';\nexport * from './directoryType';\nexport * from './radiusConfiguration';\nexport * from './userAuthenticationModel';\n","/**\n * Notification Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface RadiusConfiguration { \n port?: number;\n ipAddress?: string | null;\n radiusReplyTimeout?: number;\n clientsQueryInterval?: number;\n tokenSetting?: string | null;\n}\n\n","/**\n * Notification Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface UserAuthenticationModel { \n mnemonic?: string | null;\n notificationId?: string | null;\n organizationDirectoryId?: number;\n username?: string | null;\n password?: string | null;\n directoryName?: string | null;\n authenticationStatus?: boolean;\n}\n\n","/**\n * Standard parameter styles defined by OpenAPI spec\n */\nexport type StandardParamStyle =\n | 'matrix'\n | 'label'\n | 'form'\n | 'simple'\n | 'spaceDelimited'\n | 'pipeDelimited'\n | 'deepObject'\n ;\n\n/**\n * The OpenAPI standard {@link StandardParamStyle}s may be extended by custom styles by the user.\n */\nexport type ParamStyle = StandardParamStyle | string;\n\n/**\n * Standard parameter locations defined by OpenAPI spec\n */\nexport type ParamLocation = 'query' | 'header' | 'path' | 'cookie';\n\n/**\n * Standard types as defined in OpenAPI Specification: Data Types\n */\nexport type StandardDataType =\n | \"integer\"\n | \"number\"\n | \"boolean\"\n | \"string\"\n | \"object\"\n | \"array\"\n ;\n\n/**\n * Standard {@link DataType}s plus your own types/classes.\n */\nexport type DataType = StandardDataType | string;\n\n/**\n * Standard formats as defined in OpenAPI Specification: Data Types\n */\nexport type StandardDataFormat =\n | \"int32\"\n | \"int64\"\n | \"float\"\n | \"double\"\n | \"byte\"\n | \"binary\"\n | \"date\"\n | \"date-time\"\n | \"password\"\n ;\n\nexport type DataFormat = StandardDataFormat | string;\n\n/**\n * The parameter to encode.\n */\nexport interface Param {\n name: string;\n value: unknown;\n in: ParamLocation;\n style: ParamStyle,\n explode: boolean;\n dataType: DataType;\n dataFormat: DataFormat | undefined;\n}\n","import { InjectionToken } from '@angular/core';\n\nexport const BASE_PATH = new InjectionToken('basePath');\nexport const COLLECTION_FORMATS = {\n 'csv': ',',\n 'tsv': ' ',\n 'ssv': ' ',\n 'pipes': '|'\n}\n","import { NgModule, ModuleWithProviders, SkipSelf, Optional } from '@angular/core';\nimport { Configuration } from './configuration';\nimport { HttpClient } from '@angular/common/http';\n\nimport { AgentService } from './api/agent.service';\nimport { ApplicationSettingService } from './api/applicationSetting.service';\nimport { AttributeMappingService } from './api/attributeMapping.service';\nimport { AttributeMetadataService } from './api/attributeMetadata.service';\nimport { DepartmentService } from './api/department.service';\nimport { DeploymentDetailService } from './api/deploymentDetail.service';\nimport { ExpressionService } from './api/expression.service';\nimport { GroupService } from './api/group.service';\nimport { GroupApplicationService } from './api/groupApplication.service';\nimport { GroupDirectoryService } from './api/groupDirectory.service';\nimport { LicenceService } from './api/licence.service';\nimport { LoggerSettingService } from './api/loggerSetting.service';\nimport { MessageTemplateService } from './api/messageTemplate.service';\nimport { MspService } from './api/msp.service';\nimport { OrganizationService } from './api/organization.service';\nimport { OrganizationApplicationService } from './api/organizationApplication.service';\nimport { OrganizationDirectoryService } from './api/organizationDirectory.service';\nimport { OrganizationQuestionSecretService } from './api/organizationQuestionSecret.service';\nimport { OrganizationSettingService } from './api/organizationSetting.service';\nimport { RadiusClientService } from './api/radiusClient.service';\nimport { RadiusMappingService } from './api/radiusMapping.service';\nimport { ReportsService } from './api/reports.service';\nimport { SafeLocationsService } from './api/safeLocations.service';\nimport { SecuritySettingService } from './api/securitySetting.service';\nimport { SyncServiceHistoryService } from './api/syncServiceHistory.service';\nimport { SyslogClientService } from './api/syslogClient.service';\nimport { TenantCleanupService } from './api/tenantCleanup.service';\nimport { ThemeService } from './api/theme.service';\nimport { VersionService } from './api/version.service';\nimport { WindowsLogonService } from './api/windowsLogon.service';\n\n@NgModule({\n imports: [],\n declarations: [],\n exports: [],\n providers: []\n})\nexport class ApiModule {\n public static forRoot(configurationFactory: () => Configuration): ModuleWithProviders {\n return {\n ngModule: ApiModule,\n providers: [ { provide: Configuration, useFactory: configurationFactory } ]\n };\n }\n\n constructor( @Optional() @SkipSelf() parentModule: ApiModule,\n @Optional() http: HttpClient) {\n if (parentModule) {\n throw new Error('ApiModule is already loaded. Import in your base AppModule only.');\n }\n if (!http) {\n throw new Error('You need to import the HttpClientModule in your AppModule! \\n' +\n 'See also https://github.com/angular/angular/issues/20575');\n }\n }\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { AgentModel } from '../model/agentModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AgentService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationMnemonic \n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAgentByOrgKeyApiKeyGet(organizationMnemonic: string, id: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAgentByOrgKeyApiKeyGet(organizationMnemonic: string, id: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentByOrgKeyApiKeyGet(organizationMnemonic: string, id: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentByOrgKeyApiKeyGet(organizationMnemonic: string, id: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAgentByOrgKeyApiKeyGet.');\n }\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAgentByOrgKeyApiKeyGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Agent/ByOrgKeyApiKey`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAgentByOrgKeyApiKeyOrganizationMnemonicIdGet(organizationMnemonic: string, id: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAgentByOrgKeyApiKeyOrganizationMnemonicIdGet(organizationMnemonic: string, id: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentByOrgKeyApiKeyOrganizationMnemonicIdGet(organizationMnemonic: string, id: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentByOrgKeyApiKeyOrganizationMnemonicIdGet(organizationMnemonic: string, id: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAgentByOrgKeyApiKeyOrganizationMnemonicIdGet.');\n }\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAgentByOrgKeyApiKeyOrganizationMnemonicIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Agent/ByOrgKeyApiKey/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAgentByOrgKeyGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAgentByOrgKeyGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentByOrgKeyGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentByOrgKeyGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAgentByOrgKeyGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Agent/ByOrgKey`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAgentByOrgKeyOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAgentByOrgKeyOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentByOrgKeyOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentByOrgKeyOrganizationMnemonicGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAgentByOrgKeyOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Agent/ByOrgKey/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAgentDeleteDirectoryAgentIdDelete(organizationMnemonic: string, id: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAgentDeleteDirectoryAgentIdDelete(organizationMnemonic: string, id: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentDeleteDirectoryAgentIdDelete(organizationMnemonic: string, id: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentDeleteDirectoryAgentIdDelete(organizationMnemonic: string, id: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAgentDeleteDirectoryAgentIdDelete.');\n }\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAgentDeleteDirectoryAgentIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Agent/deleteDirectoryAgent/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAgentDeleteDirectoryAgentIdOrganizationMnemonicDelete(organizationMnemonic: string, id: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAgentDeleteDirectoryAgentIdOrganizationMnemonicDelete(organizationMnemonic: string, id: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentDeleteDirectoryAgentIdOrganizationMnemonicDelete(organizationMnemonic: string, id: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentDeleteDirectoryAgentIdOrganizationMnemonicDelete(organizationMnemonic: string, id: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAgentDeleteDirectoryAgentIdOrganizationMnemonicDelete.');\n }\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAgentDeleteDirectoryAgentIdOrganizationMnemonicDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Agent/deleteDirectoryAgent/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAgentGetOrganizationDirectoryGroupByIDIdGet(organizationId: number, id: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAgentGetOrganizationDirectoryGroupByIDIdGet(organizationId: number, id: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentGetOrganizationDirectoryGroupByIDIdGet(organizationId: number, id: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentGetOrganizationDirectoryGroupByIDIdGet(organizationId: number, id: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAgentGetOrganizationDirectoryGroupByIDIdGet.');\n }\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAgentGetOrganizationDirectoryGroupByIDIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Agent/GetOrganizationDirectoryGroupByID/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAgentGetOrganizationDirectoryGroupByIDIdOrganizationIdGet(organizationId: number, id: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAgentGetOrganizationDirectoryGroupByIDIdOrganizationIdGet(organizationId: number, id: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentGetOrganizationDirectoryGroupByIDIdOrganizationIdGet(organizationId: number, id: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentGetOrganizationDirectoryGroupByIDIdOrganizationIdGet(organizationId: number, id: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAgentGetOrganizationDirectoryGroupByIDIdOrganizationIdGet.');\n }\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAgentGetOrganizationDirectoryGroupByIDIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Agent/GetOrganizationDirectoryGroupByID/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param agentModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAgentRegisterAgentPost(agentModel?: AgentModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAgentRegisterAgentPost(agentModel?: AgentModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentRegisterAgentPost(agentModel?: AgentModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentRegisterAgentPost(agentModel?: AgentModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Agent/RegisterAgent`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: agentModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param agentModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAgentRemoveDirectoryAgentIdOrganizationIdPut(id: number, organizationId: number, agentModel?: AgentModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAgentRemoveDirectoryAgentIdOrganizationIdPut(id: number, organizationId: number, agentModel?: AgentModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentRemoveDirectoryAgentIdOrganizationIdPut(id: number, organizationId: number, agentModel?: AgentModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentRemoveDirectoryAgentIdOrganizationIdPut(id: number, organizationId: number, agentModel?: AgentModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAgentRemoveDirectoryAgentIdOrganizationIdPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAgentRemoveDirectoryAgentIdOrganizationIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Agent/removeDirectoryAgent/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: agentModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param agentModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAgentRemoveDirectoryAgentIdPut(id: number, organizationId: number, agentModel?: AgentModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAgentRemoveDirectoryAgentIdPut(id: number, organizationId: number, agentModel?: AgentModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentRemoveDirectoryAgentIdPut(id: number, organizationId: number, agentModel?: AgentModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentRemoveDirectoryAgentIdPut(id: number, organizationId: number, agentModel?: AgentModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAgentRemoveDirectoryAgentIdPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAgentRemoveDirectoryAgentIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Agent/removeDirectoryAgent/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: agentModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAgentUpdateAgentApiKeyOrganizationMnemonicIdPost(organizationMnemonic: string, id: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAgentUpdateAgentApiKeyOrganizationMnemonicIdPost(organizationMnemonic: string, id: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentUpdateAgentApiKeyOrganizationMnemonicIdPost(organizationMnemonic: string, id: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentUpdateAgentApiKeyOrganizationMnemonicIdPost(organizationMnemonic: string, id: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAgentUpdateAgentApiKeyOrganizationMnemonicIdPost.');\n }\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAgentUpdateAgentApiKeyOrganizationMnemonicIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Agent/UpdateAgentApiKey/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param id \n * @param version \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAgentUpdateAgentVersionApiKeyOrganizationMnemonicIdVersionPost(organizationMnemonic: string, id: string, version: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAgentUpdateAgentVersionApiKeyOrganizationMnemonicIdVersionPost(organizationMnemonic: string, id: string, version: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentUpdateAgentVersionApiKeyOrganizationMnemonicIdVersionPost(organizationMnemonic: string, id: string, version: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAgentUpdateAgentVersionApiKeyOrganizationMnemonicIdVersionPost(organizationMnemonic: string, id: string, version: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAgentUpdateAgentVersionApiKeyOrganizationMnemonicIdVersionPost.');\n }\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAgentUpdateAgentVersionApiKeyOrganizationMnemonicIdVersionPost.');\n }\n if (version === null || version === undefined) {\n throw new Error('Required parameter version was null or undefined when calling apiAgentUpdateAgentVersionApiKeyOrganizationMnemonicIdVersionPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Agent/UpdateAgentVersionApiKey/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"version\", value: version, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","export * from './agent.service';\nimport { AgentService } from './agent.service';\nexport * from './applicationSetting.service';\nimport { ApplicationSettingService } from './applicationSetting.service';\nexport * from './attributeMapping.service';\nimport { AttributeMappingService } from './attributeMapping.service';\nexport * from './attributeMetadata.service';\nimport { AttributeMetadataService } from './attributeMetadata.service';\nexport * from './department.service';\nimport { DepartmentService } from './department.service';\nexport * from './deploymentDetail.service';\nimport { DeploymentDetailService } from './deploymentDetail.service';\nexport * from './expression.service';\nimport { ExpressionService } from './expression.service';\nexport * from './group.service';\nimport { GroupService } from './group.service';\nexport * from './groupApplication.service';\nimport { GroupApplicationService } from './groupApplication.service';\nexport * from './groupDirectory.service';\nimport { GroupDirectoryService } from './groupDirectory.service';\nexport * from './licence.service';\nimport { LicenceService } from './licence.service';\nexport * from './loggerSetting.service';\nimport { LoggerSettingService } from './loggerSetting.service';\nexport * from './messageTemplate.service';\nimport { MessageTemplateService } from './messageTemplate.service';\nexport * from './msp.service';\nimport { MspService } from './msp.service';\nexport * from './organization.service';\nimport { OrganizationService } from './organization.service';\nexport * from './organizationApplication.service';\nimport { OrganizationApplicationService } from './organizationApplication.service';\nexport * from './organizationDirectory.service';\nimport { OrganizationDirectoryService } from './organizationDirectory.service';\nexport * from './organizationQuestionSecret.service';\nimport { OrganizationQuestionSecretService } from './organizationQuestionSecret.service';\nexport * from './organizationSetting.service';\nimport { OrganizationSettingService } from './organizationSetting.service';\nexport * from './radiusClient.service';\nimport { RadiusClientService } from './radiusClient.service';\nexport * from './radiusMapping.service';\nimport { RadiusMappingService } from './radiusMapping.service';\nexport * from './reports.service';\nimport { ReportsService } from './reports.service';\nexport * from './safeLocations.service';\nimport { SafeLocationsService } from './safeLocations.service';\nexport * from './securitySetting.service';\nimport { SecuritySettingService } from './securitySetting.service';\nexport * from './syncServiceHistory.service';\nimport { SyncServiceHistoryService } from './syncServiceHistory.service';\nexport * from './syslogClient.service';\nimport { SyslogClientService } from './syslogClient.service';\nexport * from './tenantCleanup.service';\nimport { TenantCleanupService } from './tenantCleanup.service';\nexport * from './theme.service';\nimport { ThemeService } from './theme.service';\nexport * from './version.service';\nimport { VersionService } from './version.service';\nexport * from './windowsLogon.service';\nimport { WindowsLogonService } from './windowsLogon.service';\nexport const APIS = [AgentService, ApplicationSettingService, AttributeMappingService, AttributeMetadataService, DepartmentService, DeploymentDetailService, ExpressionService, GroupService, GroupApplicationService, GroupDirectoryService, LicenceService, LoggerSettingService, MessageTemplateService, MspService, OrganizationService, OrganizationApplicationService, OrganizationDirectoryService, OrganizationQuestionSecretService, OrganizationSettingService, RadiusClientService, RadiusMappingService, ReportsService, SafeLocationsService, SecuritySettingService, SyncServiceHistoryService, SyslogClientService, TenantCleanupService, ThemeService, VersionService, WindowsLogonService];\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { ApplicationSettingModel } from '../model/applicationSettingModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ApplicationSettingService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param applicationName \n * @param mnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n * @deprecated\n */\n public apiApplicationSettingAttributesByAppNameAndOrgKeyApplicationNameMnemonicGet(applicationName: string, mnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationSettingAttributesByAppNameAndOrgKeyApplicationNameMnemonicGet(applicationName: string, mnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingAttributesByAppNameAndOrgKeyApplicationNameMnemonicGet(applicationName: string, mnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingAttributesByAppNameAndOrgKeyApplicationNameMnemonicGet(applicationName: string, mnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (applicationName === null || applicationName === undefined) {\n throw new Error('Required parameter applicationName was null or undefined when calling apiApplicationSettingAttributesByAppNameAndOrgKeyApplicationNameMnemonicGet.');\n }\n if (mnemonic === null || mnemonic === undefined) {\n throw new Error('Required parameter mnemonic was null or undefined when calling apiApplicationSettingAttributesByAppNameAndOrgKeyApplicationNameMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ApplicationSetting/attributesByAppNameAndOrgKey/${this.configuration.encodeParam({name: \"applicationName\", value: applicationName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"mnemonic\", value: mnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param mnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n * @deprecated\n */\n public apiApplicationSettingByorgkeyMnemonicGet(mnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationSettingByorgkeyMnemonicGet(mnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingByorgkeyMnemonicGet(mnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingByorgkeyMnemonicGet(mnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (mnemonic === null || mnemonic === undefined) {\n throw new Error('Required parameter mnemonic was null or undefined when calling apiApplicationSettingByorgkeyMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ApplicationSetting/byorgkey/${this.configuration.encodeParam({name: \"mnemonic\", value: mnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param applicationSettingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationSettingCreateApplicationSettingOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, applicationSettingModel?: ApplicationSettingModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationSettingCreateApplicationSettingOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, applicationSettingModel?: ApplicationSettingModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingCreateApplicationSettingOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, applicationSettingModel?: ApplicationSettingModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingCreateApplicationSettingOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, applicationSettingModel?: ApplicationSettingModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiApplicationSettingCreateApplicationSettingOrganizationIdOrganizationMnemonicPost.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiApplicationSettingCreateApplicationSettingOrganizationIdOrganizationMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ApplicationSetting/CreateApplicationSetting/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: applicationSettingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param applicationSettingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationSettingCreateApplicationSettingPost(organizationId: number, organizationMnemonic: string, applicationSettingModel?: ApplicationSettingModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationSettingCreateApplicationSettingPost(organizationId: number, organizationMnemonic: string, applicationSettingModel?: ApplicationSettingModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingCreateApplicationSettingPost(organizationId: number, organizationMnemonic: string, applicationSettingModel?: ApplicationSettingModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingCreateApplicationSettingPost(organizationId: number, organizationMnemonic: string, applicationSettingModel?: ApplicationSettingModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiApplicationSettingCreateApplicationSettingPost.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiApplicationSettingCreateApplicationSettingPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ApplicationSetting/CreateApplicationSetting`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: applicationSettingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationSettingDeleteApplicationSettingIdDelete(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationSettingDeleteApplicationSettingIdDelete(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingDeleteApplicationSettingIdDelete(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingDeleteApplicationSettingIdDelete(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiApplicationSettingDeleteApplicationSettingIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiApplicationSettingDeleteApplicationSettingIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ApplicationSetting/DeleteApplicationSetting/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationSettingDeleteApplicationSettingIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationSettingDeleteApplicationSettingIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingDeleteApplicationSettingIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingDeleteApplicationSettingIdOrganizationIdDelete(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiApplicationSettingDeleteApplicationSettingIdOrganizationIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiApplicationSettingDeleteApplicationSettingIdOrganizationIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ApplicationSetting/DeleteApplicationSetting/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationSettingGetApplicationSettingMetadataByIDIdGet(id: number, organizationId: number, organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationSettingGetApplicationSettingMetadataByIDIdGet(id: number, organizationId: number, organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingGetApplicationSettingMetadataByIDIdGet(id: number, organizationId: number, organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingGetApplicationSettingMetadataByIDIdGet(id: number, organizationId: number, organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiApplicationSettingGetApplicationSettingMetadataByIDIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiApplicationSettingGetApplicationSettingMetadataByIDIdGet.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiApplicationSettingGetApplicationSettingMetadataByIDIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ApplicationSetting/getApplicationSettingMetadataByID/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationSettingGetApplicationSettingMetadataByIDIdOrganizationIdOrganizationMnemonicGet(id: number, organizationId: number, organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationSettingGetApplicationSettingMetadataByIDIdOrganizationIdOrganizationMnemonicGet(id: number, organizationId: number, organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingGetApplicationSettingMetadataByIDIdOrganizationIdOrganizationMnemonicGet(id: number, organizationId: number, organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingGetApplicationSettingMetadataByIDIdOrganizationIdOrganizationMnemonicGet(id: number, organizationId: number, organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiApplicationSettingGetApplicationSettingMetadataByIDIdOrganizationIdOrganizationMnemonicGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiApplicationSettingGetApplicationSettingMetadataByIDIdOrganizationIdOrganizationMnemonicGet.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiApplicationSettingGetApplicationSettingMetadataByIDIdOrganizationIdOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ApplicationSetting/getApplicationSettingMetadataByID/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param appid \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n * @deprecated\n */\n public apiApplicationSettingGetByAppIdAppidGet(appid: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationSettingGetByAppIdAppidGet(appid: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingGetByAppIdAppidGet(appid: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingGetByAppIdAppidGet(appid: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (appid === null || appid === undefined) {\n throw new Error('Required parameter appid was null or undefined when calling apiApplicationSettingGetByAppIdAppidGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ApplicationSetting/getByAppId/${this.configuration.encodeParam({name: \"appid\", value: appid, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param appSettingid \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationSettingGetByAppSettingIdAppSettingidGet(appSettingid: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationSettingGetByAppSettingIdAppSettingidGet(appSettingid: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingGetByAppSettingIdAppSettingidGet(appSettingid: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingGetByAppSettingIdAppSettingidGet(appSettingid: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (appSettingid === null || appSettingid === undefined) {\n throw new Error('Required parameter appSettingid was null or undefined when calling apiApplicationSettingGetByAppSettingIdAppSettingidGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ApplicationSetting/getByAppSettingId/${this.configuration.encodeParam({name: \"appSettingid\", value: appSettingid, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationSettingGetByOrgIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationSettingGetByOrgIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingGetByOrgIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingGetByOrgIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiApplicationSettingGetByOrgIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ApplicationSetting/getByOrgId`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationSettingGetByOrgIdOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationSettingGetByOrgIdOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingGetByOrgIdOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingGetByOrgIdOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiApplicationSettingGetByOrgIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ApplicationSetting/getByOrgId/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationSettingGetConfiguredAppsByOrgMnemonicOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationSettingGetConfiguredAppsByOrgMnemonicOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingGetConfiguredAppsByOrgMnemonicOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingGetConfiguredAppsByOrgMnemonicOrganizationMnemonicGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiApplicationSettingGetConfiguredAppsByOrgMnemonicOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ApplicationSetting/getConfiguredAppsByOrgMnemonic/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationSettingGetConfiguredAppsOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationSettingGetConfiguredAppsOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingGetConfiguredAppsOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingGetConfiguredAppsOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiApplicationSettingGetConfiguredAppsOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ApplicationSetting/getConfiguredApps/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param requestBody \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationSettingGetConfiguredAppsOrganizationIdPost(organizationId: number, requestBody?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationSettingGetConfiguredAppsOrganizationIdPost(organizationId: number, requestBody?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingGetConfiguredAppsOrganizationIdPost(organizationId: number, requestBody?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingGetConfiguredAppsOrganizationIdPost(organizationId: number, requestBody?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiApplicationSettingGetConfiguredAppsOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ApplicationSetting/getConfiguredApps/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: requestBody,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n * @deprecated\n */\n public apiApplicationSettingGetDeletedAppGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationSettingGetDeletedAppGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingGetDeletedAppGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingGetDeletedAppGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ApplicationSetting/getDeletedApp`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param groupId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationSettingGetPagedConfiguredAppByGroupIdOrganizationIdGroupIdGet(organizationId: number, groupId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationSettingGetPagedConfiguredAppByGroupIdOrganizationIdGroupIdGet(organizationId: number, groupId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingGetPagedConfiguredAppByGroupIdOrganizationIdGroupIdGet(organizationId: number, groupId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingGetPagedConfiguredAppByGroupIdOrganizationIdGroupIdGet(organizationId: number, groupId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiApplicationSettingGetPagedConfiguredAppByGroupIdOrganizationIdGroupIdGet.');\n }\n if (groupId === null || groupId === undefined) {\n throw new Error('Required parameter groupId was null or undefined when calling apiApplicationSettingGetPagedConfiguredAppByGroupIdOrganizationIdGroupIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ApplicationSetting/getPagedConfiguredAppByGroupId/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"groupId\", value: groupId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationSettingGetPagedConfiguredAppGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationSettingGetPagedConfiguredAppGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingGetPagedConfiguredAppGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingGetPagedConfiguredAppGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiApplicationSettingGetPagedConfiguredAppGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ApplicationSetting/getPagedConfiguredApp`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationSettingGetPagedConfiguredAppOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationSettingGetPagedConfiguredAppOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingGetPagedConfiguredAppOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingGetPagedConfiguredAppOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiApplicationSettingGetPagedConfiguredAppOrganizationIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ApplicationSetting/getPagedConfiguredApp/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationSettingGetUnassingedAppOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationSettingGetUnassingedAppOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingGetUnassingedAppOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingGetUnassingedAppOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiApplicationSettingGetUnassingedAppOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ApplicationSetting/getUnassingedApp/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param appId \n * @param organizationMnemonic \n * @param fileName \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationSettingIDPMetadataAppIdGet(appId: number, organizationMnemonic: string, fileName: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationSettingIDPMetadataAppIdGet(appId: number, organizationMnemonic: string, fileName: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingIDPMetadataAppIdGet(appId: number, organizationMnemonic: string, fileName: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingIDPMetadataAppIdGet(appId: number, organizationMnemonic: string, fileName: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (appId === null || appId === undefined) {\n throw new Error('Required parameter appId was null or undefined when calling apiApplicationSettingIDPMetadataAppIdGet.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiApplicationSettingIDPMetadataAppIdGet.');\n }\n if (fileName === null || fileName === undefined) {\n throw new Error('Required parameter fileName was null or undefined when calling apiApplicationSettingIDPMetadataAppIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ApplicationSetting/IDPMetadata/${this.configuration.encodeParam({name: \"appId\", value: appId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param appId \n * @param organizationMnemonic \n * @param fileName \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationSettingIDPMetadataAppIdOrganizationMnemonicFileNameGet(appId: number, organizationMnemonic: string, fileName: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationSettingIDPMetadataAppIdOrganizationMnemonicFileNameGet(appId: number, organizationMnemonic: string, fileName: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingIDPMetadataAppIdOrganizationMnemonicFileNameGet(appId: number, organizationMnemonic: string, fileName: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingIDPMetadataAppIdOrganizationMnemonicFileNameGet(appId: number, organizationMnemonic: string, fileName: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (appId === null || appId === undefined) {\n throw new Error('Required parameter appId was null or undefined when calling apiApplicationSettingIDPMetadataAppIdOrganizationMnemonicFileNameGet.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiApplicationSettingIDPMetadataAppIdOrganizationMnemonicFileNameGet.');\n }\n if (fileName === null || fileName === undefined) {\n throw new Error('Required parameter fileName was null or undefined when calling apiApplicationSettingIDPMetadataAppIdOrganizationMnemonicFileNameGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ApplicationSetting/IDPMetadata/${this.configuration.encodeParam({name: \"appId\", value: appId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"fileName\", value: fileName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param organizationMnemonic \n * @param applicationSettingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationSettingUpdateApplicationSettingIdOrganizationIdOrganizationMnemonicPut(id: number, organizationId: number, organizationMnemonic: string, applicationSettingModel?: ApplicationSettingModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationSettingUpdateApplicationSettingIdOrganizationIdOrganizationMnemonicPut(id: number, organizationId: number, organizationMnemonic: string, applicationSettingModel?: ApplicationSettingModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingUpdateApplicationSettingIdOrganizationIdOrganizationMnemonicPut(id: number, organizationId: number, organizationMnemonic: string, applicationSettingModel?: ApplicationSettingModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingUpdateApplicationSettingIdOrganizationIdOrganizationMnemonicPut(id: number, organizationId: number, organizationMnemonic: string, applicationSettingModel?: ApplicationSettingModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiApplicationSettingUpdateApplicationSettingIdOrganizationIdOrganizationMnemonicPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiApplicationSettingUpdateApplicationSettingIdOrganizationIdOrganizationMnemonicPut.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiApplicationSettingUpdateApplicationSettingIdOrganizationIdOrganizationMnemonicPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ApplicationSetting/UpdateApplicationSetting/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: applicationSettingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param organizationMnemonic \n * @param applicationSettingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiApplicationSettingUpdateApplicationSettingIdPut(id: number, organizationId: number, organizationMnemonic: string, applicationSettingModel?: ApplicationSettingModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiApplicationSettingUpdateApplicationSettingIdPut(id: number, organizationId: number, organizationMnemonic: string, applicationSettingModel?: ApplicationSettingModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingUpdateApplicationSettingIdPut(id: number, organizationId: number, organizationMnemonic: string, applicationSettingModel?: ApplicationSettingModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiApplicationSettingUpdateApplicationSettingIdPut(id: number, organizationId: number, organizationMnemonic: string, applicationSettingModel?: ApplicationSettingModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiApplicationSettingUpdateApplicationSettingIdPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiApplicationSettingUpdateApplicationSettingIdPut.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiApplicationSettingUpdateApplicationSettingIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/ApplicationSetting/UpdateApplicationSetting/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: applicationSettingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { AttributeMappingModel } from '../model/attributeMappingModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AttributeMappingService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param attributeMappingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAttributeMappingAddAttributeMappingsOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, attributeMappingModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMappingAddAttributeMappingsOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, attributeMappingModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingAddAttributeMappingsOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, attributeMappingModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingAddAttributeMappingsOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, attributeMappingModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAttributeMappingAddAttributeMappingsOrganizationIdOrganizationMnemonicPost.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAttributeMappingAddAttributeMappingsOrganizationIdOrganizationMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMapping/addAttributeMappings/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: attributeMappingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param attributeMappingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAttributeMappingAddAttributeMappingsPost(organizationId: number, organizationMnemonic: string, attributeMappingModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMappingAddAttributeMappingsPost(organizationId: number, organizationMnemonic: string, attributeMappingModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingAddAttributeMappingsPost(organizationId: number, organizationMnemonic: string, attributeMappingModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingAddAttributeMappingsPost(organizationId: number, organizationMnemonic: string, attributeMappingModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAttributeMappingAddAttributeMappingsPost.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAttributeMappingAddAttributeMappingsPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMapping/addAttributeMappings`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: attributeMappingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgdirectoryid \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAttributeMappingByorgdirectoryidOrgdirectoryidGet(orgdirectoryid: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMappingByorgdirectoryidOrgdirectoryidGet(orgdirectoryid: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingByorgdirectoryidOrgdirectoryidGet(orgdirectoryid: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingByorgdirectoryidOrgdirectoryidGet(orgdirectoryid: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgdirectoryid === null || orgdirectoryid === undefined) {\n throw new Error('Required parameter orgdirectoryid was null or undefined when calling apiAttributeMappingByorgdirectoryidOrgdirectoryidGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAttributeMappingByorgdirectoryidOrgdirectoryidGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMapping/byorgdirectoryid/${this.configuration.encodeParam({name: \"orgdirectoryid\", value: orgdirectoryid, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgdirectoryid \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAttributeMappingByorgdirectoryidOrgdirectoryidOrganizationIdGet(orgdirectoryid: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMappingByorgdirectoryidOrgdirectoryidOrganizationIdGet(orgdirectoryid: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingByorgdirectoryidOrgdirectoryidOrganizationIdGet(orgdirectoryid: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingByorgdirectoryidOrgdirectoryidOrganizationIdGet(orgdirectoryid: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgdirectoryid === null || orgdirectoryid === undefined) {\n throw new Error('Required parameter orgdirectoryid was null or undefined when calling apiAttributeMappingByorgdirectoryidOrgdirectoryidOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAttributeMappingByorgdirectoryidOrgdirectoryidOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMapping/byorgdirectoryid/${this.configuration.encodeParam({name: \"orgdirectoryid\", value: orgdirectoryid, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param sourcedirectoryid \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAttributeMappingBysourcedirectoryidSourcedirectoryidGet(sourcedirectoryid: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMappingBysourcedirectoryidSourcedirectoryidGet(sourcedirectoryid: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingBysourcedirectoryidSourcedirectoryidGet(sourcedirectoryid: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingBysourcedirectoryidSourcedirectoryidGet(sourcedirectoryid: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (sourcedirectoryid === null || sourcedirectoryid === undefined) {\n throw new Error('Required parameter sourcedirectoryid was null or undefined when calling apiAttributeMappingBysourcedirectoryidSourcedirectoryidGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMapping/bysourcedirectoryid/${this.configuration.encodeParam({name: \"sourcedirectoryid\", value: sourcedirectoryid, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param sourcedirectoryid \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAttributeMappingBysourcedirectoryidSourcedirectoryidOrganizationIdGet(sourcedirectoryid: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMappingBysourcedirectoryidSourcedirectoryidOrganizationIdGet(sourcedirectoryid: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingBysourcedirectoryidSourcedirectoryidOrganizationIdGet(sourcedirectoryid: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingBysourcedirectoryidSourcedirectoryidOrganizationIdGet(sourcedirectoryid: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (sourcedirectoryid === null || sourcedirectoryid === undefined) {\n throw new Error('Required parameter sourcedirectoryid was null or undefined when calling apiAttributeMappingBysourcedirectoryidSourcedirectoryidOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAttributeMappingBysourcedirectoryidSourcedirectoryidOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMapping/bysourcedirectoryid/${this.configuration.encodeParam({name: \"sourcedirectoryid\", value: sourcedirectoryid, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param sourcedirectoryname \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n * @deprecated\n */\n public apiAttributeMappingBysourcedirectorynameSourcedirectorynameGet(sourcedirectoryname: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMappingBysourcedirectorynameSourcedirectorynameGet(sourcedirectoryname: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingBysourcedirectorynameSourcedirectorynameGet(sourcedirectoryname: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingBysourcedirectorynameSourcedirectorynameGet(sourcedirectoryname: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (sourcedirectoryname === null || sourcedirectoryname === undefined) {\n throw new Error('Required parameter sourcedirectoryname was null or undefined when calling apiAttributeMappingBysourcedirectorynameSourcedirectorynameGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMapping/bysourcedirectoryname/${this.configuration.encodeParam({name: \"sourcedirectoryname\", value: sourcedirectoryname, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationDirectoryId \n * @param mappingType \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAttributeMappingGetByOrgDirectoryIdOrganizationIdOrganizationDirectoryIdMappingTypeGet(organizationId: number, organizationDirectoryId: number, mappingType: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMappingGetByOrgDirectoryIdOrganizationIdOrganizationDirectoryIdMappingTypeGet(organizationId: number, organizationDirectoryId: number, mappingType: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingGetByOrgDirectoryIdOrganizationIdOrganizationDirectoryIdMappingTypeGet(organizationId: number, organizationDirectoryId: number, mappingType: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingGetByOrgDirectoryIdOrganizationIdOrganizationDirectoryIdMappingTypeGet(organizationId: number, organizationDirectoryId: number, mappingType: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAttributeMappingGetByOrgDirectoryIdOrganizationIdOrganizationDirectoryIdMappingTypeGet.');\n }\n if (organizationDirectoryId === null || organizationDirectoryId === undefined) {\n throw new Error('Required parameter organizationDirectoryId was null or undefined when calling apiAttributeMappingGetByOrgDirectoryIdOrganizationIdOrganizationDirectoryIdMappingTypeGet.');\n }\n if (mappingType === null || mappingType === undefined) {\n throw new Error('Required parameter mappingType was null or undefined when calling apiAttributeMappingGetByOrgDirectoryIdOrganizationIdOrganizationDirectoryIdMappingTypeGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMapping/GetByOrgDirectoryId/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationDirectoryId\", value: organizationDirectoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"mappingType\", value: mappingType, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param sourcedirectoryid \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAttributeMappingGetBySourceDirectoryIdSourcedirectoryidGet(sourcedirectoryid: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMappingGetBySourceDirectoryIdSourcedirectoryidGet(sourcedirectoryid: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingGetBySourceDirectoryIdSourcedirectoryidGet(sourcedirectoryid: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingGetBySourceDirectoryIdSourcedirectoryidGet(sourcedirectoryid: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (sourcedirectoryid === null || sourcedirectoryid === undefined) {\n throw new Error('Required parameter sourcedirectoryid was null or undefined when calling apiAttributeMappingGetBySourceDirectoryIdSourcedirectoryidGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAttributeMappingGetBySourceDirectoryIdSourcedirectoryidGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMapping/GetBySourceDirectoryId/${this.configuration.encodeParam({name: \"sourcedirectoryid\", value: sourcedirectoryid, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param sourcedirectoryid \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAttributeMappingGetBySourceDirectoryIdSourcedirectoryidOrganizationIdGet(sourcedirectoryid: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMappingGetBySourceDirectoryIdSourcedirectoryidOrganizationIdGet(sourcedirectoryid: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingGetBySourceDirectoryIdSourcedirectoryidOrganizationIdGet(sourcedirectoryid: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingGetBySourceDirectoryIdSourcedirectoryidOrganizationIdGet(sourcedirectoryid: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (sourcedirectoryid === null || sourcedirectoryid === undefined) {\n throw new Error('Required parameter sourcedirectoryid was null or undefined when calling apiAttributeMappingGetBySourceDirectoryIdSourcedirectoryidOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAttributeMappingGetBySourceDirectoryIdSourcedirectoryidOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMapping/GetBySourceDirectoryId/${this.configuration.encodeParam({name: \"sourcedirectoryid\", value: sourcedirectoryid, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n * @deprecated\n */\n public apiAttributeMappingIdDelete(id: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMappingIdDelete(id: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingIdDelete(id: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingIdDelete(id: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAttributeMappingIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMapping/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n * @deprecated\n */\n public apiAttributeMappingIdGet(id: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMappingIdGet(id: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingIdGet(id: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingIdGet(id: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAttributeMappingIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMapping/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param attributeMappingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n * @deprecated\n */\n public apiAttributeMappingPost(attributeMappingModel?: AttributeMappingModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMappingPost(attributeMappingModel?: AttributeMappingModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingPost(attributeMappingModel?: AttributeMappingModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingPost(attributeMappingModel?: AttributeMappingModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMapping`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: attributeMappingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param attributeMappingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAttributeMappingUpdateAttributeMappingIdOrganizationIdPut(id: number, organizationId: number, attributeMappingModel?: AttributeMappingModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMappingUpdateAttributeMappingIdOrganizationIdPut(id: number, organizationId: number, attributeMappingModel?: AttributeMappingModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingUpdateAttributeMappingIdOrganizationIdPut(id: number, organizationId: number, attributeMappingModel?: AttributeMappingModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingUpdateAttributeMappingIdOrganizationIdPut(id: number, organizationId: number, attributeMappingModel?: AttributeMappingModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAttributeMappingUpdateAttributeMappingIdOrganizationIdPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAttributeMappingUpdateAttributeMappingIdOrganizationIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMapping/UpdateAttributeMapping/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: attributeMappingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param attributeMappingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAttributeMappingUpdateAttributeMappingIdPut(id: number, organizationId: number, attributeMappingModel?: AttributeMappingModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMappingUpdateAttributeMappingIdPut(id: number, organizationId: number, attributeMappingModel?: AttributeMappingModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingUpdateAttributeMappingIdPut(id: number, organizationId: number, attributeMappingModel?: AttributeMappingModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMappingUpdateAttributeMappingIdPut(id: number, organizationId: number, attributeMappingModel?: AttributeMappingModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAttributeMappingUpdateAttributeMappingIdPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAttributeMappingUpdateAttributeMappingIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMapping/UpdateAttributeMapping/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: attributeMappingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { AttributeMetadataModel } from '../model/attributeMetadataModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AttributeMetadataService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param attributeMetadataModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAttributeMetadataCreateAttributeMetadataListPost(attributeMetadataModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMetadataCreateAttributeMetadataListPost(attributeMetadataModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataCreateAttributeMetadataListPost(attributeMetadataModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataCreateAttributeMetadataListPost(attributeMetadataModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMetadata/CreateAttributeMetadataList`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: attributeMetadataModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param attributeMetadataModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAttributeMetadataCreateAttributeMetadataOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, attributeMetadataModel?: AttributeMetadataModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMetadataCreateAttributeMetadataOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, attributeMetadataModel?: AttributeMetadataModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataCreateAttributeMetadataOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, attributeMetadataModel?: AttributeMetadataModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataCreateAttributeMetadataOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, attributeMetadataModel?: AttributeMetadataModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAttributeMetadataCreateAttributeMetadataOrganizationIdOrganizationMnemonicPost.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAttributeMetadataCreateAttributeMetadataOrganizationIdOrganizationMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMetadata/CreateAttributeMetadata/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: attributeMetadataModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param attributeMetadataModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAttributeMetadataCreateAttributeMetadataPost(organizationId: number, organizationMnemonic: string, attributeMetadataModel?: AttributeMetadataModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMetadataCreateAttributeMetadataPost(organizationId: number, organizationMnemonic: string, attributeMetadataModel?: AttributeMetadataModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataCreateAttributeMetadataPost(organizationId: number, organizationMnemonic: string, attributeMetadataModel?: AttributeMetadataModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataCreateAttributeMetadataPost(organizationId: number, organizationMnemonic: string, attributeMetadataModel?: AttributeMetadataModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAttributeMetadataCreateAttributeMetadataPost.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAttributeMetadataCreateAttributeMetadataPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMetadata/CreateAttributeMetadata`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: attributeMetadataModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param force \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAttributeMetadataDeleteAttributeMetadataIdForceDelete(id: number, organizationId: number, force: boolean, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMetadataDeleteAttributeMetadataIdForceDelete(id: number, organizationId: number, force: boolean, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataDeleteAttributeMetadataIdForceDelete(id: number, organizationId: number, force: boolean, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataDeleteAttributeMetadataIdForceDelete(id: number, organizationId: number, force: boolean, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAttributeMetadataDeleteAttributeMetadataIdForceDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAttributeMetadataDeleteAttributeMetadataIdForceDelete.');\n }\n if (force === null || force === undefined) {\n throw new Error('Required parameter force was null or undefined when calling apiAttributeMetadataDeleteAttributeMetadataIdForceDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMetadata/DeleteAttributeMetadata/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"force\", value: force, in: \"path\", style: \"simple\", explode: false, dataType: \"boolean\", dataFormat: undefined})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param force \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAttributeMetadataDeleteAttributeMetadataIdForceOrganizationIdDelete(id: number, organizationId: number, force: boolean, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMetadataDeleteAttributeMetadataIdForceOrganizationIdDelete(id: number, organizationId: number, force: boolean, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataDeleteAttributeMetadataIdForceOrganizationIdDelete(id: number, organizationId: number, force: boolean, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataDeleteAttributeMetadataIdForceOrganizationIdDelete(id: number, organizationId: number, force: boolean, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAttributeMetadataDeleteAttributeMetadataIdForceOrganizationIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAttributeMetadataDeleteAttributeMetadataIdForceOrganizationIdDelete.');\n }\n if (force === null || force === undefined) {\n throw new Error('Required parameter force was null or undefined when calling apiAttributeMetadataDeleteAttributeMetadataIdForceOrganizationIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMetadata/DeleteAttributeMetadata/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"force\", value: force, in: \"path\", style: \"simple\", explode: false, dataType: \"boolean\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAttributeMetadataGetAllAttributesForOrgIdOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMetadataGetAllAttributesForOrgIdOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataGetAllAttributesForOrgIdOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataGetAllAttributesForOrgIdOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAttributeMetadataGetAllAttributesForOrgIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMetadata/GetAllAttributesForOrgId/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAttributeMetadataGetAttributeMetadataByIDIdGet(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMetadataGetAttributeMetadataByIDIdGet(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataGetAttributeMetadataByIDIdGet(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataGetAttributeMetadataByIDIdGet(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAttributeMetadataGetAttributeMetadataByIDIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAttributeMetadataGetAttributeMetadataByIDIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMetadata/GetAttributeMetadataByID/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAttributeMetadataGetAttributeMetadataByIDIdOrganizationIdGet(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMetadataGetAttributeMetadataByIDIdOrganizationIdGet(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataGetAttributeMetadataByIDIdOrganizationIdGet(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataGetAttributeMetadataByIDIdOrganizationIdGet(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAttributeMetadataGetAttributeMetadataByIDIdOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAttributeMetadataGetAttributeMetadataByIDIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMetadata/GetAttributeMetadataByID/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAttributeMetadataGetAttributeMetadataByOrgIDGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMetadataGetAttributeMetadataByOrgIDGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataGetAttributeMetadataByOrgIDGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataGetAttributeMetadataByOrgIDGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAttributeMetadataGetAttributeMetadataByOrgIDGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMetadata/GetAttributeMetadataByOrgID`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAttributeMetadataGetAttributeMetadataByOrgIDOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMetadataGetAttributeMetadataByOrgIDOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataGetAttributeMetadataByOrgIDOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataGetAttributeMetadataByOrgIDOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAttributeMetadataGetAttributeMetadataByOrgIDOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMetadata/GetAttributeMetadataByOrgID/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n * @deprecated\n */\n public apiAttributeMetadataGetAttributeMetadatasByOrgCodeGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMetadataGetAttributeMetadatasByOrgCodeGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataGetAttributeMetadatasByOrgCodeGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataGetAttributeMetadatasByOrgCodeGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMetadata/GetAttributeMetadatasByOrgCode`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAttributeMetadataGetPagedAttributeMetadataGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMetadataGetPagedAttributeMetadataGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataGetPagedAttributeMetadataGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataGetPagedAttributeMetadataGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAttributeMetadataGetPagedAttributeMetadataGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMetadata/GetPagedAttributeMetadata`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAttributeMetadataGetPagedAttributeMetadataOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMetadataGetPagedAttributeMetadataOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataGetPagedAttributeMetadataOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataGetPagedAttributeMetadataOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAttributeMetadataGetPagedAttributeMetadataOrganizationIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMetadata/GetPagedAttributeMetadata/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param mnemonic \n * @param orgId \n * @param modifiedBy \n * @param attributeMetadataModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAttributeMetadataImportAttributeMetadataListMnemonicOrgIdModifiedByPost(mnemonic: string, orgId: number, modifiedBy: string, attributeMetadataModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMetadataImportAttributeMetadataListMnemonicOrgIdModifiedByPost(mnemonic: string, orgId: number, modifiedBy: string, attributeMetadataModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataImportAttributeMetadataListMnemonicOrgIdModifiedByPost(mnemonic: string, orgId: number, modifiedBy: string, attributeMetadataModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataImportAttributeMetadataListMnemonicOrgIdModifiedByPost(mnemonic: string, orgId: number, modifiedBy: string, attributeMetadataModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (mnemonic === null || mnemonic === undefined) {\n throw new Error('Required parameter mnemonic was null or undefined when calling apiAttributeMetadataImportAttributeMetadataListMnemonicOrgIdModifiedByPost.');\n }\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiAttributeMetadataImportAttributeMetadataListMnemonicOrgIdModifiedByPost.');\n }\n if (modifiedBy === null || modifiedBy === undefined) {\n throw new Error('Required parameter modifiedBy was null or undefined when calling apiAttributeMetadataImportAttributeMetadataListMnemonicOrgIdModifiedByPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMetadata/ImportAttributeMetadataList/${this.configuration.encodeParam({name: \"mnemonic\", value: mnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"modifiedBy\", value: modifiedBy, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: attributeMetadataModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param organizationMnemonic \n * @param attributeMetadataModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAttributeMetadataUpdateAttributeMetadataIdOrganizationIdOrganizationMnemonicPut(id: number, organizationId: number, organizationMnemonic: string, attributeMetadataModel?: AttributeMetadataModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMetadataUpdateAttributeMetadataIdOrganizationIdOrganizationMnemonicPut(id: number, organizationId: number, organizationMnemonic: string, attributeMetadataModel?: AttributeMetadataModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataUpdateAttributeMetadataIdOrganizationIdOrganizationMnemonicPut(id: number, organizationId: number, organizationMnemonic: string, attributeMetadataModel?: AttributeMetadataModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataUpdateAttributeMetadataIdOrganizationIdOrganizationMnemonicPut(id: number, organizationId: number, organizationMnemonic: string, attributeMetadataModel?: AttributeMetadataModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAttributeMetadataUpdateAttributeMetadataIdOrganizationIdOrganizationMnemonicPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAttributeMetadataUpdateAttributeMetadataIdOrganizationIdOrganizationMnemonicPut.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAttributeMetadataUpdateAttributeMetadataIdOrganizationIdOrganizationMnemonicPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMetadata/UpdateAttributeMetadata/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: attributeMetadataModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param organizationMnemonic \n * @param attributeMetadataModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiAttributeMetadataUpdateAttributeMetadataIdPut(id: number, organizationId: number, organizationMnemonic: string, attributeMetadataModel?: AttributeMetadataModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiAttributeMetadataUpdateAttributeMetadataIdPut(id: number, organizationId: number, organizationMnemonic: string, attributeMetadataModel?: AttributeMetadataModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataUpdateAttributeMetadataIdPut(id: number, organizationId: number, organizationMnemonic: string, attributeMetadataModel?: AttributeMetadataModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiAttributeMetadataUpdateAttributeMetadataIdPut(id: number, organizationId: number, organizationMnemonic: string, attributeMetadataModel?: AttributeMetadataModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiAttributeMetadataUpdateAttributeMetadataIdPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiAttributeMetadataUpdateAttributeMetadataIdPut.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiAttributeMetadataUpdateAttributeMetadataIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/AttributeMetadata/UpdateAttributeMetadata/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: attributeMetadataModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { DepartmentModel } from '../model/departmentModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DepartmentService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n * @deprecated\n */\n public apiDepartmentOrganizationGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public apiDepartmentOrganizationGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDepartmentOrganizationGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiDepartmentOrganizationGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Department/Organization`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DeploymentDetailService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiDeploymentDetailGetLastDeploymentDetailGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiDeploymentDetailGetLastDeploymentDetailGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiDeploymentDetailGetLastDeploymentDetailGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiDeploymentDetailGetLastDeploymentDetailGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/DeploymentDetail/GetLastDeploymentDetail`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { ExpressionModel } from '../model/expressionModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ExpressionService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiExpressionByorgGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiExpressionByorgGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiExpressionByorgGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiExpressionByorgGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Expression/byorg`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiExpressionByorgidGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiExpressionByorgidGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiExpressionByorgidGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiExpressionByorgidGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Expression/byorgid`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiExpressionIdDelete(id: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiExpressionIdDelete(id: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiExpressionIdDelete(id: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiExpressionIdDelete(id: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiExpressionIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Expression/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiExpressionIdGet(id: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiExpressionIdGet(id: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiExpressionIdGet(id: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiExpressionIdGet(id: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiExpressionIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Expression/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param expressionModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiExpressionIdPut(id: number, expressionModel?: ExpressionModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiExpressionIdPut(id: number, expressionModel?: ExpressionModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiExpressionIdPut(id: number, expressionModel?: ExpressionModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiExpressionIdPut(id: number, expressionModel?: ExpressionModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiExpressionIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Expression/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: expressionModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param expressionModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiExpressionPost(expressionModel?: ExpressionModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiExpressionPost(expressionModel?: ExpressionModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiExpressionPost(expressionModel?: ExpressionModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiExpressionPost(expressionModel?: ExpressionModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Expression`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: expressionModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { GroupModel } from '../model/groupModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class GroupService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param groupModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupAddNewGroupOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, groupModel?: GroupModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupAddNewGroupOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, groupModel?: GroupModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupAddNewGroupOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, groupModel?: GroupModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupAddNewGroupOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, groupModel?: GroupModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupAddNewGroupOrganizationIdOrganizationMnemonicPost.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiGroupAddNewGroupOrganizationIdOrganizationMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/addNewGroup/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: groupModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param groupModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupAddNewGroupPost(organizationId: number, organizationMnemonic: string, groupModel?: GroupModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupAddNewGroupPost(organizationId: number, organizationMnemonic: string, groupModel?: GroupModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupAddNewGroupPost(organizationId: number, organizationMnemonic: string, groupModel?: GroupModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupAddNewGroupPost(organizationId: number, organizationMnemonic: string, groupModel?: GroupModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupAddNewGroupPost.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiGroupAddNewGroupPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/addNewGroup`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: groupModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param groupModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupAddSyncGroupPost(groupModel?: GroupModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupAddSyncGroupPost(groupModel?: GroupModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupAddSyncGroupPost(groupModel?: GroupModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupAddSyncGroupPost(groupModel?: GroupModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/addSyncGroup`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: groupModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgId \n * @param orgDirectoryId \n * @param requestBody \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupDeleteGSuiteSyncGroupsOrgIdOrgDirectoryIdPost(orgId: number, orgDirectoryId: number, requestBody?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupDeleteGSuiteSyncGroupsOrgIdOrgDirectoryIdPost(orgId: number, orgDirectoryId: number, requestBody?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupDeleteGSuiteSyncGroupsOrgIdOrgDirectoryIdPost(orgId: number, orgDirectoryId: number, requestBody?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupDeleteGSuiteSyncGroupsOrgIdOrgDirectoryIdPost(orgId: number, orgDirectoryId: number, requestBody?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiGroupDeleteGSuiteSyncGroupsOrgIdOrgDirectoryIdPost.');\n }\n if (orgDirectoryId === null || orgDirectoryId === undefined) {\n throw new Error('Required parameter orgDirectoryId was null or undefined when calling apiGroupDeleteGSuiteSyncGroupsOrgIdOrgDirectoryIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/deleteGSuiteSyncGroups/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"orgDirectoryId\", value: orgDirectoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: requestBody,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupDeleteGroupIdDelete(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupDeleteGroupIdDelete(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupDeleteGroupIdDelete(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupDeleteGroupIdDelete(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiGroupDeleteGroupIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupDeleteGroupIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/deleteGroup/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupDeleteGroupIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupDeleteGroupIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupDeleteGroupIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupDeleteGroupIdOrganizationIdDelete(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiGroupDeleteGroupIdOrganizationIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupDeleteGroupIdOrganizationIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/deleteGroup/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupDeleteSyncGroupIdDelete(id: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupDeleteSyncGroupIdDelete(id: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupDeleteSyncGroupIdDelete(id: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupDeleteSyncGroupIdDelete(id: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiGroupDeleteSyncGroupIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/deleteSyncGroup/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgId \n * @param orgDirId \n * @param lastSyncTime \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupExportOrgIdOrgDirIdLastSyncTimeGet(orgId: number, orgDirId: number, lastSyncTime: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupExportOrgIdOrgDirIdLastSyncTimeGet(orgId: number, orgDirId: number, lastSyncTime: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupExportOrgIdOrgDirIdLastSyncTimeGet(orgId: number, orgDirId: number, lastSyncTime: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupExportOrgIdOrgDirIdLastSyncTimeGet(orgId: number, orgDirId: number, lastSyncTime: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiGroupExportOrgIdOrgDirIdLastSyncTimeGet.');\n }\n if (orgDirId === null || orgDirId === undefined) {\n throw new Error('Required parameter orgDirId was null or undefined when calling apiGroupExportOrgIdOrgDirIdLastSyncTimeGet.');\n }\n if (lastSyncTime === null || lastSyncTime === undefined) {\n throw new Error('Required parameter lastSyncTime was null or undefined when calling apiGroupExportOrgIdOrgDirIdLastSyncTimeGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/Export/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"orgDirId\", value: orgDirId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"lastSyncTime\", value: lastSyncTime, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param requestBody \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupFindGroupsforGroupIdsOrganizationIdPost(organizationId: number, requestBody?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupFindGroupsforGroupIdsOrganizationIdPost(organizationId: number, requestBody?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupFindGroupsforGroupIdsOrganizationIdPost(organizationId: number, requestBody?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupFindGroupsforGroupIdsOrganizationIdPost(organizationId: number, requestBody?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupFindGroupsforGroupIdsOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/findGroupsforGroupIds/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: requestBody,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param requestBody \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupFindGroupsforGroupIdsPost(organizationId: number, requestBody?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupFindGroupsforGroupIdsPost(organizationId: number, requestBody?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupFindGroupsforGroupIdsPost(organizationId: number, requestBody?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupFindGroupsforGroupIdsPost(organizationId: number, requestBody?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupFindGroupsforGroupIdsPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/findGroupsforGroupIds`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: requestBody,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgid \n * @param requestBody \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupFindGroupsforRadiusApiKeyOrgidPost(orgid: number, requestBody?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupFindGroupsforRadiusApiKeyOrgidPost(orgid: number, requestBody?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupFindGroupsforRadiusApiKeyOrgidPost(orgid: number, requestBody?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupFindGroupsforRadiusApiKeyOrgidPost(orgid: number, requestBody?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgid === null || orgid === undefined) {\n throw new Error('Required parameter orgid was null or undefined when calling apiGroupFindGroupsforRadiusApiKeyOrgidPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/findGroupsforRadiusApiKey/${this.configuration.encodeParam({name: \"orgid\", value: orgid, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: requestBody,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param requestBody \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupFindGroupsforRadiusPost(requestBody?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupFindGroupsforRadiusPost(requestBody?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupFindGroupsforRadiusPost(requestBody?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupFindGroupsforRadiusPost(requestBody?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/findGroupsforRadius`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: requestBody,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupGetAllGroupGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupGetAllGroupGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetAllGroupGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetAllGroupGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupGetAllGroupGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/getAllGroup`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupGetAllGroupOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupGetAllGroupOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetAllGroupOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetAllGroupOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupGetAllGroupOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/getAllGroup/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupGetAllGroupsGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupGetAllGroupsGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetAllGroupsGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetAllGroupsGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupGetAllGroupsGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/getAllGroups`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupGetAllGroupsOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupGetAllGroupsOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetAllGroupsOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetAllGroupsOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupGetAllGroupsOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/getAllGroups/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupGetDefaultAdminGroupOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupGetDefaultAdminGroupOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetDefaultAdminGroupOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetDefaultAdminGroupOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupGetDefaultAdminGroupOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/getDefaultAdminGroup/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupGetDefaultGroupsOrgIdGet(orgId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupGetDefaultGroupsOrgIdGet(orgId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetDefaultGroupsOrgIdGet(orgId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetDefaultGroupsOrgIdGet(orgId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiGroupGetDefaultGroupsOrgIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/GetDefaultGroups/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupGetGroupByGroupIdIdGet(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupGetGroupByGroupIdIdGet(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetGroupByGroupIdIdGet(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetGroupByGroupIdIdGet(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiGroupGetGroupByGroupIdIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupGetGroupByGroupIdIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/getGroupByGroupId/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupGetGroupByGroupIdIdOrganizationIdGet(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupGetGroupByGroupIdIdOrganizationIdGet(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetGroupByGroupIdIdOrganizationIdGet(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetGroupByGroupIdIdOrganizationIdGet(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiGroupGetGroupByGroupIdIdOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupGetGroupByGroupIdIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/getGroupByGroupId/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupGetGroupByIdIdOrganizationIdGet(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupGetGroupByIdIdOrganizationIdGet(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetGroupByIdIdOrganizationIdGet(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetGroupByIdIdOrganizationIdGet(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiGroupGetGroupByIdIdOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupGetGroupByIdIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/getGroupById/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param groupName \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupGetGroupByNameOrganizationIdGroupNameGet(organizationId: number, groupName: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupGetGroupByNameOrganizationIdGroupNameGet(organizationId: number, groupName: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetGroupByNameOrganizationIdGroupNameGet(organizationId: number, groupName: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetGroupByNameOrganizationIdGroupNameGet(organizationId: number, groupName: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupGetGroupByNameOrganizationIdGroupNameGet.');\n }\n if (groupName === null || groupName === undefined) {\n throw new Error('Required parameter groupName was null or undefined when calling apiGroupGetGroupByNameOrganizationIdGroupNameGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/getGroupByName/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"groupName\", value: groupName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgId \n * @param directoryName \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupGetGroupByOrgIdAndDirectoryOrgIdDirectoryNameGet(orgId: number, directoryName: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupGetGroupByOrgIdAndDirectoryOrgIdDirectoryNameGet(orgId: number, directoryName: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetGroupByOrgIdAndDirectoryOrgIdDirectoryNameGet(orgId: number, directoryName: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetGroupByOrgIdAndDirectoryOrgIdDirectoryNameGet(orgId: number, directoryName: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiGroupGetGroupByOrgIdAndDirectoryOrgIdDirectoryNameGet.');\n }\n if (directoryName === null || directoryName === undefined) {\n throw new Error('Required parameter directoryName was null or undefined when calling apiGroupGetGroupByOrgIdAndDirectoryOrgIdDirectoryNameGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/getGroupByOrgIdAndDirectory/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"directoryName\", value: directoryName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupGetGroupByOrgIdOrgIdGet(orgId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupGetGroupByOrgIdOrgIdGet(orgId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetGroupByOrgIdOrgIdGet(orgId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetGroupByOrgIdOrgIdGet(orgId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiGroupGetGroupByOrgIdOrgIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/getGroupByOrgId/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupGetPagedGroupsGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupGetPagedGroupsGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetPagedGroupsGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetPagedGroupsGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupGetPagedGroupsGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/getPagedGroups`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupGetPagedGroupsOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupGetPagedGroupsOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetPagedGroupsOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetPagedGroupsOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupGetPagedGroupsOrganizationIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/getPagedGroups/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgId \n * @param orgDirectoryId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupGetSyncDirectoryGroupsOrgIdOrgDirectoryIdGet(orgId: number, orgDirectoryId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupGetSyncDirectoryGroupsOrgIdOrgDirectoryIdGet(orgId: number, orgDirectoryId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetSyncDirectoryGroupsOrgIdOrgDirectoryIdGet(orgId: number, orgDirectoryId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetSyncDirectoryGroupsOrgIdOrgDirectoryIdGet(orgId: number, orgDirectoryId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiGroupGetSyncDirectoryGroupsOrgIdOrgDirectoryIdGet.');\n }\n if (orgDirectoryId === null || orgDirectoryId === undefined) {\n throw new Error('Required parameter orgDirectoryId was null or undefined when calling apiGroupGetSyncDirectoryGroupsOrgIdOrgDirectoryIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/getSyncDirectoryGroups/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"orgDirectoryId\", value: orgDirectoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgDirectoryId \n * @param distinguishedName \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupGetSyncGroupByDistinguishedNameOrgDirectoryIdGet(orgDirectoryId: number, distinguishedName?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupGetSyncGroupByDistinguishedNameOrgDirectoryIdGet(orgDirectoryId: number, distinguishedName?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetSyncGroupByDistinguishedNameOrgDirectoryIdGet(orgDirectoryId: number, distinguishedName?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetSyncGroupByDistinguishedNameOrgDirectoryIdGet(orgDirectoryId: number, distinguishedName?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgDirectoryId === null || orgDirectoryId === undefined) {\n throw new Error('Required parameter orgDirectoryId was null or undefined when calling apiGroupGetSyncGroupByDistinguishedNameOrgDirectoryIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (distinguishedName !== undefined && distinguishedName !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n distinguishedName, 'distinguishedName');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/getSyncGroupByDistinguishedName/${this.configuration.encodeParam({name: \"orgDirectoryId\", value: orgDirectoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgId \n * @param orgDirId \n * @param lastSyncTime \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupGetSyncGroupByOrgIdOrgIdOrgDirIdGet(orgId: number, orgDirId: number, lastSyncTime?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupGetSyncGroupByOrgIdOrgIdOrgDirIdGet(orgId: number, orgDirId: number, lastSyncTime?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetSyncGroupByOrgIdOrgIdOrgDirIdGet(orgId: number, orgDirId: number, lastSyncTime?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetSyncGroupByOrgIdOrgIdOrgDirIdGet(orgId: number, orgDirId: number, lastSyncTime?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiGroupGetSyncGroupByOrgIdOrgIdOrgDirIdGet.');\n }\n if (orgDirId === null || orgDirId === undefined) {\n throw new Error('Required parameter orgDirId was null or undefined when calling apiGroupGetSyncGroupByOrgIdOrgIdOrgDirIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (lastSyncTime !== undefined && lastSyncTime !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n lastSyncTime, 'lastSyncTime');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/getSyncGroupByOrgId/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"orgDirId\", value: orgDirId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param uniqueName \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupGetSyncGroupByUniqueNameOrganizationIdGet(organizationId: number, uniqueName?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupGetSyncGroupByUniqueNameOrganizationIdGet(organizationId: number, uniqueName?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetSyncGroupByUniqueNameOrganizationIdGet(organizationId: number, uniqueName?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetSyncGroupByUniqueNameOrganizationIdGet(organizationId: number, uniqueName?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupGetSyncGroupByUniqueNameOrganizationIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (uniqueName !== undefined && uniqueName !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n uniqueName, 'uniqueName');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/getSyncGroupByUniqueName/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgDirectoryId \n * @param distinguishedName \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupGetSyncGroupsByDistinguishedNameOrgDirectoryIdGet(orgDirectoryId: number, distinguishedName?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupGetSyncGroupsByDistinguishedNameOrgDirectoryIdGet(orgDirectoryId: number, distinguishedName?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetSyncGroupsByDistinguishedNameOrgDirectoryIdGet(orgDirectoryId: number, distinguishedName?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupGetSyncGroupsByDistinguishedNameOrgDirectoryIdGet(orgDirectoryId: number, distinguishedName?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgDirectoryId === null || orgDirectoryId === undefined) {\n throw new Error('Required parameter orgDirectoryId was null or undefined when calling apiGroupGetSyncGroupsByDistinguishedNameOrgDirectoryIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (distinguishedName !== undefined && distinguishedName !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n distinguishedName, 'distinguishedName');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/getSyncGroupsByDistinguishedName/${this.configuration.encodeParam({name: \"orgDirectoryId\", value: orgDirectoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param mnemonic \n * @param orgId \n * @param groupModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupImportGroupMnemonicOrgIdPost(mnemonic: string, orgId: number, groupModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupImportGroupMnemonicOrgIdPost(mnemonic: string, orgId: number, groupModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupImportGroupMnemonicOrgIdPost(mnemonic: string, orgId: number, groupModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupImportGroupMnemonicOrgIdPost(mnemonic: string, orgId: number, groupModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (mnemonic === null || mnemonic === undefined) {\n throw new Error('Required parameter mnemonic was null or undefined when calling apiGroupImportGroupMnemonicOrgIdPost.');\n }\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiGroupImportGroupMnemonicOrgIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/importGroup/${this.configuration.encodeParam({name: \"mnemonic\", value: mnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: groupModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgId \n * @param orgDirId \n * @param groupModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupImportOrgIdOrgDirIdPost(orgId: number, orgDirId: number, groupModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupImportOrgIdOrgDirIdPost(orgId: number, orgDirId: number, groupModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupImportOrgIdOrgDirIdPost(orgId: number, orgDirId: number, groupModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupImportOrgIdOrgDirIdPost(orgId: number, orgDirId: number, groupModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiGroupImportOrgIdOrgDirIdPost.');\n }\n if (orgDirId === null || orgDirId === undefined) {\n throw new Error('Required parameter orgDirId was null or undefined when calling apiGroupImportOrgIdOrgDirIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/import/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"orgDirId\", value: orgDirId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: groupModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param groupModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupSaveGroupOrganizationIdPost(organizationId: number, groupModel?: GroupModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupSaveGroupOrganizationIdPost(organizationId: number, groupModel?: GroupModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupSaveGroupOrganizationIdPost(organizationId: number, groupModel?: GroupModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupSaveGroupOrganizationIdPost(organizationId: number, groupModel?: GroupModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupSaveGroupOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/saveGroup/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: groupModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param groupModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupSaveGroupPost(organizationId: number, groupModel?: GroupModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupSaveGroupPost(organizationId: number, groupModel?: GroupModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupSaveGroupPost(organizationId: number, groupModel?: GroupModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupSaveGroupPost(organizationId: number, groupModel?: GroupModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupSaveGroupPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/saveGroup`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: groupModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param groupModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupUpdateGroupIdOrganizationIdPut(id: number, organizationId: number, groupModel?: GroupModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupUpdateGroupIdOrganizationIdPut(id: number, organizationId: number, groupModel?: GroupModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupUpdateGroupIdOrganizationIdPut(id: number, organizationId: number, groupModel?: GroupModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupUpdateGroupIdOrganizationIdPut(id: number, organizationId: number, groupModel?: GroupModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiGroupUpdateGroupIdOrganizationIdPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupUpdateGroupIdOrganizationIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/updateGroup/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: groupModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param groupModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupUpdateGroupIdPut(id: number, organizationId: number, groupModel?: GroupModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupUpdateGroupIdPut(id: number, organizationId: number, groupModel?: GroupModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupUpdateGroupIdPut(id: number, organizationId: number, groupModel?: GroupModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupUpdateGroupIdPut(id: number, organizationId: number, groupModel?: GroupModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiGroupUpdateGroupIdPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupUpdateGroupIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/updateGroup/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: groupModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param groupModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupUpdateSyncGroupDirectoryOrganizationIdPut(organizationId: number, groupModel?: GroupModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupUpdateSyncGroupDirectoryOrganizationIdPut(organizationId: number, groupModel?: GroupModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupUpdateSyncGroupDirectoryOrganizationIdPut(organizationId: number, groupModel?: GroupModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupUpdateSyncGroupDirectoryOrganizationIdPut(organizationId: number, groupModel?: GroupModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupUpdateSyncGroupDirectoryOrganizationIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/updateSyncGroupDirectory/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: groupModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param groupModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupUpdateSyncGroupDirectoryPut(organizationId: number, groupModel?: GroupModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupUpdateSyncGroupDirectoryPut(organizationId: number, groupModel?: GroupModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupUpdateSyncGroupDirectoryPut(organizationId: number, groupModel?: GroupModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupUpdateSyncGroupDirectoryPut(organizationId: number, groupModel?: GroupModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupUpdateSyncGroupDirectoryPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/updateSyncGroupDirectory`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: groupModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param groupModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupUpdateSyncGroupPut(groupModel?: GroupModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupUpdateSyncGroupPut(groupModel?: GroupModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupUpdateSyncGroupPut(groupModel?: GroupModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupUpdateSyncGroupPut(groupModel?: GroupModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Group/updateSyncGroup`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: groupModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { GroupsApplications } from '../model/groupsApplications';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class GroupApplicationService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationId \n * @param groupsApplications \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupApplicationAddGroupApplicationsOrganizationIdPost(organizationId: number, groupsApplications?: GroupsApplications, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupApplicationAddGroupApplicationsOrganizationIdPost(organizationId: number, groupsApplications?: GroupsApplications, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupApplicationAddGroupApplicationsOrganizationIdPost(organizationId: number, groupsApplications?: GroupsApplications, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupApplicationAddGroupApplicationsOrganizationIdPost(organizationId: number, groupsApplications?: GroupsApplications, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupApplicationAddGroupApplicationsOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/GroupApplication/addGroupApplications/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: groupsApplications,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param groupsApplications \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupApplicationAddGroupApplicationsPost(organizationId: number, groupsApplications?: GroupsApplications, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupApplicationAddGroupApplicationsPost(organizationId: number, groupsApplications?: GroupsApplications, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupApplicationAddGroupApplicationsPost(organizationId: number, groupsApplications?: GroupsApplications, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupApplicationAddGroupApplicationsPost(organizationId: number, groupsApplications?: GroupsApplications, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupApplicationAddGroupApplicationsPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/GroupApplication/addGroupApplications`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: groupsApplications,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param applicationSettingId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupApplicationGetAllGroupApplicationsByApplicationSettingIdApplicationSettingIdGet(applicationSettingId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupApplicationGetAllGroupApplicationsByApplicationSettingIdApplicationSettingIdGet(applicationSettingId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupApplicationGetAllGroupApplicationsByApplicationSettingIdApplicationSettingIdGet(applicationSettingId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupApplicationGetAllGroupApplicationsByApplicationSettingIdApplicationSettingIdGet(applicationSettingId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (applicationSettingId === null || applicationSettingId === undefined) {\n throw new Error('Required parameter applicationSettingId was null or undefined when calling apiGroupApplicationGetAllGroupApplicationsByApplicationSettingIdApplicationSettingIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/GroupApplication/getAllGroupApplicationsByApplicationSettingId/${this.configuration.encodeParam({name: \"applicationSettingId\", value: applicationSettingId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param groupId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupApplicationGetAllGroupApplicationsGroupIdGet(groupId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupApplicationGetAllGroupApplicationsGroupIdGet(groupId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupApplicationGetAllGroupApplicationsGroupIdGet(groupId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupApplicationGetAllGroupApplicationsGroupIdGet(groupId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (groupId === null || groupId === undefined) {\n throw new Error('Required parameter groupId was null or undefined when calling apiGroupApplicationGetAllGroupApplicationsGroupIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupApplicationGetAllGroupApplicationsGroupIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/GroupApplication/getAllGroupApplications/${this.configuration.encodeParam({name: \"groupId\", value: groupId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param groupId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupApplicationGetAllGroupApplicationsGroupIdOrganizationIdGet(groupId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupApplicationGetAllGroupApplicationsGroupIdOrganizationIdGet(groupId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupApplicationGetAllGroupApplicationsGroupIdOrganizationIdGet(groupId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupApplicationGetAllGroupApplicationsGroupIdOrganizationIdGet(groupId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (groupId === null || groupId === undefined) {\n throw new Error('Required parameter groupId was null or undefined when calling apiGroupApplicationGetAllGroupApplicationsGroupIdOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupApplicationGetAllGroupApplicationsGroupIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/GroupApplication/getAllGroupApplications/${this.configuration.encodeParam({name: \"groupId\", value: groupId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param requestBody \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupApplicationGetAppSettingIdsByGroupIdsOrganizationIdPost(organizationId: number, requestBody?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupApplicationGetAppSettingIdsByGroupIdsOrganizationIdPost(organizationId: number, requestBody?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupApplicationGetAppSettingIdsByGroupIdsOrganizationIdPost(organizationId: number, requestBody?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupApplicationGetAppSettingIdsByGroupIdsOrganizationIdPost(organizationId: number, requestBody?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupApplicationGetAppSettingIdsByGroupIdsOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/GroupApplication/GetAppSettingIdsByGroupIds/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: requestBody,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupApplicationIdDelete(id: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupApplicationIdDelete(id: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupApplicationIdDelete(id: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupApplicationIdDelete(id: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiGroupApplicationIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/GroupApplication/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { GroupDirectoryModel } from '../model/groupDirectoryModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class GroupDirectoryService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param orgId \n * @param groupDirectoryModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupDirectoryCreateUpdateGroupDirectoryOrgIdPost(orgId: number, groupDirectoryModel?: GroupDirectoryModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupDirectoryCreateUpdateGroupDirectoryOrgIdPost(orgId: number, groupDirectoryModel?: GroupDirectoryModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupDirectoryCreateUpdateGroupDirectoryOrgIdPost(orgId: number, groupDirectoryModel?: GroupDirectoryModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupDirectoryCreateUpdateGroupDirectoryOrgIdPost(orgId: number, groupDirectoryModel?: GroupDirectoryModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiGroupDirectoryCreateUpdateGroupDirectoryOrgIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/GroupDirectory/CreateUpdateGroupDirectory/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: groupDirectoryModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n * @deprecated\n */\n public apiGroupDirectoryIdDelete(id: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupDirectoryIdDelete(id: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupDirectoryIdDelete(id: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupDirectoryIdDelete(id: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiGroupDirectoryIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/GroupDirectory/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n * @deprecated\n */\n public apiGroupDirectoryIdGet(id: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupDirectoryIdGet(id: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupDirectoryIdGet(id: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupDirectoryIdGet(id: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiGroupDirectoryIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/GroupDirectory/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param groupDirectoryModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n * @deprecated\n */\n public apiGroupDirectoryIdPut(id: number, groupDirectoryModel?: GroupDirectoryModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupDirectoryIdPut(id: number, groupDirectoryModel?: GroupDirectoryModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupDirectoryIdPut(id: number, groupDirectoryModel?: GroupDirectoryModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupDirectoryIdPut(id: number, groupDirectoryModel?: GroupDirectoryModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiGroupDirectoryIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/GroupDirectory/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: groupDirectoryModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param groupDirectoryModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiGroupDirectoryOrganizationIdPost(organizationId: number, groupDirectoryModel?: GroupDirectoryModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupDirectoryOrganizationIdPost(organizationId: number, groupDirectoryModel?: GroupDirectoryModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupDirectoryOrganizationIdPost(organizationId: number, groupDirectoryModel?: GroupDirectoryModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupDirectoryOrganizationIdPost(organizationId: number, groupDirectoryModel?: GroupDirectoryModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiGroupDirectoryOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/GroupDirectory/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: groupDirectoryModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param groupDirectoryModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n * @deprecated\n */\n public apiGroupDirectoryPost(groupDirectoryModel?: GroupDirectoryModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiGroupDirectoryPost(groupDirectoryModel?: GroupDirectoryModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupDirectoryPost(groupDirectoryModel?: GroupDirectoryModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiGroupDirectoryPost(groupDirectoryModel?: GroupDirectoryModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/GroupDirectory`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: groupDirectoryModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { LicenceModelWithSource } from '../model/licenceModelWithSource';\n// @ts-ignore\nimport { ProblemDetails } from '../model/problemDetails';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LicenceService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n /**\n * @param consumes string[] mime-types\n * @return true: consumes contains 'multipart/form-data', false: otherwise\n */\n private canConsumeForm(consumes: string[]): boolean {\n const form = 'multipart/form-data';\n for (const consume of consumes) {\n if (form === consume) {\n return true;\n }\n }\n return false;\n }\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiLicenceHardwareIdGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public apiLicenceHardwareIdGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiLicenceHardwareIdGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiLicenceHardwareIdGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Licence/HardwareId`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiLicenceIsLocalOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiLicenceIsLocalOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLicenceIsLocalOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLicenceIsLocalOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiLicenceIsLocalOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Licence/IsLocal/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param file \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiLicenceLocalExpiredOrganizationMnemonicPost(organizationMnemonic: string, file?: Blob, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiLicenceLocalExpiredOrganizationMnemonicPost(organizationMnemonic: string, file?: Blob, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLicenceLocalExpiredOrganizationMnemonicPost(organizationMnemonic: string, file?: Blob, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLicenceLocalExpiredOrganizationMnemonicPost(organizationMnemonic: string, file?: Blob, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiLicenceLocalExpiredOrganizationMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'multipart/form-data'\n ];\n\n const canConsumeForm = this.canConsumeForm(consumes);\n\n let localVarFormParams: { append(param: string, value: any): any; };\n let localVarUseForm = false;\n let localVarConvertFormParamsToString = false;\n // use FormData to transmit files using content-type \"multipart/form-data\"\n // see https://stackoverflow.com/questions/4007969/application-x-www-form-urlencoded-or-multipart-form-data\n localVarUseForm = canConsumeForm;\n if (localVarUseForm) {\n localVarFormParams = new FormData();\n } else {\n localVarFormParams = new HttpParams({encoder: this.encoder});\n }\n\n if (file !== undefined) {\n localVarFormParams = localVarFormParams.append('file', file) as any || localVarFormParams;\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Licence/LocalExpired/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: localVarConvertFormParamsToString ? localVarFormParams.toString() : localVarFormParams,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiLicenceLocalOrganizationIdDelete(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiLicenceLocalOrganizationIdDelete(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLicenceLocalOrganizationIdDelete(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLicenceLocalOrganizationIdDelete(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiLicenceLocalOrganizationIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Licence/Local/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param file \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiLicenceLocalOrganizationIdPost(organizationId: number, file?: Blob, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiLicenceLocalOrganizationIdPost(organizationId: number, file?: Blob, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLicenceLocalOrganizationIdPost(organizationId: number, file?: Blob, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLicenceLocalOrganizationIdPost(organizationId: number, file?: Blob, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiLicenceLocalOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'multipart/form-data'\n ];\n\n const canConsumeForm = this.canConsumeForm(consumes);\n\n let localVarFormParams: { append(param: string, value: any): any; };\n let localVarUseForm = false;\n let localVarConvertFormParamsToString = false;\n // use FormData to transmit files using content-type \"multipart/form-data\"\n // see https://stackoverflow.com/questions/4007969/application-x-www-form-urlencoded-or-multipart-form-data\n localVarUseForm = canConsumeForm;\n if (localVarUseForm) {\n localVarFormParams = new FormData();\n } else {\n localVarFormParams = new HttpParams({encoder: this.encoder});\n }\n\n if (file !== undefined) {\n localVarFormParams = localVarFormParams.append('file', file) as any || localVarFormParams;\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Licence/Local/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: localVarConvertFormParamsToString ? localVarFormParams.toString() : localVarFormParams,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiLicenceMspLicenceOrganizationIdPost(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiLicenceMspLicenceOrganizationIdPost(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLicenceMspLicenceOrganizationIdPost(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLicenceMspLicenceOrganizationIdPost(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiLicenceMspLicenceOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Licence/MspLicence/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param uniqueOrgId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiLicenceOrgMnemonicUniqueOrgIdGet(uniqueOrgId: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiLicenceOrgMnemonicUniqueOrgIdGet(uniqueOrgId: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLicenceOrgMnemonicUniqueOrgIdGet(uniqueOrgId: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLicenceOrgMnemonicUniqueOrgIdGet(uniqueOrgId: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (uniqueOrgId === null || uniqueOrgId === undefined) {\n throw new Error('Required parameter uniqueOrgId was null or undefined when calling apiLicenceOrgMnemonicUniqueOrgIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Licence/OrgMnemonic/${this.configuration.encodeParam({name: \"uniqueOrgId\", value: uniqueOrgId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param refresh \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiLicenceOrganizationIdGet(organizationId: number, refresh?: boolean, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public apiLicenceOrganizationIdGet(organizationId: number, refresh?: boolean, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiLicenceOrganizationIdGet(organizationId: number, refresh?: boolean, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiLicenceOrganizationIdGet(organizationId: number, refresh?: boolean, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiLicenceOrganizationIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (refresh !== undefined && refresh !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n refresh, 'refresh');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Licence/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiLicenceUniqueIdByMnemonicOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiLicenceUniqueIdByMnemonicOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLicenceUniqueIdByMnemonicOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLicenceUniqueIdByMnemonicOrganizationMnemonicGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiLicenceUniqueIdByMnemonicOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Licence/UniqueIdByMnemonic/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param body \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiLicenceUniqueIdExpiredOrganizationMnemonicPost(organizationMnemonic: string, body?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiLicenceUniqueIdExpiredOrganizationMnemonicPost(organizationMnemonic: string, body?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLicenceUniqueIdExpiredOrganizationMnemonicPost(organizationMnemonic: string, body?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLicenceUniqueIdExpiredOrganizationMnemonicPost(organizationMnemonic: string, body?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiLicenceUniqueIdExpiredOrganizationMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Licence/UniqueIdExpired/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: body,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiLicenceUniqueIdOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiLicenceUniqueIdOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLicenceUniqueIdOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLicenceUniqueIdOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiLicenceUniqueIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Licence/UniqueId/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param body \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiLicenceUniqueIdOrganizationIdPost(organizationId: number, body?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiLicenceUniqueIdOrganizationIdPost(organizationId: number, body?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLicenceUniqueIdOrganizationIdPost(organizationId: number, body?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLicenceUniqueIdOrganizationIdPost(organizationId: number, body?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiLicenceUniqueIdOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Licence/UniqueId/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: body,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { LoggerSettingModel } from '../model/loggerSettingModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LoggerSettingService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param orgId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiLoggerSettingByorgidOrgIdGet(orgId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiLoggerSettingByorgidOrgIdGet(orgId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLoggerSettingByorgidOrgIdGet(orgId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLoggerSettingByorgidOrgIdGet(orgId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiLoggerSettingByorgidOrgIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/LoggerSetting/byorgid/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param mnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiLoggerSettingByorgkeyMnemonicGet(mnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiLoggerSettingByorgkeyMnemonicGet(mnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLoggerSettingByorgkeyMnemonicGet(mnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLoggerSettingByorgkeyMnemonicGet(mnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (mnemonic === null || mnemonic === undefined) {\n throw new Error('Required parameter mnemonic was null or undefined when calling apiLoggerSettingByorgkeyMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/LoggerSetting/byorgkey/${this.configuration.encodeParam({name: \"mnemonic\", value: mnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiLoggerSettingIdDelete(id: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiLoggerSettingIdDelete(id: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLoggerSettingIdDelete(id: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLoggerSettingIdDelete(id: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiLoggerSettingIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/LoggerSetting/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiLoggerSettingIdGet(id: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiLoggerSettingIdGet(id: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLoggerSettingIdGet(id: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLoggerSettingIdGet(id: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiLoggerSettingIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/LoggerSetting/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param loggerSettingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiLoggerSettingIdPut(id: number, loggerSettingModel?: LoggerSettingModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiLoggerSettingIdPut(id: number, loggerSettingModel?: LoggerSettingModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLoggerSettingIdPut(id: number, loggerSettingModel?: LoggerSettingModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLoggerSettingIdPut(id: number, loggerSettingModel?: LoggerSettingModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiLoggerSettingIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/LoggerSetting/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: loggerSettingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param loggerSettingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiLoggerSettingPost(loggerSettingModel?: LoggerSettingModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiLoggerSettingPost(loggerSettingModel?: LoggerSettingModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLoggerSettingPost(loggerSettingModel?: LoggerSettingModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiLoggerSettingPost(loggerSettingModel?: LoggerSettingModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/LoggerSetting`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: loggerSettingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { MessageTemplateModel } from '../model/messageTemplateModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MessageTemplateService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param messageTemplateModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiMessageTemplateCreateOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, messageTemplateModel?: MessageTemplateModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiMessageTemplateCreateOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, messageTemplateModel?: MessageTemplateModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMessageTemplateCreateOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, messageTemplateModel?: MessageTemplateModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMessageTemplateCreateOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, messageTemplateModel?: MessageTemplateModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiMessageTemplateCreateOrganizationIdOrganizationMnemonicPost.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiMessageTemplateCreateOrganizationIdOrganizationMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/MessageTemplate/Create/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: messageTemplateModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param templateName \n * @param templateType \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiMessageTemplateDeleteDelete(organizationMnemonic: string, templateName?: string, templateType?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiMessageTemplateDeleteDelete(organizationMnemonic: string, templateName?: string, templateType?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMessageTemplateDeleteDelete(organizationMnemonic: string, templateName?: string, templateType?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMessageTemplateDeleteDelete(organizationMnemonic: string, templateName?: string, templateType?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiMessageTemplateDeleteDelete.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (templateName !== undefined && templateName !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n templateName, 'templateName');\n }\n if (templateType !== undefined && templateType !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n templateType, 'templateType');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/MessageTemplate/Delete`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param templateName \n * @param templateType \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiMessageTemplateDeleteOrganizationMnemonicDelete(organizationMnemonic: string, templateName?: string, templateType?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiMessageTemplateDeleteOrganizationMnemonicDelete(organizationMnemonic: string, templateName?: string, templateType?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMessageTemplateDeleteOrganizationMnemonicDelete(organizationMnemonic: string, templateName?: string, templateType?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMessageTemplateDeleteOrganizationMnemonicDelete(organizationMnemonic: string, templateName?: string, templateType?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiMessageTemplateDeleteOrganizationMnemonicDelete.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (templateName !== undefined && templateName !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n templateName, 'templateName');\n }\n if (templateType !== undefined && templateType !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n templateType, 'templateType');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/MessageTemplate/Delete/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiMessageTemplateGetListGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiMessageTemplateGetListGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMessageTemplateGetListGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMessageTemplateGetListGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiMessageTemplateGetListGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/MessageTemplate/GetList`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiMessageTemplateGetListOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiMessageTemplateGetListOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMessageTemplateGetListOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMessageTemplateGetListOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiMessageTemplateGetListOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/MessageTemplate/GetList/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param templateName \n * @param templateType \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiMessageTemplateGetOrganizationMnemonicGet(organizationMnemonic: string, templateName?: string, templateType?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiMessageTemplateGetOrganizationMnemonicGet(organizationMnemonic: string, templateName?: string, templateType?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMessageTemplateGetOrganizationMnemonicGet(organizationMnemonic: string, templateName?: string, templateType?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMessageTemplateGetOrganizationMnemonicGet(organizationMnemonic: string, templateName?: string, templateType?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiMessageTemplateGetOrganizationMnemonicGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (templateName !== undefined && templateName !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n templateName, 'templateName');\n }\n if (templateType !== undefined && templateType !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n templateType, 'templateType');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/MessageTemplate/Get/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param messageTemplateModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiMessageTemplateUpdateOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, messageTemplateModel?: MessageTemplateModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiMessageTemplateUpdateOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, messageTemplateModel?: MessageTemplateModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMessageTemplateUpdateOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, messageTemplateModel?: MessageTemplateModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMessageTemplateUpdateOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, messageTemplateModel?: MessageTemplateModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiMessageTemplateUpdateOrganizationIdOrganizationMnemonicPost.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiMessageTemplateUpdateOrganizationIdOrganizationMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/MessageTemplate/Update/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: messageTemplateModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param messageTemplateModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiMessageTemplateUpdatePost(organizationId: number, organizationMnemonic: string, messageTemplateModel?: MessageTemplateModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiMessageTemplateUpdatePost(organizationId: number, organizationMnemonic: string, messageTemplateModel?: MessageTemplateModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMessageTemplateUpdatePost(organizationId: number, organizationMnemonic: string, messageTemplateModel?: MessageTemplateModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMessageTemplateUpdatePost(organizationId: number, organizationMnemonic: string, messageTemplateModel?: MessageTemplateModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiMessageTemplateUpdatePost.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiMessageTemplateUpdatePost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/MessageTemplate/Update`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: messageTemplateModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { MspGraphData } from '../model/mspGraphData';\n// @ts-ignore\nimport { MspReportViewModelPagedResult } from '../model/mspReportViewModelPagedResult';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MspService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiMspGraphdataOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiMspGraphdataOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiMspGraphdataOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiMspGraphdataOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiMspGraphdataOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Msp/graphdata/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiMspPagedreportsOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public apiMspPagedreportsOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiMspPagedreportsOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiMspPagedreportsOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiMspPagedreportsOrganizationIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Msp/pagedreports/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiMspRunreportGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiMspRunreportGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMspRunreportGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMspRunreportGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Msp/runreport`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { OrganizationAndUserModel } from '../model/organizationAndUserModel';\n// @ts-ignore\nimport { OrganizationModel } from '../model/organizationModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class OrganizationService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationAndUserModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationCreateOrganizationAndUserPost(organizationAndUserModel?: OrganizationAndUserModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationCreateOrganizationAndUserPost(organizationAndUserModel?: OrganizationAndUserModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationCreateOrganizationAndUserPost(organizationAndUserModel?: OrganizationAndUserModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationCreateOrganizationAndUserPost(organizationAndUserModel?: OrganizationAndUserModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/CreateOrganizationAndUser`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organizationAndUserModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDeleteOrganizationOrgIdDelete(orgId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDeleteOrganizationOrgIdDelete(orgId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDeleteOrganizationOrgIdDelete(orgId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDeleteOrganizationOrgIdDelete(orgId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiOrganizationDeleteOrganizationOrgIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/deleteOrganization/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationGetAllOrganizationIdsGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationGetAllOrganizationIdsGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetAllOrganizationIdsGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetAllOrganizationIdsGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/GetAllOrganizationIds`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationGetMSPOrganizationGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationGetMSPOrganizationGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetMSPOrganizationGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetMSPOrganizationGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/GetMSPOrganization`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationGetMSPOrganizationOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationGetMSPOrganizationOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetMSPOrganizationOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetMSPOrganizationOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationGetMSPOrganizationOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/GetMSPOrganization/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationGetOrganizationAllGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationGetOrganizationAllGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetOrganizationAllGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetOrganizationAllGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/GetOrganizationAll`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationGetOrganizationByIDApiKeyGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationGetOrganizationByIDApiKeyGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetOrganizationByIDApiKeyGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetOrganizationByIDApiKeyGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationGetOrganizationByIDApiKeyGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/GetOrganizationByIDApiKey`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationGetOrganizationByIDApiKeyOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationGetOrganizationByIDApiKeyOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetOrganizationByIDApiKeyOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetOrganizationByIDApiKeyOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationGetOrganizationByIDApiKeyOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/GetOrganizationByIDApiKey/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationGetOrganizationByIDGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationGetOrganizationByIDGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetOrganizationByIDGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetOrganizationByIDGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationGetOrganizationByIDGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/GetOrganizationByID`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationGetOrganizationByIDOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationGetOrganizationByIDOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetOrganizationByIDOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetOrganizationByIDOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationGetOrganizationByIDOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/GetOrganizationByID/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgCode \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationGetOrganizationByorgCodeOrgCodeGet(orgCode: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationGetOrganizationByorgCodeOrgCodeGet(orgCode: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetOrganizationByorgCodeOrgCodeGet(orgCode: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetOrganizationByorgCodeOrgCodeGet(orgCode: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgCode === null || orgCode === undefined) {\n throw new Error('Required parameter orgCode was null or undefined when calling apiOrganizationGetOrganizationByorgCodeOrgCodeGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/GetOrganizationByorgCode/${this.configuration.encodeParam({name: \"orgCode\", value: orgCode, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationGetOrganizationMnemonicByIdAsyncOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationGetOrganizationMnemonicByIdAsyncOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetOrganizationMnemonicByIdAsyncOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetOrganizationMnemonicByIdAsyncOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationGetOrganizationMnemonicByIdAsyncOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/GetOrganizationMnemonicByIdAsync/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationGetOrganizationNameByIdAsyncGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationGetOrganizationNameByIdAsyncGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetOrganizationNameByIdAsyncGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetOrganizationNameByIdAsyncGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationGetOrganizationNameByIdAsyncGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/GetOrganizationNameByIdAsync`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationGetOrganizationNameByIdAsyncOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationGetOrganizationNameByIdAsyncOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetOrganizationNameByIdAsyncOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetOrganizationNameByIdAsyncOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationGetOrganizationNameByIdAsyncOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/GetOrganizationNameByIdAsync/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param refresh \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationGetOrganizationProfileGet(organizationId: number, refresh?: boolean, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationGetOrganizationProfileGet(organizationId: number, refresh?: boolean, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetOrganizationProfileGet(organizationId: number, refresh?: boolean, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetOrganizationProfileGet(organizationId: number, refresh?: boolean, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationGetOrganizationProfileGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (refresh !== undefined && refresh !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n refresh, 'refresh');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/GetOrganizationProfile`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param refresh \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationGetOrganizationProfileOrganizationIdGet(organizationId: number, refresh?: boolean, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationGetOrganizationProfileOrganizationIdGet(organizationId: number, refresh?: boolean, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetOrganizationProfileOrganizationIdGet(organizationId: number, refresh?: boolean, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetOrganizationProfileOrganizationIdGet(organizationId: number, refresh?: boolean, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationGetOrganizationProfileOrganizationIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (refresh !== undefined && refresh !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n refresh, 'refresh');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/GetOrganizationProfile/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param mnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationGetOrganizationTypeByMnemonicMnemonicGet(mnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationGetOrganizationTypeByMnemonicMnemonicGet(mnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetOrganizationTypeByMnemonicMnemonicGet(mnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetOrganizationTypeByMnemonicMnemonicGet(mnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (mnemonic === null || mnemonic === undefined) {\n throw new Error('Required parameter mnemonic was null or undefined when calling apiOrganizationGetOrganizationTypeByMnemonicMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/getOrganizationTypeByMnemonic/${this.configuration.encodeParam({name: \"mnemonic\", value: mnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationGetOrganizationTypeOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationGetOrganizationTypeOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetOrganizationTypeOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetOrganizationTypeOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationGetOrganizationTypeOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/getOrganizationType/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationGetPagedOrgGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationGetPagedOrgGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetPagedOrgGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetPagedOrgGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationGetPagedOrgGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/getPagedOrg`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationGetPagedOrgLicenseGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationGetPagedOrgLicenseGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetPagedOrgLicenseGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetPagedOrgLicenseGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationGetPagedOrgLicenseGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/getPagedOrgLicense`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationGetPagedOrgLicenseOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationGetPagedOrgLicenseOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetPagedOrgLicenseOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetPagedOrgLicenseOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationGetPagedOrgLicenseOrganizationIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/getPagedOrgLicense/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationGetPagedOrgOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationGetPagedOrgOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetPagedOrgOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetPagedOrgOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationGetPagedOrgOrganizationIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/getPagedOrg/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationGetParentOrganizationListGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationGetParentOrganizationListGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetParentOrganizationListGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetParentOrganizationListGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/GetParentOrganizationList`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationGetParentOrganizationNameOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationGetParentOrganizationNameOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetParentOrganizationNameOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationGetParentOrganizationNameOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationGetParentOrganizationNameOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/GetParentOrganizationName/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationLicencelimitOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationLicencelimitOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationLicencelimitOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationLicencelimitOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationLicencelimitOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/licencelimit/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param mnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationOrganizationExistMnemonicGet(mnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationOrganizationExistMnemonicGet(mnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationOrganizationExistMnemonicGet(mnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationOrganizationExistMnemonicGet(mnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (mnemonic === null || mnemonic === undefined) {\n throw new Error('Required parameter mnemonic was null or undefined when calling apiOrganizationOrganizationExistMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/OrganizationExist/${this.configuration.encodeParam({name: \"mnemonic\", value: mnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param mnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationOrganizationIdByMnemonicMnemonicGet(mnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationOrganizationIdByMnemonicMnemonicGet(mnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationOrganizationIdByMnemonicMnemonicGet(mnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationOrganizationIdByMnemonicMnemonicGet(mnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (mnemonic === null || mnemonic === undefined) {\n throw new Error('Required parameter mnemonic was null or undefined when calling apiOrganizationOrganizationIdByMnemonicMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/OrganizationIdByMnemonic/${this.configuration.encodeParam({name: \"mnemonic\", value: mnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param mnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationOrganizationLicenseByMnemonicMnemonicGet(mnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationOrganizationLicenseByMnemonicMnemonicGet(mnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationOrganizationLicenseByMnemonicMnemonicGet(mnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationOrganizationLicenseByMnemonicMnemonicGet(mnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (mnemonic === null || mnemonic === undefined) {\n throw new Error('Required parameter mnemonic was null or undefined when calling apiOrganizationOrganizationLicenseByMnemonicMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/OrganizationLicenseByMnemonic/${this.configuration.encodeParam({name: \"mnemonic\", value: mnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param mnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationOrganizationMnemonicGet(mnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationOrganizationMnemonicGet(mnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationOrganizationMnemonicGet(mnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationOrganizationMnemonicGet(mnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (mnemonic === null || mnemonic === undefined) {\n throw new Error('Required parameter mnemonic was null or undefined when calling apiOrganizationOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/organization/${this.configuration.encodeParam({name: \"mnemonic\", value: mnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param fromSignup \n * @param organizationModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationPost(fromSignup?: boolean, organizationModel?: OrganizationModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationPost(fromSignup?: boolean, organizationModel?: OrganizationModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationPost(fromSignup?: boolean, organizationModel?: OrganizationModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationPost(fromSignup?: boolean, organizationModel?: OrganizationModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (fromSignup !== undefined && fromSignup !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n fromSignup, 'fromSignup');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organizationModel,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgCode \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationStatusOrgCodeGet(orgCode: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationStatusOrgCodeGet(orgCode: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationStatusOrgCodeGet(orgCode: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationStatusOrgCodeGet(orgCode: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgCode === null || orgCode === undefined) {\n throw new Error('Required parameter orgCode was null or undefined when calling apiOrganizationStatusOrgCodeGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/status/${this.configuration.encodeParam({name: \"orgCode\", value: orgCode, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationUpdateOrganizationProfileOrganizationIdPut(organizationId: number, organizationModel?: OrganizationModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationUpdateOrganizationProfileOrganizationIdPut(organizationId: number, organizationModel?: OrganizationModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationUpdateOrganizationProfileOrganizationIdPut(organizationId: number, organizationModel?: OrganizationModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationUpdateOrganizationProfileOrganizationIdPut(organizationId: number, organizationModel?: OrganizationModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationUpdateOrganizationProfileOrganizationIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/UpdateOrganizationProfile/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organizationModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationUpdateOrganizationProfilePut(organizationId: number, organizationModel?: OrganizationModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationUpdateOrganizationProfilePut(organizationId: number, organizationModel?: OrganizationModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationUpdateOrganizationProfilePut(organizationId: number, organizationModel?: OrganizationModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationUpdateOrganizationProfilePut(organizationId: number, organizationModel?: OrganizationModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationUpdateOrganizationProfilePut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Organization/UpdateOrganizationProfile`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organizationModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { OrganizationApplicationModel } from '../model/organizationApplicationModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class OrganizationApplicationService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationApplicationModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationApplicationAddNewOrganizationApplicationPost(organizationApplicationModel?: OrganizationApplicationModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationApplicationAddNewOrganizationApplicationPost(organizationApplicationModel?: OrganizationApplicationModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationApplicationAddNewOrganizationApplicationPost(organizationApplicationModel?: OrganizationApplicationModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationApplicationAddNewOrganizationApplicationPost(organizationApplicationModel?: OrganizationApplicationModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationApplication/addNewOrganizationApplication`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organizationApplicationModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { DeltaLinkModel } from '../model/deltaLinkModel';\n// @ts-ignore\nimport { DirectorySetting } from '../model/directorySetting';\n// @ts-ignore\nimport { OrganizationDirectoryModel } from '../model/organizationDirectoryModel';\n// @ts-ignore\nimport { UserAuthenticationModel } from '../model/userAuthenticationModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class OrganizationDirectoryService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param orgDirectoryId \n * @param deltaLinkModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryAddAzureDeltaLinkOrgDirectoryIdPut(orgDirectoryId: number, deltaLinkModel?: DeltaLinkModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public apiOrganizationDirectoryAddAzureDeltaLinkOrgDirectoryIdPut(orgDirectoryId: number, deltaLinkModel?: DeltaLinkModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryAddAzureDeltaLinkOrgDirectoryIdPut(orgDirectoryId: number, deltaLinkModel?: DeltaLinkModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryAddAzureDeltaLinkOrgDirectoryIdPut(orgDirectoryId: number, deltaLinkModel?: DeltaLinkModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (orgDirectoryId === null || orgDirectoryId === undefined) {\n throw new Error('Required parameter orgDirectoryId was null or undefined when calling apiOrganizationDirectoryAddAzureDeltaLinkOrgDirectoryIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/AddAzureDeltaLink/${this.configuration.encodeParam({name: \"orgDirectoryId\", value: orgDirectoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: deltaLinkModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userAuthenticationModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryAuthenticateAzureUserPost(userAuthenticationModel?: UserAuthenticationModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryAuthenticateAzureUserPost(userAuthenticationModel?: UserAuthenticationModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryAuthenticateAzureUserPost(userAuthenticationModel?: UserAuthenticationModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryAuthenticateAzureUserPost(userAuthenticationModel?: UserAuthenticationModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/AuthenticateAzureUser`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userAuthenticationModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationDirectoryModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryAuthorizeAzureOrganizationIdPut(organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryAuthorizeAzureOrganizationIdPut(organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryAuthorizeAzureOrganizationIdPut(organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryAuthorizeAzureOrganizationIdPut(organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationDirectoryAuthorizeAzureOrganizationIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/AuthorizeAzure/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organizationDirectoryModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationDirectoryModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryAuthorizeAzurePut(organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryAuthorizeAzurePut(organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryAuthorizeAzurePut(organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryAuthorizeAzurePut(organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationDirectoryAuthorizeAzurePut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/AuthorizeAzure`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organizationDirectoryModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationDirectoryModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryAuthorizeGSuiteOrganizationIdPut(organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryAuthorizeGSuiteOrganizationIdPut(organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryAuthorizeGSuiteOrganizationIdPut(organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryAuthorizeGSuiteOrganizationIdPut(organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationDirectoryAuthorizeGSuiteOrganizationIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/AuthorizeGSuite/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organizationDirectoryModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationDirectoryModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryAuthorizeGSuitePut(organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryAuthorizeGSuitePut(organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryAuthorizeGSuitePut(organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryAuthorizeGSuitePut(organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationDirectoryAuthorizeGSuitePut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/AuthorizeGSuite`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organizationDirectoryModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgDirectoryId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryAzureGroupsOrgDirectoryIdGet(orgDirectoryId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryAzureGroupsOrgDirectoryIdGet(orgDirectoryId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryAzureGroupsOrgDirectoryIdGet(orgDirectoryId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryAzureGroupsOrgDirectoryIdGet(orgDirectoryId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgDirectoryId === null || orgDirectoryId === undefined) {\n throw new Error('Required parameter orgDirectoryId was null or undefined when calling apiOrganizationDirectoryAzureGroupsOrgDirectoryIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationDirectoryAzureGroupsOrgDirectoryIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/AzureGroups/${this.configuration.encodeParam({name: \"orgDirectoryId\", value: orgDirectoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgDirectoryId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryAzureGroupsOrgDirectoryIdOrganizationIdGet(orgDirectoryId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryAzureGroupsOrgDirectoryIdOrganizationIdGet(orgDirectoryId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryAzureGroupsOrgDirectoryIdOrganizationIdGet(orgDirectoryId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryAzureGroupsOrgDirectoryIdOrganizationIdGet(orgDirectoryId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgDirectoryId === null || orgDirectoryId === undefined) {\n throw new Error('Required parameter orgDirectoryId was null or undefined when calling apiOrganizationDirectoryAzureGroupsOrgDirectoryIdOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationDirectoryAzureGroupsOrgDirectoryIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/AzureGroups/${this.configuration.encodeParam({name: \"orgDirectoryId\", value: orgDirectoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgDirId \n * @param directorySetting \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryConnectAgentWithADByApiKeyOrgDirIdPost(orgDirId: number, directorySetting?: DirectorySetting, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryConnectAgentWithADByApiKeyOrgDirIdPost(orgDirId: number, directorySetting?: DirectorySetting, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryConnectAgentWithADByApiKeyOrgDirIdPost(orgDirId: number, directorySetting?: DirectorySetting, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryConnectAgentWithADByApiKeyOrgDirIdPost(orgDirId: number, directorySetting?: DirectorySetting, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgDirId === null || orgDirId === undefined) {\n throw new Error('Required parameter orgDirId was null or undefined when calling apiOrganizationDirectoryConnectAgentWithADByApiKeyOrgDirIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/ConnectAgentWithADByApiKey/${this.configuration.encodeParam({name: \"orgDirId\", value: orgDirId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: directorySetting,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgDirId \n * @param directorySetting \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryConnectAgentWithADOrgDirIdPost(orgDirId: number, directorySetting?: DirectorySetting, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryConnectAgentWithADOrgDirIdPost(orgDirId: number, directorySetting?: DirectorySetting, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryConnectAgentWithADOrgDirIdPost(orgDirId: number, directorySetting?: DirectorySetting, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryConnectAgentWithADOrgDirIdPost(orgDirId: number, directorySetting?: DirectorySetting, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgDirId === null || orgDirId === undefined) {\n throw new Error('Required parameter orgDirId was null or undefined when calling apiOrganizationDirectoryConnectAgentWithADOrgDirIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/ConnectAgentWithAD/${this.configuration.encodeParam({name: \"orgDirId\", value: orgDirId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: directorySetting,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationDirectoryModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryCreateOrganizationDirectoryOrganizationIdPost(organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryCreateOrganizationDirectoryOrganizationIdPost(organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryCreateOrganizationDirectoryOrganizationIdPost(organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryCreateOrganizationDirectoryOrganizationIdPost(organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationDirectoryCreateOrganizationDirectoryOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/CreateOrganizationDirectory/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organizationDirectoryModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationDirectoryModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryCreateOrganizationDirectoryPost(organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryCreateOrganizationDirectoryPost(organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryCreateOrganizationDirectoryPost(organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryCreateOrganizationDirectoryPost(organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationDirectoryCreateOrganizationDirectoryPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/CreateOrganizationDirectory`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organizationDirectoryModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgDirId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryDeleteOrganizationDirectoryOrgDirIdDelete(orgDirId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryDeleteOrganizationDirectoryOrgDirIdDelete(orgDirId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryDeleteOrganizationDirectoryOrgDirIdDelete(orgDirId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryDeleteOrganizationDirectoryOrgDirIdDelete(orgDirId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgDirId === null || orgDirId === undefined) {\n throw new Error('Required parameter orgDirId was null or undefined when calling apiOrganizationDirectoryDeleteOrganizationDirectoryOrgDirIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationDirectoryDeleteOrganizationDirectoryOrgDirIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/DeleteOrganizationDirectory/${this.configuration.encodeParam({name: \"orgDirId\", value: orgDirId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgDirId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryDeleteOrganizationDirectoryOrgDirIdOrganizationIdDelete(orgDirId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryDeleteOrganizationDirectoryOrgDirIdOrganizationIdDelete(orgDirId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryDeleteOrganizationDirectoryOrgDirIdOrganizationIdDelete(orgDirId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryDeleteOrganizationDirectoryOrgDirIdOrganizationIdDelete(orgDirId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgDirId === null || orgDirId === undefined) {\n throw new Error('Required parameter orgDirId was null or undefined when calling apiOrganizationDirectoryDeleteOrganizationDirectoryOrgDirIdOrganizationIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationDirectoryDeleteOrganizationDirectoryOrgDirIdOrganizationIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/DeleteOrganizationDirectory/${this.configuration.encodeParam({name: \"orgDirId\", value: orgDirId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryForUsersReportOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryForUsersReportOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryForUsersReportOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryForUsersReportOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationDirectoryForUsersReportOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/ForUsersReport/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgDirId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryGetAllAvailableADByApiKeyGet(orgDirId?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryGetAllAvailableADByApiKeyGet(orgDirId?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetAllAvailableADByApiKeyGet(orgDirId?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetAllAvailableADByApiKeyGet(orgDirId?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (orgDirId !== undefined && orgDirId !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n orgDirId, 'orgDirId');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/GetAllAvailableADByApiKey`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgDirId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryGetAllAvailableADGet(orgDirId?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryGetAllAvailableADGet(orgDirId?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetAllAvailableADGet(orgDirId?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetAllAvailableADGet(orgDirId?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (orgDirId !== undefined && orgDirId !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n orgDirId, 'orgDirId');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/GetAllAvailableAD`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgDirectoryId \n * @param organizationId \n * @param requestBody \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryGetAzureGroupsByIdsOrgDirectoryIdOrganizationIdPost(orgDirectoryId: number, organizationId: number, requestBody?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryGetAzureGroupsByIdsOrgDirectoryIdOrganizationIdPost(orgDirectoryId: number, organizationId: number, requestBody?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetAzureGroupsByIdsOrgDirectoryIdOrganizationIdPost(orgDirectoryId: number, organizationId: number, requestBody?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetAzureGroupsByIdsOrgDirectoryIdOrganizationIdPost(orgDirectoryId: number, organizationId: number, requestBody?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgDirectoryId === null || orgDirectoryId === undefined) {\n throw new Error('Required parameter orgDirectoryId was null or undefined when calling apiOrganizationDirectoryGetAzureGroupsByIdsOrgDirectoryIdOrganizationIdPost.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationDirectoryGetAzureGroupsByIdsOrgDirectoryIdOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/GetAzureGroupsByIds/${this.configuration.encodeParam({name: \"orgDirectoryId\", value: orgDirectoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: requestBody,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgDirectoryId \n * @param organizationId \n * @param requestBody \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryGetAzureGroupsByIdsOrgDirectoryIdPost(orgDirectoryId: number, organizationId: number, requestBody?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryGetAzureGroupsByIdsOrgDirectoryIdPost(orgDirectoryId: number, organizationId: number, requestBody?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetAzureGroupsByIdsOrgDirectoryIdPost(orgDirectoryId: number, organizationId: number, requestBody?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetAzureGroupsByIdsOrgDirectoryIdPost(orgDirectoryId: number, organizationId: number, requestBody?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgDirectoryId === null || orgDirectoryId === undefined) {\n throw new Error('Required parameter orgDirectoryId was null or undefined when calling apiOrganizationDirectoryGetAzureGroupsByIdsOrgDirectoryIdPost.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationDirectoryGetAzureGroupsByIdsOrgDirectoryIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/GetAzureGroupsByIds/${this.configuration.encodeParam({name: \"orgDirectoryId\", value: orgDirectoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: requestBody,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgId \n * @param orgDirId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryGetByIdByApiKeyOrgIdOrgDirIdGet(orgId: number, orgDirId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryGetByIdByApiKeyOrgIdOrgDirIdGet(orgId: number, orgDirId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetByIdByApiKeyOrgIdOrgDirIdGet(orgId: number, orgDirId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetByIdByApiKeyOrgIdOrgDirIdGet(orgId: number, orgDirId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiOrganizationDirectoryGetByIdByApiKeyOrgIdOrgDirIdGet.');\n }\n if (orgDirId === null || orgDirId === undefined) {\n throw new Error('Required parameter orgDirId was null or undefined when calling apiOrganizationDirectoryGetByIdByApiKeyOrgIdOrgDirIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/GetByIdByApiKey/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"orgDirId\", value: orgDirId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgId \n * @param orgDirId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryGetByIdOrgIdOrgDirIdGet(orgId: number, orgDirId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryGetByIdOrgIdOrgDirIdGet(orgId: number, orgDirId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetByIdOrgIdOrgDirIdGet(orgId: number, orgDirId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetByIdOrgIdOrgDirIdGet(orgId: number, orgDirId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiOrganizationDirectoryGetByIdOrgIdOrgDirIdGet.');\n }\n if (orgDirId === null || orgDirId === undefined) {\n throw new Error('Required parameter orgDirId was null or undefined when calling apiOrganizationDirectoryGetByIdOrgIdOrgDirIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/GetById/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"orgDirId\", value: orgDirId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgId \n * @param directoryName \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryGetByNameOrgIdDirectoryNameGet(orgId: number, directoryName: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryGetByNameOrgIdDirectoryNameGet(orgId: number, directoryName: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetByNameOrgIdDirectoryNameGet(orgId: number, directoryName: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetByNameOrgIdDirectoryNameGet(orgId: number, directoryName: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiOrganizationDirectoryGetByNameOrgIdDirectoryNameGet.');\n }\n if (directoryName === null || directoryName === undefined) {\n throw new Error('Required parameter directoryName was null or undefined when calling apiOrganizationDirectoryGetByNameOrgIdDirectoryNameGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/GetByName/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"directoryName\", value: directoryName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgDirId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryGetByOrgIdByApiKeyOrgDirIdGet(orgDirId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryGetByOrgIdByApiKeyOrgDirIdGet(orgDirId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetByOrgIdByApiKeyOrgDirIdGet(orgDirId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetByOrgIdByApiKeyOrgDirIdGet(orgDirId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgDirId === null || orgDirId === undefined) {\n throw new Error('Required parameter orgDirId was null or undefined when calling apiOrganizationDirectoryGetByOrgIdByApiKeyOrgDirIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/GetByOrgIdByApiKey/${this.configuration.encodeParam({name: \"orgDirId\", value: orgDirId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryGetByOrgIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryGetByOrgIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetByOrgIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetByOrgIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationDirectoryGetByOrgIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/GetByOrgId`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryGetByOrgIdOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryGetByOrgIdOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetByOrgIdOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetByOrgIdOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationDirectoryGetByOrgIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/GetByOrgId/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param dirName \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryGetDirectorySettingByNameDirNameGet(dirName: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryGetDirectorySettingByNameDirNameGet(dirName: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetDirectorySettingByNameDirNameGet(dirName: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetDirectorySettingByNameDirNameGet(dirName: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (dirName === null || dirName === undefined) {\n throw new Error('Required parameter dirName was null or undefined when calling apiOrganizationDirectoryGetDirectorySettingByNameDirNameGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/GetDirectorySettingByName/${this.configuration.encodeParam({name: \"dirName\", value: dirName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgId \n * @param dirName \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryGetDirectorySettingOrgIdDirNameGet(orgId: number, dirName: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryGetDirectorySettingOrgIdDirNameGet(orgId: number, dirName: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetDirectorySettingOrgIdDirNameGet(orgId: number, dirName: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetDirectorySettingOrgIdDirNameGet(orgId: number, dirName: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiOrganizationDirectoryGetDirectorySettingOrgIdDirNameGet.');\n }\n if (dirName === null || dirName === undefined) {\n throw new Error('Required parameter dirName was null or undefined when calling apiOrganizationDirectoryGetDirectorySettingOrgIdDirNameGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/GetDirectorySetting/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"dirName\", value: dirName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgDirectoryId \n * @param requestBody \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryGetGsuiteGroupsByIdsOrgDirectoryIdPost(orgDirectoryId: number, requestBody?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryGetGsuiteGroupsByIdsOrgDirectoryIdPost(orgDirectoryId: number, requestBody?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetGsuiteGroupsByIdsOrgDirectoryIdPost(orgDirectoryId: number, requestBody?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetGsuiteGroupsByIdsOrgDirectoryIdPost(orgDirectoryId: number, requestBody?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgDirectoryId === null || orgDirectoryId === undefined) {\n throw new Error('Required parameter orgDirectoryId was null or undefined when calling apiOrganizationDirectoryGetGsuiteGroupsByIdsOrgDirectoryIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/GetGsuiteGroupsByIds/${this.configuration.encodeParam({name: \"orgDirectoryId\", value: orgDirectoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: requestBody,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryGetOrganizationDirectoryByIDIdGet(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryGetOrganizationDirectoryByIDIdGet(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetOrganizationDirectoryByIDIdGet(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetOrganizationDirectoryByIDIdGet(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiOrganizationDirectoryGetOrganizationDirectoryByIDIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationDirectoryGetOrganizationDirectoryByIDIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/GetOrganizationDirectoryByID/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryGetOrganizationDirectoryByIDIdOrganizationIdGet(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryGetOrganizationDirectoryByIDIdOrganizationIdGet(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetOrganizationDirectoryByIDIdOrganizationIdGet(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGetOrganizationDirectoryByIDIdOrganizationIdGet(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiOrganizationDirectoryGetOrganizationDirectoryByIDIdOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationDirectoryGetOrganizationDirectoryByIDIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/GetOrganizationDirectoryByID/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param orgDirectoryId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryGsuiteGroupsOrganizationIdOrgDirectoryIdGet(organizationId: number, orgDirectoryId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryGsuiteGroupsOrganizationIdOrgDirectoryIdGet(organizationId: number, orgDirectoryId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGsuiteGroupsOrganizationIdOrgDirectoryIdGet(organizationId: number, orgDirectoryId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryGsuiteGroupsOrganizationIdOrgDirectoryIdGet(organizationId: number, orgDirectoryId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationDirectoryGsuiteGroupsOrganizationIdOrgDirectoryIdGet.');\n }\n if (orgDirectoryId === null || orgDirectoryId === undefined) {\n throw new Error('Required parameter orgDirectoryId was null or undefined when calling apiOrganizationDirectoryGsuiteGroupsOrganizationIdOrgDirectoryIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/GsuiteGroups/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"orgDirectoryId\", value: orgDirectoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgDirectoryId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryMarkTokenInvalidOrgDirectoryIdPut(orgDirectoryId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryMarkTokenInvalidOrgDirectoryIdPut(orgDirectoryId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryMarkTokenInvalidOrgDirectoryIdPut(orgDirectoryId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryMarkTokenInvalidOrgDirectoryIdPut(orgDirectoryId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgDirectoryId === null || orgDirectoryId === undefined) {\n throw new Error('Required parameter orgDirectoryId was null or undefined when calling apiOrganizationDirectoryMarkTokenInvalidOrgDirectoryIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/MarkTokenInvalid/${this.configuration.encodeParam({name: \"orgDirectoryId\", value: orgDirectoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgDirectoryId \n * @param organizationId \n * @param groupName \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectorySearchAzureGroupsOrgDirectoryIdGet(orgDirectoryId: number, organizationId: number, groupName?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectorySearchAzureGroupsOrgDirectoryIdGet(orgDirectoryId: number, organizationId: number, groupName?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectorySearchAzureGroupsOrgDirectoryIdGet(orgDirectoryId: number, organizationId: number, groupName?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectorySearchAzureGroupsOrgDirectoryIdGet(orgDirectoryId: number, organizationId: number, groupName?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgDirectoryId === null || orgDirectoryId === undefined) {\n throw new Error('Required parameter orgDirectoryId was null or undefined when calling apiOrganizationDirectorySearchAzureGroupsOrgDirectoryIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationDirectorySearchAzureGroupsOrgDirectoryIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (groupName !== undefined && groupName !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n groupName, 'groupName');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/SearchAzureGroups/${this.configuration.encodeParam({name: \"orgDirectoryId\", value: orgDirectoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgDirectoryId \n * @param organizationId \n * @param groupName \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectorySearchAzureGroupsOrgDirectoryIdOrganizationIdGet(orgDirectoryId: number, organizationId: number, groupName?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectorySearchAzureGroupsOrgDirectoryIdOrganizationIdGet(orgDirectoryId: number, organizationId: number, groupName?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectorySearchAzureGroupsOrgDirectoryIdOrganizationIdGet(orgDirectoryId: number, organizationId: number, groupName?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectorySearchAzureGroupsOrgDirectoryIdOrganizationIdGet(orgDirectoryId: number, organizationId: number, groupName?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgDirectoryId === null || orgDirectoryId === undefined) {\n throw new Error('Required parameter orgDirectoryId was null or undefined when calling apiOrganizationDirectorySearchAzureGroupsOrgDirectoryIdOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationDirectorySearchAzureGroupsOrgDirectoryIdOrganizationIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (groupName !== undefined && groupName !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n groupName, 'groupName');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/SearchAzureGroups/${this.configuration.encodeParam({name: \"orgDirectoryId\", value: orgDirectoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param orgDirectoryId \n * @param groupName \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectorySearchGsuiteGroupsOrganizationIdOrgDirectoryIdGet(organizationId: number, orgDirectoryId: number, groupName?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectorySearchGsuiteGroupsOrganizationIdOrgDirectoryIdGet(organizationId: number, orgDirectoryId: number, groupName?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectorySearchGsuiteGroupsOrganizationIdOrgDirectoryIdGet(organizationId: number, orgDirectoryId: number, groupName?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectorySearchGsuiteGroupsOrganizationIdOrgDirectoryIdGet(organizationId: number, orgDirectoryId: number, groupName?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationDirectorySearchGsuiteGroupsOrganizationIdOrgDirectoryIdGet.');\n }\n if (orgDirectoryId === null || orgDirectoryId === undefined) {\n throw new Error('Required parameter orgDirectoryId was null or undefined when calling apiOrganizationDirectorySearchGsuiteGroupsOrganizationIdOrgDirectoryIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (groupName !== undefined && groupName !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n groupName, 'groupName');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/SearchGsuiteGroups/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"orgDirectoryId\", value: orgDirectoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgDirectoryId \n * @param body \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryUpdateAzureRefreshTokenOrgDirectoryIdPut(orgDirectoryId: number, body?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public apiOrganizationDirectoryUpdateAzureRefreshTokenOrgDirectoryIdPut(orgDirectoryId: number, body?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryUpdateAzureRefreshTokenOrgDirectoryIdPut(orgDirectoryId: number, body?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryUpdateAzureRefreshTokenOrgDirectoryIdPut(orgDirectoryId: number, body?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (orgDirectoryId === null || orgDirectoryId === undefined) {\n throw new Error('Required parameter orgDirectoryId was null or undefined when calling apiOrganizationDirectoryUpdateAzureRefreshTokenOrgDirectoryIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/UpdateAzureRefreshToken/${this.configuration.encodeParam({name: \"orgDirectoryId\", value: orgDirectoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: body,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgDirectoryId \n * @param body \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryUpdateGoogleTokenOrgDirectoryIdPut(orgDirectoryId: number, body?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public apiOrganizationDirectoryUpdateGoogleTokenOrgDirectoryIdPut(orgDirectoryId: number, body?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryUpdateGoogleTokenOrgDirectoryIdPut(orgDirectoryId: number, body?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryUpdateGoogleTokenOrgDirectoryIdPut(orgDirectoryId: number, body?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (orgDirectoryId === null || orgDirectoryId === undefined) {\n throw new Error('Required parameter orgDirectoryId was null or undefined when calling apiOrganizationDirectoryUpdateGoogleTokenOrgDirectoryIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/UpdateGoogleToken/${this.configuration.encodeParam({name: \"orgDirectoryId\", value: orgDirectoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: body,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param organizationDirectoryModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryUpdateOrganizationDirectoryIdOrganizationIdPut(id: number, organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryUpdateOrganizationDirectoryIdOrganizationIdPut(id: number, organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryUpdateOrganizationDirectoryIdOrganizationIdPut(id: number, organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryUpdateOrganizationDirectoryIdOrganizationIdPut(id: number, organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiOrganizationDirectoryUpdateOrganizationDirectoryIdOrganizationIdPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationDirectoryUpdateOrganizationDirectoryIdOrganizationIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/UpdateOrganizationDirectory/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organizationDirectoryModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param organizationDirectoryModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationDirectoryUpdateOrganizationDirectoryIdPut(id: number, organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationDirectoryUpdateOrganizationDirectoryIdPut(id: number, organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryUpdateOrganizationDirectoryIdPut(id: number, organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationDirectoryUpdateOrganizationDirectoryIdPut(id: number, organizationId: number, organizationDirectoryModel?: OrganizationDirectoryModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiOrganizationDirectoryUpdateOrganizationDirectoryIdPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationDirectoryUpdateOrganizationDirectoryIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationDirectory/UpdateOrganizationDirectory/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organizationDirectoryModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { OrganizationQuestionSecretModel } from '../model/organizationQuestionSecretModel';\n// @ts-ignore\nimport { OrganizationQuestionsModelBinding } from '../model/organizationQuestionsModelBinding';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class OrganizationQuestionSecretService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationId \n * @param organizationQuestionSecretModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationQuestionSecretCreateOrganizationQuestionOrganizationIdPost(organizationId: number, organizationQuestionSecretModel?: OrganizationQuestionSecretModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationQuestionSecretCreateOrganizationQuestionOrganizationIdPost(organizationId: number, organizationQuestionSecretModel?: OrganizationQuestionSecretModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationQuestionSecretCreateOrganizationQuestionOrganizationIdPost(organizationId: number, organizationQuestionSecretModel?: OrganizationQuestionSecretModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationQuestionSecretCreateOrganizationQuestionOrganizationIdPost(organizationId: number, organizationQuestionSecretModel?: OrganizationQuestionSecretModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationQuestionSecretCreateOrganizationQuestionOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationQuestionSecret/CreateOrganizationQuestion/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organizationQuestionSecretModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationQuestionSecretModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationQuestionSecretCreateOrganizationQuestionPost(organizationId: number, organizationQuestionSecretModel?: OrganizationQuestionSecretModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationQuestionSecretCreateOrganizationQuestionPost(organizationId: number, organizationQuestionSecretModel?: OrganizationQuestionSecretModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationQuestionSecretCreateOrganizationQuestionPost(organizationId: number, organizationQuestionSecretModel?: OrganizationQuestionSecretModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationQuestionSecretCreateOrganizationQuestionPost(organizationId: number, organizationQuestionSecretModel?: OrganizationQuestionSecretModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationQuestionSecretCreateOrganizationQuestionPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationQuestionSecret/CreateOrganizationQuestion`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organizationQuestionSecretModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationQuestionSecretGetOrganizationQuestionGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationQuestionSecretGetOrganizationQuestionGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationQuestionSecretGetOrganizationQuestionGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationQuestionSecretGetOrganizationQuestionGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationQuestionSecretGetOrganizationQuestionGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationQuestionSecret/GetOrganizationQuestion`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationQuestionSecretGetOrganizationQuestionOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationQuestionSecretGetOrganizationQuestionOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationQuestionSecretGetOrganizationQuestionOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationQuestionSecretGetOrganizationQuestionOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationQuestionSecretGetOrganizationQuestionOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationQuestionSecret/GetOrganizationQuestion/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationQuestionSecretGetOrganizationQuestionWithSettingsByMnemonicGet(orgMnemonic?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationQuestionSecretGetOrganizationQuestionWithSettingsByMnemonicGet(orgMnemonic?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationQuestionSecretGetOrganizationQuestionWithSettingsByMnemonicGet(orgMnemonic?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationQuestionSecretGetOrganizationQuestionWithSettingsByMnemonicGet(orgMnemonic?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (orgMnemonic !== undefined && orgMnemonic !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n orgMnemonic, 'orgMnemonic');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationQuestionSecret/GetOrganizationQuestionWithSettingsByMnemonic`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationQuestionSecretGetOrganizationQuestionWithSettingsGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationQuestionSecretGetOrganizationQuestionWithSettingsGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationQuestionSecretGetOrganizationQuestionWithSettingsGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationQuestionSecretGetOrganizationQuestionWithSettingsGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationQuestionSecretGetOrganizationQuestionWithSettingsGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationQuestionSecret/GetOrganizationQuestionWithSettings`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationQuestionSecretGetOrganizationQuestionWithSettingsOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationQuestionSecretGetOrganizationQuestionWithSettingsOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationQuestionSecretGetOrganizationQuestionWithSettingsOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationQuestionSecretGetOrganizationQuestionWithSettingsOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationQuestionSecretGetOrganizationQuestionWithSettingsOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationQuestionSecret/GetOrganizationQuestionWithSettings/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgMnemonic \n * @param requestBody \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationQuestionSecretGetOrganizationQuestionWithSettingsWLAPost(orgMnemonic?: string, requestBody?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationQuestionSecretGetOrganizationQuestionWithSettingsWLAPost(orgMnemonic?: string, requestBody?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationQuestionSecretGetOrganizationQuestionWithSettingsWLAPost(orgMnemonic?: string, requestBody?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationQuestionSecretGetOrganizationQuestionWithSettingsWLAPost(orgMnemonic?: string, requestBody?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (orgMnemonic !== undefined && orgMnemonic !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n orgMnemonic, 'orgMnemonic');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationQuestionSecret/GetOrganizationQuestionWithSettingsWLA`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: requestBody,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationQuestionSecretImportOrganizationQuestionSecretsOrganizationIdPost(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationQuestionSecretImportOrganizationQuestionSecretsOrganizationIdPost(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationQuestionSecretImportOrganizationQuestionSecretsOrganizationIdPost(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationQuestionSecretImportOrganizationQuestionSecretsOrganizationIdPost(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationQuestionSecretImportOrganizationQuestionSecretsOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationQuestionSecret/ImportOrganizationQuestionSecrets/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationQuestionSecretImportOrganizationQuestionSecretsPost(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationQuestionSecretImportOrganizationQuestionSecretsPost(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationQuestionSecretImportOrganizationQuestionSecretsPost(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationQuestionSecretImportOrganizationQuestionSecretsPost(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationQuestionSecretImportOrganizationQuestionSecretsPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationQuestionSecret/ImportOrganizationQuestionSecrets`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationQuestionsModelBinding \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationQuestionSecretSaveOrganizationQuestionWithSettingsOrganizationIdPost(organizationId: number, organizationQuestionsModelBinding?: OrganizationQuestionsModelBinding, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationQuestionSecretSaveOrganizationQuestionWithSettingsOrganizationIdPost(organizationId: number, organizationQuestionsModelBinding?: OrganizationQuestionsModelBinding, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationQuestionSecretSaveOrganizationQuestionWithSettingsOrganizationIdPost(organizationId: number, organizationQuestionsModelBinding?: OrganizationQuestionsModelBinding, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationQuestionSecretSaveOrganizationQuestionWithSettingsOrganizationIdPost(organizationId: number, organizationQuestionsModelBinding?: OrganizationQuestionsModelBinding, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationQuestionSecretSaveOrganizationQuestionWithSettingsOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationQuestionSecret/SaveOrganizationQuestionWithSettings/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organizationQuestionsModelBinding,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationQuestionsModelBinding \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationQuestionSecretSaveOrganizationQuestionWithSettingsPost(organizationId: number, organizationQuestionsModelBinding?: OrganizationQuestionsModelBinding, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationQuestionSecretSaveOrganizationQuestionWithSettingsPost(organizationId: number, organizationQuestionsModelBinding?: OrganizationQuestionsModelBinding, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationQuestionSecretSaveOrganizationQuestionWithSettingsPost(organizationId: number, organizationQuestionsModelBinding?: OrganizationQuestionsModelBinding, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationQuestionSecretSaveOrganizationQuestionWithSettingsPost(organizationId: number, organizationQuestionsModelBinding?: OrganizationQuestionsModelBinding, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationQuestionSecretSaveOrganizationQuestionWithSettingsPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationQuestionSecret/SaveOrganizationQuestionWithSettings`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organizationQuestionsModelBinding,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { GetSettingsRequestModel } from '../model/getSettingsRequestModel';\n// @ts-ignore\nimport { NetworkCheckModel } from '../model/networkCheckModel';\n// @ts-ignore\nimport { NetworkPermissionModel } from '../model/networkPermissionModel';\n// @ts-ignore\nimport { OrganizationSettingModel } from '../model/organizationSettingModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class OrganizationSettingService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingAuthenticatorStatusesOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingAuthenticatorStatusesOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingAuthenticatorStatusesOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingAuthenticatorStatusesOrganizationMnemonicGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiOrganizationSettingAuthenticatorStatusesOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/AuthenticatorStatuses/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param groupKey \n * @param key \n * @param component \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingBymnemonicOrganizationMnemonicGet(organizationMnemonic: string, groupKey?: string, key?: string, component?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingBymnemonicOrganizationMnemonicGet(organizationMnemonic: string, groupKey?: string, key?: string, component?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingBymnemonicOrganizationMnemonicGet(organizationMnemonic: string, groupKey?: string, key?: string, component?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingBymnemonicOrganizationMnemonicGet(organizationMnemonic: string, groupKey?: string, key?: string, component?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiOrganizationSettingBymnemonicOrganizationMnemonicGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (groupKey !== undefined && groupKey !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n groupKey, 'groupKey');\n }\n if (key !== undefined && key !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n key, 'key');\n }\n if (component !== undefined && component !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n component, 'component');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/bymnemonic/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param networkCheckModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingCheckNetworkPermissionPost(networkCheckModel?: NetworkCheckModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingCheckNetworkPermissionPost(networkCheckModel?: NetworkCheckModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingCheckNetworkPermissionPost(networkCheckModel?: NetworkCheckModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingCheckNetworkPermissionPost(networkCheckModel?: NetworkCheckModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/CheckNetworkPermission`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: networkCheckModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param groupKey \n * @param key \n * @param component \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingGet(organizationId: number, groupKey?: string, key?: string, component?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingGet(organizationId: number, groupKey?: string, key?: string, component?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGet(organizationId: number, groupKey?: string, key?: string, component?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGet(organizationId: number, groupKey?: string, key?: string, component?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationSettingGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (groupKey !== undefined && groupKey !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n groupKey, 'groupKey');\n }\n if (key !== undefined && key !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n key, 'key');\n }\n if (component !== undefined && component !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n component, 'component');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param groupKey \n * @param key \n * @param component \n * @param userId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingGetEnrollSettingsGet(organizationId: number, groupKey?: string, key?: string, component?: string, userId?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingGetEnrollSettingsGet(organizationId: number, groupKey?: string, key?: string, component?: string, userId?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGetEnrollSettingsGet(organizationId: number, groupKey?: string, key?: string, component?: string, userId?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGetEnrollSettingsGet(organizationId: number, groupKey?: string, key?: string, component?: string, userId?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationSettingGetEnrollSettingsGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (groupKey !== undefined && groupKey !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n groupKey, 'groupKey');\n }\n if (key !== undefined && key !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n key, 'key');\n }\n if (component !== undefined && component !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n component, 'component');\n }\n if (userId !== undefined && userId !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n userId, 'userId');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/getEnrollSettings`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param groupKey \n * @param key \n * @param component \n * @param userId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingGetEnrollSettingsOrganizationIdGet(organizationId: number, groupKey?: string, key?: string, component?: string, userId?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingGetEnrollSettingsOrganizationIdGet(organizationId: number, groupKey?: string, key?: string, component?: string, userId?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGetEnrollSettingsOrganizationIdGet(organizationId: number, groupKey?: string, key?: string, component?: string, userId?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGetEnrollSettingsOrganizationIdGet(organizationId: number, groupKey?: string, key?: string, component?: string, userId?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationSettingGetEnrollSettingsOrganizationIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (groupKey !== undefined && groupKey !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n groupKey, 'groupKey');\n }\n if (key !== undefined && key !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n key, 'key');\n }\n if (component !== undefined && component !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n component, 'component');\n }\n if (userId !== undefined && userId !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n userId, 'userId');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/getEnrollSettings/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingGetGatewaySettingsGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingGetGatewaySettingsGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGetGatewaySettingsGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGetGatewaySettingsGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationSettingGetGatewaySettingsGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/GetGatewaySettings`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingGetGatewaySettingsOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingGetGatewaySettingsOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGetGatewaySettingsOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGetGatewaySettingsOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationSettingGetGatewaySettingsOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/GetGatewaySettings/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param getSettingsRequestModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingGetMultipleSettingsOrganizationIdPost(organizationId: number, getSettingsRequestModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingGetMultipleSettingsOrganizationIdPost(organizationId: number, getSettingsRequestModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGetMultipleSettingsOrganizationIdPost(organizationId: number, getSettingsRequestModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGetMultipleSettingsOrganizationIdPost(organizationId: number, getSettingsRequestModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationSettingGetMultipleSettingsOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/GetMultipleSettings/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: getSettingsRequestModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param getSettingsRequestModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingGetMultipleSettingsPost(organizationId: number, getSettingsRequestModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingGetMultipleSettingsPost(organizationId: number, getSettingsRequestModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGetMultipleSettingsPost(organizationId: number, getSettingsRequestModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGetMultipleSettingsPost(organizationId: number, getSettingsRequestModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationSettingGetMultipleSettingsPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/GetMultipleSettings`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: getSettingsRequestModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingGetNetworkPermissionGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingGetNetworkPermissionGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGetNetworkPermissionGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGetNetworkPermissionGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationSettingGetNetworkPermissionGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/GetNetworkPermission`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingGetNetworkPermissionOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingGetNetworkPermissionOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGetNetworkPermissionOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGetNetworkPermissionOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationSettingGetNetworkPermissionOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/GetNetworkPermission/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingGetNoOfConfigurableQuestionsCountOrgIdGet(orgId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingGetNoOfConfigurableQuestionsCountOrgIdGet(orgId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGetNoOfConfigurableQuestionsCountOrgIdGet(orgId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGetNoOfConfigurableQuestionsCountOrgIdGet(orgId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiOrganizationSettingGetNoOfConfigurableQuestionsCountOrgIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/GetNoOfConfigurableQuestionsCount/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingGetOrganizationIdsEnabledUserAutoLockGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingGetOrganizationIdsEnabledUserAutoLockGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGetOrganizationIdsEnabledUserAutoLockGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGetOrganizationIdsEnabledUserAutoLockGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/GetOrganizationIdsEnabledUserAutoLock`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param groupKey \n * @param key \n * @param component \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingGetSettingsByApiKeyGet(organizationId: number, groupKey?: string, key?: string, component?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingGetSettingsByApiKeyGet(organizationId: number, groupKey?: string, key?: string, component?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGetSettingsByApiKeyGet(organizationId: number, groupKey?: string, key?: string, component?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGetSettingsByApiKeyGet(organizationId: number, groupKey?: string, key?: string, component?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationSettingGetSettingsByApiKeyGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (groupKey !== undefined && groupKey !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n groupKey, 'groupKey');\n }\n if (key !== undefined && key !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n key, 'key');\n }\n if (component !== undefined && component !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n component, 'component');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/GetSettingsByApiKey`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param groupKey \n * @param key \n * @param component \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingGetSettingsByApiKeyOrganizationIdGet(organizationId: number, groupKey?: string, key?: string, component?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingGetSettingsByApiKeyOrganizationIdGet(organizationId: number, groupKey?: string, key?: string, component?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGetSettingsByApiKeyOrganizationIdGet(organizationId: number, groupKey?: string, key?: string, component?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGetSettingsByApiKeyOrganizationIdGet(organizationId: number, groupKey?: string, key?: string, component?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationSettingGetSettingsByApiKeyOrganizationIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (groupKey !== undefined && groupKey !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n groupKey, 'groupKey');\n }\n if (key !== undefined && key !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n key, 'key');\n }\n if (component !== undefined && component !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n component, 'component');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/GetSettingsByApiKey/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param groupKey \n * @param key \n * @param component \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingGetSettingsGet(organizationId: number, groupKey?: string, key?: string, component?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingGetSettingsGet(organizationId: number, groupKey?: string, key?: string, component?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGetSettingsGet(organizationId: number, groupKey?: string, key?: string, component?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGetSettingsGet(organizationId: number, groupKey?: string, key?: string, component?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationSettingGetSettingsGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (groupKey !== undefined && groupKey !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n groupKey, 'groupKey');\n }\n if (key !== undefined && key !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n key, 'key');\n }\n if (component !== undefined && component !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n component, 'component');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/GetSettings`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param groupKey \n * @param key \n * @param component \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingGetSettingsOrganizationIdGet(organizationId: number, groupKey?: string, key?: string, component?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingGetSettingsOrganizationIdGet(organizationId: number, groupKey?: string, key?: string, component?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGetSettingsOrganizationIdGet(organizationId: number, groupKey?: string, key?: string, component?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingGetSettingsOrganizationIdGet(organizationId: number, groupKey?: string, key?: string, component?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationSettingGetSettingsOrganizationIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (groupKey !== undefined && groupKey !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n groupKey, 'groupKey');\n }\n if (key !== undefined && key !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n key, 'key');\n }\n if (component !== undefined && component !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n component, 'component');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/GetSettings/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingIdDelete(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingIdDelete(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingIdDelete(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingIdDelete(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiOrganizationSettingIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationSettingIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingIdOrganizationIdDelete(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiOrganizationSettingIdOrganizationIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationSettingIdOrganizationIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param organizationSettingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingIdOrganizationIdPut(id: number, organizationId: number, organizationSettingModel?: OrganizationSettingModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingIdOrganizationIdPut(id: number, organizationId: number, organizationSettingModel?: OrganizationSettingModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingIdOrganizationIdPut(id: number, organizationId: number, organizationSettingModel?: OrganizationSettingModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingIdOrganizationIdPut(id: number, organizationId: number, organizationSettingModel?: OrganizationSettingModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiOrganizationSettingIdOrganizationIdPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationSettingIdOrganizationIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organizationSettingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param organizationSettingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingIdPut(id: number, organizationId: number, organizationSettingModel?: OrganizationSettingModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingIdPut(id: number, organizationId: number, organizationSettingModel?: OrganizationSettingModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingIdPut(id: number, organizationId: number, organizationSettingModel?: OrganizationSettingModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingIdPut(id: number, organizationId: number, organizationSettingModel?: OrganizationSettingModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiOrganizationSettingIdPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationSettingIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organizationSettingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param groupKey \n * @param key \n * @param component \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingOrganizationIdGet(organizationId: number, groupKey?: string, key?: string, component?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingOrganizationIdGet(organizationId: number, groupKey?: string, key?: string, component?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingOrganizationIdGet(organizationId: number, groupKey?: string, key?: string, component?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingOrganizationIdGet(organizationId: number, groupKey?: string, key?: string, component?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationSettingOrganizationIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (groupKey !== undefined && groupKey !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n groupKey, 'groupKey');\n }\n if (key !== undefined && key !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n key, 'key');\n }\n if (component !== undefined && component !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n component, 'component');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationSettingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingOrganizationIdPost(organizationId: number, organizationSettingModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingOrganizationIdPost(organizationId: number, organizationSettingModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingOrganizationIdPost(organizationId: number, organizationSettingModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingOrganizationIdPost(organizationId: number, organizationSettingModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationSettingOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organizationSettingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param userName \n * @param organizationSettingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingOrganizationIdUserNamePost(organizationId: number, userName: string, organizationSettingModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingOrganizationIdUserNamePost(organizationId: number, userName: string, organizationSettingModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingOrganizationIdUserNamePost(organizationId: number, userName: string, organizationSettingModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingOrganizationIdUserNamePost(organizationId: number, userName: string, organizationSettingModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationSettingOrganizationIdUserNamePost.');\n }\n if (userName === null || userName === undefined) {\n throw new Error('Required parameter userName was null or undefined when calling apiOrganizationSettingOrganizationIdUserNamePost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"userName\", value: userName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organizationSettingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationSettingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingPost(organizationId: number, organizationSettingModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingPost(organizationId: number, organizationSettingModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingPost(organizationId: number, organizationSettingModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingPost(organizationId: number, organizationSettingModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationSettingPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organizationSettingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param key \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingResetGatewaySettingsKeyOrganizationIdPost(key: string, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingResetGatewaySettingsKeyOrganizationIdPost(key: string, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingResetGatewaySettingsKeyOrganizationIdPost(key: string, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingResetGatewaySettingsKeyOrganizationIdPost(key: string, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (key === null || key === undefined) {\n throw new Error('Required parameter key was null or undefined when calling apiOrganizationSettingResetGatewaySettingsKeyOrganizationIdPost.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationSettingResetGatewaySettingsKeyOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/ResetGatewaySettings/${this.configuration.encodeParam({name: \"key\", value: key, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param key \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingResetGatewaySettingsKeyPost(key: string, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingResetGatewaySettingsKeyPost(key: string, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingResetGatewaySettingsKeyPost(key: string, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingResetGatewaySettingsKeyPost(key: string, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (key === null || key === undefined) {\n throw new Error('Required parameter key was null or undefined when calling apiOrganizationSettingResetGatewaySettingsKeyPost.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationSettingResetGatewaySettingsKeyPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/ResetGatewaySettings/${this.configuration.encodeParam({name: \"key\", value: key, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgCode \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingSMSDecrementOrgCodePost(orgCode: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingSMSDecrementOrgCodePost(orgCode: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingSMSDecrementOrgCodePost(orgCode: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingSMSDecrementOrgCodePost(orgCode: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgCode === null || orgCode === undefined) {\n throw new Error('Required parameter orgCode was null or undefined when calling apiOrganizationSettingSMSDecrementOrgCodePost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/SMS/decrement/${this.configuration.encodeParam({name: \"orgCode\", value: orgCode, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgCode \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingSMSOrgCodeGet(orgCode: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingSMSOrgCodeGet(orgCode: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingSMSOrgCodeGet(orgCode: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingSMSOrgCodeGet(orgCode: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgCode === null || orgCode === undefined) {\n throw new Error('Required parameter orgCode was null or undefined when calling apiOrganizationSettingSMSOrgCodeGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/SMS/${this.configuration.encodeParam({name: \"orgCode\", value: orgCode, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param networkPermissionModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingSetNetworkPermissionOrganizationIdPost(organizationId: number, networkPermissionModel?: NetworkPermissionModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingSetNetworkPermissionOrganizationIdPost(organizationId: number, networkPermissionModel?: NetworkPermissionModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingSetNetworkPermissionOrganizationIdPost(organizationId: number, networkPermissionModel?: NetworkPermissionModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingSetNetworkPermissionOrganizationIdPost(organizationId: number, networkPermissionModel?: NetworkPermissionModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationSettingSetNetworkPermissionOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/SetNetworkPermission/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: networkPermissionModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param networkPermissionModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingSetNetworkPermissionPost(organizationId: number, networkPermissionModel?: NetworkPermissionModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingSetNetworkPermissionPost(organizationId: number, networkPermissionModel?: NetworkPermissionModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingSetNetworkPermissionPost(organizationId: number, networkPermissionModel?: NetworkPermissionModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingSetNetworkPermissionPost(organizationId: number, networkPermissionModel?: NetworkPermissionModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationSettingSetNetworkPermissionPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/SetNetworkPermission`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: networkPermissionModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param mnemonic \n * @param groupKey \n * @param key \n * @param component \n * @param userId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingSettingsGet(organizationId?: number, mnemonic?: string, groupKey?: string, key?: string, component?: string, userId?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingSettingsGet(organizationId?: number, mnemonic?: string, groupKey?: string, key?: string, component?: string, userId?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingSettingsGet(organizationId?: number, mnemonic?: string, groupKey?: string, key?: string, component?: string, userId?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingSettingsGet(organizationId?: number, mnemonic?: string, groupKey?: string, key?: string, component?: string, userId?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (organizationId !== undefined && organizationId !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n organizationId, 'organizationId');\n }\n if (mnemonic !== undefined && mnemonic !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n mnemonic, 'mnemonic');\n }\n if (groupKey !== undefined && groupKey !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n groupKey, 'groupKey');\n }\n if (key !== undefined && key !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n key, 'key');\n }\n if (component !== undefined && component !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n component, 'component');\n }\n if (userId !== undefined && userId !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n userId, 'userId');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/Settings`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationSettingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingUpdateGatewaySettingsOrganizationIdPost(organizationId: number, organizationSettingModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingUpdateGatewaySettingsOrganizationIdPost(organizationId: number, organizationSettingModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingUpdateGatewaySettingsOrganizationIdPost(organizationId: number, organizationSettingModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingUpdateGatewaySettingsOrganizationIdPost(organizationId: number, organizationSettingModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationSettingUpdateGatewaySettingsOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/UpdateGatewaySettings/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organizationSettingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationSettingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiOrganizationSettingUpdateGatewaySettingsPost(organizationId: number, organizationSettingModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiOrganizationSettingUpdateGatewaySettingsPost(organizationId: number, organizationSettingModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingUpdateGatewaySettingsPost(organizationId: number, organizationSettingModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiOrganizationSettingUpdateGatewaySettingsPost(organizationId: number, organizationSettingModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiOrganizationSettingUpdateGatewaySettingsPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/OrganizationSetting/UpdateGatewaySettings`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organizationSettingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { RadiusClientModel } from '../model/radiusClientModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class RadiusClientService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusClientByorgidGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusClientByorgidGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientByorgidGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientByorgidGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusClientByorgidGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusClient/byorgid`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusClientByorgidOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusClientByorgidOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientByorgidOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientByorgidOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusClientByorgidOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusClient/byorgid/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusClientByorgkeyGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusClientByorgkeyGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientByorgkeyGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientByorgkeyGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiRadiusClientByorgkeyGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusClient/byorgkey`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusClientByorgkeyOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusClientByorgkeyOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientByorgkeyOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientByorgkeyOrganizationMnemonicGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiRadiusClientByorgkeyOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusClient/byorgkey/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusClientGetPagedDataGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusClientGetPagedDataGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientGetPagedDataGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientGetPagedDataGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusClientGetPagedDataGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusClient/getPagedData`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusClientGetPagedDataOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusClientGetPagedDataOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientGetPagedDataOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientGetPagedDataOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusClientGetPagedDataOrganizationIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusClient/getPagedData/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusClientGetRadiusforServiceApiKeyGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusClientGetRadiusforServiceApiKeyGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientGetRadiusforServiceApiKeyGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientGetRadiusforServiceApiKeyGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiRadiusClientGetRadiusforServiceApiKeyGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusClient/getRadiusforServiceApiKey`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusClientGetRadiusforServiceApiKeyOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusClientGetRadiusforServiceApiKeyOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientGetRadiusforServiceApiKeyOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientGetRadiusforServiceApiKeyOrganizationMnemonicGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiRadiusClientGetRadiusforServiceApiKeyOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusClient/getRadiusforServiceApiKey/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusClientGetRadiusforServiceGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusClientGetRadiusforServiceGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientGetRadiusforServiceGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientGetRadiusforServiceGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiRadiusClientGetRadiusforServiceGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusClient/getRadiusforService`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusClientGetRadiusforServiceOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusClientGetRadiusforServiceOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientGetRadiusforServiceOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientGetRadiusforServiceOrganizationMnemonicGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiRadiusClientGetRadiusforServiceOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusClient/getRadiusforService/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusClientIdDelete(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusClientIdDelete(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientIdDelete(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientIdDelete(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiRadiusClientIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusClientIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusClient/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusClientIdGet(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusClientIdGet(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientIdGet(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientIdGet(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiRadiusClientIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusClientIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusClient/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusClientIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusClientIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientIdOrganizationIdDelete(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiRadiusClientIdOrganizationIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusClientIdOrganizationIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusClient/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusClientIdOrganizationIdGet(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusClientIdOrganizationIdGet(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientIdOrganizationIdGet(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientIdOrganizationIdGet(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiRadiusClientIdOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusClientIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusClient/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param radiusClientModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusClientIdOrganizationIdPut(id: number, organizationId: number, radiusClientModel?: RadiusClientModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusClientIdOrganizationIdPut(id: number, organizationId: number, radiusClientModel?: RadiusClientModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientIdOrganizationIdPut(id: number, organizationId: number, radiusClientModel?: RadiusClientModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientIdOrganizationIdPut(id: number, organizationId: number, radiusClientModel?: RadiusClientModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiRadiusClientIdOrganizationIdPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusClientIdOrganizationIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusClient/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: radiusClientModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param radiusClientModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusClientIdPut(id: number, organizationId: number, radiusClientModel?: RadiusClientModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusClientIdPut(id: number, organizationId: number, radiusClientModel?: RadiusClientModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientIdPut(id: number, organizationId: number, radiusClientModel?: RadiusClientModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientIdPut(id: number, organizationId: number, radiusClientModel?: RadiusClientModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiRadiusClientIdPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusClientIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusClient/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: radiusClientModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param radiusClientModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusClientOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, radiusClientModel?: RadiusClientModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusClientOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, radiusClientModel?: RadiusClientModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, radiusClientModel?: RadiusClientModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, radiusClientModel?: RadiusClientModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusClientOrganizationIdOrganizationMnemonicPost.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiRadiusClientOrganizationIdOrganizationMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusClient/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: radiusClientModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param radiusClientModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusClientPost(organizationId: number, organizationMnemonic: string, radiusClientModel?: RadiusClientModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusClientPost(organizationId: number, organizationMnemonic: string, radiusClientModel?: RadiusClientModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientPost(organizationId: number, organizationMnemonic: string, radiusClientModel?: RadiusClientModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientPost(organizationId: number, organizationMnemonic: string, radiusClientModel?: RadiusClientModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusClientPost.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiRadiusClientPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusClient`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: radiusClientModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param radiusClientModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusClientRemoveRadiusAgentIdOrganizationIdPut(id: number, organizationId: number, radiusClientModel?: RadiusClientModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusClientRemoveRadiusAgentIdOrganizationIdPut(id: number, organizationId: number, radiusClientModel?: RadiusClientModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientRemoveRadiusAgentIdOrganizationIdPut(id: number, organizationId: number, radiusClientModel?: RadiusClientModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientRemoveRadiusAgentIdOrganizationIdPut(id: number, organizationId: number, radiusClientModel?: RadiusClientModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiRadiusClientRemoveRadiusAgentIdOrganizationIdPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusClientRemoveRadiusAgentIdOrganizationIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusClient/removeRadiusAgent/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: radiusClientModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param radiusClientModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusClientRemoveRadiusAgentIdPut(id: number, organizationId: number, radiusClientModel?: RadiusClientModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusClientRemoveRadiusAgentIdPut(id: number, organizationId: number, radiusClientModel?: RadiusClientModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientRemoveRadiusAgentIdPut(id: number, organizationId: number, radiusClientModel?: RadiusClientModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusClientRemoveRadiusAgentIdPut(id: number, organizationId: number, radiusClientModel?: RadiusClientModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiRadiusClientRemoveRadiusAgentIdPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusClientRemoveRadiusAgentIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusClient/removeRadiusAgent/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: radiusClientModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { RadiusAttributeMappingModel } from '../model/radiusAttributeMappingModel';\n// @ts-ignore\nimport { RadiusAttributeVendorDel } from '../model/radiusAttributeVendorDel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class RadiusMappingService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationId \n * @param radiusAttributeMappingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusMappingAddRadiusAttributeMappingsOrganizationIdPost(organizationId: number, radiusAttributeMappingModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusMappingAddRadiusAttributeMappingsOrganizationIdPost(organizationId: number, radiusAttributeMappingModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingAddRadiusAttributeMappingsOrganizationIdPost(organizationId: number, radiusAttributeMappingModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingAddRadiusAttributeMappingsOrganizationIdPost(organizationId: number, radiusAttributeMappingModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusMappingAddRadiusAttributeMappingsOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusMapping/addRadiusAttributeMappings/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: radiusAttributeMappingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param radiusAttributeMappingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusMappingAddRadiusAttributeMappingsPost(organizationId: number, radiusAttributeMappingModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusMappingAddRadiusAttributeMappingsPost(organizationId: number, radiusAttributeMappingModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingAddRadiusAttributeMappingsPost(organizationId: number, radiusAttributeMappingModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingAddRadiusAttributeMappingsPost(organizationId: number, radiusAttributeMappingModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusMappingAddRadiusAttributeMappingsPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusMapping/addRadiusAttributeMappings`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: radiusAttributeMappingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param radiusAttributeVendorDel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusMappingDelete(organizationId: number, radiusAttributeVendorDel?: RadiusAttributeVendorDel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusMappingDelete(organizationId: number, radiusAttributeVendorDel?: RadiusAttributeVendorDel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingDelete(organizationId: number, radiusAttributeVendorDel?: RadiusAttributeVendorDel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingDelete(organizationId: number, radiusAttributeVendorDel?: RadiusAttributeVendorDel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusMappingDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusMapping`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: radiusAttributeVendorDel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param radiusClientId \n * @param masterDirId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusMappingGetAllByClientIdRadiusClientIdMasterDirIdGet(radiusClientId: number, masterDirId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusMappingGetAllByClientIdRadiusClientIdMasterDirIdGet(radiusClientId: number, masterDirId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingGetAllByClientIdRadiusClientIdMasterDirIdGet(radiusClientId: number, masterDirId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingGetAllByClientIdRadiusClientIdMasterDirIdGet(radiusClientId: number, masterDirId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (radiusClientId === null || radiusClientId === undefined) {\n throw new Error('Required parameter radiusClientId was null or undefined when calling apiRadiusMappingGetAllByClientIdRadiusClientIdMasterDirIdGet.');\n }\n if (masterDirId === null || masterDirId === undefined) {\n throw new Error('Required parameter masterDirId was null or undefined when calling apiRadiusMappingGetAllByClientIdRadiusClientIdMasterDirIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusMappingGetAllByClientIdRadiusClientIdMasterDirIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusMapping/getAllByClientId/${this.configuration.encodeParam({name: \"radiusClientId\", value: radiusClientId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"masterDirId\", value: masterDirId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param radiusClientId \n * @param masterDirId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusMappingGetAllByClientIdRadiusClientIdMasterDirIdOrganizationIdGet(radiusClientId: number, masterDirId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusMappingGetAllByClientIdRadiusClientIdMasterDirIdOrganizationIdGet(radiusClientId: number, masterDirId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingGetAllByClientIdRadiusClientIdMasterDirIdOrganizationIdGet(radiusClientId: number, masterDirId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingGetAllByClientIdRadiusClientIdMasterDirIdOrganizationIdGet(radiusClientId: number, masterDirId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (radiusClientId === null || radiusClientId === undefined) {\n throw new Error('Required parameter radiusClientId was null or undefined when calling apiRadiusMappingGetAllByClientIdRadiusClientIdMasterDirIdOrganizationIdGet.');\n }\n if (masterDirId === null || masterDirId === undefined) {\n throw new Error('Required parameter masterDirId was null or undefined when calling apiRadiusMappingGetAllByClientIdRadiusClientIdMasterDirIdOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusMappingGetAllByClientIdRadiusClientIdMasterDirIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusMapping/getAllByClientId/${this.configuration.encodeParam({name: \"radiusClientId\", value: radiusClientId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"masterDirId\", value: masterDirId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param radiusClientId \n * @param masterDirId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusMappingGetBySourceApiKeyRadiusClientIdMasterDirIdGet(radiusClientId: number, masterDirId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusMappingGetBySourceApiKeyRadiusClientIdMasterDirIdGet(radiusClientId: number, masterDirId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingGetBySourceApiKeyRadiusClientIdMasterDirIdGet(radiusClientId: number, masterDirId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingGetBySourceApiKeyRadiusClientIdMasterDirIdGet(radiusClientId: number, masterDirId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (radiusClientId === null || radiusClientId === undefined) {\n throw new Error('Required parameter radiusClientId was null or undefined when calling apiRadiusMappingGetBySourceApiKeyRadiusClientIdMasterDirIdGet.');\n }\n if (masterDirId === null || masterDirId === undefined) {\n throw new Error('Required parameter masterDirId was null or undefined when calling apiRadiusMappingGetBySourceApiKeyRadiusClientIdMasterDirIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusMappingGetBySourceApiKeyRadiusClientIdMasterDirIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusMapping/getBySourceApiKey/${this.configuration.encodeParam({name: \"radiusClientId\", value: radiusClientId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"masterDirId\", value: masterDirId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param radiusClientId \n * @param masterDirId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusMappingGetBySourceApiKeyRadiusClientIdMasterDirIdOrganizationIdGet(radiusClientId: number, masterDirId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusMappingGetBySourceApiKeyRadiusClientIdMasterDirIdOrganizationIdGet(radiusClientId: number, masterDirId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingGetBySourceApiKeyRadiusClientIdMasterDirIdOrganizationIdGet(radiusClientId: number, masterDirId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingGetBySourceApiKeyRadiusClientIdMasterDirIdOrganizationIdGet(radiusClientId: number, masterDirId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (radiusClientId === null || radiusClientId === undefined) {\n throw new Error('Required parameter radiusClientId was null or undefined when calling apiRadiusMappingGetBySourceApiKeyRadiusClientIdMasterDirIdOrganizationIdGet.');\n }\n if (masterDirId === null || masterDirId === undefined) {\n throw new Error('Required parameter masterDirId was null or undefined when calling apiRadiusMappingGetBySourceApiKeyRadiusClientIdMasterDirIdOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusMappingGetBySourceApiKeyRadiusClientIdMasterDirIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusMapping/getBySourceApiKey/${this.configuration.encodeParam({name: \"radiusClientId\", value: radiusClientId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"masterDirId\", value: masterDirId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param radiusClientId \n * @param masterDirId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusMappingGetBySourceRadiusClientIdMasterDirIdGet(radiusClientId: number, masterDirId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusMappingGetBySourceRadiusClientIdMasterDirIdGet(radiusClientId: number, masterDirId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingGetBySourceRadiusClientIdMasterDirIdGet(radiusClientId: number, masterDirId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingGetBySourceRadiusClientIdMasterDirIdGet(radiusClientId: number, masterDirId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (radiusClientId === null || radiusClientId === undefined) {\n throw new Error('Required parameter radiusClientId was null or undefined when calling apiRadiusMappingGetBySourceRadiusClientIdMasterDirIdGet.');\n }\n if (masterDirId === null || masterDirId === undefined) {\n throw new Error('Required parameter masterDirId was null or undefined when calling apiRadiusMappingGetBySourceRadiusClientIdMasterDirIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusMappingGetBySourceRadiusClientIdMasterDirIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusMapping/getBySource/${this.configuration.encodeParam({name: \"radiusClientId\", value: radiusClientId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"masterDirId\", value: masterDirId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param radiusClientId \n * @param masterDirId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusMappingGetBySourceRadiusClientIdMasterDirIdOrganizationIdGet(radiusClientId: number, masterDirId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusMappingGetBySourceRadiusClientIdMasterDirIdOrganizationIdGet(radiusClientId: number, masterDirId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingGetBySourceRadiusClientIdMasterDirIdOrganizationIdGet(radiusClientId: number, masterDirId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingGetBySourceRadiusClientIdMasterDirIdOrganizationIdGet(radiusClientId: number, masterDirId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (radiusClientId === null || radiusClientId === undefined) {\n throw new Error('Required parameter radiusClientId was null or undefined when calling apiRadiusMappingGetBySourceRadiusClientIdMasterDirIdOrganizationIdGet.');\n }\n if (masterDirId === null || masterDirId === undefined) {\n throw new Error('Required parameter masterDirId was null or undefined when calling apiRadiusMappingGetBySourceRadiusClientIdMasterDirIdOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusMappingGetBySourceRadiusClientIdMasterDirIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusMapping/getBySource/${this.configuration.encodeParam({name: \"radiusClientId\", value: radiusClientId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"masterDirId\", value: masterDirId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusMappingGetCustomAttributesForOrgIdIdGet(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusMappingGetCustomAttributesForOrgIdIdGet(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingGetCustomAttributesForOrgIdIdGet(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingGetCustomAttributesForOrgIdIdGet(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiRadiusMappingGetCustomAttributesForOrgIdIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusMappingGetCustomAttributesForOrgIdIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusMapping/GetCustomAttributesForOrgId/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusMappingGetCustomAttributesForOrgIdIdOrganizationIdGet(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusMappingGetCustomAttributesForOrgIdIdOrganizationIdGet(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingGetCustomAttributesForOrgIdIdOrganizationIdGet(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingGetCustomAttributesForOrgIdIdOrganizationIdGet(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiRadiusMappingGetCustomAttributesForOrgIdIdOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusMappingGetCustomAttributesForOrgIdIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusMapping/GetCustomAttributesForOrgId/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusMappingIdDelete(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusMappingIdDelete(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingIdDelete(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingIdDelete(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiRadiusMappingIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusMappingIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusMapping/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusMappingIdGet(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusMappingIdGet(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingIdGet(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingIdGet(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiRadiusMappingIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusMappingIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusMapping/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusMappingIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusMappingIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingIdOrganizationIdDelete(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiRadiusMappingIdOrganizationIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusMappingIdOrganizationIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusMapping/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusMappingIdOrganizationIdGet(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusMappingIdOrganizationIdGet(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingIdOrganizationIdGet(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingIdOrganizationIdGet(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiRadiusMappingIdOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusMappingIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusMapping/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param radiusAttributeMappingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusMappingIdOrganizationIdPut(id: number, organizationId: number, radiusAttributeMappingModel?: RadiusAttributeMappingModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusMappingIdOrganizationIdPut(id: number, organizationId: number, radiusAttributeMappingModel?: RadiusAttributeMappingModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingIdOrganizationIdPut(id: number, organizationId: number, radiusAttributeMappingModel?: RadiusAttributeMappingModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingIdOrganizationIdPut(id: number, organizationId: number, radiusAttributeMappingModel?: RadiusAttributeMappingModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiRadiusMappingIdOrganizationIdPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusMappingIdOrganizationIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusMapping/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: radiusAttributeMappingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param radiusAttributeMappingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusMappingIdPut(id: number, organizationId: number, radiusAttributeMappingModel?: RadiusAttributeMappingModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusMappingIdPut(id: number, organizationId: number, radiusAttributeMappingModel?: RadiusAttributeMappingModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingIdPut(id: number, organizationId: number, radiusAttributeMappingModel?: RadiusAttributeMappingModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingIdPut(id: number, organizationId: number, radiusAttributeMappingModel?: RadiusAttributeMappingModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiRadiusMappingIdPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusMappingIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusMapping/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: radiusAttributeMappingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param radiusAttributeVendorDel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusMappingOrganizationIdDelete(organizationId: number, radiusAttributeVendorDel?: RadiusAttributeVendorDel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusMappingOrganizationIdDelete(organizationId: number, radiusAttributeVendorDel?: RadiusAttributeVendorDel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingOrganizationIdDelete(organizationId: number, radiusAttributeVendorDel?: RadiusAttributeVendorDel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingOrganizationIdDelete(organizationId: number, radiusAttributeVendorDel?: RadiusAttributeVendorDel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusMappingOrganizationIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusMapping/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: radiusAttributeVendorDel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param radiusAttributeMappingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusMappingOrganizationIdPost(organizationId: number, radiusAttributeMappingModel?: RadiusAttributeMappingModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusMappingOrganizationIdPost(organizationId: number, radiusAttributeMappingModel?: RadiusAttributeMappingModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingOrganizationIdPost(organizationId: number, radiusAttributeMappingModel?: RadiusAttributeMappingModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingOrganizationIdPost(organizationId: number, radiusAttributeMappingModel?: RadiusAttributeMappingModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusMappingOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusMapping/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: radiusAttributeMappingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param radiusAttributeMappingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiRadiusMappingPost(organizationId: number, radiusAttributeMappingModel?: RadiusAttributeMappingModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiRadiusMappingPost(organizationId: number, radiusAttributeMappingModel?: RadiusAttributeMappingModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingPost(organizationId: number, radiusAttributeMappingModel?: RadiusAttributeMappingModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiRadiusMappingPost(organizationId: number, radiusAttributeMappingModel?: RadiusAttributeMappingModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiRadiusMappingPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/RadiusMapping`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: radiusAttributeMappingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { AutomatedReportScheduleInputModel } from '../model/automatedReportScheduleInputModel';\n// @ts-ignore\nimport { AutomatedReportScheduleViewModel } from '../model/automatedReportScheduleViewModel';\n// @ts-ignore\nimport { RecordReportInputModel } from '../model/recordReportInputModel';\n// @ts-ignore\nimport { SavedLoginCountsInputModel } from '../model/savedLoginCountsInputModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ReportsService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationId \n * @param automatedReportScheduleInputModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiReportsAutomatedReportScheduleOrganizationIdPost(organizationId: number, automatedReportScheduleInputModel?: AutomatedReportScheduleInputModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiReportsAutomatedReportScheduleOrganizationIdPost(organizationId: number, automatedReportScheduleInputModel?: AutomatedReportScheduleInputModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiReportsAutomatedReportScheduleOrganizationIdPost(organizationId: number, automatedReportScheduleInputModel?: AutomatedReportScheduleInputModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiReportsAutomatedReportScheduleOrganizationIdPost(organizationId: number, automatedReportScheduleInputModel?: AutomatedReportScheduleInputModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiReportsAutomatedReportScheduleOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Reports/AutomatedReportSchedule/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: automatedReportScheduleInputModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param scheduleId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiReportsAutomatedReportScheduleOrganizationIdScheduleIdDelete(organizationId: number, scheduleId: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiReportsAutomatedReportScheduleOrganizationIdScheduleIdDelete(organizationId: number, scheduleId: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiReportsAutomatedReportScheduleOrganizationIdScheduleIdDelete(organizationId: number, scheduleId: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiReportsAutomatedReportScheduleOrganizationIdScheduleIdDelete(organizationId: number, scheduleId: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiReportsAutomatedReportScheduleOrganizationIdScheduleIdDelete.');\n }\n if (scheduleId === null || scheduleId === undefined) {\n throw new Error('Required parameter scheduleId was null or undefined when calling apiReportsAutomatedReportScheduleOrganizationIdScheduleIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Reports/AutomatedReportSchedule/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"scheduleId\", value: scheduleId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param scheduleId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiReportsAutomatedReportScheduleOrganizationIdScheduleIdGet(organizationId: number, scheduleId: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public apiReportsAutomatedReportScheduleOrganizationIdScheduleIdGet(organizationId: number, scheduleId: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiReportsAutomatedReportScheduleOrganizationIdScheduleIdGet(organizationId: number, scheduleId: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiReportsAutomatedReportScheduleOrganizationIdScheduleIdGet(organizationId: number, scheduleId: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiReportsAutomatedReportScheduleOrganizationIdScheduleIdGet.');\n }\n if (scheduleId === null || scheduleId === undefined) {\n throw new Error('Required parameter scheduleId was null or undefined when calling apiReportsAutomatedReportScheduleOrganizationIdScheduleIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Reports/AutomatedReportSchedule/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"scheduleId\", value: scheduleId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param scheduleId \n * @param automatedReportScheduleInputModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiReportsAutomatedReportScheduleOrganizationIdScheduleIdPut(organizationId: number, scheduleId: string, automatedReportScheduleInputModel?: AutomatedReportScheduleInputModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiReportsAutomatedReportScheduleOrganizationIdScheduleIdPut(organizationId: number, scheduleId: string, automatedReportScheduleInputModel?: AutomatedReportScheduleInputModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiReportsAutomatedReportScheduleOrganizationIdScheduleIdPut(organizationId: number, scheduleId: string, automatedReportScheduleInputModel?: AutomatedReportScheduleInputModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiReportsAutomatedReportScheduleOrganizationIdScheduleIdPut(organizationId: number, scheduleId: string, automatedReportScheduleInputModel?: AutomatedReportScheduleInputModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiReportsAutomatedReportScheduleOrganizationIdScheduleIdPut.');\n }\n if (scheduleId === null || scheduleId === undefined) {\n throw new Error('Required parameter scheduleId was null or undefined when calling apiReportsAutomatedReportScheduleOrganizationIdScheduleIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Reports/AutomatedReportSchedule/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"scheduleId\", value: scheduleId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: \"uuid\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: automatedReportScheduleInputModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiReportsAutomatedReportSchedulesGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiReportsAutomatedReportSchedulesGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiReportsAutomatedReportSchedulesGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiReportsAutomatedReportSchedulesGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Reports/AutomatedReportSchedules`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiReportsAutomatedReportSchedulesOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiReportsAutomatedReportSchedulesOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiReportsAutomatedReportSchedulesOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiReportsAutomatedReportSchedulesOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiReportsAutomatedReportSchedulesOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Reports/AutomatedReportSchedules/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiReportsOrgsWithReportsEnabledGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public apiReportsOrgsWithReportsEnabledGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiReportsOrgsWithReportsEnabledGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>>;\n public apiReportsOrgsWithReportsEnabledGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Reports/OrgsWithReportsEnabled`;\n return this.httpClient.request>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param recordReportInputModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiReportsRecordReportForScheduleOrganizationIdPost(organizationId: number, recordReportInputModel?: RecordReportInputModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiReportsRecordReportForScheduleOrganizationIdPost(organizationId: number, recordReportInputModel?: RecordReportInputModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiReportsRecordReportForScheduleOrganizationIdPost(organizationId: number, recordReportInputModel?: RecordReportInputModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiReportsRecordReportForScheduleOrganizationIdPost(organizationId: number, recordReportInputModel?: RecordReportInputModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiReportsRecordReportForScheduleOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Reports/RecordReportForSchedule/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: recordReportInputModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiReportsRecordedReportsOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiReportsRecordedReportsOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiReportsRecordedReportsOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiReportsRecordedReportsOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiReportsRecordedReportsOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Reports/RecordedReports/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiReportsSavedLoginCountsOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiReportsSavedLoginCountsOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiReportsSavedLoginCountsOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiReportsSavedLoginCountsOrganizationMnemonicGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiReportsSavedLoginCountsOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Reports/SavedLoginCounts/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param savedLoginCountsInputModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiReportsSavedLoginCountsOrganizationMnemonicPost(organizationMnemonic: string, savedLoginCountsInputModel?: SavedLoginCountsInputModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiReportsSavedLoginCountsOrganizationMnemonicPost(organizationMnemonic: string, savedLoginCountsInputModel?: SavedLoginCountsInputModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiReportsSavedLoginCountsOrganizationMnemonicPost(organizationMnemonic: string, savedLoginCountsInputModel?: SavedLoginCountsInputModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiReportsSavedLoginCountsOrganizationMnemonicPost(organizationMnemonic: string, savedLoginCountsInputModel?: SavedLoginCountsInputModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiReportsSavedLoginCountsOrganizationMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Reports/SavedLoginCounts/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: savedLoginCountsInputModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { SafeLocationModel } from '../model/safeLocationModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SafeLocationsService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param orgCode \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSafeLocationsAllByOrgCodeOrgCodeGet(orgCode: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSafeLocationsAllByOrgCodeOrgCodeGet(orgCode: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSafeLocationsAllByOrgCodeOrgCodeGet(orgCode: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSafeLocationsAllByOrgCodeOrgCodeGet(orgCode: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgCode === null || orgCode === undefined) {\n throw new Error('Required parameter orgCode was null or undefined when calling apiSafeLocationsAllByOrgCodeOrgCodeGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SafeLocations/allByOrgCode/${this.configuration.encodeParam({name: \"orgCode\", value: orgCode, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSafeLocationsAllForOrgOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSafeLocationsAllForOrgOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSafeLocationsAllForOrgOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSafeLocationsAllForOrgOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSafeLocationsAllForOrgOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SafeLocations/allForOrg/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgCode \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSafeLocationsByOrgCodeOrgCodeGet(orgCode: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSafeLocationsByOrgCodeOrgCodeGet(orgCode: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSafeLocationsByOrgCodeOrgCodeGet(orgCode: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSafeLocationsByOrgCodeOrgCodeGet(orgCode: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgCode === null || orgCode === undefined) {\n throw new Error('Required parameter orgCode was null or undefined when calling apiSafeLocationsByOrgCodeOrgCodeGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SafeLocations/byOrgCode/${this.configuration.encodeParam({name: \"orgCode\", value: orgCode, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSafeLocationsIdDelete(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSafeLocationsIdDelete(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSafeLocationsIdDelete(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSafeLocationsIdDelete(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiSafeLocationsIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSafeLocationsIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SafeLocations/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSafeLocationsIdGet(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSafeLocationsIdGet(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSafeLocationsIdGet(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSafeLocationsIdGet(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiSafeLocationsIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSafeLocationsIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SafeLocations/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSafeLocationsIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSafeLocationsIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSafeLocationsIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSafeLocationsIdOrganizationIdDelete(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiSafeLocationsIdOrganizationIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSafeLocationsIdOrganizationIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SafeLocations/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSafeLocationsIdOrganizationIdGet(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSafeLocationsIdOrganizationIdGet(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSafeLocationsIdOrganizationIdGet(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSafeLocationsIdOrganizationIdGet(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiSafeLocationsIdOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSafeLocationsIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SafeLocations/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgCode \n * @param latitude \n * @param longitude \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSafeLocationsIsSafeOrgCodeGet(orgCode: string, latitude?: number, longitude?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSafeLocationsIsSafeOrgCodeGet(orgCode: string, latitude?: number, longitude?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSafeLocationsIsSafeOrgCodeGet(orgCode: string, latitude?: number, longitude?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSafeLocationsIsSafeOrgCodeGet(orgCode: string, latitude?: number, longitude?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgCode === null || orgCode === undefined) {\n throw new Error('Required parameter orgCode was null or undefined when calling apiSafeLocationsIsSafeOrgCodeGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (latitude !== undefined && latitude !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n latitude, 'latitude');\n }\n if (longitude !== undefined && longitude !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n longitude, 'longitude');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SafeLocations/isSafe/${this.configuration.encodeParam({name: \"orgCode\", value: orgCode, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param safeLocationModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSafeLocationsOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, safeLocationModel?: SafeLocationModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSafeLocationsOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, safeLocationModel?: SafeLocationModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSafeLocationsOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, safeLocationModel?: SafeLocationModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSafeLocationsOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, safeLocationModel?: SafeLocationModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSafeLocationsOrganizationIdOrganizationMnemonicPost.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiSafeLocationsOrganizationIdOrganizationMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SafeLocations/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: safeLocationModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param safeLocationModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSafeLocationsOrganizationIdPut(organizationId: number, safeLocationModel?: SafeLocationModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSafeLocationsOrganizationIdPut(organizationId: number, safeLocationModel?: SafeLocationModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSafeLocationsOrganizationIdPut(organizationId: number, safeLocationModel?: SafeLocationModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSafeLocationsOrganizationIdPut(organizationId: number, safeLocationModel?: SafeLocationModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSafeLocationsOrganizationIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SafeLocations/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: safeLocationModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSafeLocationsPagedGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSafeLocationsPagedGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSafeLocationsPagedGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSafeLocationsPagedGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSafeLocationsPagedGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SafeLocations/paged`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSafeLocationsPagedOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSafeLocationsPagedOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSafeLocationsPagedOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSafeLocationsPagedOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSafeLocationsPagedOrganizationIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SafeLocations/paged/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param safeLocationModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSafeLocationsPost(organizationId: number, organizationMnemonic: string, safeLocationModel?: SafeLocationModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSafeLocationsPost(organizationId: number, organizationMnemonic: string, safeLocationModel?: SafeLocationModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSafeLocationsPost(organizationId: number, organizationMnemonic: string, safeLocationModel?: SafeLocationModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSafeLocationsPost(organizationId: number, organizationMnemonic: string, safeLocationModel?: SafeLocationModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSafeLocationsPost.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiSafeLocationsPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SafeLocations`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: safeLocationModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param safeLocationModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSafeLocationsPut(organizationId: number, safeLocationModel?: SafeLocationModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSafeLocationsPut(organizationId: number, safeLocationModel?: SafeLocationModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSafeLocationsPut(organizationId: number, safeLocationModel?: SafeLocationModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSafeLocationsPut(organizationId: number, safeLocationModel?: SafeLocationModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSafeLocationsPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SafeLocations`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: safeLocationModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { SecuritySettingModel } from '../model/securitySettingModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SecuritySettingService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSecuritySettingByorgOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSecuritySettingByorgOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingByorgOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingByorgOrganizationMnemonicGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiSecuritySettingByorgOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SecuritySetting/byorg/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgcode \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSecuritySettingByorgidOrgcodeGet(orgcode: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSecuritySettingByorgidOrgcodeGet(orgcode: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingByorgidOrgcodeGet(orgcode: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingByorgidOrgcodeGet(orgcode: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgcode === null || orgcode === undefined) {\n throw new Error('Required parameter orgcode was null or undefined when calling apiSecuritySettingByorgidOrgcodeGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SecuritySetting/byorgid/${this.configuration.encodeParam({name: \"orgcode\", value: orgcode, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param securitySettingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSecuritySettingCreateSecuritySettingsOrganizationIdPost(organizationId: number, securitySettingModel?: SecuritySettingModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSecuritySettingCreateSecuritySettingsOrganizationIdPost(organizationId: number, securitySettingModel?: SecuritySettingModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingCreateSecuritySettingsOrganizationIdPost(organizationId: number, securitySettingModel?: SecuritySettingModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingCreateSecuritySettingsOrganizationIdPost(organizationId: number, securitySettingModel?: SecuritySettingModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSecuritySettingCreateSecuritySettingsOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SecuritySetting/CreateSecuritySettings/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: securitySettingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param securitySettingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSecuritySettingCreateSecuritySettingsPost(organizationId: number, securitySettingModel?: SecuritySettingModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSecuritySettingCreateSecuritySettingsPost(organizationId: number, securitySettingModel?: SecuritySettingModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingCreateSecuritySettingsPost(organizationId: number, securitySettingModel?: SecuritySettingModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingCreateSecuritySettingsPost(organizationId: number, securitySettingModel?: SecuritySettingModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSecuritySettingCreateSecuritySettingsPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SecuritySetting/CreateSecuritySettings`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: securitySettingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSecuritySettingDeleteSecuritySettingIdDelete(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSecuritySettingDeleteSecuritySettingIdDelete(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingDeleteSecuritySettingIdDelete(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingDeleteSecuritySettingIdDelete(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiSecuritySettingDeleteSecuritySettingIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSecuritySettingDeleteSecuritySettingIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SecuritySetting/DeleteSecuritySetting/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSecuritySettingDeleteSecuritySettingIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSecuritySettingDeleteSecuritySettingIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingDeleteSecuritySettingIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingDeleteSecuritySettingIdOrganizationIdDelete(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiSecuritySettingDeleteSecuritySettingIdOrganizationIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSecuritySettingDeleteSecuritySettingIdOrganizationIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SecuritySetting/DeleteSecuritySetting/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSecuritySettingForgotsettingsbyorgidGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSecuritySettingForgotsettingsbyorgidGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingForgotsettingsbyorgidGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingForgotsettingsbyorgidGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiSecuritySettingForgotsettingsbyorgidGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SecuritySetting/forgotsettingsbyorgid`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSecuritySettingForgotsettingsbyorgidOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSecuritySettingForgotsettingsbyorgidOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingForgotsettingsbyorgidOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingForgotsettingsbyorgidOrganizationMnemonicGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiSecuritySettingForgotsettingsbyorgidOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SecuritySetting/forgotsettingsbyorgid/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSecuritySettingGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSecuritySettingGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SecuritySetting`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSecuritySettingGetSecuritySettingByIDIdGet(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSecuritySettingGetSecuritySettingByIDIdGet(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingGetSecuritySettingByIDIdGet(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingGetSecuritySettingByIDIdGet(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiSecuritySettingGetSecuritySettingByIDIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSecuritySettingGetSecuritySettingByIDIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SecuritySetting/GetSecuritySettingByID/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSecuritySettingGetSecuritySettingByIDIdOrganizationIdGet(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSecuritySettingGetSecuritySettingByIDIdOrganizationIdGet(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingGetSecuritySettingByIDIdOrganizationIdGet(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingGetSecuritySettingByIDIdOrganizationIdGet(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiSecuritySettingGetSecuritySettingByIDIdOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSecuritySettingGetSecuritySettingByIDIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SecuritySetting/GetSecuritySettingByID/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSecuritySettingSettingsbyorgidGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSecuritySettingSettingsbyorgidGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingSettingsbyorgidGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingSettingsbyorgidGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSecuritySettingSettingsbyorgidGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SecuritySetting/settingsbyorgid`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSecuritySettingSettingsbyorgidOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSecuritySettingSettingsbyorgidOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingSettingsbyorgidOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingSettingsbyorgidOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSecuritySettingSettingsbyorgidOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SecuritySetting/settingsbyorgid/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param securitySettingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSecuritySettingUpdateSecuritySettingsIdOrganizationIdPut(id: number, organizationId: number, securitySettingModel?: SecuritySettingModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSecuritySettingUpdateSecuritySettingsIdOrganizationIdPut(id: number, organizationId: number, securitySettingModel?: SecuritySettingModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingUpdateSecuritySettingsIdOrganizationIdPut(id: number, organizationId: number, securitySettingModel?: SecuritySettingModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingUpdateSecuritySettingsIdOrganizationIdPut(id: number, organizationId: number, securitySettingModel?: SecuritySettingModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiSecuritySettingUpdateSecuritySettingsIdOrganizationIdPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSecuritySettingUpdateSecuritySettingsIdOrganizationIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SecuritySetting/UpdateSecuritySettings/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: securitySettingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param securitySettingModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSecuritySettingUpdateSecuritySettingsIdPut(id: number, organizationId: number, securitySettingModel?: SecuritySettingModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSecuritySettingUpdateSecuritySettingsIdPut(id: number, organizationId: number, securitySettingModel?: SecuritySettingModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingUpdateSecuritySettingsIdPut(id: number, organizationId: number, securitySettingModel?: SecuritySettingModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSecuritySettingUpdateSecuritySettingsIdPut(id: number, organizationId: number, securitySettingModel?: SecuritySettingModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiSecuritySettingUpdateSecuritySettingsIdPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSecuritySettingUpdateSecuritySettingsIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SecuritySetting/UpdateSecuritySettings/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: securitySettingModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { SyncServiceHistoryModel } from '../model/syncServiceHistoryModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SyncServiceHistoryService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param syncServiceHistoryModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyncServiceHistoryCreateOrUpdateSyncServiceHistoryPost(syncServiceHistoryModel?: SyncServiceHistoryModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyncServiceHistoryCreateOrUpdateSyncServiceHistoryPost(syncServiceHistoryModel?: SyncServiceHistoryModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncServiceHistoryCreateOrUpdateSyncServiceHistoryPost(syncServiceHistoryModel?: SyncServiceHistoryModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncServiceHistoryCreateOrUpdateSyncServiceHistoryPost(syncServiceHistoryModel?: SyncServiceHistoryModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyncServiceHistory/CreateOrUpdateSyncServiceHistory`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: syncServiceHistoryModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param syncServiceHistoryModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyncServiceHistoryCreateSyncServiceHistoryPost(syncServiceHistoryModel?: SyncServiceHistoryModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyncServiceHistoryCreateSyncServiceHistoryPost(syncServiceHistoryModel?: SyncServiceHistoryModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncServiceHistoryCreateSyncServiceHistoryPost(syncServiceHistoryModel?: SyncServiceHistoryModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncServiceHistoryCreateSyncServiceHistoryPost(syncServiceHistoryModel?: SyncServiceHistoryModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyncServiceHistory/CreateSyncServiceHistory`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: syncServiceHistoryModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgId \n * @param orgDirectoryId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyncServiceHistoryGetLastSyncHistoryOrgIdOrgDirectoryIdGet(orgId: number, orgDirectoryId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyncServiceHistoryGetLastSyncHistoryOrgIdOrgDirectoryIdGet(orgId: number, orgDirectoryId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncServiceHistoryGetLastSyncHistoryOrgIdOrgDirectoryIdGet(orgId: number, orgDirectoryId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncServiceHistoryGetLastSyncHistoryOrgIdOrgDirectoryIdGet(orgId: number, orgDirectoryId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiSyncServiceHistoryGetLastSyncHistoryOrgIdOrgDirectoryIdGet.');\n }\n if (orgDirectoryId === null || orgDirectoryId === undefined) {\n throw new Error('Required parameter orgDirectoryId was null or undefined when calling apiSyncServiceHistoryGetLastSyncHistoryOrgIdOrgDirectoryIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyncServiceHistory/GetLastSyncHistory/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"orgDirectoryId\", value: orgDirectoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { SyslogClientModel } from '../model/syslogClientModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SyslogClientService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyslogClientByorgidGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyslogClientByorgidGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientByorgidGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientByorgidGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSyslogClientByorgidGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyslogClient/byorgid`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyslogClientByorgidOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyslogClientByorgidOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientByorgidOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientByorgidOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSyslogClientByorgidOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyslogClient/byorgid/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyslogClientByorgkeyGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyslogClientByorgkeyGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientByorgkeyGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientByorgkeyGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiSyslogClientByorgkeyGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyslogClient/byorgkey`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyslogClientByorgkeyOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyslogClientByorgkeyOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientByorgkeyOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientByorgkeyOrganizationMnemonicGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiSyslogClientByorgkeyOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyslogClient/byorgkey/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyslogClientGetPagedDataGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyslogClientGetPagedDataGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientGetPagedDataGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientGetPagedDataGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSyslogClientGetPagedDataGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyslogClient/getPagedData`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyslogClientGetPagedDataOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyslogClientGetPagedDataOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientGetPagedDataOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientGetPagedDataOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSyslogClientGetPagedDataOrganizationIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyslogClient/getPagedData/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyslogClientGetSyslogforServiceApiKeyGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyslogClientGetSyslogforServiceApiKeyGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientGetSyslogforServiceApiKeyGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientGetSyslogforServiceApiKeyGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiSyslogClientGetSyslogforServiceApiKeyGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyslogClient/getSyslogforServiceApiKey`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyslogClientGetSyslogforServiceApiKeyOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyslogClientGetSyslogforServiceApiKeyOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientGetSyslogforServiceApiKeyOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientGetSyslogforServiceApiKeyOrganizationMnemonicGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiSyslogClientGetSyslogforServiceApiKeyOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyslogClient/getSyslogforServiceApiKey/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyslogClientGetSyslogforServiceGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyslogClientGetSyslogforServiceGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientGetSyslogforServiceGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientGetSyslogforServiceGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiSyslogClientGetSyslogforServiceGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyslogClient/getSyslogforService`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyslogClientGetSyslogforServiceOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyslogClientGetSyslogforServiceOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientGetSyslogforServiceOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientGetSyslogforServiceOrganizationMnemonicGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiSyslogClientGetSyslogforServiceOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyslogClient/getSyslogforService/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyslogClientIdDelete(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyslogClientIdDelete(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientIdDelete(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientIdDelete(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiSyslogClientIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSyslogClientIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyslogClient/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyslogClientIdGet(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyslogClientIdGet(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientIdGet(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientIdGet(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiSyslogClientIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSyslogClientIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyslogClient/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyslogClientIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyslogClientIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientIdOrganizationIdDelete(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiSyslogClientIdOrganizationIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSyslogClientIdOrganizationIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyslogClient/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyslogClientIdOrganizationIdGet(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyslogClientIdOrganizationIdGet(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientIdOrganizationIdGet(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientIdOrganizationIdGet(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiSyslogClientIdOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSyslogClientIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyslogClient/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param syslogClientModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyslogClientIdOrganizationIdPut(id: number, organizationId: number, syslogClientModel?: SyslogClientModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyslogClientIdOrganizationIdPut(id: number, organizationId: number, syslogClientModel?: SyslogClientModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientIdOrganizationIdPut(id: number, organizationId: number, syslogClientModel?: SyslogClientModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientIdOrganizationIdPut(id: number, organizationId: number, syslogClientModel?: SyslogClientModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiSyslogClientIdOrganizationIdPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSyslogClientIdOrganizationIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyslogClient/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: syslogClientModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param syslogClientModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyslogClientIdPut(id: number, organizationId: number, syslogClientModel?: SyslogClientModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyslogClientIdPut(id: number, organizationId: number, syslogClientModel?: SyslogClientModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientIdPut(id: number, organizationId: number, syslogClientModel?: SyslogClientModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientIdPut(id: number, organizationId: number, syslogClientModel?: SyslogClientModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiSyslogClientIdPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSyslogClientIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyslogClient/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: syslogClientModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyslogClientIsEnabledOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyslogClientIsEnabledOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientIsEnabledOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientIsEnabledOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSyslogClientIsEnabledOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyslogClient/IsEnabled/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param syslogClientModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyslogClientOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, syslogClientModel?: SyslogClientModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyslogClientOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, syslogClientModel?: SyslogClientModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, syslogClientModel?: SyslogClientModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, syslogClientModel?: SyslogClientModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSyslogClientOrganizationIdOrganizationMnemonicPost.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiSyslogClientOrganizationIdOrganizationMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyslogClient/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: syslogClientModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param syslogClientModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyslogClientPost(organizationId: number, organizationMnemonic: string, syslogClientModel?: SyslogClientModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyslogClientPost(organizationId: number, organizationMnemonic: string, syslogClientModel?: SyslogClientModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientPost(organizationId: number, organizationMnemonic: string, syslogClientModel?: SyslogClientModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientPost(organizationId: number, organizationMnemonic: string, syslogClientModel?: SyslogClientModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSyslogClientPost.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiSyslogClientPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyslogClient`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: syslogClientModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param syslogClientModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyslogClientRemoveSyslogAgentIdOrganizationIdPut(id: number, organizationId: number, syslogClientModel?: SyslogClientModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyslogClientRemoveSyslogAgentIdOrganizationIdPut(id: number, organizationId: number, syslogClientModel?: SyslogClientModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientRemoveSyslogAgentIdOrganizationIdPut(id: number, organizationId: number, syslogClientModel?: SyslogClientModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientRemoveSyslogAgentIdOrganizationIdPut(id: number, organizationId: number, syslogClientModel?: SyslogClientModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiSyslogClientRemoveSyslogAgentIdOrganizationIdPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSyslogClientRemoveSyslogAgentIdOrganizationIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyslogClient/removeSyslogAgent/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: syslogClientModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param syslogClientModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyslogClientRemoveSyslogAgentIdPut(id: number, organizationId: number, syslogClientModel?: SyslogClientModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyslogClientRemoveSyslogAgentIdPut(id: number, organizationId: number, syslogClientModel?: SyslogClientModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientRemoveSyslogAgentIdPut(id: number, organizationId: number, syslogClientModel?: SyslogClientModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyslogClientRemoveSyslogAgentIdPut(id: number, organizationId: number, syslogClientModel?: SyslogClientModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiSyslogClientRemoveSyslogAgentIdPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiSyslogClientRemoveSyslogAgentIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyslogClient/removeSyslogAgent/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: syslogClientModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class TenantCleanupService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationId \n * @param body \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiTenantCleanupOrganizationIdDelete(organizationId: number, body?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiTenantCleanupOrganizationIdDelete(organizationId: number, body?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiTenantCleanupOrganizationIdDelete(organizationId: number, body?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiTenantCleanupOrganizationIdDelete(organizationId: number, body?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiTenantCleanupOrganizationIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/TenantCleanup/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: body,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { ThemeModel } from '../model/themeModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ThemeService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationId \n * @param themeModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiThemeCreateThemesOrganizationIdPost(organizationId: number, themeModel?: ThemeModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiThemeCreateThemesOrganizationIdPost(organizationId: number, themeModel?: ThemeModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiThemeCreateThemesOrganizationIdPost(organizationId: number, themeModel?: ThemeModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiThemeCreateThemesOrganizationIdPost(organizationId: number, themeModel?: ThemeModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiThemeCreateThemesOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Theme/CreateThemes/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: themeModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param themeModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiThemeCreateThemesPost(organizationId: number, themeModel?: ThemeModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiThemeCreateThemesPost(organizationId: number, themeModel?: ThemeModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiThemeCreateThemesPost(organizationId: number, themeModel?: ThemeModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiThemeCreateThemesPost(organizationId: number, themeModel?: ThemeModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiThemeCreateThemesPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Theme/CreateThemes`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: themeModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiThemeDeleteThemeIdDelete(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiThemeDeleteThemeIdDelete(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiThemeDeleteThemeIdDelete(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiThemeDeleteThemeIdDelete(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiThemeDeleteThemeIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiThemeDeleteThemeIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Theme/DeleteTheme/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiThemeDeleteThemeIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiThemeDeleteThemeIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiThemeDeleteThemeIdOrganizationIdDelete(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiThemeDeleteThemeIdOrganizationIdDelete(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiThemeDeleteThemeIdOrganizationIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiThemeDeleteThemeIdOrganizationIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Theme/DeleteTheme/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiThemeGetThemeByIDIdGet(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiThemeGetThemeByIDIdGet(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiThemeGetThemeByIDIdGet(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiThemeGetThemeByIDIdGet(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiThemeGetThemeByIDIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiThemeGetThemeByIDIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Theme/GetThemeByID/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiThemeGetThemeByIDIdOrganizationIdGet(id: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiThemeGetThemeByIDIdOrganizationIdGet(id: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiThemeGetThemeByIDIdOrganizationIdGet(id: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiThemeGetThemeByIDIdOrganizationIdGet(id: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiThemeGetThemeByIDIdOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiThemeGetThemeByIDIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Theme/GetThemeByID/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param type \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiThemeGetThemeByTypeTypeGet(organizationId: number, type: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiThemeGetThemeByTypeTypeGet(organizationId: number, type: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiThemeGetThemeByTypeTypeGet(organizationId: number, type: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiThemeGetThemeByTypeTypeGet(organizationId: number, type: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiThemeGetThemeByTypeTypeGet.');\n }\n if (type === null || type === undefined) {\n throw new Error('Required parameter type was null or undefined when calling apiThemeGetThemeByTypeTypeGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Theme/GetThemeByType/${this.configuration.encodeParam({name: \"type\", value: type, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param type \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiThemeGetThemeByTypeTypeOrganizationIdGet(organizationId: number, type: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiThemeGetThemeByTypeTypeOrganizationIdGet(organizationId: number, type: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiThemeGetThemeByTypeTypeOrganizationIdGet(organizationId: number, type: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiThemeGetThemeByTypeTypeOrganizationIdGet(organizationId: number, type: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiThemeGetThemeByTypeTypeOrganizationIdGet.');\n }\n if (type === null || type === undefined) {\n throw new Error('Required parameter type was null or undefined when calling apiThemeGetThemeByTypeTypeOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Theme/GetThemeByType/${this.configuration.encodeParam({name: \"type\", value: type, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param mnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiThemeThemeMnemonicGet(mnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiThemeThemeMnemonicGet(mnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiThemeThemeMnemonicGet(mnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiThemeThemeMnemonicGet(mnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (mnemonic === null || mnemonic === undefined) {\n throw new Error('Required parameter mnemonic was null or undefined when calling apiThemeThemeMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Theme/Theme/${this.configuration.encodeParam({name: \"mnemonic\", value: mnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param mnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiThemeThemeMobileMnemonicGet(mnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiThemeThemeMobileMnemonicGet(mnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiThemeThemeMobileMnemonicGet(mnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiThemeThemeMobileMnemonicGet(mnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (mnemonic === null || mnemonic === undefined) {\n throw new Error('Required parameter mnemonic was null or undefined when calling apiThemeThemeMobileMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Theme/ThemeMobile/${this.configuration.encodeParam({name: \"mnemonic\", value: mnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param themeModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiThemeUpdateThemesIdOrganizationIdPut(id: number, organizationId: number, themeModel?: ThemeModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiThemeUpdateThemesIdOrganizationIdPut(id: number, organizationId: number, themeModel?: ThemeModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiThemeUpdateThemesIdOrganizationIdPut(id: number, organizationId: number, themeModel?: ThemeModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiThemeUpdateThemesIdOrganizationIdPut(id: number, organizationId: number, themeModel?: ThemeModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiThemeUpdateThemesIdOrganizationIdPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiThemeUpdateThemesIdOrganizationIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Theme/UpdateThemes/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: themeModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param id \n * @param organizationId \n * @param themeModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiThemeUpdateThemesIdPut(id: number, organizationId: number, themeModel?: ThemeModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiThemeUpdateThemesIdPut(id: number, organizationId: number, themeModel?: ThemeModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiThemeUpdateThemesIdPut(id: number, organizationId: number, themeModel?: ThemeModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiThemeUpdateThemesIdPut(id: number, organizationId: number, themeModel?: ThemeModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiThemeUpdateThemesIdPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiThemeUpdateThemesIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Theme/UpdateThemes/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: themeModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class VersionService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiVersionGetVersionGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiVersionGetVersionGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiVersionGetVersionGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiVersionGetVersionGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Version/getVersion`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { WlaClientModel } from '../model/wlaClientModel';\n// @ts-ignore\nimport { WlaGetSettingsModel } from '../model/wlaGetSettingsModel';\n// @ts-ignore\nimport { WlaSetStatusModel } from '../model/wlaSetStatusModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class WindowsLogonService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationMnemonic \n * @param wlaClientModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiWindowsLogonCreateOrganizationMnemonicPost(organizationMnemonic: string, wlaClientModel?: WlaClientModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiWindowsLogonCreateOrganizationMnemonicPost(organizationMnemonic: string, wlaClientModel?: WlaClientModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonCreateOrganizationMnemonicPost(organizationMnemonic: string, wlaClientModel?: WlaClientModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonCreateOrganizationMnemonicPost(organizationMnemonic: string, wlaClientModel?: WlaClientModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiWindowsLogonCreateOrganizationMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/WindowsLogon/Create/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: wlaClientModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param clientId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiWindowsLogonDeleteClientOrganizationIdClientIdDelete(organizationId: number, clientId: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiWindowsLogonDeleteClientOrganizationIdClientIdDelete(organizationId: number, clientId: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonDeleteClientOrganizationIdClientIdDelete(organizationId: number, clientId: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonDeleteClientOrganizationIdClientIdDelete(organizationId: number, clientId: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiWindowsLogonDeleteClientOrganizationIdClientIdDelete.');\n }\n if (clientId === null || clientId === undefined) {\n throw new Error('Required parameter clientId was null or undefined when calling apiWindowsLogonDeleteClientOrganizationIdClientIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/WindowsLogon/DeleteClient/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"clientId\", value: clientId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiWindowsLogonGenerateAPIKeyForWLAOrganizationIdPost(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiWindowsLogonGenerateAPIKeyForWLAOrganizationIdPost(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonGenerateAPIKeyForWLAOrganizationIdPost(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonGenerateAPIKeyForWLAOrganizationIdPost(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiWindowsLogonGenerateAPIKeyForWLAOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/WindowsLogon/GenerateAPIKeyForWLA/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiWindowsLogonGenerateAPIKeyForWLAPost(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiWindowsLogonGenerateAPIKeyForWLAPost(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonGenerateAPIKeyForWLAPost(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonGenerateAPIKeyForWLAPost(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiWindowsLogonGenerateAPIKeyForWLAPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/WindowsLogon/GenerateAPIKeyForWLA`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiWindowsLogonGetAPIKeyForWLAByOrgCodeGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiWindowsLogonGetAPIKeyForWLAByOrgCodeGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonGetAPIKeyForWLAByOrgCodeGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonGetAPIKeyForWLAByOrgCodeGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiWindowsLogonGetAPIKeyForWLAByOrgCodeGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/WindowsLogon/GetAPIKeyForWLAByOrgCode`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiWindowsLogonGetAPIKeyForWLAByOrgCodeOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiWindowsLogonGetAPIKeyForWLAByOrgCodeOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonGetAPIKeyForWLAByOrgCodeOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonGetAPIKeyForWLAByOrgCodeOrganizationMnemonicGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiWindowsLogonGetAPIKeyForWLAByOrgCodeOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/WindowsLogon/GetAPIKeyForWLAByOrgCode/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiWindowsLogonGetAPIKeyForWLAGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiWindowsLogonGetAPIKeyForWLAGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonGetAPIKeyForWLAGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonGetAPIKeyForWLAGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiWindowsLogonGetAPIKeyForWLAGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/WindowsLogon/GetAPIKeyForWLA`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiWindowsLogonGetAPIKeyForWLAOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiWindowsLogonGetAPIKeyForWLAOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonGetAPIKeyForWLAOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonGetAPIKeyForWLAOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiWindowsLogonGetAPIKeyForWLAOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/WindowsLogon/GetAPIKeyForWLA/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiWindowsLogonGetAllOrganizationMnemonicGet(organizationMnemonic: string, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiWindowsLogonGetAllOrganizationMnemonicGet(organizationMnemonic: string, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonGetAllOrganizationMnemonicGet(organizationMnemonic: string, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonGetAllOrganizationMnemonicGet(organizationMnemonic: string, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiWindowsLogonGetAllOrganizationMnemonicGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/WindowsLogon/GetAll/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiWindowsLogonGetClientsGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiWindowsLogonGetClientsGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonGetClientsGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonGetClientsGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiWindowsLogonGetClientsGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/WindowsLogon/GetClients`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiWindowsLogonGetClientsOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiWindowsLogonGetClientsOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonGetClientsOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonGetClientsOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiWindowsLogonGetClientsOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/WindowsLogon/GetClients/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiWindowsLogonGetDomainsOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiWindowsLogonGetDomainsOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonGetDomainsOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonGetDomainsOrganizationMnemonicGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiWindowsLogonGetDomainsOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/WindowsLogon/GetDomains/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiWindowsLogonGetOrgWLAAPIKeyOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiWindowsLogonGetOrgWLAAPIKeyOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonGetOrgWLAAPIKeyOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonGetOrgWLAAPIKeyOrganizationMnemonicGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiWindowsLogonGetOrgWLAAPIKeyOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/WindowsLogon/GetOrgWLAAPIKey/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiWindowsLogonGetOrganizationGroupsOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiWindowsLogonGetOrganizationGroupsOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonGetOrganizationGroupsOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonGetOrganizationGroupsOrganizationMnemonicGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiWindowsLogonGetOrganizationGroupsOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/WindowsLogon/GetOrganizationGroups/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param name \n * @param id \n * @param domain \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n * @deprecated\n */\n public apiWindowsLogonGetOrganizationMnemonicNameIdDomainGet(organizationMnemonic: string, name: string, id: string, domain: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiWindowsLogonGetOrganizationMnemonicNameIdDomainGet(organizationMnemonic: string, name: string, id: string, domain: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonGetOrganizationMnemonicNameIdDomainGet(organizationMnemonic: string, name: string, id: string, domain: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonGetOrganizationMnemonicNameIdDomainGet(organizationMnemonic: string, name: string, id: string, domain: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiWindowsLogonGetOrganizationMnemonicNameIdDomainGet.');\n }\n if (name === null || name === undefined) {\n throw new Error('Required parameter name was null or undefined when calling apiWindowsLogonGetOrganizationMnemonicNameIdDomainGet.');\n }\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling apiWindowsLogonGetOrganizationMnemonicNameIdDomainGet.');\n }\n if (domain === null || domain === undefined) {\n throw new Error('Required parameter domain was null or undefined when calling apiWindowsLogonGetOrganizationMnemonicNameIdDomainGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/WindowsLogon/Get/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"name\", value: name, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"domain\", value: domain, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param wlaGetSettingsModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiWindowsLogonGetSettingsPost(wlaGetSettingsModel?: WlaGetSettingsModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiWindowsLogonGetSettingsPost(wlaGetSettingsModel?: WlaGetSettingsModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonGetSettingsPost(wlaGetSettingsModel?: WlaGetSettingsModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonGetSettingsPost(wlaGetSettingsModel?: WlaGetSettingsModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/WindowsLogon/GetSettings`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: wlaGetSettingsModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param body \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiWindowsLogonOrgIdForApiKeyPost(body?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiWindowsLogonOrgIdForApiKeyPost(body?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonOrgIdForApiKeyPost(body?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonOrgIdForApiKeyPost(body?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/WindowsLogon/OrgIdForApiKey`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: body,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param wlaSetStatusModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiWindowsLogonSetClientsStatusOrganizationMnemonicPost(organizationMnemonic: string, wlaSetStatusModel?: WlaSetStatusModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiWindowsLogonSetClientsStatusOrganizationMnemonicPost(organizationMnemonic: string, wlaSetStatusModel?: WlaSetStatusModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonSetClientsStatusOrganizationMnemonicPost(organizationMnemonic: string, wlaSetStatusModel?: WlaSetStatusModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonSetClientsStatusOrganizationMnemonicPost(organizationMnemonic: string, wlaSetStatusModel?: WlaSetStatusModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiWindowsLogonSetClientsStatusOrganizationMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/WindowsLogon/SetClientsStatus/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: wlaSetStatusModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param domain \n * @param wildcard \n * @param wlaClientModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiWindowsLogonUpdateBulkOrganizationMnemonicDomainWildcardPost(organizationMnemonic: string, domain: string, wildcard: boolean, wlaClientModel?: WlaClientModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiWindowsLogonUpdateBulkOrganizationMnemonicDomainWildcardPost(organizationMnemonic: string, domain: string, wildcard: boolean, wlaClientModel?: WlaClientModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonUpdateBulkOrganizationMnemonicDomainWildcardPost(organizationMnemonic: string, domain: string, wildcard: boolean, wlaClientModel?: WlaClientModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonUpdateBulkOrganizationMnemonicDomainWildcardPost(organizationMnemonic: string, domain: string, wildcard: boolean, wlaClientModel?: WlaClientModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiWindowsLogonUpdateBulkOrganizationMnemonicDomainWildcardPost.');\n }\n if (domain === null || domain === undefined) {\n throw new Error('Required parameter domain was null or undefined when calling apiWindowsLogonUpdateBulkOrganizationMnemonicDomainWildcardPost.');\n }\n if (wildcard === null || wildcard === undefined) {\n throw new Error('Required parameter wildcard was null or undefined when calling apiWindowsLogonUpdateBulkOrganizationMnemonicDomainWildcardPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/WindowsLogon/UpdateBulk/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"domain\", value: domain, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"wildcard\", value: wildcard, in: \"path\", style: \"simple\", explode: false, dataType: \"boolean\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: wlaClientModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param wlaClientModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiWindowsLogonUpdateOrganizationMnemonicPost(organizationMnemonic: string, wlaClientModel?: WlaClientModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiWindowsLogonUpdateOrganizationMnemonicPost(organizationMnemonic: string, wlaClientModel?: WlaClientModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonUpdateOrganizationMnemonicPost(organizationMnemonic: string, wlaClientModel?: WlaClientModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiWindowsLogonUpdateOrganizationMnemonicPost(organizationMnemonic: string, wlaClientModel?: WlaClientModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiWindowsLogonUpdateOrganizationMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/WindowsLogon/Update/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: wlaClientModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","import { HttpParameterCodec } from '@angular/common/http';\nimport { Param } from './param';\n\nexport interface ConfigurationParameters {\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n apiKeys?: {[ key: string ]: string};\n username?: string;\n password?: string;\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n accessToken?: string | (() => string);\n basePath?: string;\n withCredentials?: boolean;\n /**\n * Takes care of encoding query- and form-parameters.\n */\n encoder?: HttpParameterCodec;\n /**\n * Override the default method for encoding path parameters in various\n * styles.\n *

\n * See {@link README.md} for more details\n *

\n */\n encodeParam?: (param: Param) => string;\n /**\n * The keys are the names in the securitySchemes section of the OpenAPI\n * document. They should map to the value used for authentication\n * minus any standard prefixes such as 'Basic' or 'Bearer'.\n */\n credentials?: {[ key: string ]: string | (() => string | undefined)};\n}\n\nexport class Configuration {\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n apiKeys?: {[ key: string ]: string};\n username?: string;\n password?: string;\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n accessToken?: string | (() => string);\n basePath?: string;\n withCredentials?: boolean;\n /**\n * Takes care of encoding query- and form-parameters.\n */\n encoder?: HttpParameterCodec;\n /**\n * Encoding of various path parameter\n * styles.\n *

\n * See {@link README.md} for more details\n *

\n */\n encodeParam: (param: Param) => string;\n /**\n * The keys are the names in the securitySchemes section of the OpenAPI\n * document. They should map to the value used for authentication\n * minus any standard prefixes such as 'Basic' or 'Bearer'.\n */\n credentials: {[ key: string ]: string | (() => string | undefined)};\n\n constructor(configurationParameters: ConfigurationParameters = {}) {\n this.apiKeys = configurationParameters.apiKeys;\n this.username = configurationParameters.username;\n this.password = configurationParameters.password;\n this.accessToken = configurationParameters.accessToken;\n this.basePath = configurationParameters.basePath;\n this.withCredentials = configurationParameters.withCredentials;\n this.encoder = configurationParameters.encoder;\n if (configurationParameters.encodeParam) {\n this.encodeParam = configurationParameters.encodeParam;\n }\n else {\n this.encodeParam = param => this.defaultEncodeParam(param);\n }\n if (configurationParameters.credentials) {\n this.credentials = configurationParameters.credentials;\n }\n else {\n this.credentials = {};\n }\n\n // init default Bearer credential\n if (!this.credentials['Bearer']) {\n this.credentials['Bearer'] = () => {\n if (this.apiKeys === null || this.apiKeys === undefined) {\n return undefined;\n } else {\n return this.apiKeys['Bearer'] || this.apiKeys['Authorization'];\n }\n };\n }\n }\n\n /**\n * Select the correct content-type to use for a request.\n * Uses {@link Configuration#isJsonMime} to determine the correct content-type.\n * If no content type is found return the first found type if the contentTypes is not empty\n * @param contentTypes - the array of content types that are available for selection\n * @returns the selected content-type or undefined if no selection could be made.\n */\n public selectHeaderContentType (contentTypes: string[]): string | undefined {\n if (contentTypes.length === 0) {\n return undefined;\n }\n\n const type = contentTypes.find((x: string) => this.isJsonMime(x));\n if (type === undefined) {\n return contentTypes[0];\n }\n return type;\n }\n\n /**\n * Select the correct accept content-type to use for a request.\n * Uses {@link Configuration#isJsonMime} to determine the correct accept content-type.\n * If no content type is found return the first found type if the contentTypes is not empty\n * @param accepts - the array of content types that are available for selection.\n * @returns the selected content-type or undefined if no selection could be made.\n */\n public selectHeaderAccept(accepts: string[]): string | undefined {\n if (accepts.length === 0) {\n return undefined;\n }\n\n const type = accepts.find((x: string) => this.isJsonMime(x));\n if (type === undefined) {\n return accepts[0];\n }\n return type;\n }\n\n /**\n * Check if the given MIME is a JSON MIME.\n * JSON MIME examples:\n * application/json\n * application/json; charset=UTF8\n * APPLICATION/JSON\n * application/vnd.company+json\n * @param mime - MIME (Multipurpose Internet Mail Extensions)\n * @return True if the given MIME is JSON, false otherwise.\n */\n public isJsonMime(mime: string): boolean {\n const jsonMime: RegExp = new RegExp('^(application\\/json|[^;/ \\t]+\\/[^;/ \\t]+[+]json)[ \\t]*(;.*)?$', 'i');\n return mime !== null && (jsonMime.test(mime) || mime.toLowerCase() === 'application/json-patch+json');\n }\n\n public lookupCredential(key: string): string | undefined {\n const value = this.credentials[key];\n return typeof value === 'function'\n ? value()\n : value;\n }\n\n private defaultEncodeParam(param: Param): string {\n // This implementation exists as fallback for missing configuration\n // and for backwards compatibility to older typescript-angular generator versions.\n // It only works for the 'simple' parameter style.\n // Date-handling only works for the 'date-time' format.\n // All other styles and Date-formats are probably handled incorrectly.\n //\n // But: if that's all you need (i.e.: the most common use-case): no need for customization!\n\n const value = param.dataFormat === 'date-time'\n ? (param.value as Date).toISOString()\n : param.value;\n\n return encodeURIComponent(String(value));\n }\n}\n","import { HttpParameterCodec } from '@angular/common/http';\n\n/**\n * Custom HttpParameterCodec\n * Workaround for https://github.com/angular/angular/issues/18261\n */\nexport class CustomHttpParameterCodec implements HttpParameterCodec {\n encodeKey(k: string): string {\n return encodeURIComponent(k);\n }\n encodeValue(v: string): string {\n return encodeURIComponent(v);\n }\n decodeKey(k: string): string {\n return decodeURIComponent(k);\n }\n decodeValue(v: string): string {\n return decodeURIComponent(v);\n }\n}\n","export * from './api/api';\nexport * from './model/models';\nexport * from './variables';\nexport * from './configuration';\nexport * from './api.module';\nexport * from './param';\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface AgentModel { \n agentID?: string | null;\n mnemonic?: string | null;\n name?: string | null;\n lastConnectionDate?: string;\n connectionId?: string | null;\n lastSync?: string;\n organizationDirectoryID?: string | null;\n radiusClientID?: string | null;\n syslogClientID?: string | null;\n isActive?: boolean | null;\n version?: string | null;\n pendingUpdate?: boolean | null;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface AllowedGroupInfo { \n groupId: number;\n groupName?: string | null;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface ApplicationSettingModel { \n applicationSettingId?: number;\n applicationId?: number | null;\n applicationName?: string | null;\n applicationLabel?: string | null;\n organizationId?: number;\n organizationMnemonic?: string | null;\n attributesValue: string;\n description?: string | null;\n isActive?: boolean;\n modifiedBy?: string | null;\n isDeleted?: boolean;\n isConfigured?: boolean;\n logoUrl?: string | null;\n mapping?: string | null;\n applicationMetadata?: string | null;\n organizationApplicationId?: string | null;\n status?: string | null;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface AttributeMappingModel { \n attributeMappingId?: number;\n sourceOrganizationDirectoryId: number;\n sourceColumnName?: string | null;\n isSourceCustomAttribute?: boolean;\n destinationColumnName?: string | null;\n mappingType?: string | null;\n udTableName?: string | null;\n isReadonly?: boolean;\n displayName?: string | null;\n attributeMetadataId?: number;\n expressionId?: number;\n organizationDirectoryId: number;\n createdBy?: string | null;\n modifiedBy?: string | null;\n modifiedDate?: string;\n isActive?: boolean;\n isTypeReadOnly?: boolean;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface AttributeMetadataModel { \n attributeMetadataId?: number;\n attributeName: string;\n description?: string | null;\n displayName?: string | null;\n dataType?: string | null;\n minLength?: string | null;\n maxLength?: string | null;\n isMandatory?: boolean;\n isActive?: boolean;\n defaultValue?: string | null;\n attributeGroupKey?: string | null;\n organizationId?: number;\n mnemonic?: string | null;\n modifiedBy?: string | null;\n createdBy?: string | null;\n createdDate?: string;\n modifiedDate?: string;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport type AuthenticationType = 'Platform' | 'Passcode' | 'SkipPassword' | 'ChallengeNotSupport';\n\nexport const AuthenticationType = {\n Platform: 'Platform' as AuthenticationType,\n Passcode: 'Passcode' as AuthenticationType,\n SkipPassword: 'SkipPassword' as AuthenticationType,\n ChallengeNotSupport: 'ChallengeNotSupport' as AuthenticationType\n};\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface AutomatedReportScheduleInputModel { \n id?: string | null;\n name?: string | null;\n cronExpression?: string | null;\n groups?: Array | null;\n extraRecipients?: Array | null;\n reportDays?: number;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface AutomatedReportScheduleViewModel { \n id?: string;\n orgId?: number;\n name?: string | null;\n cronExpression?: string | null;\n groupIds?: Array | null;\n extraRecipients?: Array | null;\n reportDays?: number;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport type BillingType = 'EnabledUsers' | 'Authentications';\n\nexport const BillingType = {\n EnabledUsers: 'EnabledUsers' as BillingType,\n Authentications: 'Authentications' as BillingType\n};\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface DeltaLinkModel { \n deltaLink?: string | null;\n type?: string | null;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface DepartmentModel { \n departmentId?: number;\n departmentName?: string | null;\n description?: string | null;\n organizationId?: number;\n createdBy?: string | null;\n createdDate?: string;\n modifiedBy?: string | null;\n modifiedDate?: string;\n isActive?: boolean;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { Token } from './token';\n\n\nexport interface DirectorySetting { \n token?: Token;\n isImportGroup?: boolean;\n isExportGroup?: boolean;\n isImportUser?: boolean;\n isExportUser?: boolean;\n isImportCustomAttribute?: boolean;\n isExportCustomAttribute?: boolean;\n tenantId?: string | null;\n domain?: string | null;\n userDeltaLink?: string | null;\n groupDeltaLink?: string | null;\n membersDeltaLink?: string | null;\n isTokenValid?: boolean;\n outboundGroups?: Array | null;\n inboundGroup?: string | null;\n isResync?: boolean;\n server?: string | null;\n defaultOu?: string | null;\n exportPasswords?: boolean;\n importPasswords?: boolean;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface ExpressionModel { \n expressionId?: number;\n expressionText: string;\n organizationId: number;\n mnemonic: string;\n isActive?: boolean;\n modifiedBy?: string | null;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface GetSettingsRequestModel { \n groupKey?: string | null;\n key?: string | null;\n component?: string | null;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport type GracePeriodType = 'None' | 'ReadOnly' | 'FullAccess';\n\nexport const GracePeriodType = {\n None: 'None' as GracePeriodType,\n ReadOnly: 'ReadOnly' as GracePeriodType,\n FullAccess: 'FullAccess' as GracePeriodType\n};\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { GroupDirectory } from './groupDirectory';\n\n\nexport interface Group { \n groupID?: number;\n groupName?: string | null;\n description?: string | null;\n sourceOrganizationId?: number;\n organizationID?: number;\n mnemonic?: string | null;\n createdBy?: string | null;\n createdDate?: string;\n modifiedBy?: string | null;\n modifiedByDirectoryID?: number | null;\n modifiedDate?: string;\n isActive?: boolean;\n distinguishedName?: string | null;\n isDeleted?: boolean;\n sourceDirectoryID?: number | null;\n groupDirectory?: Array | null;\n isEnforcedSecondFactor?: boolean | null;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface GroupApplication { \n applicationSettingId?: number;\n groupAttributes?: string | null;\n applicationId?: number | null;\n organizationApplicationId?: string | null;\n applicationName?: string | null;\n isSelect?: boolean;\n assignedAs?: string | null;\n groupId?: number | null;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { Group } from './group';\n\n\nexport interface GroupDirectory { \n groupDirectoryID?: number;\n groupID?: number;\n organizationDirectoryID?: number | null;\n organizationID?: number | null;\n directoryName?: string | null;\n uniqueID?: string | null;\n modifiedDate?: string;\n modifiedBy?: string | null;\n group?: Group;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { Group } from './group';\n\n\nexport interface GroupDirectoryModel { \n groupDirectoryId?: number;\n groupId: number;\n organizationDirectoryId: number;\n directoryName?: string | null;\n uniqueID?: string | null;\n modifiedDate?: string;\n modifiedBy?: string | null;\n organizationId?: number;\n group?: Group;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { MembersDelta } from './membersDelta';\n\n\nexport interface GroupModel { \n groupId?: number;\n groupName: string;\n description?: string | null;\n sourceOrganizationId?: number;\n organizationId?: number;\n managedByOrgId?: number;\n mnemonic?: string | null;\n readonly isReadOnly?: boolean;\n isActive?: boolean;\n modifiedBy?: string | null;\n createdBy?: string | null;\n createdDate?: string;\n modifiedDate?: string;\n isDeleted?: boolean;\n distinguishedName?: string | null;\n uniqueID?: string | null;\n directoryName?: string | null;\n organizationDirectoryId?: number;\n sourceDirectoryID?: number | null;\n modifiedByDirectoryID?: number | null;\n membersdelta?: Array | null;\n isEnforcedSecondFactor?: boolean | null;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport type GroupType = 'Member2FA_NonMember1FA' | 'NonMember2FA_Member1FA';\n\nexport const GroupType = {\n Member2FaNonMember1Fa: 'Member2FA_NonMember1FA' as GroupType,\n NonMember2FaMember1Fa: 'NonMember2FA_Member1FA' as GroupType\n};\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { GroupApplication } from './groupApplication';\n\n\nexport interface GroupsApplications { \n groupId?: number;\n groupApplication?: Array | null;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface IPRange { \n start?: string | null;\n end?: string | null;\n comment?: string | null;\n isActive?: boolean;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport type LastLoggedInUserMode = 'Hide' | 'Show' | 'Window';\n\nexport const LastLoggedInUserMode = {\n Hide: 'Hide' as LastLoggedInUserMode,\n Show: 'Show' as LastLoggedInUserMode,\n Window: 'Window' as LastLoggedInUserMode\n};\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport type LicenceFeatures = 'None' | 'Integrations_LogonAgents' | 'Integrations_Radius' | 'Integrations_FederatedSignOn' | 'Directories_AD' | 'Directories_EntraID' | 'Directories_Google' | 'Directories_LDAP' | 'Auth_SMS' | 'Auth_SoftToken' | 'Auth_SoftTokenPush' | 'Auth_Email' | 'Auth_HardwareToken' | 'Auth_YubiKey' | 'Auth_Fido' | 'General_LocationMatrix' | 'General_ConditionalAccess' | 'General_PasswordReset' | 'General_ThemeCustomisation' | 'General_CustomReports';\n\nexport const LicenceFeatures = {\n None: 'None' as LicenceFeatures,\n IntegrationsLogonAgents: 'Integrations_LogonAgents' as LicenceFeatures,\n IntegrationsRadius: 'Integrations_Radius' as LicenceFeatures,\n IntegrationsFederatedSignOn: 'Integrations_FederatedSignOn' as LicenceFeatures,\n DirectoriesAd: 'Directories_AD' as LicenceFeatures,\n DirectoriesEntraId: 'Directories_EntraID' as LicenceFeatures,\n DirectoriesGoogle: 'Directories_Google' as LicenceFeatures,\n DirectoriesLdap: 'Directories_LDAP' as LicenceFeatures,\n AuthSms: 'Auth_SMS' as LicenceFeatures,\n AuthSoftToken: 'Auth_SoftToken' as LicenceFeatures,\n AuthSoftTokenPush: 'Auth_SoftTokenPush' as LicenceFeatures,\n AuthEmail: 'Auth_Email' as LicenceFeatures,\n AuthHardwareToken: 'Auth_HardwareToken' as LicenceFeatures,\n AuthYubiKey: 'Auth_YubiKey' as LicenceFeatures,\n AuthFido: 'Auth_Fido' as LicenceFeatures,\n GeneralLocationMatrix: 'General_LocationMatrix' as LicenceFeatures,\n GeneralConditionalAccess: 'General_ConditionalAccess' as LicenceFeatures,\n GeneralPasswordReset: 'General_PasswordReset' as LicenceFeatures,\n GeneralThemeCustomisation: 'General_ThemeCustomisation' as LicenceFeatures,\n GeneralCustomReports: 'General_CustomReports' as LicenceFeatures\n};\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { TimeSpan } from './timeSpan';\nimport { LicenceFeatures } from './licenceFeatures';\nimport { SmsAllowancePeriod } from './smsAllowancePeriod';\nimport { GracePeriodType } from './gracePeriodType';\nimport { LicenceType } from './licenceType';\nimport { BillingType } from './billingType';\n\n\nexport interface LicenceModel { \n orgId?: string;\n type?: LicenceType;\n features?: LicenceFeatures;\n expiresUtc?: string;\n gracePeriodType?: GracePeriodType;\n gracePeriod?: TimeSpan;\n billingType?: BillingType;\n quantity?: number;\n smsAllowancePeriod?: SmsAllowancePeriod;\n smsAllowance?: number;\n isSelfHosted?: boolean;\n hardwareIds?: Array | null;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { LicenceSource } from './licenceSource';\nimport { LicenceModel } from './licenceModel';\n\n\nexport interface LicenceModelWithSource { \n source?: LicenceSource;\n licence?: LicenceModel;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport type LicenceSource = 'Legacy' | 'LicencingService' | 'LicenceFile' | 'MspLicence';\n\nexport const LicenceSource = {\n Legacy: 'Legacy' as LicenceSource,\n LicencingService: 'LicencingService' as LicenceSource,\n LicenceFile: 'LicenceFile' as LicenceSource,\n MspLicence: 'MspLicence' as LicenceSource\n};\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport type LicenceType = 'Trial' | 'Normal' | 'Msp';\n\nexport const LicenceType = {\n Trial: 'Trial' as LicenceType,\n Normal: 'Normal' as LicenceType,\n Msp: 'Msp' as LicenceType\n};\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface LoggerSettingModel { \n loggerSettingId?: number;\n organizationId: number;\n component: string;\n iradLogLevel?: string | null;\n commonLogLevel?: string | null;\n mnemonic?: string | null;\n modifiedBy?: string | null;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { Removed } from './removed';\n\n\nexport interface MembersDelta { \n uniqueId?: string | null;\n removed?: Removed;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface MessageTemplateModel { \n messageTemplateID: number;\n organizationID?: number;\n organizationMnemonic?: string | null;\n subject: string;\n body: string;\n templateType: string;\n templateName: string;\n templateDisplayName: string;\n isActive: boolean;\n createdBy?: string | null;\n modifiedBy?: string | null;\n createdDate?: string;\n modifiedDate?: string;\n}\n\n","export * from './agentModel';\nexport * from './allowedGroupInfo';\nexport * from './applicationSettingModel';\nexport * from './attributeMappingModel';\nexport * from './attributeMetadataModel';\nexport * from './authenticationType';\nexport * from './automatedReportScheduleInputModel';\nexport * from './automatedReportScheduleViewModel';\nexport * from './billingType';\nexport * from './deltaLinkModel';\nexport * from './departmentModel';\nexport * from './directorySetting';\nexport * from './expressionModel';\nexport * from './getSettingsRequestModel';\nexport * from './gracePeriodType';\nexport * from './group';\nexport * from './groupApplication';\nexport * from './groupDirectory';\nexport * from './groupDirectoryModel';\nexport * from './groupModel';\nexport * from './groupType';\nexport * from './groupsApplications';\nexport * from './iPRange';\nexport * from './lastLoggedInUserMode';\nexport * from './licenceFeatures';\nexport * from './licenceModel';\nexport * from './licenceModelWithSource';\nexport * from './licenceSource';\nexport * from './licenceType';\nexport * from './loggerSettingModel';\nexport * from './membersDelta';\nexport * from './messageTemplateModel';\nexport * from './mspChildReportViewModel';\nexport * from './mspGraphData';\nexport * from './mspReportViewModel';\nexport * from './mspReportViewModelPagedResult';\nexport * from './networkCheckModel';\nexport * from './networkPermissionModel';\nexport * from './organizationAndUserModel';\nexport * from './organizationApplicationModel';\nexport * from './organizationDirectoryModel';\nexport * from './organizationModel';\nexport * from './organizationQuestionSecretModel';\nexport * from './organizationQuestionSecretModelBinding';\nexport * from './organizationQuestionsModelBinding';\nexport * from './organizationSettingModel';\nexport * from './passbackAttribute';\nexport * from './problemDetails';\nexport * from './radiusAttributeMappingModel';\nexport * from './radiusAttributeVendorDel';\nexport * from './radiusClientModel';\nexport * from './radiusDirectoryInfo';\nexport * from './recordReportInputModel';\nexport * from './registrationResult';\nexport * from './removed';\nexport * from './safeLocationModel';\nexport * from './savedLoginCountsInputModel';\nexport * from './securitySettingModel';\nexport * from './smsAllowancePeriod';\nexport * from './syncServiceHistoryModel';\nexport * from './syslogClientModel';\nexport * from './themeModel';\nexport * from './timeSpan';\nexport * from './token';\nexport * from './userAuthenticationModel';\nexport * from './userModel';\nexport * from './userOrgModel';\nexport * from './wlaClientModel';\nexport * from './wlaGetSettingsModel';\nexport * from './wlaSetStatusModel';\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface MspChildReportViewModel { \n orgName?: string | null;\n users?: number;\n authentications?: number;\n configuredApplications?: number;\n sentSms?: number;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface MspGraphData { \n date?: string;\n users?: number;\n authentications?: number;\n configuredApplications?: number;\n sentSms?: number;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { MspChildReportViewModel } from './mspChildReportViewModel';\n\n\nexport interface MspReportViewModel { \n dateAdded?: string;\n childReports?: Array | null;\n totalUsers?: number;\n totalAuthentications?: number;\n totalConfiguredApplications?: number;\n totalSentSms?: number;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { MspReportViewModel } from './mspReportViewModel';\n\n\nexport interface MspReportViewModelPagedResult { \n currentPage?: number;\n pageSize?: number;\n totalItems?: number;\n totalPages?: number;\n result?: Array | null;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface NetworkCheckModel { \n ipAddress?: string | null;\n organizationCode?: string | null;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { IPRange } from './iPRange';\n\n\nexport interface NetworkPermissionModel { \n allowed?: Array | null;\n restricted?: Array | null;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { UserOrgModel } from './userOrgModel';\nimport { RegistrationResult } from './registrationResult';\n\n\nexport interface OrganizationAndUserModel { \n organizationId?: number;\n organizationName: string;\n mnemonic?: string | null;\n contactName?: string | null;\n contactEmail: string;\n emailDisclaimer?: string | null;\n websiteUrl?: string | null;\n organizationLogo?: string | null;\n isActive?: boolean;\n modifiedBy?: string | null;\n noOfLicense?: number | null;\n noOfActiveLicense?: number | null;\n recaptchaClientResponse?: string | null;\n publicUrl?: string | null;\n organizationDomain?: string | null;\n managedByOrgID?: number | null;\n organizationType?: string | null;\n isDeleted?: boolean;\n onTrial?: boolean;\n trialExpiryDate?: string;\n licenseExpiryDate?: string | null;\n smsLeft?: number;\n smsLimit?: number;\n mspAssignSmsLimit?: number;\n mspAssignSmsLeft?: number;\n count?: number;\n assignedMSP?: string | null;\n childOrganizationCount?: number;\n registrationResult?: RegistrationResult;\n uniqueId?: string | null;\n isLicenceLocalFile?: boolean;\n userOrgModel?: UserOrgModel;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface OrganizationApplicationModel { \n organizationApplicationId?: string;\n organizationId?: number;\n organizationMnemonic?: string | null;\n applicationName?: string | null;\n applicationLabel?: string | null;\n description?: string | null;\n createdBy?: string | null;\n createdDate?: string;\n modifiedBy?: string | null;\n modifiedDate?: string;\n isActive?: boolean;\n isDeleted?: boolean;\n isVerfied?: boolean;\n applicationMetadata?: string | null;\n applicationType?: string | null;\n logoUrl?: string | null;\n mapping?: string | null;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface OrganizationDirectoryModel { \n organizationDirectoryId?: number;\n directoryId: number;\n organizationId: number;\n mnemonic?: string | null;\n settings?: string | null;\n directoryName?: string | null;\n status?: string | null;\n lastSync?: string | null;\n logoUrl?: string | null;\n isActive?: boolean;\n isDeleted?: boolean;\n directoryLabel?: string | null;\n agentID?: string | null;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { RegistrationResult } from './registrationResult';\n\n\nexport interface OrganizationModel { \n organizationId?: number;\n organizationName: string;\n mnemonic?: string | null;\n contactName?: string | null;\n contactEmail: string;\n emailDisclaimer?: string | null;\n websiteUrl?: string | null;\n organizationLogo?: string | null;\n isActive?: boolean;\n modifiedBy?: string | null;\n noOfLicense?: number | null;\n noOfActiveLicense?: number | null;\n recaptchaClientResponse?: string | null;\n publicUrl?: string | null;\n organizationDomain?: string | null;\n managedByOrgID?: number | null;\n organizationType?: string | null;\n isDeleted?: boolean;\n onTrial?: boolean;\n trialExpiryDate?: string;\n licenseExpiryDate?: string | null;\n smsLeft?: number;\n smsLimit?: number;\n mspAssignSmsLimit?: number;\n mspAssignSmsLeft?: number;\n count?: number;\n assignedMSP?: string | null;\n childOrganizationCount?: number;\n registrationResult?: RegistrationResult;\n uniqueId?: string | null;\n isLicenceLocalFile?: boolean;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface OrganizationQuestionSecretModel { \n organizationQuestionSecretId?: number;\n organizationId?: number;\n importSequence?: number;\n question?: string | null;\n modifiedBy?: string | null;\n readOnly?: boolean;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface OrganizationQuestionSecretModelBinding { \n organizationQuestionSecretId?: number;\n question?: string | null;\n removed?: boolean;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { OrganizationQuestionSecretModelBinding } from './organizationQuestionSecretModelBinding';\n\n\nexport interface OrganizationQuestionsModelBinding { \n organizationQuestions?: Array | null;\n askQuestionSecret?: boolean;\n noOfConfigurableQuestionSecret?: number;\n noOfAskableQuestionSecret?: number;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface OrganizationSettingModel { \n organizationSettingId?: number;\n key?: string | null;\n value?: string | null;\n groupKey?: string | null;\n description?: string | null;\n settingComponent?: string | null;\n organizationId: number;\n organizationMnemonic?: string | null;\n isActive?: boolean;\n isCustomGatwaySetting?: boolean;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface PassbackAttribute { \n vendorId?: number;\n vendorCode?: number;\n attributeCode?: number;\n attributeType?: string | null;\n attributeName: string;\n donotSend?: boolean;\n sendPassword?: boolean;\n sendGroupsName?: boolean;\n prefix?: string | null;\n separator?: string | null;\n userDistinguishedName?: boolean;\n isSourceCustomAttribute?: boolean;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface ProblemDetails { \n [key: string]: any | any;\n\n\n type?: string | null;\n title?: string | null;\n status?: number | null;\n detail?: string | null;\n instance?: string | null;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface RadiusAttributeMappingModel { \n radiusAttributeMappingId?: number;\n masterDirectoryId?: number;\n radiusClientId: number;\n vendorId?: number;\n vendorCode?: number;\n attributeCode: number;\n attributeType?: string | null;\n sourceColumnName?: string | null;\n isSourceCustomAttribute?: boolean;\n destinationColumnName?: string | null;\n udTableName?: string | null;\n isReadonly?: boolean;\n displayName?: string | null;\n attributeMetadataId?: number;\n modifiedBy?: string | null;\n modifiedDate?: string;\n isActive?: boolean;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface RadiusAttributeVendorDel { \n radiusClientId: number;\n oldVendorId: number;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { PassbackAttribute } from './passbackAttribute';\nimport { AllowedGroupInfo } from './allowedGroupInfo';\nimport { RadiusDirectoryInfo } from './radiusDirectoryInfo';\nimport { AuthenticationType } from './authenticationType';\n\n\nexport interface RadiusClientModel { \n radiusClientId?: number;\n organizationId?: number;\n mnemonic?: string | null;\n friendlyName: string;\n ipAddress: string;\n sharedSecret: string;\n port?: number | null;\n isAuthenticatePasscodeOnly?: boolean;\n isAuthenticateMFA?: boolean;\n authenticationType?: AuthenticationType;\n modifiedBy?: string | null;\n modifiedDate?: string;\n isActive?: boolean;\n overwriteUsername?: string | null;\n trustedNetworks?: string | null;\n blockedNetworks?: string | null;\n dataAllowedGroups?: Array | null;\n dataPassbackAttribute?: PassbackAttribute;\n dataOtherAttributes?: RadiusDirectoryInfo;\n defaultDomain?: string | null;\n passbackAttribute?: string | null;\n otherAttributes?: string | null;\n allowedGroups?: string | null;\n oldVendorId?: number;\n messageAuthenticator?: boolean;\n agentID?: string | null;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { RadiusAttributeMappingModel } from './radiusAttributeMappingModel';\n\n\nexport interface RadiusDirectoryInfo { \n masterDirectoryId?: number;\n defaultVendorId?: number;\n mappings?: Array | null;\n missingMFAMessage?: string | null;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface RecordReportInputModel { \n scheduleId?: string;\n days?: number;\n recipients?: Array | null;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport type RegistrationResult = 'Allowed' | 'TenantExists' | 'BlackListed';\n\nexport const RegistrationResult = {\n Allowed: 'Allowed' as RegistrationResult,\n TenantExists: 'TenantExists' as RegistrationResult,\n BlackListed: 'BlackListed' as RegistrationResult\n};\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface Removed { \n reason?: string | null;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface SafeLocationModel { \n id?: number;\n placeId?: string | null;\n location?: string | null;\n longitude?: number;\n latitude?: number;\n radius?: number;\n country?: string | null;\n city?: string | null;\n organizationId?: number;\n organizationCode?: string | null;\n isActive?: boolean;\n createdBy?: string | null;\n createdOn?: string | null;\n updatedBy?: string | null;\n updatedOn?: string | null;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface SavedLoginCountsInputModel { \n successful?: number;\n failed?: number;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface SecuritySettingModel { \n securitySettingId?: number;\n passwordMinLength?: number;\n pwdMustIncludeLowercase?: boolean;\n pwdMustIncludeUppercase?: boolean;\n pwdMustIncludeNumber?: boolean;\n pwdMustIncludeSpecialCharacter?: boolean;\n pwdMayNotContainUserName?: boolean;\n enableEnforcePwdHistory?: boolean;\n enforcePwdHistoryCount?: number;\n enableLockoutonFailedLoginAttempts?: boolean;\n organizationId: number;\n mnemonic: string;\n isActive?: boolean;\n modifiedBy?: string | null;\n passwordExpiryDays?: number;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport type SmsAllowancePeriod = 'None' | 'Weekly' | 'Monthly' | 'Yearly';\n\nexport const SmsAllowancePeriod = {\n None: 'None' as SmsAllowancePeriod,\n Weekly: 'Weekly' as SmsAllowancePeriod,\n Monthly: 'Monthly' as SmsAllowancePeriod,\n Yearly: 'Yearly' as SmsAllowancePeriod\n};\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface SyncServiceHistoryModel { \n historyId?: number;\n organizationID?: number;\n organizationDirectoryID?: number;\n serviceName?: string | null;\n actionType?: string | null;\n syncTime?: string;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface SyslogClientModel { \n syslogClientId?: number;\n organizationId?: number;\n mnemonic?: string | null;\n friendlyName?: string | null;\n ipAddress?: string | null;\n sharedSecret?: string | null;\n port?: number | null;\n defaultDomain?: string | null;\n createdBy?: string | null;\n createdDate?: string;\n modifiedBy?: string | null;\n modifiedDate?: string;\n isActive?: boolean;\n agentID?: string | null;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface ThemeModel { \n themeId?: number;\n organizationId?: number;\n themeType?: string | null;\n mainLogo?: string | null;\n signinLogo?: string | null;\n loginBackground?: string | null;\n signupBackground?: string | null;\n homeBackground?: string | null;\n primaryColor?: string | null;\n profileLogo?: string | null;\n resetBackground?: string | null;\n signOutBackground?: string | null;\n favicon?: string | null;\n secondaryColor?: string | null;\n textColor?: string | null;\n tokenText?: string | null;\n createdBy?: string | null;\n createdDate?: string;\n modifiedBy?: string | null;\n modifiedDate?: string;\n isActive?: boolean;\n isDeleted?: boolean;\n organizationName?: string | null;\n isTheme?: boolean;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface TimeSpan { \n ticks?: number;\n readonly days?: number;\n readonly hours?: number;\n readonly milliseconds?: number;\n readonly microseconds?: number;\n readonly nanoseconds?: number;\n readonly minutes?: number;\n readonly seconds?: number;\n readonly totalDays?: number;\n readonly totalHours?: number;\n readonly totalMilliseconds?: number;\n readonly totalMicroseconds?: number;\n readonly totalNanoseconds?: number;\n readonly totalMinutes?: number;\n readonly totalSeconds?: number;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface Token { \n access_token?: string | null;\n scope?: string | null;\n token_type?: string | null;\n issuedUTC?: string;\n expires_in?: string | null;\n code?: string | null;\n refresh_token?: string | null;\n lastRefreshed?: string;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface UserAuthenticationModel { \n organizationId?: number;\n organizationDirectoryId?: number;\n username?: string | null;\n password?: string | null;\n authenticationStatus?: boolean;\n directoryName?: string | null;\n email?: string | null;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface UserModel { \n userID?: number;\n username?: string | null;\n firstName?: string | null;\n middleName?: string | null;\n lastName?: string | null;\n organizationID?: number;\n managedByOrgID?: number;\n email?: string | null;\n createdBy?: string | null;\n createdDate?: string;\n modifiedBy?: string | null;\n modifiedDate?: string;\n isActive?: boolean;\n phone?: string | null;\n cell?: string | null;\n password?: string | null;\n countryID?: number | null;\n isMustChangePassword?: boolean;\n organizationMnemonic?: string | null;\n isDeleted?: boolean;\n userType?: string | null;\n isMobileNumberVerified?: boolean;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { UserModel } from './userModel';\n\n\nexport interface UserOrgModel { \n userModel?: UserModel;\n mnemonic?: string | null;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { LastLoggedInUserMode } from './lastLoggedInUserMode';\nimport { GroupType } from './groupType';\n\n\nexport interface WlaClientModel { \n id?: string | null;\n machineId?: string | null;\n organizationId?: number;\n groupID?: number;\n groupName?: string | null;\n name: string;\n groupType?: GroupType;\n domain: string;\n createdBy?: string | null;\n modifiedBy?: string | null;\n createdDate?: string;\n modifiedDate?: string;\n emergencyUser01?: string | null;\n emergencyUserPassword01?: string | null;\n emergencyUser02?: string | null;\n emergencyUserPassword02?: string | null;\n lastLoggedInUserMode?: LastLoggedInUserMode;\n enableConsole?: boolean;\n enableRDP?: boolean;\n isActive?: boolean;\n enforceMFA?: boolean;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface WlaGetSettingsModel { \n name?: string | null;\n id?: string | null;\n domain?: string | null;\n}\n\n","/**\n * Organization Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface WlaSetStatusModel { \n clientsIDs?: Array | null;\n enableConsole?: boolean;\n enableRDP?: boolean;\n}\n\n","/**\n * Standard parameter styles defined by OpenAPI spec\n */\nexport type StandardParamStyle =\n | 'matrix'\n | 'label'\n | 'form'\n | 'simple'\n | 'spaceDelimited'\n | 'pipeDelimited'\n | 'deepObject'\n ;\n\n/**\n * The OpenAPI standard {@link StandardParamStyle}s may be extended by custom styles by the user.\n */\nexport type ParamStyle = StandardParamStyle | string;\n\n/**\n * Standard parameter locations defined by OpenAPI spec\n */\nexport type ParamLocation = 'query' | 'header' | 'path' | 'cookie';\n\n/**\n * Standard types as defined in OpenAPI Specification: Data Types\n */\nexport type StandardDataType =\n | \"integer\"\n | \"number\"\n | \"boolean\"\n | \"string\"\n | \"object\"\n | \"array\"\n ;\n\n/**\n * Standard {@link DataType}s plus your own types/classes.\n */\nexport type DataType = StandardDataType | string;\n\n/**\n * Standard formats as defined in OpenAPI Specification: Data Types\n */\nexport type StandardDataFormat =\n | \"int32\"\n | \"int64\"\n | \"float\"\n | \"double\"\n | \"byte\"\n | \"binary\"\n | \"date\"\n | \"date-time\"\n | \"password\"\n ;\n\nexport type DataFormat = StandardDataFormat | string;\n\n/**\n * The parameter to encode.\n */\nexport interface Param {\n name: string;\n value: unknown;\n in: ParamLocation;\n style: ParamStyle,\n explode: boolean;\n dataType: DataType;\n dataFormat: DataFormat | undefined;\n}\n","import { InjectionToken } from '@angular/core';\n\nexport const BASE_PATH = new InjectionToken('basePath');\nexport const COLLECTION_FORMATS = {\n 'csv': ',',\n 'tsv': ' ',\n 'ssv': ' ',\n 'pipes': '|'\n}\n","import { NgModule, ModuleWithProviders, SkipSelf, Optional } from '@angular/core';\nimport { Configuration } from './configuration';\nimport { HttpClient } from '@angular/common/http';\n\nimport { ReportsService } from './api/reports.service';\nimport { VersionService } from './api/version.service';\n\n@NgModule({\n imports: [],\n declarations: [],\n exports: [],\n providers: []\n})\nexport class ApiModule {\n public static forRoot(configurationFactory: () => Configuration): ModuleWithProviders {\n return {\n ngModule: ApiModule,\n providers: [ { provide: Configuration, useFactory: configurationFactory } ]\n };\n }\n\n constructor( @Optional() @SkipSelf() parentModule: ApiModule,\n @Optional() http: HttpClient) {\n if (parentModule) {\n throw new Error('ApiModule is already loaded. Import in your base AppModule only.');\n }\n if (!http) {\n throw new Error('You need to import the HttpClientModule in your AppModule! \\n' +\n 'See also https://github.com/angular/angular/issues/20575');\n }\n }\n}\n","export * from './reports.service';\nimport { ReportsService } from './reports.service';\nexport * from './version.service';\nimport { VersionService } from './version.service';\nexport const APIS = [ReportsService, VersionService];\n","/**\n * SecurEnvoy.Reports.Api\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: 1.0\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { OpenApiGeneratorFixModel } from '../model/openApiGeneratorFixModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ReportsService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationId \n * @param date \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public reportsGenerateDataOrganizationIdDateGet(organizationId: number, date: Date, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public reportsGenerateDataOrganizationIdDateGet(organizationId: number, date: Date, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public reportsGenerateDataOrganizationIdDateGet(organizationId: number, date: Date, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public reportsGenerateDataOrganizationIdDateGet(organizationId: number, date: Date, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling reportsGenerateDataOrganizationIdDateGet.');\n }\n if (date === null || date === undefined) {\n throw new Error('Required parameter date was null or undefined when calling reportsGenerateDataOrganizationIdDateGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Reports/GenerateData/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"date\", value: date, in: \"path\", style: \"simple\", explode: false, dataType: \"Date\", dataFormat: \"date-time\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public reportsGenerateDataOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public reportsGenerateDataOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public reportsGenerateDataOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public reportsGenerateDataOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling reportsGenerateDataOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Reports/GenerateData/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public reportsOpenApiGeneratorFixGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable;\n public reportsOpenApiGeneratorFixGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public reportsOpenApiGeneratorFixGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable>;\n public reportsOpenApiGeneratorFixGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json', context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'text/plain',\n 'application/json',\n 'text/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Reports/OpenApiGeneratorFix`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param days \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public reportsOrganizationIdDaysGet(organizationId: number, days: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public reportsOrganizationIdDaysGet(organizationId: number, days: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public reportsOrganizationIdDaysGet(organizationId: number, days: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public reportsOrganizationIdDaysGet(organizationId: number, days: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling reportsOrganizationIdDaysGet.');\n }\n if (days === null || days === undefined) {\n throw new Error('Required parameter days was null or undefined when calling reportsOrganizationIdDaysGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Reports/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"days\", value: days, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int32\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param endDate \n * @param days \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public reportsOrganizationIdEndDateDaysGet(organizationId: number, endDate: Date, days: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public reportsOrganizationIdEndDateDaysGet(organizationId: number, endDate: Date, days: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public reportsOrganizationIdEndDateDaysGet(organizationId: number, endDate: Date, days: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public reportsOrganizationIdEndDateDaysGet(organizationId: number, endDate: Date, days: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling reportsOrganizationIdEndDateDaysGet.');\n }\n if (endDate === null || endDate === undefined) {\n throw new Error('Required parameter endDate was null or undefined when calling reportsOrganizationIdEndDateDaysGet.');\n }\n if (days === null || days === undefined) {\n throw new Error('Required parameter days was null or undefined when calling reportsOrganizationIdEndDateDaysGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Reports/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"endDate\", value: endDate, in: \"path\", style: \"simple\", explode: false, dataType: \"Date\", dataFormat: \"date-time\"})}/${this.configuration.encodeParam({name: \"days\", value: days, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int32\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param startDate \n * @param endDate \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public reportsOrganizationIdStartDateEndDateGet(organizationId: number, startDate: Date, endDate: Date, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public reportsOrganizationIdStartDateEndDateGet(organizationId: number, startDate: Date, endDate: Date, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public reportsOrganizationIdStartDateEndDateGet(organizationId: number, startDate: Date, endDate: Date, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public reportsOrganizationIdStartDateEndDateGet(organizationId: number, startDate: Date, endDate: Date, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling reportsOrganizationIdStartDateEndDateGet.');\n }\n if (startDate === null || startDate === undefined) {\n throw new Error('Required parameter startDate was null or undefined when calling reportsOrganizationIdStartDateEndDateGet.');\n }\n if (endDate === null || endDate === undefined) {\n throw new Error('Required parameter endDate was null or undefined when calling reportsOrganizationIdStartDateEndDateGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Reports/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"startDate\", value: startDate, in: \"path\", style: \"simple\", explode: false, dataType: \"Date\", dataFormat: \"date-time\"})}/${this.configuration.encodeParam({name: \"endDate\", value: endDate, in: \"path\", style: \"simple\", explode: false, dataType: \"Date\", dataFormat: \"date-time\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public reportsTestOrgIdGet(orgId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public reportsTestOrgIdGet(orgId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public reportsTestOrgIdGet(orgId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public reportsTestOrgIdGet(orgId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling reportsTestOrgIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Reports/test/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * SecurEnvoy.Reports.Api\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: 1.0\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class VersionService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public versionGetVersionGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public versionGetVersionGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public versionGetVersionGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public versionGetVersionGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/Version/getVersion`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","import { HttpParameterCodec } from '@angular/common/http';\nimport { Param } from './param';\n\nexport interface ConfigurationParameters {\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n apiKeys?: {[ key: string ]: string};\n username?: string;\n password?: string;\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n accessToken?: string | (() => string);\n basePath?: string;\n withCredentials?: boolean;\n /**\n * Takes care of encoding query- and form-parameters.\n */\n encoder?: HttpParameterCodec;\n /**\n * Override the default method for encoding path parameters in various\n * styles.\n *

\n * See {@link README.md} for more details\n *

\n */\n encodeParam?: (param: Param) => string;\n /**\n * The keys are the names in the securitySchemes section of the OpenAPI\n * document. They should map to the value used for authentication\n * minus any standard prefixes such as 'Basic' or 'Bearer'.\n */\n credentials?: {[ key: string ]: string | (() => string | undefined)};\n}\n\nexport class Configuration {\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n apiKeys?: {[ key: string ]: string};\n username?: string;\n password?: string;\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n accessToken?: string | (() => string);\n basePath?: string;\n withCredentials?: boolean;\n /**\n * Takes care of encoding query- and form-parameters.\n */\n encoder?: HttpParameterCodec;\n /**\n * Encoding of various path parameter\n * styles.\n *

\n * See {@link README.md} for more details\n *

\n */\n encodeParam: (param: Param) => string;\n /**\n * The keys are the names in the securitySchemes section of the OpenAPI\n * document. They should map to the value used for authentication\n * minus any standard prefixes such as 'Basic' or 'Bearer'.\n */\n credentials: {[ key: string ]: string | (() => string | undefined)};\n\n constructor(configurationParameters: ConfigurationParameters = {}) {\n this.apiKeys = configurationParameters.apiKeys;\n this.username = configurationParameters.username;\n this.password = configurationParameters.password;\n this.accessToken = configurationParameters.accessToken;\n this.basePath = configurationParameters.basePath;\n this.withCredentials = configurationParameters.withCredentials;\n this.encoder = configurationParameters.encoder;\n if (configurationParameters.encodeParam) {\n this.encodeParam = configurationParameters.encodeParam;\n }\n else {\n this.encodeParam = param => this.defaultEncodeParam(param);\n }\n if (configurationParameters.credentials) {\n this.credentials = configurationParameters.credentials;\n }\n else {\n this.credentials = {};\n }\n }\n\n /**\n * Select the correct content-type to use for a request.\n * Uses {@link Configuration#isJsonMime} to determine the correct content-type.\n * If no content type is found return the first found type if the contentTypes is not empty\n * @param contentTypes - the array of content types that are available for selection\n * @returns the selected content-type or undefined if no selection could be made.\n */\n public selectHeaderContentType (contentTypes: string[]): string | undefined {\n if (contentTypes.length === 0) {\n return undefined;\n }\n\n const type = contentTypes.find((x: string) => this.isJsonMime(x));\n if (type === undefined) {\n return contentTypes[0];\n }\n return type;\n }\n\n /**\n * Select the correct accept content-type to use for a request.\n * Uses {@link Configuration#isJsonMime} to determine the correct accept content-type.\n * If no content type is found return the first found type if the contentTypes is not empty\n * @param accepts - the array of content types that are available for selection.\n * @returns the selected content-type or undefined if no selection could be made.\n */\n public selectHeaderAccept(accepts: string[]): string | undefined {\n if (accepts.length === 0) {\n return undefined;\n }\n\n const type = accepts.find((x: string) => this.isJsonMime(x));\n if (type === undefined) {\n return accepts[0];\n }\n return type;\n }\n\n /**\n * Check if the given MIME is a JSON MIME.\n * JSON MIME examples:\n * application/json\n * application/json; charset=UTF8\n * APPLICATION/JSON\n * application/vnd.company+json\n * @param mime - MIME (Multipurpose Internet Mail Extensions)\n * @return True if the given MIME is JSON, false otherwise.\n */\n public isJsonMime(mime: string): boolean {\n const jsonMime: RegExp = new RegExp('^(application\\/json|[^;/ \\t]+\\/[^;/ \\t]+[+]json)[ \\t]*(;.*)?$', 'i');\n return mime !== null && (jsonMime.test(mime) || mime.toLowerCase() === 'application/json-patch+json');\n }\n\n public lookupCredential(key: string): string | undefined {\n const value = this.credentials[key];\n return typeof value === 'function'\n ? value()\n : value;\n }\n\n private defaultEncodeParam(param: Param): string {\n // This implementation exists as fallback for missing configuration\n // and for backwards compatibility to older typescript-angular generator versions.\n // It only works for the 'simple' parameter style.\n // Date-handling only works for the 'date-time' format.\n // All other styles and Date-formats are probably handled incorrectly.\n //\n // But: if that's all you need (i.e.: the most common use-case): no need for customization!\n\n const value = param.dataFormat === 'date-time'\n ? (param.value as Date).toISOString()\n : param.value;\n\n return encodeURIComponent(String(value));\n }\n}\n","import { HttpParameterCodec } from '@angular/common/http';\n\n/**\n * Custom HttpParameterCodec\n * Workaround for https://github.com/angular/angular/issues/18261\n */\nexport class CustomHttpParameterCodec implements HttpParameterCodec {\n encodeKey(k: string): string {\n return encodeURIComponent(k);\n }\n encodeValue(v: string): string {\n return encodeURIComponent(v);\n }\n decodeKey(k: string): string {\n return decodeURIComponent(k);\n }\n decodeValue(v: string): string {\n return decodeURIComponent(v);\n }\n}\n","export * from './api/api';\nexport * from './model/models';\nexport * from './variables';\nexport * from './configuration';\nexport * from './api.module';\nexport * from './param';\n","export * from './openApiGeneratorFixModel';\n","/**\n * SecurEnvoy.Reports.Api\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: 1.0\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface OpenApiGeneratorFixModel { \n dummyProp1?: string | null;\n dummyProp2?: string | null;\n}\n\n","/**\n * Standard parameter styles defined by OpenAPI spec\n */\nexport type StandardParamStyle =\n | 'matrix'\n | 'label'\n | 'form'\n | 'simple'\n | 'spaceDelimited'\n | 'pipeDelimited'\n | 'deepObject'\n ;\n\n/**\n * The OpenAPI standard {@link StandardParamStyle}s may be extended by custom styles by the user.\n */\nexport type ParamStyle = StandardParamStyle | string;\n\n/**\n * Standard parameter locations defined by OpenAPI spec\n */\nexport type ParamLocation = 'query' | 'header' | 'path' | 'cookie';\n\n/**\n * Standard types as defined in OpenAPI Specification: Data Types\n */\nexport type StandardDataType =\n | \"integer\"\n | \"number\"\n | \"boolean\"\n | \"string\"\n | \"object\"\n | \"array\"\n ;\n\n/**\n * Standard {@link DataType}s plus your own types/classes.\n */\nexport type DataType = StandardDataType | string;\n\n/**\n * Standard formats as defined in OpenAPI Specification: Data Types\n */\nexport type StandardDataFormat =\n | \"int32\"\n | \"int64\"\n | \"float\"\n | \"double\"\n | \"byte\"\n | \"binary\"\n | \"date\"\n | \"date-time\"\n | \"password\"\n ;\n\nexport type DataFormat = StandardDataFormat | string;\n\n/**\n * The parameter to encode.\n */\nexport interface Param {\n name: string;\n value: unknown;\n in: ParamLocation;\n style: ParamStyle,\n explode: boolean;\n dataType: DataType;\n dataFormat: DataFormat | undefined;\n}\n","import { InjectionToken } from '@angular/core';\n\nexport const BASE_PATH = new InjectionToken('basePath');\nexport const COLLECTION_FORMATS = {\n 'csv': ',',\n 'tsv': ' ',\n 'ssv': ' ',\n 'pipes': '|'\n}\n","import { HttpClient } from \"@angular/common/http\";\nimport { TranslateLoader } from \"@ngx-translate/core\";\nimport { Observable } from \"rxjs\";\n\nexport class CustomTranslateLoader implements TranslateLoader{\n \n constructor(private http:HttpClient){}\n\n getTranslation(lang: string): Observable {\n return this.http.get('assets/language/' + lang + '/translate.json').pipe();\n }\n}","import { NgModule, ModuleWithProviders, SkipSelf, Optional } from '@angular/core';\nimport { Configuration } from './configuration';\nimport { HttpClient } from '@angular/common/http';\n\nimport { MyAppGroupService } from './api/myAppGroup.service';\nimport { MyAppGroupApplicationService } from './api/myAppGroupApplication.service';\nimport { PasswordService } from './api/password.service';\nimport { SyncUserService } from './api/syncUser.service';\nimport { TenantCleanupService } from './api/tenantCleanup.service';\nimport { UserAliasesService } from './api/userAliases.service';\nimport { UserApplicationService } from './api/userApplication.service';\nimport { UserCustomAttributeService } from './api/userCustomAttribute.service';\nimport { UserDirectoryService } from './api/userDirectory.service';\nimport { UserGroupService } from './api/userGroup.service';\nimport { UsersService } from './api/users.service';\nimport { VersionService } from './api/version.service';\n\n@NgModule({\n imports: [],\n declarations: [],\n exports: [],\n providers: []\n})\nexport class ApiModule {\n public static forRoot(configurationFactory: () => Configuration): ModuleWithProviders {\n return {\n ngModule: ApiModule,\n providers: [ { provide: Configuration, useFactory: configurationFactory } ]\n };\n }\n\n constructor( @Optional() @SkipSelf() parentModule: ApiModule,\n @Optional() http: HttpClient) {\n if (parentModule) {\n throw new Error('ApiModule is already loaded. Import in your base AppModule only.');\n }\n if (!http) {\n throw new Error('You need to import the HttpClientModule in your AppModule! \\n' +\n 'See also https://github.com/angular/angular/issues/20575');\n }\n }\n}\n","export * from './myAppGroup.service';\nimport { MyAppGroupService } from './myAppGroup.service';\nexport * from './myAppGroupApplication.service';\nimport { MyAppGroupApplicationService } from './myAppGroupApplication.service';\nexport * from './password.service';\nimport { PasswordService } from './password.service';\nexport * from './syncUser.service';\nimport { SyncUserService } from './syncUser.service';\nexport * from './tenantCleanup.service';\nimport { TenantCleanupService } from './tenantCleanup.service';\nexport * from './userAliases.service';\nimport { UserAliasesService } from './userAliases.service';\nexport * from './userApplication.service';\nimport { UserApplicationService } from './userApplication.service';\nexport * from './userCustomAttribute.service';\nimport { UserCustomAttributeService } from './userCustomAttribute.service';\nexport * from './userDirectory.service';\nimport { UserDirectoryService } from './userDirectory.service';\nexport * from './userGroup.service';\nimport { UserGroupService } from './userGroup.service';\nexport * from './users.service';\nimport { UsersService } from './users.service';\nexport * from './version.service';\nimport { VersionService } from './version.service';\nexport const APIS = [MyAppGroupService, MyAppGroupApplicationService, PasswordService, SyncUserService, TenantCleanupService, UserAliasesService, UserApplicationService, UserCustomAttributeService, UserDirectoryService, UserGroupService, UsersService, VersionService];\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { MyAppGroupModel } from '../model/myAppGroupModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MyAppGroupService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param myAppGroupModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiMyAppGroupAddMyAppGroupPost(myAppGroupModel?: MyAppGroupModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiMyAppGroupAddMyAppGroupPost(myAppGroupModel?: MyAppGroupModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMyAppGroupAddMyAppGroupPost(myAppGroupModel?: MyAppGroupModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMyAppGroupAddMyAppGroupPost(myAppGroupModel?: MyAppGroupModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/MyAppGroup/addMyAppGroup`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: myAppGroupModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param myAppGroupId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiMyAppGroupDeleteMyAppGroupByIdMyAppGroupIdDelete(myAppGroupId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiMyAppGroupDeleteMyAppGroupByIdMyAppGroupIdDelete(myAppGroupId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMyAppGroupDeleteMyAppGroupByIdMyAppGroupIdDelete(myAppGroupId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMyAppGroupDeleteMyAppGroupByIdMyAppGroupIdDelete(myAppGroupId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (myAppGroupId === null || myAppGroupId === undefined) {\n throw new Error('Required parameter myAppGroupId was null or undefined when calling apiMyAppGroupDeleteMyAppGroupByIdMyAppGroupIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/MyAppGroup/deleteMyAppGroupById/${this.configuration.encodeParam({name: \"myAppGroupId\", value: myAppGroupId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiMyAppGroupGetAllMyAppGroupsUserIdGet(userId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiMyAppGroupGetAllMyAppGroupsUserIdGet(userId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMyAppGroupGetAllMyAppGroupsUserIdGet(userId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMyAppGroupGetAllMyAppGroupsUserIdGet(userId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiMyAppGroupGetAllMyAppGroupsUserIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/MyAppGroup/getAllMyAppGroups/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param myAppGroupModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiMyAppGroupUpdateMyAppGroupMyAppGroupPost(myAppGroupModel?: MyAppGroupModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiMyAppGroupUpdateMyAppGroupMyAppGroupPost(myAppGroupModel?: MyAppGroupModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMyAppGroupUpdateMyAppGroupMyAppGroupPost(myAppGroupModel?: MyAppGroupModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMyAppGroupUpdateMyAppGroupMyAppGroupPost(myAppGroupModel?: MyAppGroupModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/MyAppGroup/updateMyAppGroupMyAppGroup`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: myAppGroupModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { UserApplicationModel } from '../model/userApplicationModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MyAppGroupApplicationService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param userId \n * @param organizationId \n * @param myAppGroupId \n * @param userApplicationModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiMyAppGroupApplicationAddMyAppGroupApplicationsUserIdOrganizationIdMyAppGroupIdPost(userId: number, organizationId: number, myAppGroupId: number, userApplicationModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiMyAppGroupApplicationAddMyAppGroupApplicationsUserIdOrganizationIdMyAppGroupIdPost(userId: number, organizationId: number, myAppGroupId: number, userApplicationModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMyAppGroupApplicationAddMyAppGroupApplicationsUserIdOrganizationIdMyAppGroupIdPost(userId: number, organizationId: number, myAppGroupId: number, userApplicationModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMyAppGroupApplicationAddMyAppGroupApplicationsUserIdOrganizationIdMyAppGroupIdPost(userId: number, organizationId: number, myAppGroupId: number, userApplicationModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiMyAppGroupApplicationAddMyAppGroupApplicationsUserIdOrganizationIdMyAppGroupIdPost.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiMyAppGroupApplicationAddMyAppGroupApplicationsUserIdOrganizationIdMyAppGroupIdPost.');\n }\n if (myAppGroupId === null || myAppGroupId === undefined) {\n throw new Error('Required parameter myAppGroupId was null or undefined when calling apiMyAppGroupApplicationAddMyAppGroupApplicationsUserIdOrganizationIdMyAppGroupIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/MyAppGroupApplication/addMyAppGroupApplications/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"myAppGroupId\", value: myAppGroupId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userApplicationModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param organizationId \n * @param myAppGroupId \n * @param userApplicationModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiMyAppGroupApplicationDeletelMyAppGroupApplicationByIdUserIdOrganizationIdMyAppGroupIdDelete(userId: number, organizationId: number, myAppGroupId: number, userApplicationModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiMyAppGroupApplicationDeletelMyAppGroupApplicationByIdUserIdOrganizationIdMyAppGroupIdDelete(userId: number, organizationId: number, myAppGroupId: number, userApplicationModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMyAppGroupApplicationDeletelMyAppGroupApplicationByIdUserIdOrganizationIdMyAppGroupIdDelete(userId: number, organizationId: number, myAppGroupId: number, userApplicationModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMyAppGroupApplicationDeletelMyAppGroupApplicationByIdUserIdOrganizationIdMyAppGroupIdDelete(userId: number, organizationId: number, myAppGroupId: number, userApplicationModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiMyAppGroupApplicationDeletelMyAppGroupApplicationByIdUserIdOrganizationIdMyAppGroupIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiMyAppGroupApplicationDeletelMyAppGroupApplicationByIdUserIdOrganizationIdMyAppGroupIdDelete.');\n }\n if (myAppGroupId === null || myAppGroupId === undefined) {\n throw new Error('Required parameter myAppGroupId was null or undefined when calling apiMyAppGroupApplicationDeletelMyAppGroupApplicationByIdUserIdOrganizationIdMyAppGroupIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/MyAppGroupApplication/deletelMyAppGroupApplicationById/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"myAppGroupId\", value: myAppGroupId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userApplicationModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param organizationId \n * @param myAppGroupId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiMyAppGroupApplicationGetAllUserApplicationsbyMyGroupIdUserIdOrganizationIdMyAppGroupIdGet(userId: number, organizationId: number, myAppGroupId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiMyAppGroupApplicationGetAllUserApplicationsbyMyGroupIdUserIdOrganizationIdMyAppGroupIdGet(userId: number, organizationId: number, myAppGroupId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMyAppGroupApplicationGetAllUserApplicationsbyMyGroupIdUserIdOrganizationIdMyAppGroupIdGet(userId: number, organizationId: number, myAppGroupId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiMyAppGroupApplicationGetAllUserApplicationsbyMyGroupIdUserIdOrganizationIdMyAppGroupIdGet(userId: number, organizationId: number, myAppGroupId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiMyAppGroupApplicationGetAllUserApplicationsbyMyGroupIdUserIdOrganizationIdMyAppGroupIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiMyAppGroupApplicationGetAllUserApplicationsbyMyGroupIdUserIdOrganizationIdMyAppGroupIdGet.');\n }\n if (myAppGroupId === null || myAppGroupId === undefined) {\n throw new Error('Required parameter myAppGroupId was null or undefined when calling apiMyAppGroupApplicationGetAllUserApplicationsbyMyGroupIdUserIdOrganizationIdMyAppGroupIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/MyAppGroupApplication/getAllUserApplicationsbyMyGroupId/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"myAppGroupId\", value: myAppGroupId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { ForgetPasswordModel } from '../model/forgetPasswordModel';\n// @ts-ignore\nimport { ResetPasswordModel } from '../model/resetPasswordModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class PasswordService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param forgetPasswordModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiPasswordAddNewForgetPasswordPost(forgetPasswordModel?: ForgetPasswordModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiPasswordAddNewForgetPasswordPost(forgetPasswordModel?: ForgetPasswordModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiPasswordAddNewForgetPasswordPost(forgetPasswordModel?: ForgetPasswordModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiPasswordAddNewForgetPasswordPost(forgetPasswordModel?: ForgetPasswordModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Password/addNewForgetPassword`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: forgetPasswordModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param forgetPasswordId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiPasswordDeleteForgetPasswordForgetPasswordIdDelete(forgetPasswordId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiPasswordDeleteForgetPasswordForgetPasswordIdDelete(forgetPasswordId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiPasswordDeleteForgetPasswordForgetPasswordIdDelete(forgetPasswordId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiPasswordDeleteForgetPasswordForgetPasswordIdDelete(forgetPasswordId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (forgetPasswordId === null || forgetPasswordId === undefined) {\n throw new Error('Required parameter forgetPasswordId was null or undefined when calling apiPasswordDeleteForgetPasswordForgetPasswordIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Password/deleteForgetPassword/${this.configuration.encodeParam({name: \"forgetPasswordId\", value: forgetPasswordId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param resetPasswordModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiPasswordResetForgetPasswordPost(resetPasswordModel?: ResetPasswordModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiPasswordResetForgetPasswordPost(resetPasswordModel?: ResetPasswordModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiPasswordResetForgetPasswordPost(resetPasswordModel?: ResetPasswordModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiPasswordResetForgetPasswordPost(resetPasswordModel?: ResetPasswordModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Password/resetForgetPassword`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: resetPasswordModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param forgetPasswordId \n * @param forgetPasswordModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiPasswordUpdateForgetPasswordForgetPasswordIdPost(forgetPasswordId: number, forgetPasswordModel?: ForgetPasswordModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiPasswordUpdateForgetPasswordForgetPasswordIdPost(forgetPasswordId: number, forgetPasswordModel?: ForgetPasswordModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiPasswordUpdateForgetPasswordForgetPasswordIdPost(forgetPasswordId: number, forgetPasswordModel?: ForgetPasswordModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiPasswordUpdateForgetPasswordForgetPasswordIdPost(forgetPasswordId: number, forgetPasswordModel?: ForgetPasswordModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (forgetPasswordId === null || forgetPasswordId === undefined) {\n throw new Error('Required parameter forgetPasswordId was null or undefined when calling apiPasswordUpdateForgetPasswordForgetPasswordIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Password/updateForgetPassword/${this.configuration.encodeParam({name: \"forgetPasswordId\", value: forgetPasswordId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: forgetPasswordModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { ADSyncDataModel } from '../model/aDSyncDataModel';\n// @ts-ignore\nimport { ADUpdateUniqueIdModel } from '../model/aDUpdateUniqueIdModel';\n// @ts-ignore\nimport { DirectoryUser } from '../model/directoryUser';\n// @ts-ignore\nimport { DirectoryUserAttributeModel } from '../model/directoryUserAttributeModel';\n// @ts-ignore\nimport { GroupModel } from '../model/groupModel';\n// @ts-ignore\nimport { UserCredentialModel } from '../model/userCredentialModel';\n// @ts-ignore\nimport { UserDirectoryModel } from '../model/userDirectoryModel';\n// @ts-ignore\nimport { UserGroupModel } from '../model/userGroupModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SyncUserService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param userDirectoryModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyncUserAddUserDirectoryPost(userDirectoryModel?: UserDirectoryModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyncUserAddUserDirectoryPost(userDirectoryModel?: UserDirectoryModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserAddUserDirectoryPost(userDirectoryModel?: UserDirectoryModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserAddUserDirectoryPost(userDirectoryModel?: UserDirectoryModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyncUser/addUserDirectory`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userDirectoryModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgId \n * @param orgDirectoryID \n * @param modifiedBy \n * @param requestBody \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyncUserDeleteUsersOrgIdOrgDirectoryIDModifiedByPost(orgId: number, orgDirectoryID: number, modifiedBy: string, requestBody?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyncUserDeleteUsersOrgIdOrgDirectoryIDModifiedByPost(orgId: number, orgDirectoryID: number, modifiedBy: string, requestBody?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserDeleteUsersOrgIdOrgDirectoryIDModifiedByPost(orgId: number, orgDirectoryID: number, modifiedBy: string, requestBody?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserDeleteUsersOrgIdOrgDirectoryIDModifiedByPost(orgId: number, orgDirectoryID: number, modifiedBy: string, requestBody?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiSyncUserDeleteUsersOrgIdOrgDirectoryIDModifiedByPost.');\n }\n if (orgDirectoryID === null || orgDirectoryID === undefined) {\n throw new Error('Required parameter orgDirectoryID was null or undefined when calling apiSyncUserDeleteUsersOrgIdOrgDirectoryIDModifiedByPost.');\n }\n if (modifiedBy === null || modifiedBy === undefined) {\n throw new Error('Required parameter modifiedBy was null or undefined when calling apiSyncUserDeleteUsersOrgIdOrgDirectoryIDModifiedByPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyncUser/deleteUsers/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"orgDirectoryID\", value: orgDirectoryID, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"modifiedBy\", value: modifiedBy, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: requestBody,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgId \n * @param orgDirectoryId \n * @param syncTime \n * @param domains \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyncUserExportOrgIdOrgDirectoryIdSyncTimeDomainsGet(orgId: number, orgDirectoryId: number, syncTime: string, domains: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyncUserExportOrgIdOrgDirectoryIdSyncTimeDomainsGet(orgId: number, orgDirectoryId: number, syncTime: string, domains: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserExportOrgIdOrgDirectoryIdSyncTimeDomainsGet(orgId: number, orgDirectoryId: number, syncTime: string, domains: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserExportOrgIdOrgDirectoryIdSyncTimeDomainsGet(orgId: number, orgDirectoryId: number, syncTime: string, domains: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiSyncUserExportOrgIdOrgDirectoryIdSyncTimeDomainsGet.');\n }\n if (orgDirectoryId === null || orgDirectoryId === undefined) {\n throw new Error('Required parameter orgDirectoryId was null or undefined when calling apiSyncUserExportOrgIdOrgDirectoryIdSyncTimeDomainsGet.');\n }\n if (syncTime === null || syncTime === undefined) {\n throw new Error('Required parameter syncTime was null or undefined when calling apiSyncUserExportOrgIdOrgDirectoryIdSyncTimeDomainsGet.');\n }\n if (domains === null || domains === undefined) {\n throw new Error('Required parameter domains was null or undefined when calling apiSyncUserExportOrgIdOrgDirectoryIdSyncTimeDomainsGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyncUser/export/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"orgDirectoryId\", value: orgDirectoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"syncTime\", value: syncTime, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"domains\", value: domains, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgId \n * @param syncTime \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n * @deprecated\n */\n public apiSyncUserExportUsersListOrgIdSyncTimeGet(orgId: number, syncTime: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyncUserExportUsersListOrgIdSyncTimeGet(orgId: number, syncTime: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserExportUsersListOrgIdSyncTimeGet(orgId: number, syncTime: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserExportUsersListOrgIdSyncTimeGet(orgId: number, syncTime: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiSyncUserExportUsersListOrgIdSyncTimeGet.');\n }\n if (syncTime === null || syncTime === undefined) {\n throw new Error('Required parameter syncTime was null or undefined when calling apiSyncUserExportUsersListOrgIdSyncTimeGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyncUser/exportUsersList/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"syncTime\", value: syncTime, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgId \n * @param syncTime \n * @param orgDirectoryId \n * @param domains \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n * @deprecated\n */\n public apiSyncUserGetDeletedUsersListOrgIdSyncTimeOrgDirectoryIdDomainsGet(orgId: number, syncTime: string, orgDirectoryId: number, domains: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyncUserGetDeletedUsersListOrgIdSyncTimeOrgDirectoryIdDomainsGet(orgId: number, syncTime: string, orgDirectoryId: number, domains: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserGetDeletedUsersListOrgIdSyncTimeOrgDirectoryIdDomainsGet(orgId: number, syncTime: string, orgDirectoryId: number, domains: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserGetDeletedUsersListOrgIdSyncTimeOrgDirectoryIdDomainsGet(orgId: number, syncTime: string, orgDirectoryId: number, domains: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiSyncUserGetDeletedUsersListOrgIdSyncTimeOrgDirectoryIdDomainsGet.');\n }\n if (syncTime === null || syncTime === undefined) {\n throw new Error('Required parameter syncTime was null or undefined when calling apiSyncUserGetDeletedUsersListOrgIdSyncTimeOrgDirectoryIdDomainsGet.');\n }\n if (orgDirectoryId === null || orgDirectoryId === undefined) {\n throw new Error('Required parameter orgDirectoryId was null or undefined when calling apiSyncUserGetDeletedUsersListOrgIdSyncTimeOrgDirectoryIdDomainsGet.');\n }\n if (domains === null || domains === undefined) {\n throw new Error('Required parameter domains was null or undefined when calling apiSyncUserGetDeletedUsersListOrgIdSyncTimeOrgDirectoryIdDomainsGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyncUser/getDeletedUsersList/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"syncTime\", value: syncTime, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"orgDirectoryId\", value: orgDirectoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"domains\", value: domains, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgDirId \n * @param signature \n * @param isSingleAgent \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyncUserGetchangesByApiKeyOrgDirIdGet(orgDirId: number, signature?: string, isSingleAgent?: boolean, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyncUserGetchangesByApiKeyOrgDirIdGet(orgDirId: number, signature?: string, isSingleAgent?: boolean, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserGetchangesByApiKeyOrgDirIdGet(orgDirId: number, signature?: string, isSingleAgent?: boolean, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserGetchangesByApiKeyOrgDirIdGet(orgDirId: number, signature?: string, isSingleAgent?: boolean, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgDirId === null || orgDirId === undefined) {\n throw new Error('Required parameter orgDirId was null or undefined when calling apiSyncUserGetchangesByApiKeyOrgDirIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (signature !== undefined && signature !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n signature, 'signature');\n }\n if (isSingleAgent !== undefined && isSingleAgent !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n isSingleAgent, 'isSingleAgent');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyncUser/getchangesByApiKey/${this.configuration.encodeParam({name: \"orgDirId\", value: orgDirId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgDirId \n * @param signature \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyncUserGetchangesOrgDirIdGet(orgDirId: number, signature?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyncUserGetchangesOrgDirIdGet(orgDirId: number, signature?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserGetchangesOrgDirIdGet(orgDirId: number, signature?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserGetchangesOrgDirIdGet(orgDirId: number, signature?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgDirId === null || orgDirId === undefined) {\n throw new Error('Required parameter orgDirId was null or undefined when calling apiSyncUserGetchangesOrgDirIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (signature !== undefined && signature !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n signature, 'signature');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyncUser/getchanges/${this.configuration.encodeParam({name: \"orgDirId\", value: orgDirId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param groupId \n * @param orgId \n * @param directory \n * @param groupModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyncUserImportGroupUsersByDirectoryGroupIdOrgIdDirectoryPost(groupId: number, orgId: number, directory: string, groupModel?: GroupModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyncUserImportGroupUsersByDirectoryGroupIdOrgIdDirectoryPost(groupId: number, orgId: number, directory: string, groupModel?: GroupModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserImportGroupUsersByDirectoryGroupIdOrgIdDirectoryPost(groupId: number, orgId: number, directory: string, groupModel?: GroupModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserImportGroupUsersByDirectoryGroupIdOrgIdDirectoryPost(groupId: number, orgId: number, directory: string, groupModel?: GroupModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (groupId === null || groupId === undefined) {\n throw new Error('Required parameter groupId was null or undefined when calling apiSyncUserImportGroupUsersByDirectoryGroupIdOrgIdDirectoryPost.');\n }\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiSyncUserImportGroupUsersByDirectoryGroupIdOrgIdDirectoryPost.');\n }\n if (directory === null || directory === undefined) {\n throw new Error('Required parameter directory was null or undefined when calling apiSyncUserImportGroupUsersByDirectoryGroupIdOrgIdDirectoryPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyncUser/importGroupUsersByDirectory/${this.configuration.encodeParam({name: \"groupId\", value: groupId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"directory\", value: directory, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: groupModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgId \n * @param orgDirectoryId \n * @param directoryUser \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyncUserImportOrgIdOrgDirectoryIdPost(orgId: number, orgDirectoryId: number, directoryUser?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyncUserImportOrgIdOrgDirectoryIdPost(orgId: number, orgDirectoryId: number, directoryUser?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserImportOrgIdOrgDirectoryIdPost(orgId: number, orgDirectoryId: number, directoryUser?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserImportOrgIdOrgDirectoryIdPost(orgId: number, orgDirectoryId: number, directoryUser?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiSyncUserImportOrgIdOrgDirectoryIdPost.');\n }\n if (orgDirectoryId === null || orgDirectoryId === undefined) {\n throw new Error('Required parameter orgDirectoryId was null or undefined when calling apiSyncUserImportOrgIdOrgDirectoryIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyncUser/import/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"orgDirectoryId\", value: orgDirectoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: directoryUser,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param groupId \n * @param orgId \n * @param directoryName \n * @param userGroupModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyncUserImportUserGroupsByDirectoryGroupIdOrgIdDirectoryNamePost(groupId: number, orgId: number, directoryName: string, userGroupModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyncUserImportUserGroupsByDirectoryGroupIdOrgIdDirectoryNamePost(groupId: number, orgId: number, directoryName: string, userGroupModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserImportUserGroupsByDirectoryGroupIdOrgIdDirectoryNamePost(groupId: number, orgId: number, directoryName: string, userGroupModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserImportUserGroupsByDirectoryGroupIdOrgIdDirectoryNamePost(groupId: number, orgId: number, directoryName: string, userGroupModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (groupId === null || groupId === undefined) {\n throw new Error('Required parameter groupId was null or undefined when calling apiSyncUserImportUserGroupsByDirectoryGroupIdOrgIdDirectoryNamePost.');\n }\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiSyncUserImportUserGroupsByDirectoryGroupIdOrgIdDirectoryNamePost.');\n }\n if (directoryName === null || directoryName === undefined) {\n throw new Error('Required parameter directoryName was null or undefined when calling apiSyncUserImportUserGroupsByDirectoryGroupIdOrgIdDirectoryNamePost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyncUser/importUserGroupsByDirectory/${this.configuration.encodeParam({name: \"groupId\", value: groupId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"directoryName\", value: directoryName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userGroupModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param groupId \n * @param orgId \n * @param modifiedBy \n * @param userGroupModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyncUserImportUsersGroupsGroupIdOrgIdModifiedByPost(groupId: number, orgId: number, modifiedBy: string, userGroupModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyncUserImportUsersGroupsGroupIdOrgIdModifiedByPost(groupId: number, orgId: number, modifiedBy: string, userGroupModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserImportUsersGroupsGroupIdOrgIdModifiedByPost(groupId: number, orgId: number, modifiedBy: string, userGroupModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserImportUsersGroupsGroupIdOrgIdModifiedByPost(groupId: number, orgId: number, modifiedBy: string, userGroupModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (groupId === null || groupId === undefined) {\n throw new Error('Required parameter groupId was null or undefined when calling apiSyncUserImportUsersGroupsGroupIdOrgIdModifiedByPost.');\n }\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiSyncUserImportUsersGroupsGroupIdOrgIdModifiedByPost.');\n }\n if (modifiedBy === null || modifiedBy === undefined) {\n throw new Error('Required parameter modifiedBy was null or undefined when calling apiSyncUserImportUsersGroupsGroupIdOrgIdModifiedByPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyncUser/importUsersGroups/${this.configuration.encodeParam({name: \"groupId\", value: groupId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"modifiedBy\", value: modifiedBy, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userGroupModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgId \n * @param orgDirectoryId \n * @param directoryUserAttributeModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyncUserImportUsersOrgIdOrgDirectoryIdPost(orgId: number, orgDirectoryId: number, directoryUserAttributeModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyncUserImportUsersOrgIdOrgDirectoryIdPost(orgId: number, orgDirectoryId: number, directoryUserAttributeModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserImportUsersOrgIdOrgDirectoryIdPost(orgId: number, orgDirectoryId: number, directoryUserAttributeModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserImportUsersOrgIdOrgDirectoryIdPost(orgId: number, orgDirectoryId: number, directoryUserAttributeModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiSyncUserImportUsersOrgIdOrgDirectoryIdPost.');\n }\n if (orgDirectoryId === null || orgDirectoryId === undefined) {\n throw new Error('Required parameter orgDirectoryId was null or undefined when calling apiSyncUserImportUsersOrgIdOrgDirectoryIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyncUser/importUsers/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"orgDirectoryId\", value: orgDirectoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: directoryUserAttributeModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgDirId \n * @param aDSyncDataModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyncUserSavechangesByApiKeyOrgDirIdPost(orgDirId: number, aDSyncDataModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyncUserSavechangesByApiKeyOrgDirIdPost(orgDirId: number, aDSyncDataModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserSavechangesByApiKeyOrgDirIdPost(orgDirId: number, aDSyncDataModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserSavechangesByApiKeyOrgDirIdPost(orgDirId: number, aDSyncDataModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgDirId === null || orgDirId === undefined) {\n throw new Error('Required parameter orgDirId was null or undefined when calling apiSyncUserSavechangesByApiKeyOrgDirIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyncUser/savechangesByApiKey/${this.configuration.encodeParam({name: \"orgDirId\", value: orgDirId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: aDSyncDataModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgDirId \n * @param aDSyncDataModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyncUserSavechangesOrgDirIdPost(orgDirId: number, aDSyncDataModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyncUserSavechangesOrgDirIdPost(orgDirId: number, aDSyncDataModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserSavechangesOrgDirIdPost(orgDirId: number, aDSyncDataModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserSavechangesOrgDirIdPost(orgDirId: number, aDSyncDataModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgDirId === null || orgDirId === undefined) {\n throw new Error('Required parameter orgDirId was null or undefined when calling apiSyncUserSavechangesOrgDirIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyncUser/savechanges/${this.configuration.encodeParam({name: \"orgDirId\", value: orgDirId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: aDSyncDataModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgDirId \n * @param userCredentialModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyncUserSetpasswordByApiKeyOrgDirIdPost(orgDirId: number, userCredentialModel?: UserCredentialModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyncUserSetpasswordByApiKeyOrgDirIdPost(orgDirId: number, userCredentialModel?: UserCredentialModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserSetpasswordByApiKeyOrgDirIdPost(orgDirId: number, userCredentialModel?: UserCredentialModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserSetpasswordByApiKeyOrgDirIdPost(orgDirId: number, userCredentialModel?: UserCredentialModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgDirId === null || orgDirId === undefined) {\n throw new Error('Required parameter orgDirId was null or undefined when calling apiSyncUserSetpasswordByApiKeyOrgDirIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyncUser/setpasswordByApiKey/${this.configuration.encodeParam({name: \"orgDirId\", value: orgDirId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userCredentialModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgDirId \n * @param userCredentialModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyncUserSetpasswordOrgDirIdPost(orgDirId: number, userCredentialModel?: UserCredentialModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyncUserSetpasswordOrgDirIdPost(orgDirId: number, userCredentialModel?: UserCredentialModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserSetpasswordOrgDirIdPost(orgDirId: number, userCredentialModel?: UserCredentialModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserSetpasswordOrgDirIdPost(orgDirId: number, userCredentialModel?: UserCredentialModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgDirId === null || orgDirId === undefined) {\n throw new Error('Required parameter orgDirId was null or undefined when calling apiSyncUserSetpasswordOrgDirIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyncUser/setpassword/${this.configuration.encodeParam({name: \"orgDirId\", value: orgDirId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userCredentialModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgDirId \n * @param aDUpdateUniqueIdModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyncUserUpdateuniqueidByApiKeyOrgDirIdPost(orgDirId: number, aDUpdateUniqueIdModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyncUserUpdateuniqueidByApiKeyOrgDirIdPost(orgDirId: number, aDUpdateUniqueIdModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserUpdateuniqueidByApiKeyOrgDirIdPost(orgDirId: number, aDUpdateUniqueIdModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserUpdateuniqueidByApiKeyOrgDirIdPost(orgDirId: number, aDUpdateUniqueIdModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgDirId === null || orgDirId === undefined) {\n throw new Error('Required parameter orgDirId was null or undefined when calling apiSyncUserUpdateuniqueidByApiKeyOrgDirIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyncUser/updateuniqueidByApiKey/${this.configuration.encodeParam({name: \"orgDirId\", value: orgDirId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: aDUpdateUniqueIdModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgDirId \n * @param aDUpdateUniqueIdModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyncUserUpdateuniqueidOrgDirIdPost(orgDirId: number, aDUpdateUniqueIdModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyncUserUpdateuniqueidOrgDirIdPost(orgDirId: number, aDUpdateUniqueIdModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserUpdateuniqueidOrgDirIdPost(orgDirId: number, aDUpdateUniqueIdModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserUpdateuniqueidOrgDirIdPost(orgDirId: number, aDUpdateUniqueIdModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgDirId === null || orgDirId === undefined) {\n throw new Error('Required parameter orgDirId was null or undefined when calling apiSyncUserUpdateuniqueidOrgDirIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyncUser/updateuniqueid/${this.configuration.encodeParam({name: \"orgDirId\", value: orgDirId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: aDUpdateUniqueIdModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgId \n * @param orgDirectoryId \n * @param requestBody \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiSyncUserValidateSyncUserIdsOrgIdOrgDirectoryIdPost(orgId: number, orgDirectoryId: number, requestBody?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiSyncUserValidateSyncUserIdsOrgIdOrgDirectoryIdPost(orgId: number, orgDirectoryId: number, requestBody?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserValidateSyncUserIdsOrgIdOrgDirectoryIdPost(orgId: number, orgDirectoryId: number, requestBody?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiSyncUserValidateSyncUserIdsOrgIdOrgDirectoryIdPost(orgId: number, orgDirectoryId: number, requestBody?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiSyncUserValidateSyncUserIdsOrgIdOrgDirectoryIdPost.');\n }\n if (orgDirectoryId === null || orgDirectoryId === undefined) {\n throw new Error('Required parameter orgDirectoryId was null or undefined when calling apiSyncUserValidateSyncUserIdsOrgIdOrgDirectoryIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/SyncUser/validateSyncUserIds/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"orgDirectoryId\", value: orgDirectoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: requestBody,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class TenantCleanupService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationId \n * @param body \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiTenantCleanupOrganizationIdDelete(organizationId: number, body?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiTenantCleanupOrganizationIdDelete(organizationId: number, body?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiTenantCleanupOrganizationIdDelete(organizationId: number, body?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiTenantCleanupOrganizationIdDelete(organizationId: number, body?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiTenantCleanupOrganizationIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/TenantCleanup/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: body,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { UserAliasPatternViewModel } from '../model/userAliasPatternViewModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class UserAliasesService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationMnemonic \n * @param body \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserAliasesCanonicalusernameOrganizationMnemonicPost(organizationMnemonic: string, body?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserAliasesCanonicalusernameOrganizationMnemonicPost(organizationMnemonic: string, body?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserAliasesCanonicalusernameOrganizationMnemonicPost(organizationMnemonic: string, body?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserAliasesCanonicalusernameOrganizationMnemonicPost(organizationMnemonic: string, body?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiUserAliasesCanonicalusernameOrganizationMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserAliases/canonicalusername/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: body,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param requestBody \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserAliasesDoexistOrganizationIdPost(organizationId: number, requestBody?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserAliasesDoexistOrganizationIdPost(organizationId: number, requestBody?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserAliasesDoexistOrganizationIdPost(organizationId: number, requestBody?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserAliasesDoexistOrganizationIdPost(organizationId: number, requestBody?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserAliasesDoexistOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserAliases/doexist/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: requestBody,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param patternId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserAliasesPatternOrganizationIdPatternIdDelete(organizationId: number, patternId: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserAliasesPatternOrganizationIdPatternIdDelete(organizationId: number, patternId: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserAliasesPatternOrganizationIdPatternIdDelete(organizationId: number, patternId: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserAliasesPatternOrganizationIdPatternIdDelete(organizationId: number, patternId: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserAliasesPatternOrganizationIdPatternIdDelete.');\n }\n if (patternId === null || patternId === undefined) {\n throw new Error('Required parameter patternId was null or undefined when calling apiUserAliasesPatternOrganizationIdPatternIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserAliases/pattern/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"patternId\", value: patternId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param patternId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserAliasesPatternOrganizationIdPatternIdGet(organizationId: number, patternId: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserAliasesPatternOrganizationIdPatternIdGet(organizationId: number, patternId: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserAliasesPatternOrganizationIdPatternIdGet(organizationId: number, patternId: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserAliasesPatternOrganizationIdPatternIdGet(organizationId: number, patternId: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserAliasesPatternOrganizationIdPatternIdGet.');\n }\n if (patternId === null || patternId === undefined) {\n throw new Error('Required parameter patternId was null or undefined when calling apiUserAliasesPatternOrganizationIdPatternIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserAliases/pattern/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"patternId\", value: patternId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param patternId \n * @param userAliasPatternViewModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserAliasesPatternOrganizationIdPatternIdPut(organizationId: number, patternId: string, userAliasPatternViewModel?: UserAliasPatternViewModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserAliasesPatternOrganizationIdPatternIdPut(organizationId: number, patternId: string, userAliasPatternViewModel?: UserAliasPatternViewModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserAliasesPatternOrganizationIdPatternIdPut(organizationId: number, patternId: string, userAliasPatternViewModel?: UserAliasPatternViewModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserAliasesPatternOrganizationIdPatternIdPut(organizationId: number, patternId: string, userAliasPatternViewModel?: UserAliasPatternViewModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserAliasesPatternOrganizationIdPatternIdPut.');\n }\n if (patternId === null || patternId === undefined) {\n throw new Error('Required parameter patternId was null or undefined when calling apiUserAliasesPatternOrganizationIdPatternIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserAliases/pattern/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"patternId\", value: patternId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userAliasPatternViewModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param userAliasPatternViewModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserAliasesPatternOrganizationIdPost(organizationId: number, userAliasPatternViewModel?: UserAliasPatternViewModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserAliasesPatternOrganizationIdPost(organizationId: number, userAliasPatternViewModel?: UserAliasPatternViewModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserAliasesPatternOrganizationIdPost(organizationId: number, userAliasPatternViewModel?: UserAliasPatternViewModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserAliasesPatternOrganizationIdPost(organizationId: number, userAliasPatternViewModel?: UserAliasPatternViewModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserAliasesPatternOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserAliases/pattern/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userAliasPatternViewModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserAliasesPatternsOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserAliasesPatternsOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserAliasesPatternsOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserAliasesPatternsOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserAliasesPatternsOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserAliases/patterns/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { UserApplicationModel } from '../model/userApplicationModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class UserApplicationService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param userId \n * @param organizationId \n * @param userApplicationModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserApplicationAddUserApplicationsUserIdOrganizationIdPost(userId: number, organizationId: number, userApplicationModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserApplicationAddUserApplicationsUserIdOrganizationIdPost(userId: number, organizationId: number, userApplicationModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserApplicationAddUserApplicationsUserIdOrganizationIdPost(userId: number, organizationId: number, userApplicationModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserApplicationAddUserApplicationsUserIdOrganizationIdPost(userId: number, organizationId: number, userApplicationModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUserApplicationAddUserApplicationsUserIdOrganizationIdPost.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserApplicationAddUserApplicationsUserIdOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserApplication/addUserApplications/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userApplicationModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param organizationId \n * @param userApplicationModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserApplicationAddUserApplicationsUserIdPost(userId: number, organizationId: number, userApplicationModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserApplicationAddUserApplicationsUserIdPost(userId: number, organizationId: number, userApplicationModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserApplicationAddUserApplicationsUserIdPost(userId: number, organizationId: number, userApplicationModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserApplicationAddUserApplicationsUserIdPost(userId: number, organizationId: number, userApplicationModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUserApplicationAddUserApplicationsUserIdPost.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserApplicationAddUserApplicationsUserIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserApplication/addUserApplications/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userApplicationModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param groupId \n * @param organizationId \n * @param userApplicationModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserApplicationAddUsersApplicationByGroupGroupIdOrganizationIdPost(groupId: number, organizationId: number, userApplicationModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserApplicationAddUsersApplicationByGroupGroupIdOrganizationIdPost(groupId: number, organizationId: number, userApplicationModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserApplicationAddUsersApplicationByGroupGroupIdOrganizationIdPost(groupId: number, organizationId: number, userApplicationModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserApplicationAddUsersApplicationByGroupGroupIdOrganizationIdPost(groupId: number, organizationId: number, userApplicationModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (groupId === null || groupId === undefined) {\n throw new Error('Required parameter groupId was null or undefined when calling apiUserApplicationAddUsersApplicationByGroupGroupIdOrganizationIdPost.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserApplicationAddUsersApplicationByGroupGroupIdOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserApplication/AddUsersApplicationByGroup/${this.configuration.encodeParam({name: \"groupId\", value: groupId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userApplicationModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param applicationSettingId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserApplicationDeleteByApplicationIdApplicationSettingIdDelete(applicationSettingId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserApplicationDeleteByApplicationIdApplicationSettingIdDelete(applicationSettingId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserApplicationDeleteByApplicationIdApplicationSettingIdDelete(applicationSettingId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserApplicationDeleteByApplicationIdApplicationSettingIdDelete(applicationSettingId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (applicationSettingId === null || applicationSettingId === undefined) {\n throw new Error('Required parameter applicationSettingId was null or undefined when calling apiUserApplicationDeleteByApplicationIdApplicationSettingIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserApplicationDeleteByApplicationIdApplicationSettingIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserApplication/deleteByApplicationId/${this.configuration.encodeParam({name: \"applicationSettingId\", value: applicationSettingId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param applicationSettingId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserApplicationDeleteByApplicationIdApplicationSettingIdOrganizationIdDelete(applicationSettingId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserApplicationDeleteByApplicationIdApplicationSettingIdOrganizationIdDelete(applicationSettingId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserApplicationDeleteByApplicationIdApplicationSettingIdOrganizationIdDelete(applicationSettingId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserApplicationDeleteByApplicationIdApplicationSettingIdOrganizationIdDelete(applicationSettingId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (applicationSettingId === null || applicationSettingId === undefined) {\n throw new Error('Required parameter applicationSettingId was null or undefined when calling apiUserApplicationDeleteByApplicationIdApplicationSettingIdOrganizationIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserApplicationDeleteByApplicationIdApplicationSettingIdOrganizationIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserApplication/deleteByApplicationId/${this.configuration.encodeParam({name: \"applicationSettingId\", value: applicationSettingId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userApplicationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserApplicationDeleteUserApplicationUserApplicationIdDelete(userApplicationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserApplicationDeleteUserApplicationUserApplicationIdDelete(userApplicationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserApplicationDeleteUserApplicationUserApplicationIdDelete(userApplicationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserApplicationDeleteUserApplicationUserApplicationIdDelete(userApplicationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userApplicationId === null || userApplicationId === undefined) {\n throw new Error('Required parameter userApplicationId was null or undefined when calling apiUserApplicationDeleteUserApplicationUserApplicationIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserApplication/deleteUserApplication/${this.configuration.encodeParam({name: \"userApplicationId\", value: userApplicationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param appId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserApplicationGetAllApplicationByOrgAppAppIdGet(appId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserApplicationGetAllApplicationByOrgAppAppIdGet(appId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserApplicationGetAllApplicationByOrgAppAppIdGet(appId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserApplicationGetAllApplicationByOrgAppAppIdGet(appId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (appId === null || appId === undefined) {\n throw new Error('Required parameter appId was null or undefined when calling apiUserApplicationGetAllApplicationByOrgAppAppIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserApplication/getAllApplicationByOrgApp/${this.configuration.encodeParam({name: \"appId\", value: appId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserApplicationGetAllUserApplicationGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserApplicationGetAllUserApplicationGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserApplicationGetAllUserApplicationGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserApplicationGetAllUserApplicationGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserApplication/getAllUserApplication`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserApplicationGetAllUserApplicationUserIdGet(userId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserApplicationGetAllUserApplicationUserIdGet(userId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserApplicationGetAllUserApplicationUserIdGet(userId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserApplicationGetAllUserApplicationUserIdGet(userId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUserApplicationGetAllUserApplicationUserIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserApplicationGetAllUserApplicationUserIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserApplication/getAllUserApplication/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserApplicationGetAllUserApplicationUserIdOrganizationIdGet(userId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserApplicationGetAllUserApplicationUserIdOrganizationIdGet(userId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserApplicationGetAllUserApplicationUserIdOrganizationIdGet(userId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserApplicationGetAllUserApplicationUserIdOrganizationIdGet(userId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUserApplicationGetAllUserApplicationUserIdOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserApplicationGetAllUserApplicationUserIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserApplication/getAllUserApplication/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userApplicationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserApplicationGetUserApplicationByIdUserApplicationIdGet(userApplicationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserApplicationGetUserApplicationByIdUserApplicationIdGet(userApplicationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserApplicationGetUserApplicationByIdUserApplicationIdGet(userApplicationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserApplicationGetUserApplicationByIdUserApplicationIdGet(userApplicationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userApplicationId === null || userApplicationId === undefined) {\n throw new Error('Required parameter userApplicationId was null or undefined when calling apiUserApplicationGetUserApplicationByIdUserApplicationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserApplication/getUserApplicationById/${this.configuration.encodeParam({name: \"userApplicationId\", value: userApplicationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param applicationSettingId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserApplicationGetUserApplicationUserIdApplicationSettingIdGet(userId: number, applicationSettingId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserApplicationGetUserApplicationUserIdApplicationSettingIdGet(userId: number, applicationSettingId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserApplicationGetUserApplicationUserIdApplicationSettingIdGet(userId: number, applicationSettingId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserApplicationGetUserApplicationUserIdApplicationSettingIdGet(userId: number, applicationSettingId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUserApplicationGetUserApplicationUserIdApplicationSettingIdGet.');\n }\n if (applicationSettingId === null || applicationSettingId === undefined) {\n throw new Error('Required parameter applicationSettingId was null or undefined when calling apiUserApplicationGetUserApplicationUserIdApplicationSettingIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserApplication/getUserApplication/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"applicationSettingId\", value: applicationSettingId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userApplicationId \n * @param userApplicationModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserApplicationUpdateUserApplicationUserApplicationIdPost(userApplicationId: number, userApplicationModel?: UserApplicationModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserApplicationUpdateUserApplicationUserApplicationIdPost(userApplicationId: number, userApplicationModel?: UserApplicationModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserApplicationUpdateUserApplicationUserApplicationIdPost(userApplicationId: number, userApplicationModel?: UserApplicationModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserApplicationUpdateUserApplicationUserApplicationIdPost(userApplicationId: number, userApplicationModel?: UserApplicationModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userApplicationId === null || userApplicationId === undefined) {\n throw new Error('Required parameter userApplicationId was null or undefined when calling apiUserApplicationUpdateUserApplicationUserApplicationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserApplication/updateUserApplication/${this.configuration.encodeParam({name: \"userApplicationId\", value: userApplicationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userApplicationModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { UserCustomAttributeModel } from '../model/userCustomAttributeModel';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class UserCustomAttributeService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param attributeMetadataId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCustomAttributeDeleteReferencedAttributeAttributeMetadataIdGet(attributeMetadataId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCustomAttributeDeleteReferencedAttributeAttributeMetadataIdGet(attributeMetadataId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCustomAttributeDeleteReferencedAttributeAttributeMetadataIdGet(attributeMetadataId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCustomAttributeDeleteReferencedAttributeAttributeMetadataIdGet(attributeMetadataId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (attributeMetadataId === null || attributeMetadataId === undefined) {\n throw new Error('Required parameter attributeMetadataId was null or undefined when calling apiUserCustomAttributeDeleteReferencedAttributeAttributeMetadataIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCustomAttribute/deleteReferencedAttribute/${this.configuration.encodeParam({name: \"attributeMetadataId\", value: attributeMetadataId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userCustomAttributeId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCustomAttributeDeleteUserCustomAttributeValuesUserCustomAttributeIdDelete(userCustomAttributeId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCustomAttributeDeleteUserCustomAttributeValuesUserCustomAttributeIdDelete(userCustomAttributeId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCustomAttributeDeleteUserCustomAttributeValuesUserCustomAttributeIdDelete(userCustomAttributeId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCustomAttributeDeleteUserCustomAttributeValuesUserCustomAttributeIdDelete(userCustomAttributeId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userCustomAttributeId === null || userCustomAttributeId === undefined) {\n throw new Error('Required parameter userCustomAttributeId was null or undefined when calling apiUserCustomAttributeDeleteUserCustomAttributeValuesUserCustomAttributeIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserCustomAttributeDeleteUserCustomAttributeValuesUserCustomAttributeIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCustomAttribute/deleteUserCustomAttributeValues/${this.configuration.encodeParam({name: \"userCustomAttributeId\", value: userCustomAttributeId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userCustomAttributeId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCustomAttributeDeleteUserCustomAttributeValuesUserCustomAttributeIdOrganizationIdDelete(userCustomAttributeId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCustomAttributeDeleteUserCustomAttributeValuesUserCustomAttributeIdOrganizationIdDelete(userCustomAttributeId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCustomAttributeDeleteUserCustomAttributeValuesUserCustomAttributeIdOrganizationIdDelete(userCustomAttributeId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCustomAttributeDeleteUserCustomAttributeValuesUserCustomAttributeIdOrganizationIdDelete(userCustomAttributeId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userCustomAttributeId === null || userCustomAttributeId === undefined) {\n throw new Error('Required parameter userCustomAttributeId was null or undefined when calling apiUserCustomAttributeDeleteUserCustomAttributeValuesUserCustomAttributeIdOrganizationIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserCustomAttributeDeleteUserCustomAttributeValuesUserCustomAttributeIdOrganizationIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCustomAttribute/deleteUserCustomAttributeValues/${this.configuration.encodeParam({name: \"userCustomAttributeId\", value: userCustomAttributeId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCustomAttributeGetPredefinedGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCustomAttributeGetPredefinedGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCustomAttributeGetPredefinedGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCustomAttributeGetPredefinedGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCustomAttribute/getPredefined`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCustomAttributeGetUserCustomAttributeValuesUserIdGet(userId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCustomAttributeGetUserCustomAttributeValuesUserIdGet(userId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCustomAttributeGetUserCustomAttributeValuesUserIdGet(userId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCustomAttributeGetUserCustomAttributeValuesUserIdGet(userId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUserCustomAttributeGetUserCustomAttributeValuesUserIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserCustomAttributeGetUserCustomAttributeValuesUserIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCustomAttribute/getUserCustomAttributeValues/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCustomAttributeGetUserCustomAttributeValuesUserIdOrganizationIdGet(userId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCustomAttributeGetUserCustomAttributeValuesUserIdOrganizationIdGet(userId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCustomAttributeGetUserCustomAttributeValuesUserIdOrganizationIdGet(userId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCustomAttributeGetUserCustomAttributeValuesUserIdOrganizationIdGet(userId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUserCustomAttributeGetUserCustomAttributeValuesUserIdOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserCustomAttributeGetUserCustomAttributeValuesUserIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCustomAttribute/getUserCustomAttributeValues/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param attribute \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCustomAttributeIsAttributeExistAttributeGet(attribute: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCustomAttributeIsAttributeExistAttributeGet(attribute: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCustomAttributeIsAttributeExistAttributeGet(attribute: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCustomAttributeIsAttributeExistAttributeGet(attribute: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (attribute === null || attribute === undefined) {\n throw new Error('Required parameter attribute was null or undefined when calling apiUserCustomAttributeIsAttributeExistAttributeGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCustomAttribute/isAttributeExist/${this.configuration.encodeParam({name: \"attribute\", value: attribute, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param attributeMetadataId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCustomAttributeIsReferenceExistAttributeMetadataIdGet(attributeMetadataId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCustomAttributeIsReferenceExistAttributeMetadataIdGet(attributeMetadataId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCustomAttributeIsReferenceExistAttributeMetadataIdGet(attributeMetadataId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCustomAttributeIsReferenceExistAttributeMetadataIdGet(attributeMetadataId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (attributeMetadataId === null || attributeMetadataId === undefined) {\n throw new Error('Required parameter attributeMetadataId was null or undefined when calling apiUserCustomAttributeIsReferenceExistAttributeMetadataIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCustomAttribute/isReferenceExist/${this.configuration.encodeParam({name: \"attributeMetadataId\", value: attributeMetadataId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param userCustomAttributeModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCustomAttributeSaveUserCustomAttributesOrganizationIdPost(organizationId: number, userCustomAttributeModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCustomAttributeSaveUserCustomAttributesOrganizationIdPost(organizationId: number, userCustomAttributeModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCustomAttributeSaveUserCustomAttributesOrganizationIdPost(organizationId: number, userCustomAttributeModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCustomAttributeSaveUserCustomAttributesOrganizationIdPost(organizationId: number, userCustomAttributeModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserCustomAttributeSaveUserCustomAttributesOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCustomAttribute/saveUserCustomAttributes/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userCustomAttributeModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param userCustomAttributeModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserCustomAttributeSaveUserCustomAttributesPost(organizationId: number, userCustomAttributeModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserCustomAttributeSaveUserCustomAttributesPost(organizationId: number, userCustomAttributeModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCustomAttributeSaveUserCustomAttributesPost(organizationId: number, userCustomAttributeModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserCustomAttributeSaveUserCustomAttributesPost(organizationId: number, userCustomAttributeModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserCustomAttributeSaveUserCustomAttributesPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserCustomAttribute/saveUserCustomAttributes`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userCustomAttributeModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class UserDirectoryService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationId \n * @param orgDirectoryId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserDirectoryDeleteUserDirectoryOrganizationIdOrgDirectoryIdDelete(organizationId: number, orgDirectoryId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserDirectoryDeleteUserDirectoryOrganizationIdOrgDirectoryIdDelete(organizationId: number, orgDirectoryId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserDirectoryDeleteUserDirectoryOrganizationIdOrgDirectoryIdDelete(organizationId: number, orgDirectoryId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserDirectoryDeleteUserDirectoryOrganizationIdOrgDirectoryIdDelete(organizationId: number, orgDirectoryId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserDirectoryDeleteUserDirectoryOrganizationIdOrgDirectoryIdDelete.');\n }\n if (orgDirectoryId === null || orgDirectoryId === undefined) {\n throw new Error('Required parameter orgDirectoryId was null or undefined when calling apiUserDirectoryDeleteUserDirectoryOrganizationIdOrgDirectoryIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserDirectory/DeleteUserDirectory/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"orgDirectoryId\", value: orgDirectoryId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserDirectoryGetImmutableIdWsUserIdGet(userId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserDirectoryGetImmutableIdWsUserIdGet(userId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserDirectoryGetImmutableIdWsUserIdGet(userId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserDirectoryGetImmutableIdWsUserIdGet(userId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUserDirectoryGetImmutableIdWsUserIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserDirectory/GetImmutableIdWs/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param directory \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserDirectoryUserIdDirectoryGet(userId: number, directory: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserDirectoryUserIdDirectoryGet(userId: number, directory: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserDirectoryUserIdDirectoryGet(userId: number, directory: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserDirectoryUserIdDirectoryGet(userId: number, directory: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUserDirectoryUserIdDirectoryGet.');\n }\n if (directory === null || directory === undefined) {\n throw new Error('Required parameter directory was null or undefined when calling apiUserDirectoryUserIdDirectoryGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserDirectory/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"directory\", value: directory, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { GroupApplicationModel } from '../model/groupApplicationModel';\n// @ts-ignore\nimport { UserGroupModel } from '../model/userGroupModel';\n// @ts-ignore\nimport { UsersGroups } from '../model/usersGroups';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class UserGroupService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationId \n * @param groupId \n * @param groupApplicationModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserGroupAssignGroupAppsOrganizationIdGroupIdPost(organizationId: number, groupId: number, groupApplicationModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserGroupAssignGroupAppsOrganizationIdGroupIdPost(organizationId: number, groupId: number, groupApplicationModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserGroupAssignGroupAppsOrganizationIdGroupIdPost(organizationId: number, groupId: number, groupApplicationModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserGroupAssignGroupAppsOrganizationIdGroupIdPost(organizationId: number, groupId: number, groupApplicationModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserGroupAssignGroupAppsOrganizationIdGroupIdPost.');\n }\n if (groupId === null || groupId === undefined) {\n throw new Error('Required parameter groupId was null or undefined when calling apiUserGroupAssignGroupAppsOrganizationIdGroupIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserGroup/AssignGroupApps/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"groupId\", value: groupId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: groupApplicationModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userGroupModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserGroupAssignUserGroupAndUpdateTypePost(userGroupModel?: UserGroupModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserGroupAssignUserGroupAndUpdateTypePost(userGroupModel?: UserGroupModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserGroupAssignUserGroupAndUpdateTypePost(userGroupModel?: UserGroupModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserGroupAssignUserGroupAndUpdateTypePost(userGroupModel?: UserGroupModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserGroup/AssignUserGroupAndUpdateType`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userGroupModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userGroupModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserGroupAssignUserGroupsPost(userGroupModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserGroupAssignUserGroupsPost(userGroupModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserGroupAssignUserGroupsPost(userGroupModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserGroupAssignUserGroupsPost(userGroupModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserGroup/AssignUserGroups`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userGroupModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param groupId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserGroupDeletionUserAppsUserIdGroupIdOrganizationIdGet(userId: number, groupId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserGroupDeletionUserAppsUserIdGroupIdOrganizationIdGet(userId: number, groupId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserGroupDeletionUserAppsUserIdGroupIdOrganizationIdGet(userId: number, groupId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserGroupDeletionUserAppsUserIdGroupIdOrganizationIdGet(userId: number, groupId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUserGroupDeletionUserAppsUserIdGroupIdOrganizationIdGet.');\n }\n if (groupId === null || groupId === undefined) {\n throw new Error('Required parameter groupId was null or undefined when calling apiUserGroupDeletionUserAppsUserIdGroupIdOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserGroupDeletionUserAppsUserIdGroupIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserGroup/deletionUserApps/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"groupId\", value: groupId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param groups \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserGroupGetEmailAddressesForGroupsOrganizationIdGet(organizationId: number, groups?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserGroupGetEmailAddressesForGroupsOrganizationIdGet(organizationId: number, groups?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserGroupGetEmailAddressesForGroupsOrganizationIdGet(organizationId: number, groups?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserGroupGetEmailAddressesForGroupsOrganizationIdGet(organizationId: number, groups?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserGroupGetEmailAddressesForGroupsOrganizationIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (groups) {\n groups.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'groups');\n })\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserGroup/getEmailAddressesForGroups/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param groupId \n * @param organizationId \n * @param directory \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserGroupGetGroupUsersByDirectoryGroupIdOrganizationIdDirectoryGet(groupId: number, organizationId: number, directory: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserGroupGetGroupUsersByDirectoryGroupIdOrganizationIdDirectoryGet(groupId: number, organizationId: number, directory: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserGroupGetGroupUsersByDirectoryGroupIdOrganizationIdDirectoryGet(groupId: number, organizationId: number, directory: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserGroupGetGroupUsersByDirectoryGroupIdOrganizationIdDirectoryGet(groupId: number, organizationId: number, directory: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (groupId === null || groupId === undefined) {\n throw new Error('Required parameter groupId was null or undefined when calling apiUserGroupGetGroupUsersByDirectoryGroupIdOrganizationIdDirectoryGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserGroupGetGroupUsersByDirectoryGroupIdOrganizationIdDirectoryGet.');\n }\n if (directory === null || directory === undefined) {\n throw new Error('Required parameter directory was null or undefined when calling apiUserGroupGetGroupUsersByDirectoryGroupIdOrganizationIdDirectoryGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserGroup/getGroupUsersByDirectory/${this.configuration.encodeParam({name: \"groupId\", value: groupId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"directory\", value: directory, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param groupId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserGroupGetGroupUsersGroupIdGet(groupId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserGroupGetGroupUsersGroupIdGet(groupId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserGroupGetGroupUsersGroupIdGet(groupId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserGroupGetGroupUsersGroupIdGet(groupId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (groupId === null || groupId === undefined) {\n throw new Error('Required parameter groupId was null or undefined when calling apiUserGroupGetGroupUsersGroupIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserGroupGetGroupUsersGroupIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserGroup/getGroupUsers/${this.configuration.encodeParam({name: \"groupId\", value: groupId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param groupId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserGroupGetGroupUsersGroupIdOrganizationIdGet(groupId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserGroupGetGroupUsersGroupIdOrganizationIdGet(groupId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserGroupGetGroupUsersGroupIdOrganizationIdGet(groupId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserGroupGetGroupUsersGroupIdOrganizationIdGet(groupId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (groupId === null || groupId === undefined) {\n throw new Error('Required parameter groupId was null or undefined when calling apiUserGroupGetGroupUsersGroupIdOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserGroupGetGroupUsersGroupIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserGroup/getGroupUsers/${this.configuration.encodeParam({name: \"groupId\", value: groupId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param orgDirId \n * @param requestBody \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserGroupGetSyncUserGroupsOrganizationIdOrgDirIdPost(organizationId: number, orgDirId: number, requestBody?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserGroupGetSyncUserGroupsOrganizationIdOrgDirIdPost(organizationId: number, orgDirId: number, requestBody?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserGroupGetSyncUserGroupsOrganizationIdOrgDirIdPost(organizationId: number, orgDirId: number, requestBody?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserGroupGetSyncUserGroupsOrganizationIdOrgDirIdPost(organizationId: number, orgDirId: number, requestBody?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserGroupGetSyncUserGroupsOrganizationIdOrgDirIdPost.');\n }\n if (orgDirId === null || orgDirId === undefined) {\n throw new Error('Required parameter orgDirId was null or undefined when calling apiUserGroupGetSyncUserGroupsOrganizationIdOrgDirIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserGroup/getSyncUserGroups/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"orgDirId\", value: orgDirId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: requestBody,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserGroupGetUserGroupUserIdGet(userId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserGroupGetUserGroupUserIdGet(userId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserGroupGetUserGroupUserIdGet(userId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserGroupGetUserGroupUserIdGet(userId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUserGroupGetUserGroupUserIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserGroupGetUserGroupUserIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserGroup/getUserGroup/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserGroupGetUserGroupUserIdOrganizationIdGet(userId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserGroupGetUserGroupUserIdOrganizationIdGet(userId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserGroupGetUserGroupUserIdOrganizationIdGet(userId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserGroupGetUserGroupUserIdOrganizationIdGet(userId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUserGroupGetUserGroupUserIdOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserGroupGetUserGroupUserIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserGroup/getUserGroup/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param groupId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserGroupRemoveUserFromGroupUserIdGroupIdDelete(userId: number, groupId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserGroupRemoveUserFromGroupUserIdGroupIdDelete(userId: number, groupId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserGroupRemoveUserFromGroupUserIdGroupIdDelete(userId: number, groupId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserGroupRemoveUserFromGroupUserIdGroupIdDelete(userId: number, groupId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUserGroupRemoveUserFromGroupUserIdGroupIdDelete.');\n }\n if (groupId === null || groupId === undefined) {\n throw new Error('Required parameter groupId was null or undefined when calling apiUserGroupRemoveUserFromGroupUserIdGroupIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserGroup/RemoveUserFromGroup/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"groupId\", value: groupId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param groupId \n * @param organizationId \n * @param usersGroups \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserGroupSaveGroupUsersGroupIdOrganizationIdPost(groupId: number, organizationId: number, usersGroups?: UsersGroups, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserGroupSaveGroupUsersGroupIdOrganizationIdPost(groupId: number, organizationId: number, usersGroups?: UsersGroups, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserGroupSaveGroupUsersGroupIdOrganizationIdPost(groupId: number, organizationId: number, usersGroups?: UsersGroups, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserGroupSaveGroupUsersGroupIdOrganizationIdPost(groupId: number, organizationId: number, usersGroups?: UsersGroups, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (groupId === null || groupId === undefined) {\n throw new Error('Required parameter groupId was null or undefined when calling apiUserGroupSaveGroupUsersGroupIdOrganizationIdPost.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserGroupSaveGroupUsersGroupIdOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserGroup/saveGroupUsers/${this.configuration.encodeParam({name: \"groupId\", value: groupId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: usersGroups,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param groupId \n * @param organizationId \n * @param usersGroups \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUserGroupSaveGroupUsersGroupIdPost(groupId: number, organizationId: number, usersGroups?: UsersGroups, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUserGroupSaveGroupUsersGroupIdPost(groupId: number, organizationId: number, usersGroups?: UsersGroups, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserGroupSaveGroupUsersGroupIdPost(groupId: number, organizationId: number, usersGroups?: UsersGroups, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUserGroupSaveGroupUsersGroupIdPost(groupId: number, organizationId: number, usersGroups?: UsersGroups, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (groupId === null || groupId === undefined) {\n throw new Error('Required parameter groupId was null or undefined when calling apiUserGroupSaveGroupUsersGroupIdPost.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUserGroupSaveGroupUsersGroupIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/UserGroup/saveGroupUsers/${this.configuration.encodeParam({name: \"groupId\", value: groupId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: usersGroups,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { LinkUserModel } from '../model/linkUserModel';\n// @ts-ignore\nimport { RecoveryEmailModel } from '../model/recoveryEmailModel';\n// @ts-ignore\nimport { UserAddModel } from '../model/userAddModel';\n// @ts-ignore\nimport { UserCredentialModel } from '../model/userCredentialModel';\n// @ts-ignore\nimport { UserDirectoryModel } from '../model/userDirectoryModel';\n// @ts-ignore\nimport { UserModel } from '../model/userModel';\n// @ts-ignore\nimport { UserOrgModel } from '../model/userOrgModel';\n// @ts-ignore\nimport { UsersGroups } from '../model/usersGroups';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class UsersService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param userModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersAddNewUserOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, userModel?: UserModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersAddNewUserOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, userModel?: UserModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersAddNewUserOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, userModel?: UserModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersAddNewUserOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, userModel?: UserModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersAddNewUserOrganizationIdOrganizationMnemonicPost.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiUsersAddNewUserOrganizationIdOrganizationMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/addNewUser/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param userModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersAddNewUserPost(organizationId: number, organizationMnemonic: string, userModel?: UserModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersAddNewUserPost(organizationId: number, organizationMnemonic: string, userModel?: UserModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersAddNewUserPost(organizationId: number, organizationMnemonic: string, userModel?: UserModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersAddNewUserPost(organizationId: number, organizationMnemonic: string, userModel?: UserModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersAddNewUserPost.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiUsersAddNewUserPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/addNewUser`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userOrgModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersAddOrgUserPost(userOrgModel?: UserOrgModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersAddOrgUserPost(userOrgModel?: UserOrgModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersAddOrgUserPost(userOrgModel?: UserOrgModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersAddOrgUserPost(userOrgModel?: UserOrgModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/addOrgUser`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userOrgModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userDirectoryModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersAddUserDirectoryPost(userDirectoryModel?: UserDirectoryModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersAddUserDirectoryPost(userDirectoryModel?: UserDirectoryModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersAddUserDirectoryPost(userDirectoryModel?: UserDirectoryModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersAddUserDirectoryPost(userDirectoryModel?: UserDirectoryModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/addUserDirectory`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userDirectoryModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param userAddModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersAddUserOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, userAddModel?: UserAddModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersAddUserOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, userAddModel?: UserAddModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersAddUserOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, userAddModel?: UserAddModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersAddUserOrganizationIdOrganizationMnemonicPost(organizationId: number, organizationMnemonic: string, userAddModel?: UserAddModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersAddUserOrganizationIdOrganizationMnemonicPost.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiUsersAddUserOrganizationIdOrganizationMnemonicPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/addUser/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userAddModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param userAddModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersAddUserPost(organizationId: number, organizationMnemonic: string, userAddModel?: UserAddModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersAddUserPost(organizationId: number, organizationMnemonic: string, userAddModel?: UserAddModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersAddUserPost(organizationId: number, organizationMnemonic: string, userAddModel?: UserAddModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersAddUserPost(organizationId: number, organizationMnemonic: string, userAddModel?: UserAddModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersAddUserPost.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiUsersAddUserPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/addUser`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userAddModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param value \n * @param type \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersAlreadyExistsValueTypeGet(value: string, type: string, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersAlreadyExistsValueTypeGet(value: string, type: string, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersAlreadyExistsValueTypeGet(value: string, type: string, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersAlreadyExistsValueTypeGet(value: string, type: string, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (value === null || value === undefined) {\n throw new Error('Required parameter value was null or undefined when calling apiUsersAlreadyExistsValueTypeGet.');\n }\n if (type === null || type === undefined) {\n throw new Error('Required parameter type was null or undefined when calling apiUsersAlreadyExistsValueTypeGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersAlreadyExistsValueTypeGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/alreadyExists/${this.configuration.encodeParam({name: \"value\", value: value, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"type\", value: type, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param value \n * @param type \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersAlreadyExistsValueTypeOrganizationIdGet(value: string, type: string, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersAlreadyExistsValueTypeOrganizationIdGet(value: string, type: string, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersAlreadyExistsValueTypeOrganizationIdGet(value: string, type: string, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersAlreadyExistsValueTypeOrganizationIdGet(value: string, type: string, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (value === null || value === undefined) {\n throw new Error('Required parameter value was null or undefined when calling apiUsersAlreadyExistsValueTypeOrganizationIdGet.');\n }\n if (type === null || type === undefined) {\n throw new Error('Required parameter type was null or undefined when calling apiUsersAlreadyExistsValueTypeOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersAlreadyExistsValueTypeOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/alreadyExists/${this.configuration.encodeParam({name: \"value\", value: value, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"type\", value: type, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userCredentialModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n * @deprecated\n */\n public apiUsersChangeUserPasswordPut(userCredentialModel?: UserCredentialModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersChangeUserPasswordPut(userCredentialModel?: UserCredentialModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersChangeUserPasswordPut(userCredentialModel?: UserCredentialModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersChangeUserPasswordPut(userCredentialModel?: UserCredentialModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/changeUserPassword`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userCredentialModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param userId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersCheckAdminValidationStatusOrganizationIdUserIdPut(organizationId: number, userId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersCheckAdminValidationStatusOrganizationIdUserIdPut(organizationId: number, userId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersCheckAdminValidationStatusOrganizationIdUserIdPut(organizationId: number, userId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersCheckAdminValidationStatusOrganizationIdUserIdPut(organizationId: number, userId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersCheckAdminValidationStatusOrganizationIdUserIdPut.');\n }\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUsersCheckAdminValidationStatusOrganizationIdUserIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/checkAdminValidationStatus/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param account \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersCheckNewTenantCompromisedAccountGet(account: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersCheckNewTenantCompromisedAccountGet(account: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersCheckNewTenantCompromisedAccountGet(account: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersCheckNewTenantCompromisedAccountGet(account: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (account === null || account === undefined) {\n throw new Error('Required parameter account was null or undefined when calling apiUsersCheckNewTenantCompromisedAccountGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/CheckNewTenantCompromised/${this.configuration.encodeParam({name: \"account\", value: account, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param userId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersCheckUserCompromisedOrganizationIdUserIdGet(organizationId: number, userId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersCheckUserCompromisedOrganizationIdUserIdGet(organizationId: number, userId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersCheckUserCompromisedOrganizationIdUserIdGet(organizationId: number, userId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersCheckUserCompromisedOrganizationIdUserIdGet(organizationId: number, userId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersCheckUserCompromisedOrganizationIdUserIdGet.');\n }\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUsersCheckUserCompromisedOrganizationIdUserIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/CheckUserCompromised/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param userId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersCheckUserMobileVerifiedOrganizationIdUserIdGet(organizationId: number, userId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersCheckUserMobileVerifiedOrganizationIdUserIdGet(organizationId: number, userId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersCheckUserMobileVerifiedOrganizationIdUserIdGet(organizationId: number, userId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersCheckUserMobileVerifiedOrganizationIdUserIdGet(organizationId: number, userId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersCheckUserMobileVerifiedOrganizationIdUserIdGet.');\n }\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUsersCheckUserMobileVerifiedOrganizationIdUserIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/CheckUserMobileVerified/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgs \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersCountUsersForOrgsGet(orgs?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersCountUsersForOrgsGet(orgs?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersCountUsersForOrgsGet(orgs?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersCountUsersForOrgsGet(orgs?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (orgs) {\n orgs.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'orgs');\n })\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/CountUsersForOrgs`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param userName \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersCredentialResetDetailsOrganizationMnemonicUserNameGet(organizationMnemonic: string, userName: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersCredentialResetDetailsOrganizationMnemonicUserNameGet(organizationMnemonic: string, userName: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersCredentialResetDetailsOrganizationMnemonicUserNameGet(organizationMnemonic: string, userName: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersCredentialResetDetailsOrganizationMnemonicUserNameGet(organizationMnemonic: string, userName: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiUsersCredentialResetDetailsOrganizationMnemonicUserNameGet.');\n }\n if (userName === null || userName === undefined) {\n throw new Error('Required parameter userName was null or undefined when calling apiUsersCredentialResetDetailsOrganizationMnemonicUserNameGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/CredentialResetDetails/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"userName\", value: userName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersDeleteUserUserIdDelete(userId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersDeleteUserUserIdDelete(userId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersDeleteUserUserIdDelete(userId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersDeleteUserUserIdDelete(userId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUsersDeleteUserUserIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersDeleteUserUserIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/deleteUser/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersDeleteUserUserIdOrganizationIdDelete(userId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersDeleteUserUserIdOrganizationIdDelete(userId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersDeleteUserUserIdOrganizationIdDelete(userId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersDeleteUserUserIdOrganizationIdDelete(userId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUsersDeleteUserUserIdOrganizationIdDelete.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersDeleteUserUserIdOrganizationIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/deleteUser/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersDeleteUsersByOrganizationOrgIdDelete(orgId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersDeleteUsersByOrganizationOrgIdDelete(orgId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersDeleteUsersByOrganizationOrgIdDelete(orgId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersDeleteUsersByOrganizationOrgIdDelete(orgId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiUsersDeleteUsersByOrganizationOrgIdDelete.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/deleteUsersByOrganization/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param primaryUserId \n * @param organizationId \n * @param requestBody \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersDeleteUsersPrimaryUserIdOrganizationIdPut(primaryUserId: number, organizationId: number, requestBody?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersDeleteUsersPrimaryUserIdOrganizationIdPut(primaryUserId: number, organizationId: number, requestBody?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersDeleteUsersPrimaryUserIdOrganizationIdPut(primaryUserId: number, organizationId: number, requestBody?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersDeleteUsersPrimaryUserIdOrganizationIdPut(primaryUserId: number, organizationId: number, requestBody?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (primaryUserId === null || primaryUserId === undefined) {\n throw new Error('Required parameter primaryUserId was null or undefined when calling apiUsersDeleteUsersPrimaryUserIdOrganizationIdPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersDeleteUsersPrimaryUserIdOrganizationIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/deleteUsers/${this.configuration.encodeParam({name: \"primaryUserId\", value: primaryUserId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: requestBody,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param primaryUserId \n * @param organizationId \n * @param requestBody \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersDeleteUsersPrimaryUserIdPut(primaryUserId: number, organizationId: number, requestBody?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersDeleteUsersPrimaryUserIdPut(primaryUserId: number, organizationId: number, requestBody?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersDeleteUsersPrimaryUserIdPut(primaryUserId: number, organizationId: number, requestBody?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersDeleteUsersPrimaryUserIdPut(primaryUserId: number, organizationId: number, requestBody?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (primaryUserId === null || primaryUserId === undefined) {\n throw new Error('Required parameter primaryUserId was null or undefined when calling apiUsersDeleteUsersPrimaryUserIdPut.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersDeleteUsersPrimaryUserIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/deleteUsers/${this.configuration.encodeParam({name: \"primaryUserId\", value: primaryUserId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: requestBody,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersDisabletemporaryusersPut(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersDisabletemporaryusersPut(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersDisabletemporaryusersPut(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersDisabletemporaryusersPut(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/disabletemporaryusers`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetActiveUsersCountByMnemonicOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetActiveUsersCountByMnemonicOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetActiveUsersCountByMnemonicOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetActiveUsersCountByMnemonicOrganizationMnemonicGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiUsersGetActiveUsersCountByMnemonicOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/getActiveUsersCountByMnemonic/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetActiveUsersCountOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetActiveUsersCountOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetActiveUsersCountOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetActiveUsersCountOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersGetActiveUsersCountOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/getActiveUsersCount/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetAllUsersByMnemonicOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetAllUsersByMnemonicOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetAllUsersByMnemonicOrganizationMnemonicGet(organizationMnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetAllUsersByMnemonicOrganizationMnemonicGet(organizationMnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiUsersGetAllUsersByMnemonicOrganizationMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/getAllUsersByMnemonic/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetAllUsersGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetAllUsersGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetAllUsersGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetAllUsersGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersGetAllUsersGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/getAllUsers`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetAllUsersOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetAllUsersOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetAllUsersOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetAllUsersOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersGetAllUsersOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/getAllUsers/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param userName \n * @param requestBody \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetAttributeValuesByUsernameOrganizationIdUserNamePost(organizationId: number, userName: string, requestBody?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetAttributeValuesByUsernameOrganizationIdUserNamePost(organizationId: number, userName: string, requestBody?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetAttributeValuesByUsernameOrganizationIdUserNamePost(organizationId: number, userName: string, requestBody?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetAttributeValuesByUsernameOrganizationIdUserNamePost(organizationId: number, userName: string, requestBody?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersGetAttributeValuesByUsernameOrganizationIdUserNamePost.');\n }\n if (userName === null || userName === undefined) {\n throw new Error('Required parameter userName was null or undefined when calling apiUsersGetAttributeValuesByUsernameOrganizationIdUserNamePost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/getAttributeValuesByUsername/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"userName\", value: userName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: requestBody,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetNonSynedUsersCountOrganizationIdPut(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetNonSynedUsersCountOrganizationIdPut(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetNonSynedUsersCountOrganizationIdPut(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetNonSynedUsersCountOrganizationIdPut(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersGetNonSynedUsersCountOrganizationIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/getNonSynedUsersCount/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetNonSynedUsersCountPut(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetNonSynedUsersCountPut(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetNonSynedUsersCountPut(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetNonSynedUsersCountPut(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersGetNonSynedUsersCountPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/getNonSynedUsersCount`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param userId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetPagedUsersForMergingOrganizationIdUserIdGet(organizationId: number, userId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetPagedUsersForMergingOrganizationIdUserIdGet(organizationId: number, userId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetPagedUsersForMergingOrganizationIdUserIdGet(organizationId: number, userId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetPagedUsersForMergingOrganizationIdUserIdGet(organizationId: number, userId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersGetPagedUsersForMergingOrganizationIdUserIdGet.');\n }\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUsersGetPagedUsersForMergingOrganizationIdUserIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/GetPagedUsersForMerging/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param userId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetPagedUsersForMergingUserIdGet(organizationId: number, userId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetPagedUsersForMergingUserIdGet(organizationId: number, userId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetPagedUsersForMergingUserIdGet(organizationId: number, userId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetPagedUsersForMergingUserIdGet(organizationId: number, userId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersGetPagedUsersForMergingUserIdGet.');\n }\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUsersGetPagedUsersForMergingUserIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/GetPagedUsersForMerging/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetPagedUsersGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetPagedUsersGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetPagedUsersGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetPagedUsersGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersGetPagedUsersGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/GetPagedUsers`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param sortColumn \n * @param currentPage \n * @param pageSize \n * @param searchCriteria \n * @param skip \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetPagedUsersOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetPagedUsersOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetPagedUsersOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetPagedUsersOrganizationIdGet(organizationId: number, sortColumn?: string, currentPage?: number, pageSize?: number, searchCriteria?: Array, skip?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersGetPagedUsersOrganizationIdGet.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (sortColumn !== undefined && sortColumn !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n sortColumn, 'SortColumn');\n }\n if (currentPage !== undefined && currentPage !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n currentPage, 'CurrentPage');\n }\n if (pageSize !== undefined && pageSize !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n pageSize, 'PageSize');\n }\n if (searchCriteria) {\n searchCriteria.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'SearchCriteria');\n })\n }\n if (skip !== undefined && skip !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n skip, 'Skip');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/GetPagedUsers/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userName \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetUserBasicInfoForUserGet(userName: string, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetUserBasicInfoForUserGet(userName: string, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserBasicInfoForUserGet(userName: string, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserBasicInfoForUserGet(userName: string, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userName === null || userName === undefined) {\n throw new Error('Required parameter userName was null or undefined when calling apiUsersGetUserBasicInfoForUserGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersGetUserBasicInfoForUserGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/getUserBasicInfoForUser`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userName \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetUserBasicInfoForUserUserNameGet(userName: string, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetUserBasicInfoForUserUserNameGet(userName: string, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserBasicInfoForUserUserNameGet(userName: string, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserBasicInfoForUserUserNameGet(userName: string, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userName === null || userName === undefined) {\n throw new Error('Required parameter userName was null or undefined when calling apiUsersGetUserBasicInfoForUserUserNameGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersGetUserBasicInfoForUserUserNameGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/getUserBasicInfoForUser/${this.configuration.encodeParam({name: \"userName\", value: userName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userName \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetUserBasicInfoForUserUserNameOrganizationIdGet(userName: string, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetUserBasicInfoForUserUserNameOrganizationIdGet(userName: string, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserBasicInfoForUserUserNameOrganizationIdGet(userName: string, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserBasicInfoForUserUserNameOrganizationIdGet(userName: string, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userName === null || userName === undefined) {\n throw new Error('Required parameter userName was null or undefined when calling apiUsersGetUserBasicInfoForUserUserNameOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersGetUserBasicInfoForUserUserNameOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/getUserBasicInfoForUser/${this.configuration.encodeParam({name: \"userName\", value: userName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetUserBasicInfoGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetUserBasicInfoGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserBasicInfoGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserBasicInfoGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/getUserBasicInfo`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param email \n * @param organizationCode \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetUserByEmailAndOrganizationCodeEmailOrganizationCodeGet(email: string, organizationCode: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetUserByEmailAndOrganizationCodeEmailOrganizationCodeGet(email: string, organizationCode: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserByEmailAndOrganizationCodeEmailOrganizationCodeGet(email: string, organizationCode: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserByEmailAndOrganizationCodeEmailOrganizationCodeGet(email: string, organizationCode: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (email === null || email === undefined) {\n throw new Error('Required parameter email was null or undefined when calling apiUsersGetUserByEmailAndOrganizationCodeEmailOrganizationCodeGet.');\n }\n if (organizationCode === null || organizationCode === undefined) {\n throw new Error('Required parameter organizationCode was null or undefined when calling apiUsersGetUserByEmailAndOrganizationCodeEmailOrganizationCodeGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/getUserByEmailAndOrganizationCode/${this.configuration.encodeParam({name: \"email\", value: email, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"organizationCode\", value: organizationCode, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetUserByIdUserIdGet(userId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetUserByIdUserIdGet(userId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserByIdUserIdGet(userId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserByIdUserIdGet(userId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUsersGetUserByIdUserIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/getUserById/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userName \n * @param organizationCode \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetUserByUsernameAndOrganizationCodeUserNameOrganizationCodeGet(userName: string, organizationCode: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetUserByUsernameAndOrganizationCodeUserNameOrganizationCodeGet(userName: string, organizationCode: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserByUsernameAndOrganizationCodeUserNameOrganizationCodeGet(userName: string, organizationCode: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserByUsernameAndOrganizationCodeUserNameOrganizationCodeGet(userName: string, organizationCode: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userName === null || userName === undefined) {\n throw new Error('Required parameter userName was null or undefined when calling apiUsersGetUserByUsernameAndOrganizationCodeUserNameOrganizationCodeGet.');\n }\n if (organizationCode === null || organizationCode === undefined) {\n throw new Error('Required parameter organizationCode was null or undefined when calling apiUsersGetUserByUsernameAndOrganizationCodeUserNameOrganizationCodeGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/getUserByUsernameAndOrganizationCode/${this.configuration.encodeParam({name: \"userName\", value: userName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"organizationCode\", value: organizationCode, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetUserDetailGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetUserDetailGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserDetailGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserDetailGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/getUserDetail`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetUserDetailUserIdGet(userId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetUserDetailUserIdGet(userId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserDetailUserIdGet(userId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserDetailUserIdGet(userId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUsersGetUserDetailUserIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersGetUserDetailUserIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/getUserDetail/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetUserDetailUserIdOrganizationIdGet(userId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetUserDetailUserIdOrganizationIdGet(userId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserDetailUserIdOrganizationIdGet(userId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserDetailUserIdOrganizationIdGet(userId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUsersGetUserDetailUserIdOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersGetUserDetailUserIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/getUserDetail/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetUserDirectoriesGet(userId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetUserDirectoriesGet(userId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserDirectoriesGet(userId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserDirectoriesGet(userId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUsersGetUserDirectoriesGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/getUserDirectories`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userName \n * @param mnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetUserForRadiusApiKeyUserNameMnemonicGet(userName: string, mnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetUserForRadiusApiKeyUserNameMnemonicGet(userName: string, mnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserForRadiusApiKeyUserNameMnemonicGet(userName: string, mnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserForRadiusApiKeyUserNameMnemonicGet(userName: string, mnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userName === null || userName === undefined) {\n throw new Error('Required parameter userName was null or undefined when calling apiUsersGetUserForRadiusApiKeyUserNameMnemonicGet.');\n }\n if (mnemonic === null || mnemonic === undefined) {\n throw new Error('Required parameter mnemonic was null or undefined when calling apiUsersGetUserForRadiusApiKeyUserNameMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/getUserForRadiusApiKey/${this.configuration.encodeParam({name: \"userName\", value: userName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"mnemonic\", value: mnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userName \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetUserForRadiusUserNameGet(userName: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetUserForRadiusUserNameGet(userName: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserForRadiusUserNameGet(userName: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserForRadiusUserNameGet(userName: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userName === null || userName === undefined) {\n throw new Error('Required parameter userName was null or undefined when calling apiUsersGetUserForRadiusUserNameGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/getUserForRadius/${this.configuration.encodeParam({name: \"userName\", value: userName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organization \n * @param userName \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetUserGroupsByNameOrganizationUserNameGet(organization: string, userName: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetUserGroupsByNameOrganizationUserNameGet(organization: string, userName: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserGroupsByNameOrganizationUserNameGet(organization: string, userName: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserGroupsByNameOrganizationUserNameGet(organization: string, userName: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organization === null || organization === undefined) {\n throw new Error('Required parameter organization was null or undefined when calling apiUsersGetUserGroupsByNameOrganizationUserNameGet.');\n }\n if (userName === null || userName === undefined) {\n throw new Error('Required parameter userName was null or undefined when calling apiUsersGetUserGroupsByNameOrganizationUserNameGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/getUserGroupsByName/${this.configuration.encodeParam({name: \"organization\", value: organization, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"userName\", value: userName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param mnemonic \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetUserGroupsForRadiusApiKeyUserIdMnemonicGet(userId: number, mnemonic: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetUserGroupsForRadiusApiKeyUserIdMnemonicGet(userId: number, mnemonic: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserGroupsForRadiusApiKeyUserIdMnemonicGet(userId: number, mnemonic: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserGroupsForRadiusApiKeyUserIdMnemonicGet(userId: number, mnemonic: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUsersGetUserGroupsForRadiusApiKeyUserIdMnemonicGet.');\n }\n if (mnemonic === null || mnemonic === undefined) {\n throw new Error('Required parameter mnemonic was null or undefined when calling apiUsersGetUserGroupsForRadiusApiKeyUserIdMnemonicGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/getUserGroupsForRadiusApiKey/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"mnemonic\", value: mnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetUserGroupsForRadiusUserIdGet(userId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetUserGroupsForRadiusUserIdGet(userId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserGroupsForRadiusUserIdGet(userId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserGroupsForRadiusUserIdGet(userId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUsersGetUserGroupsForRadiusUserIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/getUserGroupsForRadius/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetUserGroupsUserIdGet(userId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetUserGroupsUserIdGet(userId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserGroupsUserIdGet(userId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserGroupsUserIdGet(userId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUsersGetUserGroupsUserIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersGetUserGroupsUserIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/getUserGroups/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetUserGroupsUserIdOrganizationIdGet(userId: number, organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetUserGroupsUserIdOrganizationIdGet(userId: number, organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserGroupsUserIdOrganizationIdGet(userId: number, organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserGroupsUserIdOrganizationIdGet(userId: number, organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUsersGetUserGroupsUserIdOrganizationIdGet.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersGetUserGroupsUserIdOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/getUserGroups/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param requestBody \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetUserIdsForUsernamesOrganizationIdPost(organizationId: number, requestBody?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetUserIdsForUsernamesOrganizationIdPost(organizationId: number, requestBody?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserIdsForUsernamesOrganizationIdPost(organizationId: number, requestBody?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUserIdsForUsernamesOrganizationIdPost(organizationId: number, requestBody?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersGetUserIdsForUsernamesOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/GetUserIdsForUsernames/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: requestBody,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userIds \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetUsersBasicInfoGet(userIds?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetUsersBasicInfoGet(userIds?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUsersBasicInfoGet(userIds?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUsersBasicInfoGet(userIds?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (userIds) {\n userIds.forEach((element) => {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n element, 'userIds');\n })\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/GetUsersBasicInfo`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgId \n * @param userType \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetUsersByRoleOrgIdUserTypeGet(orgId: number, userType: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetUsersByRoleOrgIdUserTypeGet(orgId: number, userType: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUsersByRoleOrgIdUserTypeGet(orgId: number, userType: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetUsersByRoleOrgIdUserTypeGet(orgId: number, userType: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling apiUsersGetUsersByRoleOrgIdUserTypeGet.');\n }\n if (userType === null || userType === undefined) {\n throw new Error('Required parameter userType was null or undefined when calling apiUsersGetUsersByRoleOrgIdUserTypeGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/getUsersByRole/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"userType\", value: userType, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationCode \n * @param userName \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersGetuserstatusOrganizationCodeUserNameGet(organizationCode: string, userName: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersGetuserstatusOrganizationCodeUserNameGet(organizationCode: string, userName: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetuserstatusOrganizationCodeUserNameGet(organizationCode: string, userName: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersGetuserstatusOrganizationCodeUserNameGet(organizationCode: string, userName: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationCode === null || organizationCode === undefined) {\n throw new Error('Required parameter organizationCode was null or undefined when calling apiUsersGetuserstatusOrganizationCodeUserNameGet.');\n }\n if (userName === null || userName === undefined) {\n throw new Error('Required parameter userName was null or undefined when calling apiUsersGetuserstatusOrganizationCodeUserNameGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/getuserstatus/${this.configuration.encodeParam({name: \"organizationCode\", value: organizationCode, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"userName\", value: userName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param body \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersLockUserByRadiusPut(body?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersLockUserByRadiusPut(body?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersLockUserByRadiusPut(body?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersLockUserByRadiusPut(body?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/lockUserByRadius`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: body,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationCode \n * @param userName \n * @param tempBlock \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersLockuserOrganizationCodeUserNamePut(organizationCode: string, userName: string, tempBlock?: boolean, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersLockuserOrganizationCodeUserNamePut(organizationCode: string, userName: string, tempBlock?: boolean, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersLockuserOrganizationCodeUserNamePut(organizationCode: string, userName: string, tempBlock?: boolean, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersLockuserOrganizationCodeUserNamePut(organizationCode: string, userName: string, tempBlock?: boolean, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationCode === null || organizationCode === undefined) {\n throw new Error('Required parameter organizationCode was null or undefined when calling apiUsersLockuserOrganizationCodeUserNamePut.');\n }\n if (userName === null || userName === undefined) {\n throw new Error('Required parameter userName was null or undefined when calling apiUsersLockuserOrganizationCodeUserNamePut.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (tempBlock !== undefined && tempBlock !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n tempBlock, 'tempBlock');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/lockuser/${this.configuration.encodeParam({name: \"organizationCode\", value: organizationCode, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"userName\", value: userName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param linkUserModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersMergeUsersOrganizationIdOrganizationMnemonicPut(organizationId: number, organizationMnemonic: string, linkUserModel?: LinkUserModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersMergeUsersOrganizationIdOrganizationMnemonicPut(organizationId: number, organizationMnemonic: string, linkUserModel?: LinkUserModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersMergeUsersOrganizationIdOrganizationMnemonicPut(organizationId: number, organizationMnemonic: string, linkUserModel?: LinkUserModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersMergeUsersOrganizationIdOrganizationMnemonicPut(organizationId: number, organizationMnemonic: string, linkUserModel?: LinkUserModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersMergeUsersOrganizationIdOrganizationMnemonicPut.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiUsersMergeUsersOrganizationIdOrganizationMnemonicPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/MergeUsers/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: linkUserModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param linkUserModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersMergeUsersPut(organizationId: number, organizationMnemonic: string, linkUserModel?: LinkUserModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersMergeUsersPut(organizationId: number, organizationMnemonic: string, linkUserModel?: LinkUserModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersMergeUsersPut(organizationId: number, organizationMnemonic: string, linkUserModel?: LinkUserModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersMergeUsersPut(organizationId: number, organizationMnemonic: string, linkUserModel?: LinkUserModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersMergeUsersPut.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiUsersMergeUsersPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/MergeUsers`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: linkUserModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersRecoveryEmailGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersRecoveryEmailGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersRecoveryEmailGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersRecoveryEmailGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/RecoveryEmail`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param recoveryEmailModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersRecoveryEmailPost(recoveryEmailModel?: RecoveryEmailModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersRecoveryEmailPost(recoveryEmailModel?: RecoveryEmailModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersRecoveryEmailPost(recoveryEmailModel?: RecoveryEmailModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersRecoveryEmailPost(recoveryEmailModel?: RecoveryEmailModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/RecoveryEmail`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: recoveryEmailModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param body \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersSaveUserGroupPost(userId?: number, body?: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersSaveUserGroupPost(userId?: number, body?: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSaveUserGroupPost(userId?: number, body?: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSaveUserGroupPost(userId?: number, body?: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (userId !== undefined && userId !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n userId, 'userId');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/saveUserGroup`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: body,\n params: localVarQueryParameters,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param organizationId \n * @param usersGroups \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersSaveUserGroupsUserIdOrganizationIdPost(userId: number, organizationId: number, usersGroups?: UsersGroups, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersSaveUserGroupsUserIdOrganizationIdPost(userId: number, organizationId: number, usersGroups?: UsersGroups, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSaveUserGroupsUserIdOrganizationIdPost(userId: number, organizationId: number, usersGroups?: UsersGroups, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSaveUserGroupsUserIdOrganizationIdPost(userId: number, organizationId: number, usersGroups?: UsersGroups, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUsersSaveUserGroupsUserIdOrganizationIdPost.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersSaveUserGroupsUserIdOrganizationIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/saveUserGroups/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: usersGroups,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userId \n * @param organizationId \n * @param usersGroups \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersSaveUserGroupsUserIdPost(userId: number, organizationId: number, usersGroups?: UsersGroups, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersSaveUserGroupsUserIdPost(userId: number, organizationId: number, usersGroups?: UsersGroups, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSaveUserGroupsUserIdPost(userId: number, organizationId: number, usersGroups?: UsersGroups, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSaveUserGroupsUserIdPost(userId: number, organizationId: number, usersGroups?: UsersGroups, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUsersSaveUserGroupsUserIdPost.');\n }\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersSaveUserGroupsUserIdPost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/saveUserGroups/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: usersGroups,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param userId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersSendAdminValidationCodeEmailOrganizationIdUserIdPut(organizationId: number, userId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersSendAdminValidationCodeEmailOrganizationIdUserIdPut(organizationId: number, userId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSendAdminValidationCodeEmailOrganizationIdUserIdPut(organizationId: number, userId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSendAdminValidationCodeEmailOrganizationIdUserIdPut(organizationId: number, userId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersSendAdminValidationCodeEmailOrganizationIdUserIdPut.');\n }\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUsersSendAdminValidationCodeEmailOrganizationIdUserIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/sendAdminValidationCodeEmail/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param userId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersSendAdminValidationCodeSMSOrganizationIdUserIdPut(organizationId: number, userId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersSendAdminValidationCodeSMSOrganizationIdUserIdPut(organizationId: number, userId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSendAdminValidationCodeSMSOrganizationIdUserIdPut(organizationId: number, userId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSendAdminValidationCodeSMSOrganizationIdUserIdPut(organizationId: number, userId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersSendAdminValidationCodeSMSOrganizationIdUserIdPut.');\n }\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUsersSendAdminValidationCodeSMSOrganizationIdUserIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/sendAdminValidationCodeSMS/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param userModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersSendEnrollmentEmailOrganizationIdPut(organizationId: number, userModel?: UserModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersSendEnrollmentEmailOrganizationIdPut(organizationId: number, userModel?: UserModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSendEnrollmentEmailOrganizationIdPut(organizationId: number, userModel?: UserModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSendEnrollmentEmailOrganizationIdPut(organizationId: number, userModel?: UserModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersSendEnrollmentEmailOrganizationIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/sendEnrollmentEmail/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param userModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersSendEnrollmentEmailPut(organizationId: number, userModel?: UserModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersSendEnrollmentEmailPut(organizationId: number, userModel?: UserModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSendEnrollmentEmailPut(organizationId: number, userModel?: UserModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSendEnrollmentEmailPut(organizationId: number, userModel?: UserModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersSendEnrollmentEmailPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/sendEnrollmentEmail`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersSendEnrollmentEmailSynedUsersOrganizationIdPut(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersSendEnrollmentEmailSynedUsersOrganizationIdPut(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSendEnrollmentEmailSynedUsersOrganizationIdPut(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSendEnrollmentEmailSynedUsersOrganizationIdPut(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersSendEnrollmentEmailSynedUsersOrganizationIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/sendEnrollmentEmailSynedUsers/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersSendEnrollmentEmailSynedUsersPut(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersSendEnrollmentEmailSynedUsersPut(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSendEnrollmentEmailSynedUsersPut(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSendEnrollmentEmailSynedUsersPut(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersSendEnrollmentEmailSynedUsersPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/sendEnrollmentEmailSynedUsers`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param userId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersSendHelpdeskValidationCodeEmailOrganizationIdUserIdPut(organizationId: number, userId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersSendHelpdeskValidationCodeEmailOrganizationIdUserIdPut(organizationId: number, userId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSendHelpdeskValidationCodeEmailOrganizationIdUserIdPut(organizationId: number, userId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSendHelpdeskValidationCodeEmailOrganizationIdUserIdPut(organizationId: number, userId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersSendHelpdeskValidationCodeEmailOrganizationIdUserIdPut.');\n }\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUsersSendHelpdeskValidationCodeEmailOrganizationIdUserIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/sendHelpdeskValidationCodeEmail/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param userId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersSendHelpdeskValidationCodeSMSOrganizationIdUserIdPut(organizationId: number, userId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersSendHelpdeskValidationCodeSMSOrganizationIdUserIdPut(organizationId: number, userId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSendHelpdeskValidationCodeSMSOrganizationIdUserIdPut(organizationId: number, userId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSendHelpdeskValidationCodeSMSOrganizationIdUserIdPut(organizationId: number, userId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersSendHelpdeskValidationCodeSMSOrganizationIdUserIdPut.');\n }\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUsersSendHelpdeskValidationCodeSMSOrganizationIdUserIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/sendHelpdeskValidationCodeSMS/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param orgCode \n * @param userModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersSendNewTenantUserEmailNotificationOrgCodePost(orgCode: string, userModel?: UserModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersSendNewTenantUserEmailNotificationOrgCodePost(orgCode: string, userModel?: UserModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSendNewTenantUserEmailNotificationOrgCodePost(orgCode: string, userModel?: UserModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSendNewTenantUserEmailNotificationOrgCodePost(orgCode: string, userModel?: UserModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (orgCode === null || orgCode === undefined) {\n throw new Error('Required parameter orgCode was null or undefined when calling apiUsersSendNewTenantUserEmailNotificationOrgCodePost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/SendNewTenantUserEmailNotification/${this.configuration.encodeParam({name: \"orgCode\", value: orgCode, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param body \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersSendNewTenantValidationCodeSMSPut(body?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersSendNewTenantValidationCodeSMSPut(body?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSendNewTenantValidationCodeSMSPut(body?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSendNewTenantValidationCodeSMSPut(body?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/sendNewTenantValidationCodeSMS`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: body,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param userId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersSendUserMobileValidationCodeSMSOrganizationIdUserIdPut(organizationId: number, userId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersSendUserMobileValidationCodeSMSOrganizationIdUserIdPut(organizationId: number, userId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSendUserMobileValidationCodeSMSOrganizationIdUserIdPut(organizationId: number, userId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSendUserMobileValidationCodeSMSOrganizationIdUserIdPut(organizationId: number, userId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersSendUserMobileValidationCodeSMSOrganizationIdUserIdPut.');\n }\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUsersSendUserMobileValidationCodeSMSOrganizationIdUserIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/sendUserMobileValidationCodeSMS/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param userModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersSignupOrgUserPost(userModel?: UserModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersSignupOrgUserPost(userModel?: UserModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSignupOrgUserPost(userModel?: UserModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSignupOrgUserPost(userModel?: UserModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/signupOrgUser`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param linkUserModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersSplitUsersOrganizationIdOrganizationMnemonicPut(organizationId: number, organizationMnemonic: string, linkUserModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersSplitUsersOrganizationIdOrganizationMnemonicPut(organizationId: number, organizationMnemonic: string, linkUserModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSplitUsersOrganizationIdOrganizationMnemonicPut(organizationId: number, organizationMnemonic: string, linkUserModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSplitUsersOrganizationIdOrganizationMnemonicPut(organizationId: number, organizationMnemonic: string, linkUserModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersSplitUsersOrganizationIdOrganizationMnemonicPut.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiUsersSplitUsersOrganizationIdOrganizationMnemonicPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/SplitUsers/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: linkUserModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param organizationMnemonic \n * @param linkUserModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersSplitUsersPut(organizationId: number, organizationMnemonic: string, linkUserModel?: Array, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersSplitUsersPut(organizationId: number, organizationMnemonic: string, linkUserModel?: Array, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSplitUsersPut(organizationId: number, organizationMnemonic: string, linkUserModel?: Array, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersSplitUsersPut(organizationId: number, organizationMnemonic: string, linkUserModel?: Array, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersSplitUsersPut.');\n }\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiUsersSplitUsersPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/SplitUsers`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: linkUserModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationCode \n * @param userName \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n * @deprecated\n */\n public apiUsersUnlockuserOrganizationCodeUserNamePut(organizationCode: string, userName: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersUnlockuserOrganizationCodeUserNamePut(organizationCode: string, userName: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersUnlockuserOrganizationCodeUserNamePut(organizationCode: string, userName: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersUnlockuserOrganizationCodeUserNamePut(organizationCode: string, userName: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationCode === null || organizationCode === undefined) {\n throw new Error('Required parameter organizationCode was null or undefined when calling apiUsersUnlockuserOrganizationCodeUserNamePut.');\n }\n if (userName === null || userName === undefined) {\n throw new Error('Required parameter userName was null or undefined when calling apiUsersUnlockuserOrganizationCodeUserNamePut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/unlockuser/${this.configuration.encodeParam({name: \"organizationCode\", value: organizationCode, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"userName\", value: userName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationMnemonic \n * @param userName \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersUnlockuserOrganizationMnemonicUserNamePost(organizationMnemonic: string, userName: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersUnlockuserOrganizationMnemonicUserNamePost(organizationMnemonic: string, userName: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersUnlockuserOrganizationMnemonicUserNamePost(organizationMnemonic: string, userName: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersUnlockuserOrganizationMnemonicUserNamePost(organizationMnemonic: string, userName: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationMnemonic === null || organizationMnemonic === undefined) {\n throw new Error('Required parameter organizationMnemonic was null or undefined when calling apiUsersUnlockuserOrganizationMnemonicUserNamePost.');\n }\n if (userName === null || userName === undefined) {\n throw new Error('Required parameter userName was null or undefined when calling apiUsersUnlockuserOrganizationMnemonicUserNamePost.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/unlockuser/${this.configuration.encodeParam({name: \"organizationMnemonic\", value: organizationMnemonic, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/${this.configuration.encodeParam({name: \"userName\", value: userName, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param userId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersUpdateLastLoginOrganizationIdUserIdPut(organizationId: number, userId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersUpdateLastLoginOrganizationIdUserIdPut(organizationId: number, userId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersUpdateLastLoginOrganizationIdUserIdPut(organizationId: number, userId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersUpdateLastLoginOrganizationIdUserIdPut(organizationId: number, userId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersUpdateLastLoginOrganizationIdUserIdPut.');\n }\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUsersUpdateLastLoginOrganizationIdUserIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/updateLastLogin/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param isEnrollmentPending \n * @param userId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersUpdatePendingEnrollmentForUserUserIdIsEnrollmentPendingPut(isEnrollmentPending: boolean, userId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersUpdatePendingEnrollmentForUserUserIdIsEnrollmentPendingPut(isEnrollmentPending: boolean, userId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersUpdatePendingEnrollmentForUserUserIdIsEnrollmentPendingPut(isEnrollmentPending: boolean, userId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersUpdatePendingEnrollmentForUserUserIdIsEnrollmentPendingPut(isEnrollmentPending: boolean, userId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (isEnrollmentPending === null || isEnrollmentPending === undefined) {\n throw new Error('Required parameter isEnrollmentPending was null or undefined when calling apiUsersUpdatePendingEnrollmentForUserUserIdIsEnrollmentPendingPut.');\n }\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUsersUpdatePendingEnrollmentForUserUserIdIsEnrollmentPendingPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/updatePendingEnrollmentForUser/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"isEnrollmentPending\", value: isEnrollmentPending, in: \"path\", style: \"simple\", explode: false, dataType: \"boolean\", dataFormat: undefined})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param userModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersUpdateUserOrganizationIdPut(organizationId: number, userModel?: UserModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersUpdateUserOrganizationIdPut(organizationId: number, userModel?: UserModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersUpdateUserOrganizationIdPut(organizationId: number, userModel?: UserModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersUpdateUserOrganizationIdPut(organizationId: number, userModel?: UserModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersUpdateUserOrganizationIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/updateUser/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param userModel \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersUpdateUserPut(organizationId: number, userModel?: UserModel, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersUpdateUserPut(organizationId: number, userModel?: UserModel, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersUpdateUserPut(organizationId: number, userModel?: UserModel, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersUpdateUserPut(organizationId: number, userModel?: UserModel, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersUpdateUserPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/updateUser`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: userModel,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersUsersReportForOrgOrganizationIdGet(organizationId: number, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersUsersReportForOrgOrganizationIdGet(organizationId: number, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersUsersReportForOrgOrganizationIdGet(organizationId: number, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersUsersReportForOrgOrganizationIdGet(organizationId: number, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersUsersReportForOrgOrganizationIdGet.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/UsersReportForOrg/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param userId \n * @param body \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersVerifyAdminValidationCodeOrganizationIdUserIdPut(organizationId: number, userId: number, body?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersVerifyAdminValidationCodeOrganizationIdUserIdPut(organizationId: number, userId: number, body?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersVerifyAdminValidationCodeOrganizationIdUserIdPut(organizationId: number, userId: number, body?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersVerifyAdminValidationCodeOrganizationIdUserIdPut(organizationId: number, userId: number, body?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersVerifyAdminValidationCodeOrganizationIdUserIdPut.');\n }\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUsersVerifyAdminValidationCodeOrganizationIdUserIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/verifyAdminValidationCode/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: body,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param body \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersVerifyNewTenantValidationCodeSMSPut(body?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersVerifyNewTenantValidationCodeSMSPut(body?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersVerifyNewTenantValidationCodeSMSPut(body?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersVerifyNewTenantValidationCodeSMSPut(body?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/verifyNewTenantValidationCodeSMS`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: body,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * @param organizationId \n * @param userId \n * @param body \n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiUsersVerifyUserMobileValidationCodeOrganizationIdUserIdPut(organizationId: number, userId: number, body?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiUsersVerifyUserMobileValidationCodeOrganizationIdUserIdPut(organizationId: number, userId: number, body?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersVerifyUserMobileValidationCodeOrganizationIdUserIdPut(organizationId: number, userId: number, body?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiUsersVerifyUserMobileValidationCodeOrganizationIdUserIdPut(organizationId: number, userId: number, body?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n if (organizationId === null || organizationId === undefined) {\n throw new Error('Required parameter organizationId was null or undefined when calling apiUsersVerifyUserMobileValidationCodeOrganizationIdUserIdPut.');\n }\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling apiUsersVerifyUserMobileValidationCodeOrganizationIdUserIdPut.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json',\n 'text/json',\n 'application/*+json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Users/verifyUserMobileValidationCode/${this.configuration.encodeParam({name: \"organizationId\", value: organizationId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"number\", dataFormat: \"int64\"})}`;\n return this.httpClient.request('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: body,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { UserModel } from '../model/models';\nimport { UserAddModelUsersGroups } from '../model/userAddModelUsersGroups';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class UserstateService {\n\n userModel = {} as UserModel;\n usersGroups = {} as UserAddModelUsersGroups;\n\n\n _selectedUser = {} as UserModel;\n\n set selectedUser(user: UserModel) {\n localStorage.setItem('selectedUser', JSON.stringify(user));\n this._selectedUser = user;\n }\n\n get selectedUser(): UserModel {\n return this._selectedUser;\n }\n\n constructor() {\n this.selectedUser = JSON.parse(localStorage.getItem('selectedUser')) || {} as UserModel;\n }\n}\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class VersionService {\n\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substr(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public apiVersionGetVersionGet(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable;\n public apiVersionGetVersionGet(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiVersionGetVersionGet(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable>;\n public apiVersionGetVersionGet(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: undefined, context?: HttpContext}): Observable {\n\n let localVarHeaders = this.defaultHeaders;\n\n let localVarCredential: string | undefined;\n // authentication (Bearer) required\n localVarCredential = this.configuration.lookupCredential('Bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/api/Version/getVersion`;\n return this.httpClient.request('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","import { HttpParameterCodec } from '@angular/common/http';\nimport { Param } from './param';\n\nexport interface ConfigurationParameters {\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n apiKeys?: {[ key: string ]: string};\n username?: string;\n password?: string;\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n accessToken?: string | (() => string);\n basePath?: string;\n withCredentials?: boolean;\n /**\n * Takes care of encoding query- and form-parameters.\n */\n encoder?: HttpParameterCodec;\n /**\n * Override the default method for encoding path parameters in various\n * styles.\n *

\n * See {@link README.md} for more details\n *

\n */\n encodeParam?: (param: Param) => string;\n /**\n * The keys are the names in the securitySchemes section of the OpenAPI\n * document. They should map to the value used for authentication\n * minus any standard prefixes such as 'Basic' or 'Bearer'.\n */\n credentials?: {[ key: string ]: string | (() => string | undefined)};\n}\n\nexport class Configuration {\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n apiKeys?: {[ key: string ]: string};\n username?: string;\n password?: string;\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n accessToken?: string | (() => string);\n basePath?: string;\n withCredentials?: boolean;\n /**\n * Takes care of encoding query- and form-parameters.\n */\n encoder?: HttpParameterCodec;\n /**\n * Encoding of various path parameter\n * styles.\n *

\n * See {@link README.md} for more details\n *

\n */\n encodeParam: (param: Param) => string;\n /**\n * The keys are the names in the securitySchemes section of the OpenAPI\n * document. They should map to the value used for authentication\n * minus any standard prefixes such as 'Basic' or 'Bearer'.\n */\n credentials: {[ key: string ]: string | (() => string | undefined)};\n\n constructor(configurationParameters: ConfigurationParameters = {}) {\n this.apiKeys = configurationParameters.apiKeys;\n this.username = configurationParameters.username;\n this.password = configurationParameters.password;\n this.accessToken = configurationParameters.accessToken;\n this.basePath = configurationParameters.basePath;\n this.withCredentials = configurationParameters.withCredentials;\n this.encoder = configurationParameters.encoder;\n if (configurationParameters.encodeParam) {\n this.encodeParam = configurationParameters.encodeParam;\n }\n else {\n this.encodeParam = param => this.defaultEncodeParam(param);\n }\n if (configurationParameters.credentials) {\n this.credentials = configurationParameters.credentials;\n }\n else {\n this.credentials = {};\n }\n\n // init default Bearer credential\n if (!this.credentials['Bearer']) {\n this.credentials['Bearer'] = () => {\n if (this.apiKeys === null || this.apiKeys === undefined) {\n return undefined;\n } else {\n return this.apiKeys['Bearer'] || this.apiKeys['Authorization'];\n }\n };\n }\n }\n\n /**\n * Select the correct content-type to use for a request.\n * Uses {@link Configuration#isJsonMime} to determine the correct content-type.\n * If no content type is found return the first found type if the contentTypes is not empty\n * @param contentTypes - the array of content types that are available for selection\n * @returns the selected content-type or undefined if no selection could be made.\n */\n public selectHeaderContentType (contentTypes: string[]): string | undefined {\n if (contentTypes.length === 0) {\n return undefined;\n }\n\n const type = contentTypes.find((x: string) => this.isJsonMime(x));\n if (type === undefined) {\n return contentTypes[0];\n }\n return type;\n }\n\n /**\n * Select the correct accept content-type to use for a request.\n * Uses {@link Configuration#isJsonMime} to determine the correct accept content-type.\n * If no content type is found return the first found type if the contentTypes is not empty\n * @param accepts - the array of content types that are available for selection.\n * @returns the selected content-type or undefined if no selection could be made.\n */\n public selectHeaderAccept(accepts: string[]): string | undefined {\n if (accepts.length === 0) {\n return undefined;\n }\n\n const type = accepts.find((x: string) => this.isJsonMime(x));\n if (type === undefined) {\n return accepts[0];\n }\n return type;\n }\n\n /**\n * Check if the given MIME is a JSON MIME.\n * JSON MIME examples:\n * application/json\n * application/json; charset=UTF8\n * APPLICATION/JSON\n * application/vnd.company+json\n * @param mime - MIME (Multipurpose Internet Mail Extensions)\n * @return True if the given MIME is JSON, false otherwise.\n */\n public isJsonMime(mime: string): boolean {\n const jsonMime: RegExp = new RegExp('^(application\\/json|[^;/ \\t]+\\/[^;/ \\t]+[+]json)[ \\t]*(;.*)?$', 'i');\n return mime !== null && (jsonMime.test(mime) || mime.toLowerCase() === 'application/json-patch+json');\n }\n\n public lookupCredential(key: string): string | undefined {\n const value = this.credentials[key];\n return typeof value === 'function'\n ? value()\n : value;\n }\n\n private defaultEncodeParam(param: Param): string {\n // This implementation exists as fallback for missing configuration\n // and for backwards compatibility to older typescript-angular generator versions.\n // It only works for the 'simple' parameter style.\n // Date-handling only works for the 'date-time' format.\n // All other styles and Date-formats are probably handled incorrectly.\n //\n // But: if that's all you need (i.e.: the most common use-case): no need for customization!\n\n const value = param.dataFormat === 'date-time'\n ? (param.value as Date).toISOString()\n : param.value;\n\n return encodeURIComponent(String(value));\n }\n}\n","import { HttpParameterCodec } from '@angular/common/http';\n\n/**\n * Custom HttpParameterCodec\n * Workaround for https://github.com/angular/angular/issues/18261\n */\nexport class CustomHttpParameterCodec implements HttpParameterCodec {\n encodeKey(k: string): string {\n return encodeURIComponent(k);\n }\n encodeValue(v: string): string {\n return encodeURIComponent(v);\n }\n decodeKey(k: string): string {\n return decodeURIComponent(k);\n }\n decodeValue(v: string): string {\n return decodeURIComponent(v);\n }\n}\n","export * from './api/api';\nexport * from './model/models';\nexport * from './variables';\nexport * from './configuration';\nexport * from './api.module';\nexport * from './param';\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { ChangeType } from './changeType';\n\n\nexport interface ADSyncDataModel { \n data?: { [key: string]: any; } | null;\n name?: string | null;\n password?: string | null;\n members?: Array | null;\n description?: string | null;\n organizationDirectoryId?: number;\n objectGuid?: string | null;\n objectType?: string | null;\n createdBy?: string | null;\n isDeleted?: boolean;\n changeType?: ChangeType;\n isConfiguredGroup?: boolean;\n}\n\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface ADUpdateUniqueIdModel { \n udUniqueId?: string | null;\n objectType?: string | null;\n adUniqueId?: string | null;\n}\n\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport type ChangeType = 'Delete' | 'InsertUpdate' | 'Insert' | 'Update' | 'Error';\n\nexport const ChangeType = {\n Delete: 'Delete' as ChangeType,\n InsertUpdate: 'InsertUpdate' as ChangeType,\n Insert: 'Insert' as ChangeType,\n Update: 'Update' as ChangeType,\n Error: 'Error' as ChangeType\n};\n\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { UserCustomAttributeModel } from './userCustomAttributeModel';\n\n\nexport interface DirectoryUser { \n userId?: number;\n username?: string | null;\n firstName?: string | null;\n middleName?: string | null;\n lastName?: string | null;\n organizationId?: number | null;\n sourceDirectoryID?: number | null;\n isLocked?: boolean;\n password?: string | null;\n email?: string | null;\n userPrincipalName?: string | null;\n udsystemGroupId?: number | null;\n createdBy?: string | null;\n createdDate?: string;\n modifiedBy?: string | null;\n modifiedDate?: string;\n isActive?: boolean | null;\n phone?: string | null;\n cell?: string | null;\n fax?: string | null;\n streetAddress?: string | null;\n pobox?: string | null;\n city?: string | null;\n state?: string | null;\n postalCode?: string | null;\n countryId?: number | null;\n jobTitle?: string | null;\n manager?: string | null;\n department?: string | null;\n costCenter?: string | null;\n location?: string | null;\n workCountry?: string | null;\n employeeNumber?: string | null;\n employeeType?: string | null;\n isMustChangePassword?: boolean | null;\n distinguishedName?: string | null;\n immutableId?: string | null;\n organizationMnemonic?: string | null;\n isDeleted?: boolean;\n tokenState?: string | null;\n userType?: string | null;\n customerAttributes?: Array | null;\n}\n\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { DirectoryUser } from './directoryUser';\nimport { UserCustomAttributeModel } from './userCustomAttributeModel';\n\n\nexport interface DirectoryUserAttributeModel { \n userModel?: DirectoryUser;\n customAttributeModels?: Array | null;\n}\n\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface ForgetPasswordModel { \n forgetPasswordId?: number;\n organizationMnemonic: string;\n username: string;\n isActive?: boolean;\n}\n\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface GroupApplicationModel { \n groupApplicationId?: number;\n applicationSettingId?: number;\n applicationId?: number | null;\n organizationApplicationId?: string | null;\n applicationName?: string | null;\n groupId?: number;\n groupAttributes?: string | null;\n isActive?: boolean;\n}\n\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { MembersDelta } from './membersDelta';\n\n\nexport interface GroupModel { \n groupId?: number;\n groupName: string;\n description?: string | null;\n sourceOrganizationId?: number;\n organizationId: number;\n mnemonic: string;\n isActive?: boolean;\n modifiedBy?: string | null;\n createdBy?: string | null;\n createdDate?: string;\n modifiedDate?: string;\n isDeleted?: boolean;\n distinguishedName?: string | null;\n organizationDirectoryId?: number;\n sourceDirectoryID?: number | null;\n modifiedByDirectoryID?: number | null;\n membersdelta?: Array | null;\n isEnforcedSecondFactor?: boolean | null;\n}\n\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface LinkUserModel { \n parentUserId?: number;\n childIds?: Array | null;\n}\n\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { Removed } from './removed';\n\n\nexport interface MembersDelta { \n uniqueId?: string | null;\n id?: number;\n removed?: Removed;\n}\n\n","export * from './aDSyncDataModel';\nexport * from './aDUpdateUniqueIdModel';\nexport * from './changeType';\nexport * from './directoryUser';\nexport * from './directoryUserAttributeModel';\nexport * from './forgetPasswordModel';\nexport * from './groupApplicationModel';\nexport * from './groupModel';\nexport * from './linkUserModel';\nexport * from './membersDelta';\nexport * from './myAppGroupModel';\nexport * from './recoveryEmailModel';\nexport * from './removed';\nexport * from './resetPasswordModel';\nexport * from './userAddModel';\nexport * from './userAliasModel';\nexport * from './userAliasPatternErrorViewModel';\nexport * from './userAliasPatternViewModel';\nexport * from './userApplicationModel';\nexport * from './userCredentialModel';\nexport * from './userCustomAttributeModel';\nexport * from './userDirectoryModel';\nexport * from './userGroupModel';\nexport * from './userModel';\nexport * from './userOrgModel';\nexport * from './usersGroups';\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface MyAppGroupModel { \n myAppGroupId?: number;\n userId?: number;\n groupName?: string | null;\n createdBy?: string | null;\n createdDate?: string;\n modifiedBy?: string | null;\n modifiedDate?: string;\n}\n\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface RecoveryEmailModel { \n recoveryEmail?: string | null;\n}\n\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface Removed { \n reason?: string | null;\n}\n\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface ResetPasswordModel { \n newPassword: string;\n userCode: string;\n}\n\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { UserModel } from './userModel';\nimport { UserApplicationModel } from './userApplicationModel';\nimport { UsersGroups } from './usersGroups';\n\n\nexport interface UserAddModel { \n userModel?: UserModel;\n usersGroups?: UsersGroups;\n userApplicationList?: Array | null;\n}\n\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface UserAliasModel { \n alias?: string | null;\n isReadOnly?: boolean;\n}\n\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface UserAliasPatternErrorViewModel { \n username?: string | null;\n alias?: string | null;\n}\n\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { UserAliasPatternErrorViewModel } from './userAliasPatternErrorViewModel';\n\n\nexport interface UserAliasPatternViewModel { \n id?: string | null;\n name?: string | null;\n matchPattern?: string | null;\n replacementPattern?: string | null;\n status?: string | null;\n errors?: Array | null;\n}\n\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface UserApplicationModel { \n userApplicationId?: number;\n applicationSettingId?: number;\n applicationLabel?: string | null;\n attributesValue?: string | null;\n applicationId?: number | null;\n organizationApplicationId?: string | null;\n userId?: number;\n userAttributes?: string | null;\n isActive?: boolean;\n applicationName?: string | null;\n assignedAs?: string | null;\n groupName?: string | null;\n logoUrl?: string | null;\n isSelect?: boolean;\n createdBy?: string | null;\n createdDate?: string;\n modifiedBy?: string | null;\n modifiedDate?: string;\n}\n\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface UserCredentialModel { \n userCredentialID?: number;\n userID?: number;\n username?: string | null;\n email?: string | null;\n organizationMnemonic?: string | null;\n password?: string | null;\n newPassword?: string | null;\n modifiedBy?: string | null;\n modifiedDate?: string;\n isMustChangePassword?: boolean | null;\n questionSecretStatus?: string | null;\n modifiedById?: number | null;\n ignorePasswordHistory?: boolean;\n}\n\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface UserCustomAttributeModel { \n userCustomAttributeId?: number;\n userCustomAttributeValue?: string | null;\n attributeMetadataId?: number;\n modifiedBy?: string | null;\n modifiedDate?: string;\n userId?: number;\n}\n\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface UserDirectoryModel { \n userDirectoryId?: number;\n userId?: number | null;\n organizationDirectoryID?: number | null;\n organizationID?: number | null;\n directoryName?: string | null;\n uniqueID?: string | null;\n immutableId?: string | null;\n domain?: string | null;\n modifiedDate?: string;\n modifiedBy?: string | null;\n}\n\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface UserGroupModel { \n isSelect?: boolean;\n userId?: number;\n uniqueId?: string | null;\n groupId?: number;\n username?: string | null;\n email?: string | null;\n userType?: string | null;\n groupName?: string | null;\n modifiedBy?: string | null;\n createdBy?: string | null;\n}\n\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { UserCustomAttributeModel } from './userCustomAttributeModel';\nimport { UserAliasModel } from './userAliasModel';\n\n\nexport interface UserModel { \n userId?: number;\n username?: string | null;\n firstName?: string | null;\n middleName?: string | null;\n lastName?: string | null;\n organizationId?: number | null;\n isLocked?: boolean;\n isTemporarilyLocked?: boolean;\n password?: string | null;\n email?: string | null;\n udsystemGroupId?: number | null;\n createdBy?: string | null;\n createdDate?: string;\n modifiedBy?: string | null;\n modifiedDate?: string;\n isActive?: boolean | null;\n phone?: string | null;\n cell?: string | null;\n fax?: string | null;\n streetAddress?: string | null;\n pobox?: string | null;\n city?: string | null;\n state?: string | null;\n postalCode?: string | null;\n countryId?: number | null;\n jobTitle?: string | null;\n manager?: string | null;\n department?: string | null;\n costCenter?: string | null;\n location?: string | null;\n workCountry?: string | null;\n employeeNumber?: string | null;\n employeeType?: string | null;\n distinguishedName?: string | null;\n immutableId?: string | null;\n organizationMnemonic?: string | null;\n isDeleted?: boolean;\n tokenState?: string | null;\n userType?: string | null;\n sourceDirectoryID?: number | null;\n modifiedByDirectoryID?: number | null;\n enrollmentEmailPending?: boolean;\n parentUserId?: number | null;\n isAutoGeneratedPassword?: boolean;\n mustChangePassword?: boolean;\n ignorePasswordHistory?: boolean;\n disableAt?: string | null;\n lastLoginAt?: string | null;\n isMobileNumberVerified?: boolean;\n linkedUsers?: Array | null;\n customerAttributes?: Array | null;\n aliases?: Array | null;\n}\n\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { UserModel } from './userModel';\n\n\nexport interface UserOrgModel { \n userModel?: UserModel;\n mnemonic?: string | null;\n}\n\n","/**\n * User Microservice\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: v1\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { UserGroupModel } from './userGroupModel';\n\n\nexport interface UsersGroups { \n userGroup?: Array | null;\n}\n\n","/**\n * Standard parameter styles defined by OpenAPI spec\n */\nexport type StandardParamStyle =\n | 'matrix'\n | 'label'\n | 'form'\n | 'simple'\n | 'spaceDelimited'\n | 'pipeDelimited'\n | 'deepObject'\n ;\n\n/**\n * The OpenAPI standard {@link StandardParamStyle}s may be extended by custom styles by the user.\n */\nexport type ParamStyle = StandardParamStyle | string;\n\n/**\n * Standard parameter locations defined by OpenAPI spec\n */\nexport type ParamLocation = 'query' | 'header' | 'path' | 'cookie';\n\n/**\n * Standard types as defined in OpenAPI Specification: Data Types\n */\nexport type StandardDataType =\n | \"integer\"\n | \"number\"\n | \"boolean\"\n | \"string\"\n | \"object\"\n | \"array\"\n ;\n\n/**\n * Standard {@link DataType}s plus your own types/classes.\n */\nexport type DataType = StandardDataType | string;\n\n/**\n * Standard formats as defined in OpenAPI Specification: Data Types\n */\nexport type StandardDataFormat =\n | \"int32\"\n | \"int64\"\n | \"float\"\n | \"double\"\n | \"byte\"\n | \"binary\"\n | \"date\"\n | \"date-time\"\n | \"password\"\n ;\n\nexport type DataFormat = StandardDataFormat | string;\n\n/**\n * The parameter to encode.\n */\nexport interface Param {\n name: string;\n value: unknown;\n in: ParamLocation;\n style: ParamStyle,\n explode: boolean;\n dataType: DataType;\n dataFormat: DataFormat | undefined;\n}\n","import { InjectionToken } from '@angular/core';\n\nexport const BASE_PATH = new InjectionToken('basePath');\nexport const COLLECTION_FORMATS = {\n 'csv': ',',\n 'tsv': ' ',\n 'ssv': ' ',\n 'pipes': '|'\n}\n","import { Component, OnInit } from '@angular/core';\nimport { ActivatedRouteSnapshot, Router, RoutesRecognized } from '@angular/router';\nimport { AppSettingsService } from 'src/app/services/common/appsettings.service';\nimport { UserstateService } from 'src/app/services/user/api/userstate.service';\nimport { UserModel, UsersService } from '../../services/user'\nimport { Subscription } from 'rxjs';\nimport { SystemSettingService } from '../../services/master';\nimport { ConstantService } from 'src/app/services/common/constant.service';\nimport { AuthService } from 'src/app/authentication/auth.service';\n\n@Component({\n selector: 'app-breadcrumb',\n templateUrl: './breadcrumb.component.html',\n styleUrls: ['./breadcrumb.component.scss']\n})\nexport class BreadCrumbComponent implements OnInit {\n public title: string;\n public breadcrumbs: string[] = [];\n subscription: Subscription = new Subscription;\n userInfo = null;\n userStatus = null;\n groupInfo = null;\n groupStatus = null;\n bannerMsg: string = \"\";\n userMobileNotVerified: boolean = false;\n\n constructor(\n public appSettings: AppSettingsService,\n private router: Router,\n public authService: AuthService,\n private userStateService: UserstateService,\n private systemSettingService: SystemSettingService,\n private constantService: ConstantService,\n private usersService: UsersService\n ) {\n\n router.events.forEach((event: any) => {\n if (event instanceof RoutesRecognized) {\n this.breadcrumbs = [];\n this.createBreadcrumbs(event.state.root);\n this.title = this.breadcrumbs[this.breadcrumbs.length - 1];\n localStorage.setItem('title', this.title);\n localStorage.setItem('breadcrumbs', JSON.stringify(this.breadcrumbs));\n\n this.fetchInfo(event.url);\n }\n });\n }\n\n async ngOnInit() {\n this.title = localStorage.getItem('title');\n this.breadcrumbs = JSON.parse(localStorage.getItem('breadcrumbs'));\n\n this.fetchInfo(this.router.url);\n\n await this.authService.getUser();\n this.getBannerMsg();\n }\n ngOnDestroy(): void {\n this.subscription.unsubscribe();\n }\n\n\n getBannerMsg() {\n this.subscription.add(this.systemSettingService\n .apiSystemSettingMessageGet(this.constantService.MaintenanceWindow)\n .subscribe((data) => {\n this.bannerMsg = data;\n }\n ));\n const orgId = this.authService.user?.profile.organizationId ?? this.authService.user?.profile.OrganizationId;\n this.subscription.add(this.usersService\n .apiUsersCheckUserMobileVerifiedOrganizationIdUserIdGet(orgId, this.authService.user.profile.UserID)\n .subscribe((data) => {\n if (data != true) {\n this.userMobileNotVerified = true;\n }\n }\n ));\n }\n\n createBreadcrumbs(route: ActivatedRouteSnapshot): void {\n if (route.data[\"title\"]) {\n this.breadcrumbs.push(route.data[\"title\"]);\n }\n route.children.forEach(child => {\n this.createBreadcrumbs(child);\n })\n }\n\n\n fetchInfo(url: string) {\n this.userInfo = null;\n this.userStatus = null;\n this.groupInfo = null;\n this.groupStatus = null;\n\n if (url.indexOf('/users/user-edit') > -1) {\n let selectedUser = this.userStateService.selectedUser;\n if (selectedUser) {\n let userinfo = '';\n if (selectedUser.firstName) {\n userinfo = selectedUser.firstName;\n }\n if (selectedUser.lastName) {\n userinfo = `${userinfo} ${selectedUser.lastName}`;\n }\n if (userinfo?.trim() !== '') {\n this.userInfo = `( ${userinfo} ) `;\n }\n this.userStatus = selectedUser['userStatus']?.toLowerCase();\n }\n } else {\n this.userStateService.selectedUser = {} as UserModel;\n }\n\n if (url.indexOf('/groups/group-edit') > -1) {\n let selectedGroup = this.appSettings.selectedGroup;\n if (selectedGroup) {\n let groupinfo = selectedGroup.groupName;\n if (!!groupinfo) {\n this.groupInfo = `( ${groupinfo} )`;\n this.groupStatus = selectedGroup.isActive ? 'active' : 'inactive';\n }\n }\n } else {\n this.appSettings.selectedGroup = null;\n }\n }\n\n}\n","import { Component, Input, OnInit } from '@angular/core';\nimport { TranslateService } from '@ngx-translate/core';\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\n\n@Component({\n selector: 'app-confirm-dialog',\n templateUrl: 'confirm-dialog.component.html',\n styleUrls: ['confirm-dialog.component.scss'],\n})\nexport class ConfirmDialogComponent {\n @Input() title = this.translateService.instant('Modal.Confirm.Title');\n @Input() message = this.translateService.instant('Modal.Confirm.Message');\n\n // 'default' or 'danger'\n @Input() type = 'default';\n\n constructor(\n private activeModal: NgbActiveModal,\n private translateService: TranslateService\n ) {}\n}\n","import { NgModule } from '@angular/core';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { CommonModule } from '@angular/common';\n\nimport { ConfirmDialogComponent } from './confirm-dialog.component';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { NgbActiveModal, NgbModule } from '@ng-bootstrap/ng-bootstrap';\n\n@NgModule({\n declarations: [ConfirmDialogComponent],\n imports: [CommonModule, TranslateModule],\n exports: [ConfirmDialogComponent],\n providers: [NgbActiveModal],\n})\nexport class ConfirmDialogModule {}\n","import { Component, OnInit, Input, ViewChild } from '@angular/core';\nimport { ConstantService } from 'src/app/services/common/constant.service';\nimport { DataTableDirective } from 'angular-datatables';\n\n/* \n Notes for using this component\n\n 1. Give nessecery settings by inputing a DataTableConfig\n 2. tableOptions will overwrite the default options if provided\n 3. Add 'className' and 'title' to tableColumns items for html display\n 4. Use .bind(this) for row-click and button behaviour\n\n*/\n\nexport class DataTableConfig {\n // Required\n tableID: string;\n loadTableData: (dataTablesParameters: any, callback: any) => void;\n tableColumns: any[];\n\n // Optional\n tableOptions?: any;\n tableButtons?: any[] = [];\n tableRowCallback?: any[] = [];\n\n constructor(datatableConfig?: Partial) {\n Object.assign(this, datatableConfig);\n }\n}\n\n@Component({\n selector: 'app-datatable',\n templateUrl: './datatable.component.html',\n styleUrls: ['./datatable.component.scss'],\n})\nexport class DatatableComponent implements OnInit {\n\n @ViewChild(DataTableDirective, { static: false }) datatableElement: DataTableDirective;\n \n // TODO: add @Input({ required: true }) after angular 16\n @Input() config: DataTableConfig;\n\n private selectedRows: any[] = [];\n private lastPage: number = 0;\n private lastSearchText = '';\n private pageLength = 10;\n\n dtOptions: any = {};\n\n constructor(private constantService:ConstantService) { }\n\n ngOnInit(): void {\n this.initializeDataTable();\n }\n\n public getSelectedRows(){\n return this.selectedRows;\n }\n\n public reload(): void {\n this.selectedRows = [];\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.ajax.reload();\n });\n }\n\n private initializeDataTable() {\n const defaultOptions = {\n language: this.constantService.TableLang,\n info: true,\n pagingType: 'full_numbers',\n pageLength: this.pageLength,\n displayStart: this.lastPage,\n search: { search: this.lastSearchText },\n autoWidth: false,\n ordering: true,\n order: [[0, 'asc']],\n lengthMenu: ['5', '10', '20', '50'],\n dom: 'lBfrtip',\n select: {},\n serverSide: true,\n processing: true,\n stateSave: true,\n stateSaveCallback: this.constantService.saveTableState,\n stateLoadCallback: this.constantService.loadTableState,\n };\n\n this.dtOptions = { ...defaultOptions, ...this.config.tableOptions};\n\n if(this.dtOptions.select.style){\n this.dtOptions.order = [[1, 'asc']];\n }\n\n this.dtOptions.columns = this.dtOptions.select.style \n ? [\n {\n data: null,\n className: 'select-checkbox wd-5p',\n name: 'isSelect',\n targets: 0,\n defaultContent: '',\n orderable: false,\n sortable: false,\n searchable: false,\n render: () => '',\n },\n ...this.config.tableColumns,\n ]\n : this.config.tableColumns;\n\n this.dtOptions.buttons = this.config.tableButtons.map(button => {\n return {\n text: button.text,\n attr: button.attr,\n action: (e, dt, node, config) => {\n button.action(e, dt, node, config);\n }\n };\n }),\n\n this.dtOptions.ajax = (dataTablesParameters: any, callback) => {\n this.config.loadTableData(dataTablesParameters, callback);\n };\n\n this.dtOptions.rowCallback = (row: Node, data: any[] | Object, index: number) => {\n if(this.dtOptions.select.style){\n if (this.selectedRows.findIndex(row => JSON.stringify(row) === JSON.stringify(data)) >= 0) {\n $(row).addClass('selected');\n }\n }\n \n this.config.tableRowCallback.forEach(action => {\n const element = $(action.selector, row);\n element.off('click');\n element.on('click', (event) => {\n event.stopPropagation(); // avoid other actions\n action.callback(data);\n });\n });\n\n if(this.dtOptions.select.style){\n const selector = this.dtOptions.select.selector || 'td';\n $(selector, row).off('click');\n $(selector, row).on('click', () => {\n this.updateSelectedRows(data);\n });\n }\n return row;\n };\n\n if(this.dtOptions.select.style){\n this.dtOptions.drawCallback = function (settings) {\n const api = this.api();\n api.rows().every(function (rowIdx, tableLoop, rowLoop) {\n if ($(api.row(rowIdx).node()).hasClass('selected')) {\n api.row(rowIdx).select();\n }\n });\n };\n }\n }\n\n private updateSelectedRows(data: any) {\n if(this.dtOptions.select.style == 'single'){\n this.selectedRows = [data];\n }\n\n if(this.dtOptions.select.style == 'multi'){\n const i = this.selectedRows.findIndex(row => JSON.stringify(row) === JSON.stringify(data));\n if (i >= 0) {\n this.selectedRows.splice(i, 1);\n } else {\n this.selectedRows.push(data);\n }\n }\n }\n\n}\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\nimport { NgbModal, NgbModalRef } from '@ng-bootstrap/ng-bootstrap';\nimport { TranslateService } from '@ngx-translate/core';\nimport { EnrollmentInputModel } from '@securenvoy/se-shared';\nimport { Observable } from 'rxjs';\nimport { AuthService } from '../../../authentication/auth.service';\nimport { ConstantService, UserRoles } from '../../../services/common/constant.service';\nimport { HasPermissionService } from '../../../services/common/has-permission.service';\nimport { ValidationService } from '../../../services/common/validation.service';\nimport { AuthenticationTypeService, HardwareTokenService, UserCredentialService } from '../../../services/identity';\nimport { OrganizationSettingService } from '../../../services/organization';\nimport { UsersService } from '../../../services/user';\nimport { ConfirmDialogComponent } from '../../confirm-dialog/confirm-dialog.component';\n\n@Component({\n selector: 'app-enrollment-container',\n templateUrl: './enrollment-container.component.html',\n styleUrls: ['./enrollment-container.component.scss']\n})\nexport class EnrollmentContainerComponent implements OnInit {\n\n @Input() disablePrimaryFactor: boolean;\n @Input() hidePrimaryFactor: boolean;\n @Input() skipPasswordPresence: boolean;\n @Input() isUserActive: boolean;\n @Input() userId: number;\n @Input() username: string;\n\n @Output() savedEnrollmentEvent: EventEmitter = new EventEmitter();\n\n orgId: number;\n orgMnemonic: string;\n\n\n options: EnrollmentInputModel;\n\n\n constructor(\n private authService: AuthService,\n private organizationSettingService: OrganizationSettingService,\n private authTypeService: AuthenticationTypeService,\n private userService: UsersService,\n private userCredentialService: UserCredentialService,\n private hardwareTokenService: HardwareTokenService,\n private constantService: ConstantService,\n private validationService: ValidationService,\n private activatedRoute: ActivatedRoute,\n private permissions: HasPermissionService,\n private ngbModal: NgbModal,\n private translateService: TranslateService\n ) { }\n\n ngOnInit(): void {\n\n this.orgId = this.authService.organizationId;\n this.orgMnemonic = this.constantService.getSubdomain();\n\n let userType: string = 'user';\n if (this.activatedRoute.snapshot.params['userType']) {\n userType = this.constantService.decode(this.activatedRoute.snapshot.params['userType'])\n }\n let role = userType;\n if (!role) {\n role = UserRoles.User;\n }\n\n\n\n this.options = {\n state: {\n disablePrimaryFactor: this.disablePrimaryFactor,\n hidePrimaryfactor: this.hidePrimaryFactor,\n skipPasswordPresence: this.skipPasswordPresence\n },\n org: {\n id: this.orgId,\n mnemonic: this.orgMnemonic\n },\n user: {\n id: this.userId,\n username: this.username,\n type: userType,\n isActive: this.isUserActive\n },\n currentUser: {\n username: this.authService.userName,\n type: this.authService.userType,\n hasPermissionForTarget: this.permissions.allowAccessForTarget(role)\n },\n functions: {\n getBasicUserInfo: this.getBasicUserInfo.bind(this),\n getOrgSettings: this.getOrgSettings.bind(this),\n getEnrolSettings: this.getEnrolSettings.bind(this),\n getHardwareTokens: this.getHardwareTokens.bind(this),\n getUserAuthStatus: this.getUserAuthStatus.bind(this),\n updateUserAuthStatus: this.updateUserAuthStatus.bind(this),\n doesUserPasswordExist: this.doesUserPasswordExist.bind(this),\n deactivateSecondFactor: this.deactivateSecondFactor.bind(this),\n getAllAuthTypes: this.getAllAuthTypes.bind(this),\n getAuthTypesForUser: this.getAuthTypesForUser.bind(this),\n updateThisUserAuthType: this.updateThisUserAuthType.bind(this),\n updateOtherUserAuthType: this.updateOtherUserAuthType.bind(this),\n fido: {\n getCredentialOptions: this.getCredentialOptions.bind(this),\n identifyToken: this.identifyToken.bind(this),\n getBasicUserInfo: this.getBasicUserInfo.bind(this)\n },\n softtoken: {\n userEnrolReadyStatus: this.userEnrolReadyStatus.bind(this),\n userSeedUrl: this.userSeedUrl.bind(this)\n }\n },\n validators: {\n regOnlyNumber: this.validationService.regOnlyNumber,\n regPhoneNumber: this.validationService.regPhoneNumber,\n regEmail: this.validationService.regEmail,\n softtoken: {\n regAddSpaceCharacterInputThirdParty: this.validationService.regAddSpaceCharacterInputThirdParty,\n regAddSpaceCharacterInput: this.validationService.regAddSpaceCharacterInput,\n regAddSpaceCharacterOutput: this.validationService.regAddSpaceCharacterOutput\n }\n },\n modals: {\n fido: {\n identifyToken: this.identifyFidoModal.bind(this),\n removeToken: this.removeFidoModal.bind(this)\n }\n }\n }\n }\n\n savedEnrollment() {\n this.savedEnrollmentEvent.emit();\n }\n\n\n getBasicUserInfo(username: string, orgId: number): Observable {\n return this.userService.apiUsersGetUserBasicInfoForUserUserNameOrganizationIdGet(username, orgId);\n }\n\n getOrgSettings(organizationId: number, groupKey: string): Observable {\n console.log(this);\n return this.organizationSettingService.apiOrganizationSettingGetSettingsOrganizationIdGet(organizationId, groupKey);\n }\n\n\n\n getEnrolSettings(orgId: number, groupKey: string, key: string, component?: string, userId?: number): Observable {\n return this.organizationSettingService.apiOrganizationSettingGetEnrollSettingsOrganizationIdGet(orgId, groupKey, key, component, userId);\n }\n\n getHardwareTokens(orgId: number, username: string): Observable {\n return this.hardwareTokenService.apiHardwareTokenGetByUsernameAndUnAssignedOrganizationIdGet(orgId, username);\n }\n\n getUserAuthStatus(mnemonic: string, username: string): Observable {\n return this.userCredentialService.apiUserCredentialGetUserAuthEnforcementStatusOrganizationMnemonicUsernameGet(mnemonic, username);\n }\n\n updateUserAuthStatus(mnemonic: string, data: any): Observable {\n return this.userCredentialService.apiUserCredentialUpdateUserAuthEnforcementStatusOrganizationMnemonicPut(mnemonic, data);\n }\n\n doesUserPasswordExist(userId: number): Observable {\n return this.userCredentialService.apiUserCredentialIsUserPasswordExistsUserIdGet(userId);\n }\n\n deactivateSecondFactor(username: string, mnemonic: string): Observable {\n return this.authTypeService.apiAuthenticationTypeInactiveUser2ndFactorUserNameOrganizationMnemonicGet(username, mnemonic);\n }\n\n getAllAuthTypes(): Observable {\n return this.authTypeService.apiAuthenticationTypeGetallUserAuthenticationTypeGet();\n }\n\n getAuthTypesForUser(username: string, mnemonic: string): Observable {\n return this.authTypeService.apiAuthenticationTypeGetallUserAuthenticationTypeUserNameOrganizationMnemonicGet(username, mnemonic);\n }\n\n updateThisUserAuthType(data: any): Observable {\n return this.authTypeService.apiAuthenticationTypeSaveOrUpdateUserAuthenticationTypePost(data);\n }\n\n updateOtherUserAuthType(mnemonic: string, data: any): Observable {\n return this.authTypeService.apiAuthenticationTypeSaveOrUpdateUserAuthenticationTypeForUserOrganizationMnemonicPost(mnemonic, data);\n }\n\n getCredentialOptions(orgName: string, username: string, isUsernameless: boolean): Observable {\n return this.authTypeService.apiAuthenticationTypeFidoCredentialOptionsOrganizationMnemonicUserNameGet(orgName, username, isUsernameless);\n }\n\n identifyToken(orgName: string, username: string, credentialId: string): Observable {\n return this.authTypeService.apiAuthenticationTypeIdentifyTokenOrganizationMnemonicUserNamePost(orgName, username, credentialId);\n }\n\n userEnrolReadyStatus(isSoftTokenOnly: boolean): Observable {\n return this.authTypeService.apiAuthenticationTypeUserEnrollReadyStatusGet(isSoftTokenOnly);\n }\n\n userSeedUrl(isSoftTokenOnly: boolean, isGenericToken: boolean): Observable {\n return this.authTypeService.apiAuthenticationTypeGetUserSeedUrlGet(isSoftTokenOnly, isGenericToken);\n }\n\n identifyFidoModal(): NgbModalRef {\n const identifyFidoModal = this.ngbModal.open(ConfirmDialogComponent, {\n size: 'md',\n windowClass: 'fadeInUp animated huge',\n backdrop: 'static',\n keyboard: false,\n });\n identifyFidoModal.componentInstance.message = this.translateService.instant('MyProfile.IdentifyTokenMessage');\n return identifyFidoModal;\n }\n\n removeFidoModal(): NgbModalRef {\n const deleteFidoModal = this.ngbModal.open(ConfirmDialogComponent, {\n size: 'md',\n windowClass: 'fadeInUp animated huge',\n backdrop: 'static',\n keyboard: false,\n });\n deleteFidoModal.componentInstance.message = this.translateService.instant('MyProfile.ConfirmDeleteTokenMessage');\n return deleteFidoModal;\n }\n\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-footer',\n templateUrl: './footer.component.html',\n styleUrls: ['./footer.component.scss']\n})\nexport class FooterComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","import { Component, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { TranslateService } from '@ngx-translate/core';\nimport { User } from 'oidc-client';\nimport { AuthService } from 'src/app/authentication/auth.service';\nimport { AppSettingsService } from 'src/app/services/common/appsettings.service';\nimport { ConfigurationSettingsEnum, ConstantService, ThemeEnum, UserRoles } from 'src/app/services/common/constant.service';\nimport { OrganizationModel, OrganizationService } from 'src/app/services/organization';\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\nimport { AdminValidationModal } from 'src/app/user/admin-validation-modal/admin-validation-modal';\nimport { OrganizationSettingService } from 'src/app/services/organization';\nimport { FormBuilder, FormGroup } from '@angular/forms';\nimport { debounceTime, distinctUntilChanged } from 'rxjs';\nimport { UsersService } from 'src/app/services/user';\n\n@Component({\n selector: 'app-header',\n templateUrl: './header.component.html',\n styleUrls: ['./header.component.scss']\n})\nexport class HeaderComponent implements OnInit {\n public activeLang = localStorage.getItem('locale') ?? 'en';\n showAdmin = this.appSettings.settings.adminMenu;\n\n public user: User;\n public organizations: any;\n public filteredOrganizations: any;\n public pagedOrg: any;\n public currentTenant: any;\n public defaultTenant: any;\n pageSize = 5;\n currentIndex = 1;\n totalPages = 1;\n\n languages = [\n { id: 'en', name: 'English', active: false },\n { id: 'es', name: 'Español', active: false },\n { id: 'fr', name: 'Français', active: false },\n { id: 'de', name: 'Deutsch', active: false },\n ];\n\n profileImageUrl: string;\n\n private adminValidationEnabled = false;\n\n tenantForm: FormGroup;\n\n constructor(\n public appSettings: AppSettingsService,\n private constantService: ConstantService,\n private authService: AuthService,\n private organizationService: OrganizationService,\n private organizationSettingService: OrganizationSettingService,\n public router: Router,\n private modalService: NgbModal,\n private fb: FormBuilder,\n private userService: UsersService\n ) { }\n\n async ngOnInit() {\n this.profileImageUrl = this.constantService.getImageFromServer(ThemeEnum.profileLogo) ?? \"assets/images/user.png\";\n this.user = await this.authService.getUser();\n\n if (this.canManageOtherTenants()) {\n\n this.currentTenant = this.constantService.mspTenant;\n this.organizationService.apiOrganizationGetOrganizationAllGet().subscribe(\n {\n next: (result: OrganizationModel[]) => {\n this.organizations = result?.sort((a, b) => a.organizationName?.localeCompare(b.organizationName));\n this.defaultTenant = this.organizations?.find(f => f.mnemonic == this.constantService.getDefaultTenant());\n this.filteredOrganizations = this.organizations;\n this.setTenants();\n },\n error: (error) => {\n console.log(error);\n\n }\n }\n );\n }\n\n if(this.authService.userType != 'User'){\n this.getAdminValidationEnabled();\n }\n\n this.tenantForm = this.fb.group({\n search: ['']\n });\n }\n\n setTenant(tenant) {\n this.currentTenant = tenant;\n this.constantService.setMspTenant(tenant);\n this.authService.reloadPage();\n\n }\n\n setTenants() {\n \n this.totalPages = Math.ceil(this.filteredOrganizations.length / this.pageSize);\n var trimLeft: any = (this.currentIndex - 1) * this.pageSize;\n var trimRight: any = this.currentIndex * this.pageSize;\n (trimRight < this.filteredOrganizations[this.filteredOrganizations.length - 1]) ? this.currentIndex * this.pageSize : this.filteredOrganizations[(this.filteredOrganizations.length - 1)];\n this.pagedOrg = this.filteredOrganizations.slice(trimLeft, trimRight);\n\n this.tenantForm.controls.search.valueChanges.pipe(debounceTime(300), distinctUntilChanged()).subscribe(val => {\n val = val.toLowerCase();\n this.filteredOrganizations = this.organizations.filter(x => x.organizationName.toLowerCase().includes(val));\n this.currentIndex = 1;\n this.setTenants();\n })\n }\n\n prevTenants() {\n this.currentIndex--;\n if (this.currentIndex < 1) this.currentIndex = 1;\n\n this.setTenants();\n }\n\n nextTenants() {\n this.currentIndex++;\n if (this.currentIndex > this.totalPages) {\n this.currentIndex--;\n }\n this.setTenants();\n }\n\n closeMenu(e) {\n e.target.closest('.dropdown').classList.remove('show');\n e.target.closest('.dropdown .dropdown-menu').classList.remove('show');\n }\n\n toggleSidebar(event) {\n event.preventDefault();\n this.appSettings.settings.showLeftMenu =\n !this.appSettings.settings.showLeftMenu;\n if (window.matchMedia('(min-width: 992px)').matches) {\n document.querySelector('body')!.classList.toggle('az-sidebar-hide');\n } else {\n document.querySelector('body')!.classList.toggle('az-sidebar-show');\n }\n }\n\n public isUser() {\n const userType = this.authService.userType;\n return (userType && userType.toLowerCase() === UserRoles.User.toLowerCase());\n }\n\n public canManageOtherTenants() {\n const userType = this.authService.userType;\n return (userType && (userType.toLowerCase() === UserRoles.SuperAdmin.toLowerCase() || userType.toLowerCase() == UserRoles.MspAdmin));\n }\n\n async setLanguage(lang) {\n this.activeLang = lang.id;\n localStorage.setItem('locale', lang.id);\n await this.authService.loadLanguages();\n\n }\n\n private getAdminValidationEnabled() {\n this.userService.apiUsersCheckAdminValidationStatusOrganizationIdUserIdPut(this.authService.user.profile.OrganizationId, this.authService.user.profile.UserID).subscribe((data) => {\n if (data) {\n this.adminValidationEnabled = true;\n } else {\n this.adminValidationEnabled = false;\n }\n });\n }\n\n setMenu() {\n this.getAdminValidationEnabled();\n\n if(this.adminValidationEnabled && !this.appSettings.settings.adminMenu){\n const modalRef = this.modalService.open(AdminValidationModal, { size: 'md' });\n modalRef.result.then((isAdminValidated) => {\n if (isAdminValidated) {\n this.toggleMenu();\n }\n }).catch((error) => {\n console.error('Error in admin validation modal:', error);\n });\n }else{\n this.toggleMenu();\n }\n }\n\n toggleMenu(){\n this.appSettings.settings.adminMenu = !this.appSettings.settings.adminMenu;\n if (this.appSettings.settings.adminMenu) {\n this.router.navigateByUrl('/dashboard');\n } else {\n this.router.navigateByUrl('/myapplications');\n }\n }\n\n public async signout() {\n await this.authService.signOut();\n }\n\n filterTenants(event: any) {\n console.log(event.target.value);\n }\n\n debounce = (func, timeout) => {\n let timer;\n return (...args) => {\n clearTimeout(timer);\n timer = setTimeout(() => { func.apply(this, args); }, timeout);\n }\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'columnPipe',\n})\nexport class columnPipe implements PipeTransform {\n transform(value: any, args?: any): any {\n const columnNames = [];\n for (var i = 0; i < value.length; i++) {\n for (let key in value[i]) {\n if (columnNames.indexOf(key) === -1) {\n columnNames.push(key);\n }\n }\n }\n return columnNames;\n }\n}\n\n@Pipe({\n name: 'rowPipe',\n})\nexport class rowPipe implements PipeTransform {\n transform(value: any, args?: any): any {\n const rowValues = Object.keys(value);\n return rowValues.map((k) => value[k]);\n }\n}\n\n@Pipe({\n name: 'searchPipe',\n})\nexport class searchPipe implements PipeTransform {\n transform(values: any[], filter: any, keyArray: any): any {\n if (!values || !values.length) {\n return [];\n }\n if (!filter) {\n return values;\n }\n\n filter = filter.toUpperCase();\n\n if (filter && Array.isArray(values)) {\n const keys = keyArray;\n return values.filter(\n (v) =>\n v && keys.some((k) => String(v[k]).toUpperCase().indexOf(filter) >= 0)\n );\n }\n }\n}\n\n@Pipe({\n name: 'searchTabelPipe',\n})\nexport class searchTabelPipe implements PipeTransform {\n transform(values: any[], filter: any, keyArray: any): any {\n if (!values || !values.length) {\n return [];\n }\n if (!filter) {\n return values;\n }\n\n filter = filter.toUpperCase();\n\n if (filter && Array.isArray(values)) {\n const keys = keyArray;\n return values.filter(\n (v) =>\n v && keys.some((k) => String(v[k]).toUpperCase().indexOf(filter) >= 0)\n );\n }\n }\n}\n\n@Pipe({ name: 'keys' })\nexport class KeysPipe implements PipeTransform {\n transform(value, args: string[]): any {\n const keys = [];\n for (let key in value) {\n keys.push({ key: key, value: value[key] });\n }\n return keys;\n }\n}\n","import { Component, Input, OnInit } from '@angular/core';\nimport { ConstantService } from 'src/app/services/common/constant.service';\n\n@Component({\n selector: 'app-row-detail',\n templateUrl: './row-detail.component.html',\n styleUrls: ['./row-detail.component.scss'],\n})\nexport class RowDetailComponent implements OnInit {\n @Input() activity;\n\n constructor(public constantService: ConstantService) {}\n\n ngOnInit(): void {}\n\n isObject(val): boolean {\n return val != null && typeof val === 'object';\n }\n}\n","import { CommonModule } from '@angular/common';\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n NgModule,\n NO_ERRORS_SCHEMA,\n} from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgSelectModule } from '@ng-select/ng-select';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { HasPermissionDirective } from '../services/common/has-permission.directive';\nimport { HasPermissionForTargetDirective } from '../services/common/has-permission-for-target.directive';\nimport { ConfirmDialogModule } from './confirm-dialog/confirm-dialog.module';\nimport { StyledMessageComponent } from './styled-message/styled-message.component';\nimport { BlockCopyPasteDirective } from '../services/common/block-paste.directive';\nimport { TreeviewModule } from 'ngx-treeview';\nimport { DatatableComponent } from './datatable/datatable.component';\nimport { DataTablesModule } from 'angular-datatables';\nimport { EnrollmentContainerComponent } from './enrollment/enrollment-container/enrollment-container.component';\nimport { SeSharedModule } from '@securenvoy/se-shared';\nimport { environment } from '../../environments/environment';\nimport { RowDetailComponent } from './row-detail/row-detail.component';\nimport { KeysPipe } from './pipes/filter.pipe';\n\n@NgModule({\n declarations: [\n HasPermissionDirective,\n HasPermissionForTargetDirective,\n BlockCopyPasteDirective,\n StyledMessageComponent,\n DatatableComponent,\n EnrollmentContainerComponent,\n RowDetailComponent,\n KeysPipe\n ],\n imports: [\n TreeviewModule.forRoot(),\n FormsModule,\n ReactiveFormsModule,\n TranslateModule,\n CommonModule,\n NgSelectModule,\n NgbModule,\n ConfirmDialogModule,\n DataTablesModule,\n SeSharedModule.forRoot({production: environment.production, pushCheckTime: environment.pushCheckTime})\n ],\n exports: [\n TreeviewModule,\n FormsModule,\n ReactiveFormsModule,\n TranslateModule,\n CommonModule,\n NgSelectModule,\n NgbModule,\n HasPermissionDirective,\n HasPermissionForTargetDirective,\n BlockCopyPasteDirective,\n ConfirmDialogModule,\n DatatableComponent,\n EnrollmentContainerComponent,\n SeSharedModule,\n RowDetailComponent,\n KeysPipe\n ],\n schemas: [CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA],\n})\nexport class SharedModule {\n}\n","import { Component, OnInit } from '@angular/core';\nimport { PerfectScrollbarConfigInterface } from 'ngx-perfect-scrollbar';\nimport { User } from 'oidc-client';\nimport { AuthService } from 'src/app/authentication/auth.service';\nimport { AppSettingsService } from 'src/app/services/common/appsettings.service';\nimport { OrganizationService } from 'src/app/services/organization';\nimport { environment } from 'src/environments/environment';\nimport differenceInDays from 'date-fns/differenceInDays';\nimport { parseISO } from 'date-fns';\nimport { ConstantService, ThemeEnum, UserRoles } from 'src/app/services/common/constant.service';\n\n@Component({\n selector: 'app-sidebar',\n templateUrl: './sidebar.component.html',\n styleUrls: ['./sidebar.component.scss'],\n})\nexport class SidebarComponent implements OnInit {\n public parentId = '';\n public scrollbarConfig: any;\n public user: User;\n public days = 10;\n public version: string;\n logoUrl: string;\n profileImageUrl: string;\n private year;\n\n constructor(\n public appSettings: AppSettingsService,\n public authService: AuthService,\n public constantService: ConstantService,\n public organizationService: OrganizationService\n ) {\n this.version = environment.apiVersion;\n }\n\n async ngOnInit() {\n this.logoUrl = this.constantService.getImageFromServer(ThemeEnum.mainLogo) ?? \"assets/images/logo.png\";\n this.profileImageUrl = this.constantService.getImageFromServer(ThemeEnum.profileLogo) ?? \"assets/images/user.png\";\n this.year = (new Date()).getFullYear();\n\n const body = document.querySelector('body');\n\n // add class 'hover-open' to sidebar navitem while hover in sidebar-icon-only menu\n document.querySelectorAll('.sidebar .nav-item').forEach(function (el) {\n el.addEventListener('mouseover', function () {\n if (body!.classList.contains('sidebar-icon-only')) {\n el.classList.add('hover-open');\n }\n });\n el.addEventListener('mouseout', function () {\n if (body!.classList.contains('sidebar-icon-only')) {\n el.classList.remove('hover-open');\n }\n });\n });\n\n this.user = await this.authService.getUser();\n this.organizationService\n .apiOrganizationOrganizationLicenseByMnemonicMnemonicGet(this.constantService.getSubdomain(false))\n .subscribe((data) => {\n if (data) {\n const expiryDate = data.onTrial\n ? data.trialExpiryDate\n : data.licenseExpiryDate;\n this.days = differenceInDays(parseISO(expiryDate), new Date());\n }\n });\n }\n\n public isUser(){\n const userType = this.authService.userType;\n return (userType && userType.toLowerCase() === UserRoles.User.toLowerCase());\n }\n \n clickedMenu(event) {\n var target = event.currentTarget;\n let parentId = target.id;\n if (parentId == this.parentId) {\n this.parentId = '';\n } else {\n this.parentId = target.id;\n }\n }\n\n public home() {\n return this.authService.redirectUser();\n }\n}\n","import { TitleCasePipe } from '@angular/common';\nimport { Component, OnInit } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\nimport { TranslateService } from '@ngx-translate/core';\nimport { ConstantService, ThemeEnum } from '../../services/common/constant.service';\n\n@Component({\n selector: 'app-styled-message',\n templateUrl: './styled-message.component.html',\n styleUrls: ['./styled-message.component.scss']\n})\nexport class StyledMessageComponent implements OnInit {\n\n logoUrl: string;\n title: string;\n message: string;\n iconClass: string;\n icon: string;\n\n constructor(\n private activatedRoute: ActivatedRoute,\n private constantService: ConstantService,\n private translate: TranslateService,\n ) { }\n\n ngOnInit(): void {\n this.logoUrl = this.constantService.getImageFromServer(ThemeEnum.mainLogo) ?? \"assets/images/se-white-logo.png\";\n let messageKeyParam: string = this.activatedRoute.snapshot.params.message;\n let messageKey: string = messageKeyParam.replace('-', ' ');\n const pipe = new TitleCasePipe();\n messageKey = pipe.transform(messageKey).replace(' ', '');\n if (Object.values(Messages).includes(messageKey)) {\n this.title = this.translate.instant(`StyledMessage.${messageKey}Title`);\n this.message = this.translate.instant(`StyledMessage.${messageKey}Message`);\n }\n if (messageKeyParam.indexOf('-success') > 0) {\n this.iconClass = 'success';\n this.icon = 'fa-check-circle'\n }\n else if (messageKeyParam.indexOf('-error') > 0) {\n this.iconClass = 'danger';\n this.icon = 'fa-exclamation-circle';\n }\n }\n\n \n\n}\n\nenum Messages {\n 'AuthenticationSuccess',\n 'AuthenticationError'\n}\n","import { Directive, Input } from \"@angular/core\";\nimport { AbstractControl, FormControl, NG_VALIDATORS, ValidationErrors, Validator, ValidatorFn, Validators } from \"@angular/forms\";\n\nexport class CustomValidators {\n static patternValidator(regex: RegExp, error: ValidationErrors): ValidatorFn {\n return (control: AbstractControl): { [key: string]: any } => {\n if (!control.value) {\n // if control is empty return no error\n return null;\n }\n\n // test the value of the control against the regexp supplied\n const valid = regex.test(control.value);\n\n // if true, return no error (no error), else return error passed in the second parameter\n return valid ? null : error;\n };\n }\n static onlySpaceValidator(control: AbstractControl): ValidationErrors | null {\n if (control.value !== '' && ((control && control.value && control.value.toString() || '').trim().length === 0)) {\n return { OnlySpace: true }\n }\n return null;\n }\n\n static dateAfterTodayValidator(c: FormControl) {\n const today = new Date();\n let value = new Date(c.value);\n if (value > today) {\n return null;\n } else {\n return { dateAfterToday: { valid: false } };\n }\n }\n}\n\n@Directive({\n selector: '[se_max][formControlName],[se_max][formControl],[se_max][ngModel]',\n providers: [{ provide: NG_VALIDATORS, useExisting: SEMaxDirective, multi: true }]\n})\nexport class SEMaxDirective implements Validator {\n @Input()\n se_max: number;\n\n validate(c: FormControl): { [key: string]: any } {\n let v = c.value;\n return (v > this.se_max) ? { \"max\": true } : null;\n }\n}\n\n@Directive({\n selector: '[se_min][formControlName],[se_min][formControl],[se_min][ngModel]',\n providers: [{ provide: NG_VALIDATORS, useExisting: SEMinDirective, multi: true }]\n})\nexport class SEMinDirective implements Validator {\n @Input()\n se_min: number;\n\n validate(c: FormControl): { [key: string]: any } {\n let v = c.value;\n return (v < this.se_min) ? { \"min\": true } : null;\n }\n}\n","import { Component, OnInit } from '@angular/core';\nimport { OrganizationDirectoryModel, OrganizationDirectoryService,RadiusClientService,AgentService } from 'src/app/services/organization';\nimport { DirectoryService } from 'src/app/services/master';\nimport { AuthService } from '../../authentication/auth.service';\nimport { HasPermissionService } from '../../services/common/has-permission.service';\nimport { UserRoles } from '../../services/common/constant.service';\nimport { ConstantService } from '../../services/common/constant.service';\n\n@Component({\n selector: 'app-directory-details',\n templateUrl: './directory-details.component.html',\n styleUrls: ['./directory-details.component.scss']\n})\nexport class DirectoryDetailsComponent implements OnInit {\n directories: OrganizationDirectoryModel[];\n private orgId: number;\n agents: any[];\n\n constructor(\n private directoryService :DirectoryService,\n private authService: AuthService,\n private permision : HasPermissionService,\n private organizationDirectoryService : OrganizationDirectoryService,\n private radiusClientService: RadiusClientService,\n private agentService: AgentService,\n private constantService: ConstantService\n ) { }\n\n ngOnInit(): void {\n this.orgId = this.authService.organizationId;\n if (this.permision.allowAccess([UserRoles.AdminUser, UserRoles.MspAdmin, UserRoles.SuperAdmin,])){\n this.organizationDirectoryService.apiOrganizationDirectoryGetByOrgIdOrganizationIdGet(this.orgId).subscribe({\n next: (data) => {\n this.directories = data;\n this.directories.sort((a, b)=> a.directoryName.localeCompare(b.directoryName));\n },\n complete: () => {}\n })\n\n this.agentService.apiAgentByOrgKeyOrganizationMnemonicGet(this.constantService.getSubdomain()).subscribe(data => {\n data.forEach(agent => {\n agent.radiusClients = JSON.parse(agent.radiusClientID);\n agent.directoriesClients = JSON.parse(agent.organizationDirectoryID);\n });\n \n this.agents = data;\n\n this.radiusClientService.apiRadiusClientByorgidOrganizationIdGet(this.orgId).subscribe({\n next: (data) => {\n data.forEach(data => {\n const agent = this.agents.find(x => x.radiusClients?.includes(data.radiusClientId));\n const status = !agent?.name ? \"\": \"Connected\";\n const radiusClient: OrganizationDirectoryModel = {\n directoryName: \"Radius Agent\",\n directoryLabel: data.friendlyName,\n status: status,\n directoryId: data.radiusClientId,\n organizationId: data.organizationId,\n lastSync: agent?.lastConnectionDate\n };\n this.directories.push(radiusClient);\n });\n this.directories.sort((a, b) => a.directoryName.localeCompare(b.directoryName));\n },\n complete: () => {\n }\n });\n });\n\n \n \n }\n }\n \n\n}\n","import { Component, OnInit } from '@angular/core';\nimport { VersionService as masterVersionService } from 'src/app/services/master';\nimport { VersionService as analyticsVersionService } from 'src/app/services/analytics';\nimport { VersionService as userVersionService } from 'src/app/services/user';\nimport { VersionService as filestoreVersionService } from 'src/app/services/fileStore';\nimport { VersionService as activityLoggingVersionService } from 'src/app/services/activitylogging';\nimport { VersionService as notificationVersionService } from 'src/app/services/notification';\nimport { VersionService as identityVersionService } from 'src/app/services/identity';\nimport { VersionService as organizationVersionService } from 'src/app/services/organization';\nimport { VersionService as conditionalAccessVersionService } from '../../services/conditional-access';\nimport { VersionService as migrationVersionService } from '../../services/migration';\nimport { VersionService as reportVersionService } from '../../services/report';\nimport { VersionService as anomalydetectionVersionService } from '../../services/anomalydetection';\n\n\n@Component({\n selector: 'app-system-details',\n templateUrl: './system-details.component.html',\n styleUrls: ['./system-details.component.scss']\n})\nexport class SystemDetailsComponent implements OnInit {\n services: any[] = [];\n \n\n constructor(\n private masterVersionService: masterVersionService,\n private analyticsVersionService: analyticsVersionService,\n private filestoreVersionService: filestoreVersionService,\n private activityLoggingVersionService: activityLoggingVersionService,\n private notificationVersionService: notificationVersionService,\n private userVersionService: userVersionService,\n private identityVersionService: identityVersionService,\n private reportVersionService: reportVersionService,\n private organizationVersionService: organizationVersionService,\n private conditionalAccessVersionService: conditionalAccessVersionService,\n private migrationVersionService: migrationVersionService,\n private anomalydetectionVersionService: anomalydetectionVersionService\n ) { }\n\n ngOnInit() {\n\n this.analyticsVersionService.apiVersionGetVersionGet().subscribe({\n next: (result) => this.subscribeResult('Analytics Api', result, false),\n error: (err) => this.subscribeResult('Analytics Api', err, true),\n complete: () => {}\n })\n\n this.userVersionService.apiVersionGetVersionGet().subscribe({\n next: (result) => this.subscribeResult('User Api', result, false),\n error: (err) => this.subscribeResult('User Api', err, true),\n complete: () => {}\n })\n\n this.filestoreVersionService.apiVersionGetVersionGet().subscribe({\n next: (result) => this.subscribeResult('File Store Api', result, false),\n error: (err) => this.subscribeResult('File Store Api', err, true),\n complete: () => {}\n })\n\n this.activityLoggingVersionService.apiVersionGetVersionGet().subscribe({\n next: (result) => this.subscribeResult('Activity Logging Api', result, false),\n error: (err) => this.subscribeResult('Activity Logging Api', err, true),\n complete: () => {}\n })\n\n this.masterVersionService.apiVersionGetVersionGet().subscribe({\n next: (result) => this.subscribeResult('Master Api', result, false),\n error: (err) => this.subscribeResult('Master Api', err, true),\n complete: () => {}\n })\n\n this.notificationVersionService.apiVersionGetVersionGet().subscribe({\n next: (result) => this.subscribeResult('Notification Api', result, false),\n error: (err) => this.subscribeResult('Notification Api', err, true),\n complete: () => {}\n })\n\n this.identityVersionService.apiVersionGetVersionGet().subscribe({\n next: (result) => this.subscribeResult('Identity Api', result, false),\n error: (err) => this.subscribeResult('Identity Api', err, true),\n complete: () => {}\n })\n\n this.organizationVersionService.apiVersionGetVersionGet().subscribe({\n next: (result) => this.subscribeResult('Organization Api', result, false),\n error: (err) => this.subscribeResult('Organization Api', err, true),\n complete: () => {}\n })\n\n this.conditionalAccessVersionService.versionGetVersionGet().subscribe({\n next: (result) => this.subscribeResult('Conditional Access Api', result, false),\n error: (err) => this.subscribeResult('Conditional Access Api', err, true),\n complete: () => {}\n })\n\n this.reportVersionService.versionGetVersionGet().subscribe({\n next: (result) => this.subscribeResult('Reports Api', result, false),\n error: (err) => this.subscribeResult('Reports Api', err, true),\n complete: () => {}\n })\n\n this.migrationVersionService.apiVersionGetVersionGet().subscribe({\n next: (result) => this.subscribeResult('Migration Api', result, false),\n error: (err) => this.subscribeResult('Migration Api', err, true),\n complete: () => {}\n })\n\n this.anomalydetectionVersionService.versionGetVersionGet().subscribe({\n next: (result) => this.subscribeResult('Anomaly Detection Api', result, false),\n error: (err) => this.subscribeResult('Anomaly Detection Api', err, true),\n complete: () => {}\n })\n \n };\n \n subscribeResult(apiName: string, response: object, isErr): void {\n let responseObj: object = { api: apiName, isErr: isErr, ...response };\n this.services.push(responseObj);\n this.services.sort((a, b) => (a.api < b.api ? -1 : 1));\n }\n\n}\n\n\n","import { Component, OnInit } from '@angular/core';\nimport { OrganizationDirectoryModel, OrganizationDirectoryService } from 'src/app/services/organization';\nimport { AuthService } from '../authentication/auth.service';\nimport { HasPermissionService } from '../services/common/has-permission.service';\n\n\n@Component({\n selector: 'app-system-status',\n templateUrl: './system-status.component.html',\n styleUrls: ['./system-status.component.scss']\n})\nexport class SystemStatusComponent implements OnInit {\n public activeTab: string;\n\n constructor(\n private authService: AuthService,\n private permision : HasPermissionService\n\n ) { \n this.activeTab = 'system';\n }\n\n setActiveTab(tab: string) {\n this.activeTab = tab;\n }\n\n ngOnInit() {\n };\n \n\n\n}\n","import { Component, OnInit, OnDestroy } from '@angular/core';\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\nimport { UsersService } from 'src/app/services/user';\nimport { Subject, takeUntil } from 'rxjs';\nimport { ToastrService } from 'ngx-toastr';\nimport { AuthService } from 'src/app/authentication/auth.service';\nimport { FormControl, Validators } from '@angular/forms';\n\n@Component({\n selector: 'app-admin-validation-modal',\n templateUrl: 'admin-validation-modal.html',\n})\n\n\nexport class AdminValidationModal implements OnInit, OnDestroy {\n\n destroy$: Subject = new Subject();\n\n isSent:boolean = false;\n userInputCode: FormControl;\n userInputHasError: boolean = true;\n cell:string = \"\";\n email:string = \"\";\n\n //add loading animation to advoid user sending multiple email/sms\n isEmailLoading:boolean = false;\n isSMSLoading:boolean = false;\n isVerifyLoading:boolean = false; \n\n constructor(\n private activeModal: NgbActiveModal,\n private userService: UsersService,\n private toastrService: ToastrService,\n private authService: AuthService\n ) {}\n\n ngOnInit() {\n this.userService.apiUsersGetUserBasicInfoGet().subscribe(\n data => {\n if(data.cell) this.cell = data.cell;\n if(data.email) this.email = data.email;\n }\n );\n this.userInputCode = new FormControl('', Validators.required);\n this.userInputCode.valueChanges.pipe(\n takeUntil(this.destroy$)\n ).subscribe(val=>{\n if(val && val.length != 6){\n this.userInputCode.setErrors({'inValid': true});\n this.userInputHasError = true;\n }else{\n this.userInputCode.setErrors(null);\n this.userInputHasError = false;\n }\n });\n }\n\n sendValidationEmail() {\n this.isEmailLoading = true;\n this.userService.apiUsersSendAdminValidationCodeEmailOrganizationIdUserIdPut(this.authService.user.profile.OrganizationId, this.authService.user.profile.UserID).pipe(\n takeUntil(this.destroy$)\n ).subscribe({\n next: (result) => {},\n error: () => {},\n complete: () => { \n this.isSent = true;\n this.isEmailLoading = false;\n this.toastrService.success('Validation Email Sent');\n }\n });\n }\n\n sendValidationSMS() {\n this.isSMSLoading = true;\n this.userService.apiUsersSendAdminValidationCodeSMSOrganizationIdUserIdPut(this.authService.user.profile.OrganizationId, this.authService.user.profile.UserID).pipe(\n takeUntil(this.destroy$)\n ).subscribe({\n next: (result) => {},\n error: () => {},\n complete: () => { \n this.isSent = true;\n this.isSMSLoading = false;\n this.toastrService.success('Validation SMS Sent');\n }\n });\n }\n\n verify(){\n if(this.userInputHasError){ return }\n this.isVerifyLoading = true;\n this.userService.apiUsersVerifyAdminValidationCodeOrganizationIdUserIdPut(this.authService.user.profile.OrganizationId, this.authService.user.profile.UserID, `\"${this.userInputCode.value}\"`).pipe(\n takeUntil(this.destroy$)\n ).subscribe({\n next: (result) => {\n if(result){\n this.toastrService.success('Validation Successful'); \n setTimeout(() => {\n this.closeModal(true);\n }, 1000);\n }else{\n this.toastrService.error('Validation Failed');\n this.userInputCode.reset();\n this.isVerifyLoading = false;\n this.userInputHasError = true;\n }\n },\n error: () => {},\n complete: () => {}\n });\n }\n\n cancel(){\n this.userInputCode.reset();\n this.isSent = false;\n }\n\n closeModal(isValida: boolean){\n this.activeModal.close(isValida);\n }\n\n ngOnDestroy(){\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n}","import { Component, OnInit, OnDestroy} from '@angular/core';\nimport { Subject, takeUntil } from 'rxjs';\nimport { AuthService } from '../authentication/auth.service';\nimport { ToastrService } from 'ngx-toastr';\nimport { TranslateService } from '@ngx-translate/core';\nimport { ReleaseNotesService } from '../services/master';\nimport { Subscription } from 'rxjs';\nimport { DatePipe } from '@angular/common'\n\n@Component({\n selector: 'app-whats-new',\n templateUrl: './whats-new.component.html',\n styleUrls: ['./whats-new.component.scss']\n})\nexport class WhatsNewComponent implements OnInit {\n public releaseNotes;\n private subscriptions: Subscription[] = [];\n\n constructor(\n private translate: TranslateService,\n private releseNoteService: ReleaseNotesService,\n private datepipe: DatePipe\n ) { }\n\n ngOnInit(): void {\n this.getAllReleaseNotes()\n }\n\n getAllReleaseNotes(){\n this.releaseNotes = [];\n this.releseNoteService.apiReleaseNotesGetReleaseNotesGet().subscribe((data) => {\n this.releaseNotes = data.map(item => {\n return {\n ...item,\n releaseNote: this.parseReleaseNotes(item.releaseNote).ReleaseNotes,\n initialDate: this.parseDate(item.initialDate)\n\n }\n }\n );\n }); \n\n }\n parseDate(date){\n try {\n return this.datepipe.transform(new Date(date), 'd MMM y');;\n }\n catch(e){\n return \"\";\n }\n\n }\n\n parseReleaseNotes(jsonString){\n try {\n return JSON.parse(jsonString);\n }\n catch(e){\n return {releaseNotes:[]};\n }\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach((subscription) => subscription.unsubscribe());\n }\n\n}\n","export const environment = {\n production: true,\n\n organizationCode: '',\n singleTenantMode: false,\n apiVersion: '5.0.8919',\n\n publicUrl: 'azuredev.mysecurenvoy.com',\n\n master: 'https://api-securenvoy-cloudv2-master-dev-uk.azurewebsites.net',\n analytics: 'https://api-securenvoy-cloudv2-analytics-dev-uk.azurewebsites.net',\n user: 'https://api-securenvoy-cloudv2-user-dev-uk.azurewebsites.net',\n activityLogging: 'https://api-securenvoy-cloudv2-activitylogging-dev-uk.azurewebsites.net',\n filestore: 'https://api-securenvoy-cloudv2-filestore-dev-uk.azurewebsites.net',\n notification: 'https://api-securenvoy-cloudv2-notification-dev-uk.azurewebsites.net',\n identity: 'https://api-securenvoy-cloudv2-identity-dev-uk.azurewebsites.net',\n organization: 'https://api-securenvoy-cloudv2-organization-dev-uk.azurewebsites.net',\n conditionalAccess: 'https://api-securenvoy-cloudv2-conditionalaccess-dev-uk.azurewebsites.net',\n migration: 'https://api-securenvoy-cloudv2-migration-dev-uk.azurewebsites.net',\n report: 'https://api-securenvoy-cloudv2-report-dev-uk.azurewebsites.net',\n anomalydetection: 'https://api-securenvoy-cloudv2-anomalydetection-dev-uk.azurewebsites.net',\n\n identityApi: '/identity',\n identityRedirect: '/auth-callback',\n identityChangePassword: '/auth-callback&changePassword=true',\n identityLogout: '/auth/logout',\n identitySilentRedirect: '/assets/silent-renew.html',\n identityInitiatedUrl: 'https://{org_code}./identity/saml2?app=$app_id$&ServiceProvider=$thirdPartyEntityId$&AssertConsumerUrl=$thirdPartySignInUrl$',\n reCaptchaSiteKey: '6LchDL8bAAAAAImIM5xOBZkXvedF8Hh2mt6EIrrD',\n\n azureLoginUri: 'https://login.microsoftonline.com/common/oauth2/v2.0/authorize',\n azureClientId: '8d01827f-f345-4098-be94-c52be2e2bc35',\n azureRedirect: '/cloud/azure/custom-redirection',\n\n googleDirectoryAllowedOrigin: \"https://\",\n googleDirectoryClientId: \"\",\n googleDirectoryClientSecret: \"\",\n\n contactUrl: '',\n\n downloadcookie_expire_mins: 1,\n downloadcookie_domain: 'azuredev.mysecurenvoy.com',\n\n pushCheckTime: 5, //seconds\n token: ''\n};\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic().bootstrapModule(AppModule, {\n preserveWhitespaces: true\n})\n .catch(err => console.error(err));\n","import * as lpn from 'google-libphonenumber';\nimport * as i0 from '@angular/core';\nimport { Injectable, Directive, EventEmitter, forwardRef, Component, Input, Output, ViewChild, NgModule } from '@angular/core';\nimport * as i4 from '@angular/forms';\nimport { NG_VALUE_ACCESSOR, NG_VALIDATORS, FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { setTheme } from 'ngx-bootstrap/utils';\nimport * as i2 from '@angular/common';\nimport { CommonModule } from '@angular/common';\nimport * as i3 from 'ngx-bootstrap/dropdown';\nimport { BsDropdownModule } from 'ngx-bootstrap/dropdown';\n\nvar CountryISO;\n(function (CountryISO) {\n CountryISO[\"Afghanistan\"] = \"af\";\n CountryISO[\"Albania\"] = \"al\";\n CountryISO[\"Algeria\"] = \"dz\";\n CountryISO[\"AmericanSamoa\"] = \"as\";\n CountryISO[\"Andorra\"] = \"ad\";\n CountryISO[\"Angola\"] = \"ao\";\n CountryISO[\"Anguilla\"] = \"ai\";\n CountryISO[\"AntiguaAndBarbuda\"] = \"ag\";\n CountryISO[\"Argentina\"] = \"ar\";\n CountryISO[\"Armenia\"] = \"am\";\n CountryISO[\"Aruba\"] = \"aw\";\n CountryISO[\"Australia\"] = \"au\";\n CountryISO[\"Austria\"] = \"at\";\n CountryISO[\"Azerbaijan\"] = \"az\";\n CountryISO[\"Bahamas\"] = \"bs\";\n CountryISO[\"Bahrain\"] = \"bh\";\n CountryISO[\"Bangladesh\"] = \"bd\";\n CountryISO[\"Barbados\"] = \"bb\";\n CountryISO[\"Belarus\"] = \"by\";\n CountryISO[\"Belgium\"] = \"be\";\n CountryISO[\"Belize\"] = \"bz\";\n CountryISO[\"Benin\"] = \"bj\";\n CountryISO[\"Bermuda\"] = \"bm\";\n CountryISO[\"Bhutan\"] = \"bt\";\n CountryISO[\"Bolivia\"] = \"bo\";\n CountryISO[\"BosniaAndHerzegovina\"] = \"ba\";\n CountryISO[\"Botswana\"] = \"bw\";\n CountryISO[\"Brazil\"] = \"br\";\n CountryISO[\"BritishIndianOceanTerritory\"] = \"io\";\n CountryISO[\"BritishVirginIslands\"] = \"vg\";\n CountryISO[\"Brunei\"] = \"bn\";\n CountryISO[\"Bulgaria\"] = \"bg\";\n CountryISO[\"BurkinaFaso\"] = \"bf\";\n CountryISO[\"Burundi\"] = \"bi\";\n CountryISO[\"Cambodia\"] = \"kh\";\n CountryISO[\"Cameroon\"] = \"cm\";\n CountryISO[\"Canada\"] = \"ca\";\n CountryISO[\"CapeVerde\"] = \"cv\";\n CountryISO[\"CaribbeanNetherlands\"] = \"bq\";\n CountryISO[\"CaymanIslands\"] = \"ky\";\n CountryISO[\"CentralAfricanRepublic\"] = \"cf\";\n CountryISO[\"Chad\"] = \"td\";\n CountryISO[\"Chile\"] = \"cl\";\n CountryISO[\"China\"] = \"cn\";\n CountryISO[\"ChristmasIsland\"] = \"cx\";\n CountryISO[\"Cocos\"] = \"cc\";\n CountryISO[\"Colombia\"] = \"co\";\n CountryISO[\"Comoros\"] = \"km\";\n CountryISO[\"CongoDRCJamhuriYaKidemokrasiaYaKongo\"] = \"cd\";\n CountryISO[\"CongoRepublicCongoBrazzaville\"] = \"cg\";\n CountryISO[\"CookIslands\"] = \"ck\";\n CountryISO[\"CostaRica\"] = \"cr\";\n CountryISO[\"C\\u00F4teDIvoire\"] = \"ci\";\n CountryISO[\"Croatia\"] = \"hr\";\n CountryISO[\"Cuba\"] = \"cu\";\n CountryISO[\"Cura\\u00E7ao\"] = \"cw\";\n CountryISO[\"Cyprus\"] = \"cy\";\n CountryISO[\"CzechRepublic\"] = \"cz\";\n CountryISO[\"Denmark\"] = \"dk\";\n CountryISO[\"Djibouti\"] = \"dj\";\n CountryISO[\"Dominica\"] = \"dm\";\n CountryISO[\"DominicanRepublic\"] = \"do\";\n CountryISO[\"Ecuador\"] = \"ec\";\n CountryISO[\"Egypt\"] = \"eg\";\n CountryISO[\"ElSalvador\"] = \"sv\";\n CountryISO[\"EquatorialGuinea\"] = \"gq\";\n CountryISO[\"Eritrea\"] = \"er\";\n CountryISO[\"Estonia\"] = \"ee\";\n CountryISO[\"Ethiopia\"] = \"et\";\n CountryISO[\"FalklandIslands\"] = \"fk\";\n CountryISO[\"FaroeIslands\"] = \"fo\";\n CountryISO[\"Fiji\"] = \"fj\";\n CountryISO[\"Finland\"] = \"fi\";\n CountryISO[\"France\"] = \"fr\";\n CountryISO[\"FrenchGuiana\"] = \"gf\";\n CountryISO[\"FrenchPolynesia\"] = \"pf\";\n CountryISO[\"Gabon\"] = \"ga\";\n CountryISO[\"Gambia\"] = \"gm\";\n CountryISO[\"Georgia\"] = \"ge\";\n CountryISO[\"Germany\"] = \"de\";\n CountryISO[\"Ghana\"] = \"gh\";\n CountryISO[\"Gibraltar\"] = \"gi\";\n CountryISO[\"Greece\"] = \"gr\";\n CountryISO[\"Greenland\"] = \"gl\";\n CountryISO[\"Grenada\"] = \"gd\";\n CountryISO[\"Guadeloupe\"] = \"gp\";\n CountryISO[\"Guam\"] = \"gu\";\n CountryISO[\"Guatemala\"] = \"gt\";\n CountryISO[\"Guernsey\"] = \"gg\";\n CountryISO[\"Guinea\"] = \"gn\";\n CountryISO[\"GuineaBissau\"] = \"gw\";\n CountryISO[\"Guyana\"] = \"gy\";\n CountryISO[\"Haiti\"] = \"ht\";\n CountryISO[\"Honduras\"] = \"hn\";\n CountryISO[\"HongKong\"] = \"hk\";\n CountryISO[\"Hungary\"] = \"hu\";\n CountryISO[\"Iceland\"] = \"is\";\n CountryISO[\"India\"] = \"in\";\n CountryISO[\"Indonesia\"] = \"id\";\n CountryISO[\"Iran\"] = \"ir\";\n CountryISO[\"Iraq\"] = \"iq\";\n CountryISO[\"Ireland\"] = \"ie\";\n CountryISO[\"IsleOfMan\"] = \"im\";\n CountryISO[\"Israel\"] = \"il\";\n CountryISO[\"Italy\"] = \"it\";\n CountryISO[\"Jamaica\"] = \"jm\";\n CountryISO[\"Japan\"] = \"jp\";\n CountryISO[\"Jersey\"] = \"je\";\n CountryISO[\"Jordan\"] = \"jo\";\n CountryISO[\"Kazakhstan\"] = \"kz\";\n CountryISO[\"Kenya\"] = \"ke\";\n CountryISO[\"Kiribati\"] = \"ki\";\n CountryISO[\"Kosovo\"] = \"xk\";\n CountryISO[\"Kuwait\"] = \"kw\";\n CountryISO[\"Kyrgyzstan\"] = \"kg\";\n CountryISO[\"Laos\"] = \"la\";\n CountryISO[\"Latvia\"] = \"lv\";\n CountryISO[\"Lebanon\"] = \"lb\";\n CountryISO[\"Lesotho\"] = \"ls\";\n CountryISO[\"Liberia\"] = \"lr\";\n CountryISO[\"Libya\"] = \"ly\";\n CountryISO[\"Liechtenstein\"] = \"li\";\n CountryISO[\"Lithuania\"] = \"lt\";\n CountryISO[\"Luxembourg\"] = \"lu\";\n CountryISO[\"Macau\"] = \"mo\";\n CountryISO[\"Macedonia\"] = \"mk\";\n CountryISO[\"Madagascar\"] = \"mg\";\n CountryISO[\"Malawi\"] = \"mw\";\n CountryISO[\"Malaysia\"] = \"my\";\n CountryISO[\"Maldives\"] = \"mv\";\n CountryISO[\"Mali\"] = \"ml\";\n CountryISO[\"Malta\"] = \"mt\";\n CountryISO[\"MarshallIslands\"] = \"mh\";\n CountryISO[\"Martinique\"] = \"mq\";\n CountryISO[\"Mauritania\"] = \"mr\";\n CountryISO[\"Mauritius\"] = \"mu\";\n CountryISO[\"Mayotte\"] = \"yt\";\n CountryISO[\"Mexico\"] = \"mx\";\n CountryISO[\"Micronesia\"] = \"fm\";\n CountryISO[\"Moldova\"] = \"md\";\n CountryISO[\"Monaco\"] = \"mc\";\n CountryISO[\"Mongolia\"] = \"mn\";\n CountryISO[\"Montenegro\"] = \"me\";\n CountryISO[\"Montserrat\"] = \"ms\";\n CountryISO[\"Morocco\"] = \"ma\";\n CountryISO[\"Mozambique\"] = \"mz\";\n CountryISO[\"Myanmar\"] = \"mm\";\n CountryISO[\"Namibia\"] = \"na\";\n CountryISO[\"Nauru\"] = \"nr\";\n CountryISO[\"Nepal\"] = \"np\";\n CountryISO[\"Netherlands\"] = \"nl\";\n CountryISO[\"NewCaledonia\"] = \"nc\";\n CountryISO[\"NewZealand\"] = \"nz\";\n CountryISO[\"Nicaragua\"] = \"ni\";\n CountryISO[\"Niger\"] = \"ne\";\n CountryISO[\"Nigeria\"] = \"ng\";\n CountryISO[\"Niue\"] = \"nu\";\n CountryISO[\"NorfolkIsland\"] = \"nf\";\n CountryISO[\"NorthKorea\"] = \"kp\";\n CountryISO[\"NorthernMarianaIslands\"] = \"mp\";\n CountryISO[\"Norway\"] = \"no\";\n CountryISO[\"Oman\"] = \"om\";\n CountryISO[\"Pakistan\"] = \"pk\";\n CountryISO[\"Palau\"] = \"pw\";\n CountryISO[\"Palestine\"] = \"ps\";\n CountryISO[\"Panama\"] = \"pa\";\n CountryISO[\"PapuaNewGuinea\"] = \"pg\";\n CountryISO[\"Paraguay\"] = \"py\";\n CountryISO[\"Peru\"] = \"pe\";\n CountryISO[\"Philippines\"] = \"ph\";\n CountryISO[\"Poland\"] = \"pl\";\n CountryISO[\"Portugal\"] = \"pt\";\n CountryISO[\"PuertoRico\"] = \"pr\";\n CountryISO[\"Qatar\"] = \"qa\";\n CountryISO[\"R\\u00E9union\"] = \"re\";\n CountryISO[\"Romania\"] = \"ro\";\n CountryISO[\"Russia\"] = \"ru\";\n CountryISO[\"Rwanda\"] = \"rw\";\n CountryISO[\"SaintBarth\\u00E9lemy\"] = \"bl\";\n CountryISO[\"SaintHelena\"] = \"sh\";\n CountryISO[\"SaintKittsAndNevis\"] = \"kn\";\n CountryISO[\"SaintLucia\"] = \"lc\";\n CountryISO[\"SaintMartin\"] = \"mf\";\n CountryISO[\"SaintPierreAndMiquelon\"] = \"pm\";\n CountryISO[\"SaintVincentAndTheGrenadines\"] = \"vc\";\n CountryISO[\"Samoa\"] = \"ws\";\n CountryISO[\"SanMarino\"] = \"sm\";\n CountryISO[\"S\\u00E3oTom\\u00E9AndPr\\u00EDncipe\"] = \"st\";\n CountryISO[\"SaudiArabia\"] = \"sa\";\n CountryISO[\"Senegal\"] = \"sn\";\n CountryISO[\"Serbia\"] = \"rs\";\n CountryISO[\"Seychelles\"] = \"sc\";\n CountryISO[\"SierraLeone\"] = \"sl\";\n CountryISO[\"Singapore\"] = \"sg\";\n CountryISO[\"SintMaarten\"] = \"sx\";\n CountryISO[\"Slovakia\"] = \"sk\";\n CountryISO[\"Slovenia\"] = \"si\";\n CountryISO[\"SolomonIslands\"] = \"sb\";\n CountryISO[\"Somalia\"] = \"so\";\n CountryISO[\"SouthAfrica\"] = \"za\";\n CountryISO[\"SouthKorea\"] = \"kr\";\n CountryISO[\"SouthSudan\"] = \"ss\";\n CountryISO[\"Spain\"] = \"es\";\n CountryISO[\"SriLanka\"] = \"lk\";\n CountryISO[\"Sudan\"] = \"sd\";\n CountryISO[\"Suriname\"] = \"sr\";\n CountryISO[\"SvalbardAndJanMayen\"] = \"sj\";\n CountryISO[\"Swaziland\"] = \"sz\";\n CountryISO[\"Sweden\"] = \"se\";\n CountryISO[\"Switzerland\"] = \"ch\";\n CountryISO[\"Syria\"] = \"sy\";\n CountryISO[\"Taiwan\"] = \"tw\";\n CountryISO[\"Tajikistan\"] = \"tj\";\n CountryISO[\"Tanzania\"] = \"tz\";\n CountryISO[\"Thailand\"] = \"th\";\n CountryISO[\"TimorLeste\"] = \"tl\";\n CountryISO[\"Togo\"] = \"tg\";\n CountryISO[\"Tokelau\"] = \"tk\";\n CountryISO[\"Tonga\"] = \"to\";\n CountryISO[\"TrinidadAndTobago\"] = \"tt\";\n CountryISO[\"Tunisia\"] = \"tn\";\n CountryISO[\"Turkey\"] = \"tr\";\n CountryISO[\"Turkmenistan\"] = \"tm\";\n CountryISO[\"TurksAndCaicosIslands\"] = \"tc\";\n CountryISO[\"Tuvalu\"] = \"tv\";\n CountryISO[\"USVirginIslands\"] = \"vi\";\n CountryISO[\"Uganda\"] = \"ug\";\n CountryISO[\"Ukraine\"] = \"ua\";\n CountryISO[\"UnitedArabEmirates\"] = \"ae\";\n CountryISO[\"UnitedKingdom\"] = \"gb\";\n CountryISO[\"UnitedStates\"] = \"us\";\n CountryISO[\"Uruguay\"] = \"uy\";\n CountryISO[\"Uzbekistan\"] = \"uz\";\n CountryISO[\"Vanuatu\"] = \"vu\";\n CountryISO[\"VaticanCity\"] = \"va\";\n CountryISO[\"Venezuela\"] = \"ve\";\n CountryISO[\"Vietnam\"] = \"vn\";\n CountryISO[\"WallisAndFutuna\"] = \"wf\";\n CountryISO[\"WesternSahara\"] = \"eh\";\n CountryISO[\"Yemen\"] = \"ye\";\n CountryISO[\"Zambia\"] = \"zm\";\n CountryISO[\"Zimbabwe\"] = \"zw\";\n CountryISO[\"\\u00C5landIslands\"] = \"ax\";\n})(CountryISO || (CountryISO = {}));\n\nclass CountryCode {\n constructor() {\n this.allCountries = [\n [\n 'Afghanistan (‫افغانستان‬‎)',\n CountryISO.Afghanistan,\n '93'\n ],\n [\n 'Albania (Shqipëri)',\n CountryISO.Albania,\n '355'\n ],\n [\n 'Algeria (‫الجزائر‬‎)',\n CountryISO.Algeria,\n '213'\n ],\n [\n 'American Samoa',\n 'as',\n '1',\n 1,\n [\n '684',\n ]\n ],\n [\n 'Andorra',\n CountryISO.Andorra,\n '376'\n ],\n [\n 'Angola',\n CountryISO.Angola,\n '244'\n ],\n [\n 'Anguilla',\n 'ai',\n '1',\n 1,\n [\n '264',\n ]\n ],\n [\n 'Antigua and Barbuda',\n 'ag',\n '1',\n 1,\n [\n '268',\n ]\n ],\n [\n 'Argentina',\n CountryISO.Argentina,\n '54'\n ],\n [\n 'Armenia (Հայաստան)',\n CountryISO.Armenia,\n '374'\n ],\n [\n 'Aruba',\n CountryISO.Aruba,\n '297'\n ],\n [\n 'Australia',\n CountryISO.Australia,\n '61',\n 0\n ],\n [\n 'Austria (Österreich)',\n CountryISO.Austria,\n '43'\n ],\n [\n 'Azerbaijan (Azərbaycan)',\n CountryISO.Azerbaijan,\n '994'\n ],\n [\n 'Bahamas',\n 'bs',\n '1',\n 1,\n [\n '242',\n ]\n ],\n [\n 'Bahrain (‫البحرين‬‎)',\n CountryISO.Bahrain,\n '973'\n ],\n [\n 'Bangladesh (বাংলাদেশ)',\n CountryISO.Bangladesh,\n '880'\n ],\n [\n 'Barbados',\n 'bb',\n '1',\n 1,\n [\n '246',\n ]\n ],\n [\n 'Belarus (Беларусь)',\n CountryISO.Belarus,\n '375'\n ],\n [\n 'Belgium (België)',\n CountryISO.Belgium,\n '32'\n ],\n [\n 'Belize',\n CountryISO.Belize,\n '501'\n ],\n [\n 'Benin (Bénin)',\n CountryISO.Benin,\n '229'\n ],\n [\n 'Bermuda',\n 'bm',\n '1',\n 1,\n [\n '441',\n ]\n ],\n [\n 'Bhutan (འབྲུག)',\n CountryISO.Bhutan,\n '975'\n ],\n [\n 'Bolivia',\n CountryISO.Bolivia,\n '591'\n ],\n [\n 'Bosnia and Herzegovina (Босна и Херцеговина)',\n CountryISO.BosniaAndHerzegovina,\n '387'\n ],\n [\n 'Botswana',\n CountryISO.Botswana,\n '267'\n ],\n [\n 'Brazil (Brasil)',\n CountryISO.Brazil,\n '55'\n ],\n [\n 'British Indian Ocean Territory',\n CountryISO.BritishIndianOceanTerritory,\n '246'\n ],\n [\n 'British Virgin Islands',\n 'vg',\n '1',\n 1,\n [\n '284',\n ]\n ],\n [\n 'Brunei',\n CountryISO.Brunei,\n '673'\n ],\n [\n 'Bulgaria (България)',\n CountryISO.Bulgaria,\n '359'\n ],\n [\n 'Burkina Faso',\n CountryISO.BurkinaFaso,\n '226'\n ],\n [\n 'Burundi (Uburundi)',\n CountryISO.Burundi,\n '257'\n ],\n [\n 'Cambodia (កម្ពុជា)',\n CountryISO.Cambodia,\n '855'\n ],\n [\n 'Cameroon (Cameroun)',\n CountryISO.Cameroon,\n '237'\n ],\n [\n 'Canada',\n CountryISO.Canada,\n '1',\n 1,\n [\n '204', '226', '236', '249', '250', '289', '306', '343', '365', '387', '403', '416',\n '418', '431', '437', '438', '450', '506', '514', '519', '548', '579', '581', '587',\n '604', '613', '639', '647', '672', '705', '709', '742', '778', '780', '782', '807',\n '819', '825', '867', '873', '902', '905'\n ]\n ],\n [\n 'Cape Verde (Kabu Verdi)',\n CountryISO.CapeVerde,\n '238'\n ],\n [\n 'Caribbean Netherlands',\n CountryISO.CaribbeanNetherlands,\n '599',\n 1\n ],\n [\n 'Cayman Islands',\n 'ky',\n '1',\n 1,\n [\n '345',\n ]\n ],\n [\n 'Central African Republic (République centrafricaine)',\n CountryISO.CentralAfricanRepublic,\n '236'\n ],\n [\n 'Chad (Tchad)',\n CountryISO.Chad,\n '235'\n ],\n [\n 'Chile',\n CountryISO.Chile,\n '56'\n ],\n [\n 'China (中国)',\n CountryISO.China,\n '86'\n ],\n [\n 'Christmas Island',\n CountryISO.ChristmasIsland,\n '61',\n 2\n ],\n [\n 'Cocos (Keeling) Islands',\n CountryISO.Cocos,\n '61',\n 1\n ],\n [\n 'Colombia',\n CountryISO.Colombia,\n '57'\n ],\n [\n 'Comoros (‫جزر القمر‬‎)',\n CountryISO.Comoros,\n '269'\n ],\n [\n 'Congo (DRC) (Jamhuri ya Kidemokrasia ya Kongo)',\n CountryISO.CongoDRCJamhuriYaKidemokrasiaYaKongo,\n '243'\n ],\n [\n 'Congo (Republic) (Congo-Brazzaville)',\n CountryISO.CongoRepublicCongoBrazzaville,\n '242'\n ],\n [\n 'Cook Islands',\n CountryISO.CookIslands,\n '682'\n ],\n [\n 'Costa Rica',\n CountryISO.CostaRica,\n '506'\n ],\n [\n 'Côte d’Ivoire',\n CountryISO.CôteDIvoire,\n '225'\n ],\n [\n 'Croatia (Hrvatska)',\n CountryISO.Croatia,\n '385'\n ],\n [\n 'Cuba',\n CountryISO.Cuba,\n '53'\n ],\n [\n 'Curaçao',\n CountryISO.Curaçao,\n '599',\n 0\n ],\n [\n 'Cyprus (Κύπρος)',\n CountryISO.Cyprus,\n '357'\n ],\n [\n 'Czech Republic (Česká republika)',\n CountryISO.CzechRepublic,\n '420'\n ],\n [\n 'Denmark (Danmark)',\n CountryISO.Denmark,\n '45'\n ],\n [\n 'Djibouti',\n CountryISO.Djibouti,\n '253'\n ],\n [\n 'Dominica',\n CountryISO.Dominica,\n '1767'\n ],\n [\n 'Dominican Republic (República Dominicana)',\n CountryISO.DominicanRepublic,\n '1',\n 2,\n ['809', '829', '849']\n ],\n [\n 'Ecuador',\n CountryISO.Ecuador,\n '593'\n ],\n [\n 'Egypt (‫مصر‬‎)',\n CountryISO.Egypt,\n '20'\n ],\n [\n 'El Salvador',\n CountryISO.ElSalvador,\n '503'\n ],\n [\n 'Equatorial Guinea (Guinea Ecuatorial)',\n CountryISO.EquatorialGuinea,\n '240'\n ],\n [\n 'Eritrea',\n CountryISO.Eritrea,\n '291'\n ],\n [\n 'Estonia (Eesti)',\n CountryISO.Estonia,\n '372'\n ],\n [\n 'Ethiopia',\n CountryISO.Ethiopia,\n '251'\n ],\n [\n 'Falkland Islands (Islas Malvinas)',\n CountryISO.FalklandIslands,\n '500'\n ],\n [\n 'Faroe Islands (Føroyar)',\n CountryISO.FaroeIslands,\n '298'\n ],\n [\n 'Fiji',\n CountryISO.Fiji,\n '679'\n ],\n [\n 'Finland (Suomi)',\n CountryISO.Finland,\n '358',\n 0\n ],\n [\n 'France',\n CountryISO.France,\n '33'\n ],\n [\n 'French Guiana (Guyane française)',\n CountryISO.FrenchGuiana,\n '594'\n ],\n [\n 'French Polynesia (Polynésie française)',\n CountryISO.FrenchPolynesia,\n '689'\n ],\n [\n 'Gabon',\n CountryISO.Gabon,\n '241'\n ],\n [\n 'Gambia',\n CountryISO.Gambia,\n '220'\n ],\n [\n 'Georgia (საქართველო)',\n CountryISO.Georgia,\n '995'\n ],\n [\n 'Germany (Deutschland)',\n CountryISO.Germany,\n '49'\n ],\n [\n 'Ghana (Gaana)',\n CountryISO.Ghana,\n '233'\n ],\n [\n 'Gibraltar',\n CountryISO.Gibraltar,\n '350'\n ],\n [\n 'Greece (Ελλάδα)',\n CountryISO.Greece,\n '30'\n ],\n [\n 'Greenland (Kalaallit Nunaat)',\n CountryISO.Greenland,\n '299'\n ],\n [\n 'Grenada',\n CountryISO.Grenada,\n '1473'\n ],\n [\n 'Guadeloupe',\n CountryISO.Guadeloupe,\n '590',\n 0\n ],\n [\n 'Guam',\n 'gu',\n '1',\n 1,\n [\n '671',\n ]\n ],\n [\n 'Guatemala',\n CountryISO.Guatemala,\n '502'\n ],\n [\n 'Guernsey',\n CountryISO.Guernsey,\n '44',\n 1,\n [1481]\n ],\n [\n 'Guinea (Guinée)',\n CountryISO.Guinea,\n '224'\n ],\n [\n 'Guinea-Bissau (Guiné Bissau)',\n CountryISO.GuineaBissau,\n '245'\n ],\n [\n 'Guyana',\n CountryISO.Guyana,\n '592'\n ],\n [\n 'Haiti',\n CountryISO.Haiti,\n '509'\n ],\n [\n 'Honduras',\n CountryISO.Honduras,\n '504'\n ],\n [\n 'Hong Kong (香港)',\n CountryISO.HongKong,\n '852'\n ],\n [\n 'Hungary (Magyarország)',\n CountryISO.Hungary,\n '36'\n ],\n [\n 'Iceland (Ísland)',\n CountryISO.Iceland,\n '354'\n ],\n [\n 'India (भारत)',\n CountryISO.India,\n '91'\n ],\n [\n 'Indonesia',\n CountryISO.Indonesia,\n '62'\n ],\n [\n 'Iran (‫ایران‬‎)',\n CountryISO.Iran,\n '98'\n ],\n [\n 'Iraq (‫العراق‬‎)',\n CountryISO.Iraq,\n '964'\n ],\n [\n 'Ireland',\n CountryISO.Ireland,\n '353'\n ],\n [\n 'Isle of Man',\n CountryISO.IsleOfMan,\n '44',\n 2,\n [1624]\n ],\n [\n 'Israel (‫ישראל‬‎)',\n CountryISO.Israel,\n '972'\n ],\n [\n 'Italy (Italia)',\n CountryISO.Italy,\n '39',\n 0\n ],\n [\n 'Jamaica',\n 'jm',\n '1',\n 1,\n [\n '876',\n ]\n ],\n [\n 'Japan (日本)',\n CountryISO.Japan,\n '81'\n ],\n [\n 'Jersey',\n CountryISO.Jersey,\n '44',\n 3,\n [1534]\n ],\n [\n 'Jordan (‫الأردن‬‎)',\n CountryISO.Jordan,\n '962'\n ],\n [\n 'Kazakhstan (Казахстан)',\n CountryISO.Kazakhstan,\n '7',\n 1\n ],\n [\n 'Kenya',\n CountryISO.Kenya,\n '254'\n ],\n [\n 'Kiribati',\n CountryISO.Kiribati,\n '686'\n ],\n [\n 'Kosovo',\n CountryISO.Kosovo,\n '383'\n ],\n [\n 'Kuwait (‫الكويت‬‎)',\n CountryISO.Kuwait,\n '965'\n ],\n [\n 'Kyrgyzstan (Кыргызстан)',\n CountryISO.Kyrgyzstan,\n '996'\n ],\n [\n 'Laos (ລາວ)',\n CountryISO.Laos,\n '856'\n ],\n [\n 'Latvia (Latvija)',\n CountryISO.Latvia,\n '371'\n ],\n [\n 'Lebanon (‫لبنان‬‎)',\n CountryISO.Lebanon,\n '961'\n ],\n [\n 'Lesotho',\n CountryISO.Lesotho,\n '266'\n ],\n [\n 'Liberia',\n CountryISO.Liberia,\n '231'\n ],\n [\n 'Libya (‫ليبيا‬‎)',\n CountryISO.Libya,\n '218'\n ],\n [\n 'Liechtenstein',\n CountryISO.Liechtenstein,\n '423'\n ],\n [\n 'Lithuania (Lietuva)',\n CountryISO.Lithuania,\n '370'\n ],\n [\n 'Luxembourg',\n CountryISO.Luxembourg,\n '352'\n ],\n [\n 'Macau (澳門)',\n CountryISO.Macau,\n '853'\n ],\n [\n 'Macedonia (FYROM) (Македонија)',\n CountryISO.Macedonia,\n '389'\n ],\n [\n 'Madagascar (Madagasikara)',\n CountryISO.Madagascar,\n '261'\n ],\n [\n 'Malawi',\n CountryISO.Malawi,\n '265'\n ],\n [\n 'Malaysia',\n CountryISO.Malaysia,\n '60'\n ],\n [\n 'Maldives',\n CountryISO.Maldives,\n '960'\n ],\n [\n 'Mali',\n CountryISO.Mali,\n '223'\n ],\n [\n 'Malta',\n CountryISO.Malta,\n '356'\n ],\n [\n 'Marshall Islands',\n CountryISO.MarshallIslands,\n '692'\n ],\n [\n 'Martinique',\n CountryISO.Martinique,\n '596'\n ],\n [\n 'Mauritania (‫موريتانيا‬‎)',\n CountryISO.Mauritania,\n '222'\n ],\n [\n 'Mauritius (Moris)',\n CountryISO.Mauritius,\n '230'\n ],\n [\n 'Mayotte',\n CountryISO.Mayotte,\n '262',\n 1\n ],\n [\n 'Mexico (México)',\n CountryISO.Mexico,\n '52'\n ],\n [\n 'Micronesia',\n CountryISO.Micronesia,\n '691'\n ],\n [\n 'Moldova (Republica Moldova)',\n CountryISO.Moldova,\n '373'\n ],\n [\n 'Monaco',\n CountryISO.Monaco,\n '377'\n ],\n [\n 'Mongolia (Монгол)',\n CountryISO.Mongolia,\n '976'\n ],\n [\n 'Montenegro (Crna Gora)',\n CountryISO.Montenegro,\n '382'\n ],\n [\n 'Montserrat',\n 'ms',\n '1',\n 1,\n [\n '664',\n ]\n ],\n [\n 'Morocco (‫المغرب‬‎)',\n CountryISO.Morocco,\n '212',\n 0\n ],\n [\n 'Mozambique (Moçambique)',\n CountryISO.Mozambique,\n '258'\n ],\n [\n 'Myanmar (Burma) (မြန်မာ)',\n CountryISO.Myanmar,\n '95'\n ],\n [\n 'Namibia (Namibië)',\n CountryISO.Namibia,\n '264'\n ],\n [\n 'Nauru',\n CountryISO.Nauru,\n '674'\n ],\n [\n 'Nepal (नेपाल)',\n CountryISO.Nepal,\n '977'\n ],\n [\n 'Netherlands (Nederland)',\n CountryISO.Netherlands,\n '31'\n ],\n [\n 'New Caledonia (Nouvelle-Calédonie)',\n CountryISO.NewCaledonia,\n '687'\n ],\n [\n 'New Zealand',\n CountryISO.NewZealand,\n '64'\n ],\n [\n 'Nicaragua',\n CountryISO.Nicaragua,\n '505'\n ],\n [\n 'Niger (Nijar)',\n CountryISO.Niger,\n '227'\n ],\n [\n 'Nigeria',\n CountryISO.Nigeria,\n '234'\n ],\n [\n 'Niue',\n CountryISO.Niue,\n '683'\n ],\n [\n 'Norfolk Island',\n CountryISO.NorfolkIsland,\n '672'\n ],\n [\n 'North Korea (조선 민주주의 인민 공화국)',\n CountryISO.NorthKorea,\n '850'\n ],\n [\n 'Northern Mariana Islands',\n CountryISO.NorthernMarianaIslands,\n '1670'\n ],\n [\n 'Norway (Norge)',\n CountryISO.Norway,\n '47',\n 0\n ],\n [\n 'Oman (‫عُمان‬‎)',\n CountryISO.Oman,\n '968'\n ],\n [\n 'Pakistan (‫پاکستان‬‎)',\n CountryISO.Pakistan,\n '92'\n ],\n [\n 'Palau',\n CountryISO.Palau,\n '680'\n ],\n [\n 'Palestine (‫فلسطين‬‎)',\n CountryISO.Palestine,\n '970'\n ],\n [\n 'Panama (Panamá)',\n CountryISO.Panama,\n '507'\n ],\n [\n 'Papua New Guinea',\n CountryISO.PapuaNewGuinea,\n '675'\n ],\n [\n 'Paraguay',\n CountryISO.Paraguay,\n '595'\n ],\n [\n 'Peru (Perú)',\n CountryISO.Peru,\n '51'\n ],\n [\n 'Philippines',\n CountryISO.Philippines,\n '63'\n ],\n [\n 'Poland (Polska)',\n CountryISO.Poland,\n '48'\n ],\n [\n 'Portugal',\n CountryISO.Portugal,\n '351'\n ],\n [\n 'Puerto Rico',\n CountryISO.PuertoRico,\n '1',\n 3,\n ['787', '939']\n ],\n [\n 'Qatar (‫قطر‬‎)',\n CountryISO.Qatar,\n '974'\n ],\n [\n 'Réunion (La Réunion)',\n CountryISO.Réunion,\n '262',\n 0\n ],\n [\n 'Romania (România)',\n CountryISO.Romania,\n '40'\n ],\n [\n 'Russia (Россия)',\n CountryISO.Russia,\n '7',\n 0\n ],\n [\n 'Rwanda',\n CountryISO.Rwanda,\n '250'\n ],\n [\n 'Saint Barthélemy (Saint-Barthélemy)',\n CountryISO.SaintBarthélemy,\n '590',\n 1\n ],\n [\n 'Saint Helena',\n CountryISO.SaintHelena,\n '290'\n ],\n [\n 'Saint Kitts and Nevis',\n CountryISO.SaintKittsAndNevis,\n '1869'\n ],\n [\n 'Saint Lucia',\n 'lc',\n '1',\n 1,\n [\n '758',\n ]\n ],\n [\n 'Saint Martin (Saint-Martin (partie française))',\n CountryISO.SaintMartin,\n '590',\n 2\n ],\n [\n 'Saint Pierre and Miquelon (Saint-Pierre-et-Miquelon)',\n CountryISO.SaintPierreAndMiquelon,\n '508'\n ],\n [\n 'Saint Vincent and the Grenadines',\n 'vc',\n '1',\n 1,\n [\n '784',\n ]\n ],\n [\n 'Samoa',\n CountryISO.Samoa,\n '685'\n ],\n [\n 'San Marino',\n CountryISO.SanMarino,\n '378'\n ],\n [\n 'São Tomé and Príncipe (São Tomé e Príncipe)',\n CountryISO.SãoToméAndPríncipe,\n '239'\n ],\n [\n 'Saudi Arabia (‫المملكة العربية السعودية‬‎)',\n CountryISO.SaudiArabia,\n '966'\n ],\n [\n 'Senegal (Sénégal)',\n CountryISO.Senegal,\n '221'\n ],\n [\n 'Serbia (Србија)',\n CountryISO.Serbia,\n '381'\n ],\n [\n 'Seychelles',\n CountryISO.Seychelles,\n '248'\n ],\n [\n 'Sierra Leone',\n CountryISO.SierraLeone,\n '232'\n ],\n [\n 'Singapore',\n CountryISO.Singapore,\n '65'\n ],\n [\n 'Sint Maarten',\n 'sx',\n '1',\n 1,\n [\n '721',\n ]\n ],\n [\n 'Slovakia (Slovensko)',\n CountryISO.Slovakia,\n '421'\n ],\n [\n 'Slovenia (Slovenija)',\n CountryISO.Slovenia,\n '386'\n ],\n [\n 'Solomon Islands',\n CountryISO.SolomonIslands,\n '677'\n ],\n [\n 'Somalia (Soomaaliya)',\n CountryISO.Somalia,\n '252'\n ],\n [\n 'South Africa',\n CountryISO.SouthAfrica,\n '27'\n ],\n [\n 'South Korea (대한민국)',\n CountryISO.SouthKorea,\n '82'\n ],\n [\n 'South Sudan (‫جنوب السودان‬‎)',\n CountryISO.SouthSudan,\n '211'\n ],\n [\n 'Spain (España)',\n CountryISO.Spain,\n '34'\n ],\n [\n 'Sri Lanka (ශ්‍රී ලංකාව)',\n CountryISO.SriLanka,\n '94'\n ],\n [\n 'Sudan (‫السودان‬‎)',\n CountryISO.Sudan,\n '249'\n ],\n [\n 'Suriname',\n CountryISO.Suriname,\n '597'\n ],\n [\n 'Svalbard and Jan Mayen',\n CountryISO.SvalbardAndJanMayen,\n '47',\n 1\n ],\n [\n 'Swaziland',\n CountryISO.Swaziland,\n '268'\n ],\n [\n 'Sweden (Sverige)',\n CountryISO.Sweden,\n '46'\n ],\n [\n 'Switzerland (Schweiz)',\n CountryISO.Switzerland,\n '41'\n ],\n [\n 'Syria (‫سوريا‬‎)',\n CountryISO.Syria,\n '963'\n ],\n [\n 'Taiwan (台灣)',\n CountryISO.Taiwan,\n '886'\n ],\n [\n 'Tajikistan',\n CountryISO.Tajikistan,\n '992'\n ],\n [\n 'Tanzania',\n CountryISO.Tanzania,\n '255'\n ],\n [\n 'Thailand (ไทย)',\n CountryISO.Thailand,\n '66'\n ],\n [\n 'Timor-Leste',\n CountryISO.TimorLeste,\n '670'\n ],\n [\n 'Togo',\n CountryISO.Togo,\n '228'\n ],\n [\n 'Tokelau',\n CountryISO.Tokelau,\n '690'\n ],\n [\n 'Tonga',\n CountryISO.Tonga,\n '676'\n ],\n [\n 'Trinidad and Tobago',\n 'tt',\n '1',\n 1,\n [\n '868',\n ]\n ],\n [\n 'Tunisia (‫تونس‬‎)',\n CountryISO.Tunisia,\n '216'\n ],\n [\n 'Turkey (Türkiye)',\n CountryISO.Turkey,\n '90'\n ],\n [\n 'Turkmenistan',\n CountryISO.Turkmenistan,\n '993'\n ],\n [\n 'Turks and Caicos Islands',\n CountryISO.TurksAndCaicosIslands,\n '1649'\n ],\n [\n 'Tuvalu',\n CountryISO.Tuvalu,\n '688'\n ],\n [\n 'U.S. Virgin Islands',\n 'vi',\n '1',\n 1,\n [\n '340',\n ]\n ],\n [\n 'Uganda',\n CountryISO.Uganda,\n '256'\n ],\n [\n 'Ukraine (Україна)',\n CountryISO.Ukraine,\n '380'\n ],\n [\n 'United Arab Emirates (‫الإمارات العربية المتحدة‬‎)',\n CountryISO.UnitedArabEmirates,\n '971'\n ],\n [\n 'United Kingdom',\n CountryISO.UnitedKingdom,\n '44',\n 0\n ],\n [\n 'United States',\n CountryISO.UnitedStates,\n '1',\n 0\n ],\n [\n 'Uruguay',\n CountryISO.Uruguay,\n '598'\n ],\n [\n 'Uzbekistan (Oʻzbekiston)',\n CountryISO.Uzbekistan,\n '998'\n ],\n [\n 'Vanuatu',\n CountryISO.Vanuatu,\n '678'\n ],\n [\n 'Vatican City (Città del Vaticano)',\n CountryISO.VaticanCity,\n '39',\n 1\n ],\n [\n 'Venezuela',\n CountryISO.Venezuela,\n '58'\n ],\n [\n 'Vietnam (Việt Nam)',\n CountryISO.Vietnam,\n '84'\n ],\n [\n 'Wallis and Futuna',\n CountryISO.WallisAndFutuna,\n '681'\n ],\n [\n 'Western Sahara (‫الصحراء الغربية‬‎)',\n CountryISO.WesternSahara,\n '212',\n 1\n ],\n [\n 'Yemen (‫اليمن‬‎)',\n CountryISO.Yemen,\n '967'\n ],\n [\n 'Zambia',\n CountryISO.Zambia,\n '260'\n ],\n [\n 'Zimbabwe',\n CountryISO.Zimbabwe,\n '263'\n ],\n [\n 'Åland Islands',\n CountryISO.ÅlandIslands,\n '358',\n 1\n ]\n ];\n }\n}\nCountryCode.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.1\", ngImport: i0, type: CountryCode, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\nCountryCode.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.1\", ngImport: i0, type: CountryCode });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.1\", ngImport: i0, type: CountryCode, decorators: [{\n type: Injectable\n }] });\n\nvar SearchCountryField;\n(function (SearchCountryField) {\n SearchCountryField[\"DialCode\"] = \"dialCode\";\n SearchCountryField[\"Iso2\"] = \"iso2\";\n SearchCountryField[\"Name\"] = \"name\";\n SearchCountryField[\"All\"] = \"all\";\n})(SearchCountryField || (SearchCountryField = {}));\n\n/*\nWe use \"control: any\" instead of \"control: FormControl\" to silence:\n\"Property 'nativeElement' does not exist on type 'FormControl'\".\nThis happens because I've expanded control with nativeElement via\n'NativeElementInjectorDirective' to get an access to the element.\nMore about this approach and reasons for this:\nhttps://github.com/angular/angular/issues/18025\nhttps://stackoverflow.com/a/54075119/1617590\n*/\nconst phoneNumberValidator = (control) => {\n if (!control.value) {\n return;\n }\n // Find inside injected nativeElement and get its \"id\".\n const el = control.nativeElement;\n const inputBox = el\n ? el.querySelector('input[type=\"tel\"]')\n : undefined;\n if (inputBox) {\n const id = inputBox.id;\n const isCheckValidation = inputBox.getAttribute('validation');\n if (isCheckValidation === 'true') {\n const isRequired = control.errors && control.errors.required === true;\n const error = { validatePhoneNumber: { valid: false } };\n inputBox.setCustomValidity('Invalid field.');\n let number;\n try {\n number = lpn.PhoneNumberUtil.getInstance().parse(control.value.number, control.value.countryCode);\n }\n catch (e) {\n if (isRequired) {\n return error;\n }\n else {\n inputBox.setCustomValidity('');\n }\n }\n if (control.value) {\n // @ts-ignore\n if (!number) {\n return error;\n }\n else {\n if (!lpn.PhoneNumberUtil.getInstance().isValidNumberForRegion(number, control.value.countryCode)) {\n return error;\n }\n else {\n inputBox.setCustomValidity('');\n }\n }\n }\n }\n else if (isCheckValidation === 'false') {\n inputBox.setCustomValidity('');\n control.clearValidators();\n }\n }\n return;\n};\n\nvar PhoneNumberFormat;\n(function (PhoneNumberFormat) {\n PhoneNumberFormat[\"International\"] = \"INTERNATIONAL\";\n PhoneNumberFormat[\"National\"] = \"NATIONAL\";\n})(PhoneNumberFormat || (PhoneNumberFormat = {}));\n\n/*\n\"Property 'nativeElement' does not exist on type 'FormControl'\".\n'NativeElementInjectorDirective' injects nativeElement to each control,\nso we can access it from inside validator for example.\nMore about this approach and reasons for this:\nhttps://github.com/angular/angular/issues/18025\nhttps://stackoverflow.com/a/54075119/1617590\n*/\nclass NativeElementInjectorDirective {\n constructor(controlDir, host) {\n this.controlDir = controlDir;\n this.host = host;\n }\n ngOnInit() {\n if (this.controlDir.control) {\n // @ts-ignore\n this.controlDir.control['nativeElement'] = this.host.nativeElement;\n }\n }\n}\nNativeElementInjectorDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.1\", ngImport: i0, type: NativeElementInjectorDirective, deps: [{ token: i4.NgControl }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });\nNativeElementInjectorDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.1\", type: NativeElementInjectorDirective, selector: \"[ngModel], [formControl], [formControlName]\", ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.1\", ngImport: i0, type: NativeElementInjectorDirective, decorators: [{\n type: Directive,\n args: [{\n // tslint:disable-next-line: directive-selector\n selector: '[ngModel], [formControl], [formControlName]',\n }]\n }], ctorParameters: function () { return [{ type: i4.NgControl }, { type: i0.ElementRef }]; } });\n\nclass NgxIntlTelInputComponent {\n constructor(countryCodeData) {\n this.countryCodeData = countryCodeData;\n this.value = '';\n this.preferredCountries = [];\n this.enablePlaceholder = true;\n this.numberFormat = PhoneNumberFormat.International;\n this.cssClass = 'form-control';\n this.onlyCountries = [];\n this.enableAutoCountrySelect = true;\n this.searchCountryFlag = false;\n this.searchCountryField = [SearchCountryField.All];\n this.searchCountryPlaceholder = 'Search Country';\n this.selectFirstCountry = true;\n this.phoneValidation = true;\n this.inputId = 'phone';\n this.separateDialCode = false;\n this.countryChange = new EventEmitter();\n this.selectedCountry = {\n areaCodes: undefined,\n dialCode: '',\n htmlId: '',\n flagClass: '',\n iso2: '',\n name: '',\n placeHolder: '',\n priority: 0,\n };\n this.phoneNumber = '';\n this.allCountries = [];\n this.preferredCountriesInDropDown = [];\n // Has to be 'any' to prevent a need to install @types/google-libphonenumber by the package user...\n this.phoneUtil = lpn.PhoneNumberUtil.getInstance();\n this.disabled = false;\n this.errors = ['Phone number is required.'];\n this.countrySearchText = '';\n this.onTouched = () => { };\n this.propagateChange = (_) => { };\n // If this is not set, ngx-bootstrap will try to use the bs3 CSS (which is not what we've embedded) and will\n // Add the wrong classes and such\n setTheme('bs4');\n }\n ngOnInit() {\n this.init();\n }\n ngOnChanges(changes) {\n const selectedISO = changes['selectedCountryISO'];\n if (this.allCountries &&\n selectedISO &&\n selectedISO.currentValue !== selectedISO.previousValue) {\n this.updateSelectedCountry();\n }\n if (changes['preferredCountries']) {\n this.updatePreferredCountries();\n }\n this.checkSeparateDialCodeStyle();\n }\n /*\n This is a wrapper method to avoid calling this.ngOnInit() in writeValue().\n Ref: http://codelyzer.com/rules/no-life-cycle-call/\n */\n init() {\n this.fetchCountryData();\n if (this.preferredCountries.length) {\n this.updatePreferredCountries();\n }\n if (this.onlyCountries.length) {\n this.allCountries = this.allCountries.filter((c) => this.onlyCountries.includes(c.iso2));\n }\n if (this.selectFirstCountry) {\n if (this.preferredCountriesInDropDown.length) {\n this.setSelectedCountry(this.preferredCountriesInDropDown[0]);\n }\n else {\n this.setSelectedCountry(this.allCountries[0]);\n }\n }\n this.updateSelectedCountry();\n this.checkSeparateDialCodeStyle();\n }\n setSelectedCountry(country) {\n this.selectedCountry = country;\n this.countryChange.emit(country);\n }\n /**\n * Search country based on country name, iso2, dialCode or all of them.\n */\n searchCountry() {\n if (!this.countrySearchText) {\n this.countryList.nativeElement\n .querySelector('.iti__country-list li')\n .scrollIntoView({\n behavior: 'smooth',\n block: 'nearest',\n inline: 'nearest',\n });\n return;\n }\n const countrySearchTextLower = this.countrySearchText.toLowerCase();\n // @ts-ignore\n const country = this.allCountries.filter((c) => {\n if (this.searchCountryField.indexOf(SearchCountryField.All) > -1) {\n // Search in all fields\n if (c.iso2.toLowerCase().startsWith(countrySearchTextLower)) {\n return c;\n }\n if (c.name.toLowerCase().startsWith(countrySearchTextLower)) {\n return c;\n }\n if (c.dialCode.startsWith(this.countrySearchText)) {\n return c;\n }\n }\n else {\n // Or search by specific SearchCountryField(s)\n if (this.searchCountryField.indexOf(SearchCountryField.Iso2) > -1) {\n if (c.iso2.toLowerCase().startsWith(countrySearchTextLower)) {\n return c;\n }\n }\n if (this.searchCountryField.indexOf(SearchCountryField.Name) > -1) {\n if (c.name.toLowerCase().startsWith(countrySearchTextLower)) {\n return c;\n }\n }\n if (this.searchCountryField.indexOf(SearchCountryField.DialCode) > -1) {\n if (c.dialCode.startsWith(this.countrySearchText)) {\n return c;\n }\n }\n }\n });\n if (country.length > 0) {\n const el = this.countryList.nativeElement.querySelector('#' + country[0].htmlId);\n if (el) {\n el.scrollIntoView({\n behavior: 'smooth',\n block: 'nearest',\n inline: 'nearest',\n });\n }\n }\n this.checkSeparateDialCodeStyle();\n }\n onPhoneNumberChange() {\n let countryCode;\n // Handle the case where the user sets the value programatically based on a persisted ChangeData obj.\n if (this.phoneNumber && typeof this.phoneNumber === 'object') {\n const numberObj = this.phoneNumber;\n this.phoneNumber = numberObj.number;\n countryCode = numberObj.countryCode;\n }\n this.value = this.phoneNumber;\n countryCode = countryCode || this.selectedCountry.iso2;\n // @ts-ignore\n const number = this.getParsedNumber(this.phoneNumber, countryCode);\n // auto select country based on the extension (and areaCode if needed) (e.g select Canada if number starts with +1 416)\n if (this.enableAutoCountrySelect) {\n countryCode =\n number && number.getCountryCode()\n // @ts-ignore\n ? this.getCountryIsoCode(number.getCountryCode(), number)\n : this.selectedCountry.iso2;\n if (countryCode && countryCode !== this.selectedCountry.iso2) {\n const newCountry = this.allCountries\n .sort((a, b) => {\n return a.priority - b.priority;\n })\n .find((c) => c.iso2 === countryCode);\n if (newCountry) {\n this.selectedCountry = newCountry;\n }\n }\n }\n countryCode = countryCode ? countryCode : this.selectedCountry.iso2;\n this.checkSeparateDialCodeStyle();\n if (!this.value) {\n // Reason: avoid https://stackoverflow.com/a/54358133/1617590\n // tslint:disable-next-line: no-null-keyword\n // @ts-ignore\n this.propagateChange(null);\n }\n else {\n const intlNo = number\n ? this.phoneUtil.format(number, lpn.PhoneNumberFormat.INTERNATIONAL)\n : '';\n // parse phoneNumber if separate dial code is needed\n if (this.separateDialCode && intlNo) {\n this.value = this.removeDialCode(intlNo);\n }\n this.propagateChange({\n number: this.value,\n internationalNumber: intlNo,\n nationalNumber: number\n ? this.phoneUtil.format(number, lpn.PhoneNumberFormat.NATIONAL)\n : '',\n e164Number: number\n ? this.phoneUtil.format(number, lpn.PhoneNumberFormat.E164)\n : '',\n countryCode: countryCode.toUpperCase(),\n dialCode: '+' + this.selectedCountry.dialCode,\n });\n }\n }\n onCountrySelect(country, el) {\n this.setSelectedCountry(country);\n this.checkSeparateDialCodeStyle();\n if (this.phoneNumber && this.phoneNumber.length > 0) {\n this.value = this.phoneNumber;\n const number = this.getParsedNumber(this.phoneNumber, this.selectedCountry.iso2);\n const intlNo = number\n ? this.phoneUtil.format(number, lpn.PhoneNumberFormat.INTERNATIONAL)\n : '';\n // parse phoneNumber if separate dial code is needed\n if (this.separateDialCode && intlNo) {\n this.value = this.removeDialCode(intlNo);\n }\n this.propagateChange({\n number: this.value,\n internationalNumber: intlNo,\n nationalNumber: number\n ? this.phoneUtil.format(number, lpn.PhoneNumberFormat.NATIONAL)\n : '',\n e164Number: number\n ? this.phoneUtil.format(number, lpn.PhoneNumberFormat.E164)\n : '',\n countryCode: this.selectedCountry.iso2.toUpperCase(),\n dialCode: '+' + this.selectedCountry.dialCode,\n });\n }\n else {\n // Reason: avoid https://stackoverflow.com/a/54358133/1617590\n // tslint:disable-next-line: no-null-keyword\n // @ts-ignore\n this.propagateChange(null);\n }\n el.focus();\n }\n onInputKeyPress(event) {\n const allowedChars = /[0-9\\+\\-\\(\\)\\ ]/;\n const allowedCtrlChars = /[axcv]/; // Allows copy-pasting\n const allowedOtherKeys = [\n 'ArrowLeft',\n 'ArrowUp',\n 'ArrowRight',\n 'ArrowDown',\n 'Home',\n 'End',\n 'Insert',\n 'Delete',\n 'Backspace',\n ];\n if (!allowedChars.test(event.key) &&\n !(event.ctrlKey && allowedCtrlChars.test(event.key)) &&\n !allowedOtherKeys.includes(event.key)) {\n event.preventDefault();\n }\n }\n registerOnChange(fn) {\n this.propagateChange = fn;\n }\n registerOnTouched(fn) {\n this.onTouched = fn;\n }\n setDisabledState(isDisabled) {\n this.disabled = isDisabled;\n }\n writeValue(obj) {\n if (obj === undefined) {\n this.init();\n }\n this.phoneNumber = obj;\n setTimeout(() => {\n this.onPhoneNumberChange();\n }, 1);\n }\n resolvePlaceholder() {\n let placeholder = '';\n if (this.customPlaceholder) {\n placeholder = this.customPlaceholder;\n }\n else if (this.selectedCountry.placeHolder) {\n placeholder = this.selectedCountry.placeHolder;\n if (this.separateDialCode) {\n placeholder = this.removeDialCode(placeholder);\n }\n }\n return placeholder;\n }\n /* --------------------------------- Helpers -------------------------------- */\n /**\n * Returns parse PhoneNumber object.\n * @param phoneNumber string\n * @param countryCode string\n */\n getParsedNumber(phoneNumber, countryCode) {\n let number;\n try {\n number = this.phoneUtil.parse(phoneNumber, countryCode.toUpperCase());\n }\n catch (e) { }\n // @ts-ignore\n return number;\n }\n /**\n * Adjusts input alignment based on the dial code presentation style.\n */\n checkSeparateDialCodeStyle() {\n if (this.separateDialCode && this.selectedCountry) {\n const cntryCd = this.selectedCountry.dialCode;\n this.separateDialCodeClass =\n 'separate-dial-code iti-sdc-' + (cntryCd.length + 1);\n }\n else {\n this.separateDialCodeClass = '';\n }\n }\n /**\n * Cleans dialcode from phone number string.\n * @param phoneNumber string\n */\n removeDialCode(phoneNumber) {\n const number = this.getParsedNumber(phoneNumber, this.selectedCountry.iso2);\n phoneNumber = this.phoneUtil.format(number, lpn.PhoneNumberFormat[this.numberFormat]);\n if (phoneNumber.startsWith('+') && this.separateDialCode) {\n phoneNumber = phoneNumber.substr(phoneNumber.indexOf(' ') + 1);\n }\n return phoneNumber;\n }\n /**\n * Sifts through all countries and returns iso code of the primary country\n * based on the number provided.\n * @param countryCode country code in number format\n * @param number PhoneNumber object\n */\n getCountryIsoCode(countryCode, number) {\n // Will use this to match area code from the first numbers\n // @ts-ignore\n const rawNumber = number['values_']['2'].toString();\n // List of all countries with countryCode (can be more than one. e.x. US, CA, DO, PR all have +1 countryCode)\n const countries = this.allCountries.filter((c) => c.dialCode === countryCode.toString());\n // Main country is the country, which has no areaCodes specified in country-code.ts file.\n const mainCountry = countries.find((c) => c.areaCodes === undefined);\n // Secondary countries are all countries, which have areaCodes specified in country-code.ts file.\n const secondaryCountries = countries.filter((c) => c.areaCodes !== undefined);\n let matchedCountry = mainCountry ? mainCountry.iso2 : undefined;\n /*\n Iterate over each secondary country and check if nationalNumber starts with any of areaCodes available.\n If no matches found, fallback to the main country.\n */\n secondaryCountries.forEach((country) => {\n // @ts-ignore\n country.areaCodes.forEach((areaCode) => {\n if (rawNumber.startsWith(areaCode)) {\n matchedCountry = country.iso2;\n }\n });\n });\n return matchedCountry;\n }\n /**\n * Gets formatted example phone number from phoneUtil.\n * @param countryCode string\n */\n getPhoneNumberPlaceHolder(countryCode) {\n try {\n return this.phoneUtil.format(this.phoneUtil.getExampleNumber(countryCode), lpn.PhoneNumberFormat[this.numberFormat]);\n }\n catch (e) {\n // @ts-ignore\n return e;\n }\n }\n /**\n * Clearing the list to avoid duplicates (https://github.com/webcat12345/ngx-intl-tel-input/issues/248)\n */\n fetchCountryData() {\n this.allCountries = [];\n this.countryCodeData.allCountries.forEach((c) => {\n const country = {\n name: c[0].toString(),\n iso2: c[1].toString(),\n dialCode: c[2].toString(),\n priority: +c[3] || 0,\n areaCodes: c[4] || undefined,\n htmlId: `iti-0__item-${c[1].toString()}`,\n flagClass: `iti__${c[1].toString().toLocaleLowerCase()}`,\n placeHolder: '',\n };\n if (this.enablePlaceholder) {\n country.placeHolder = this.getPhoneNumberPlaceHolder(country.iso2.toUpperCase());\n }\n this.allCountries.push(country);\n });\n }\n /**\n * Populates preferredCountriesInDropDown with prefferred countries.\n */\n updatePreferredCountries() {\n if (this.preferredCountries.length) {\n this.preferredCountriesInDropDown = [];\n this.preferredCountries.forEach((iso2) => {\n const preferredCountry = this.allCountries.filter((c) => {\n return c.iso2 === iso2;\n });\n this.preferredCountriesInDropDown.push(preferredCountry[0]);\n });\n }\n }\n /**\n * Updates selectedCountry.\n */\n updateSelectedCountry() {\n if (this.selectedCountryISO) {\n // @ts-ignore\n this.selectedCountry = this.allCountries.find((c) => {\n return c.iso2.toLowerCase() === this.selectedCountryISO.toLowerCase();\n });\n if (this.selectedCountry) {\n if (this.phoneNumber) {\n this.onPhoneNumberChange();\n }\n else {\n // Reason: avoid https://stackoverflow.com/a/54358133/1617590\n // tslint:disable-next-line: no-null-keyword\n // @ts-ignore\n this.propagateChange(null);\n }\n }\n }\n }\n}\nNgxIntlTelInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.1\", ngImport: i0, type: NgxIntlTelInputComponent, deps: [{ token: CountryCode }], target: i0.ɵɵFactoryTarget.Component });\nNgxIntlTelInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.3.1\", type: NgxIntlTelInputComponent, selector: \"ngx-intl-tel-input\", inputs: { value: \"value\", preferredCountries: \"preferredCountries\", enablePlaceholder: \"enablePlaceholder\", customPlaceholder: \"customPlaceholder\", numberFormat: \"numberFormat\", cssClass: \"cssClass\", onlyCountries: \"onlyCountries\", enableAutoCountrySelect: \"enableAutoCountrySelect\", searchCountryFlag: \"searchCountryFlag\", searchCountryField: \"searchCountryField\", searchCountryPlaceholder: \"searchCountryPlaceholder\", maxLength: \"maxLength\", selectFirstCountry: \"selectFirstCountry\", selectedCountryISO: \"selectedCountryISO\", phoneValidation: \"phoneValidation\", inputId: \"inputId\", separateDialCode: \"separateDialCode\" }, outputs: { countryChange: \"countryChange\" }, providers: [\n CountryCode,\n {\n provide: NG_VALUE_ACCESSOR,\n // tslint:disable-next-line:no-forward-ref\n useExisting: forwardRef(() => NgxIntlTelInputComponent),\n multi: true,\n },\n {\n provide: NG_VALIDATORS,\n useValue: phoneNumberValidator,\n multi: true,\n },\n ], viewQueries: [{ propertyName: \"countryList\", first: true, predicate: [\"countryList\"], descendants: true }], usesOnChanges: true, ngImport: i0, template: \"
\\n\\t
\\n\\t\\t
\\n\\t\\t\\t
\\n\\t\\t\\t
+{{selectedCountry.dialCode}}
\\n\\t\\t\\t
\\n\\t\\t
\\n\\t\\t
\\n\\t\\t\\t
\\n\\t\\t\\t\\t\\n\\t\\t\\t
\\n\\t\\t\\t
    \\n\\t\\t\\t\\t
  • \\n\\t\\t\\t\\t\\t
    \\n\\t\\t\\t\\t\\t\\t
    \\n\\t\\t\\t\\t\\t
    \\n\\t\\t\\t\\t\\t{{country.name}}\\n\\t\\t\\t\\t\\t+{{country.dialCode}}\\n\\t\\t\\t\\t
  • \\n\\t\\t\\t\\t
  • \\n\\t\\t\\t\\t
  • \\n\\t\\t\\t\\t\\t
    \\n\\t\\t\\t\\t\\t\\t
    \\n\\t\\t\\t\\t\\t
    \\n\\t\\t\\t\\t\\t{{country.name}}\\n\\t\\t\\t\\t\\t+{{country.dialCode}}\\n\\t\\t\\t\\t
  • \\n\\t\\t\\t
\\n\\t\\t
\\n\\t
\\n\\t\\n
\\n\", styles: [\".dropup,.dropright,.dropdown,.dropleft{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:\\\"\\\";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty:after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-left{right:auto;left:0}.dropdown-menu-right{right:0;left:auto}@media (min-width: 576px){.dropdown-menu-sm-left{right:auto;left:0}.dropdown-menu-sm-right{right:0;left:auto}}@media (min-width: 768px){.dropdown-menu-md-left{right:auto;left:0}.dropdown-menu-md-right{right:0;left:auto}}@media (min-width: 992px){.dropdown-menu-lg-left{right:auto;left:0}.dropdown-menu-lg-right{right:0;left:auto}}@media (min-width: 1200px){.dropdown-menu-xl-left{right:auto;left:0}.dropdown-menu-xl-right{right:0;left:auto}}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:\\\"\\\";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:\\\"\\\";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-toggle:after{vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:\\\"\\\"}.dropleft .dropdown-toggle:after{display:none}.dropleft .dropdown-toggle:before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:\\\"\\\";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle:empty:after{margin-left:0}.dropleft .dropdown-toggle:before{vertical-align:0}.dropdown-menu[x-placement^=top],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:transparent;border:0}.dropdown-item:hover,.dropdown-item:focus{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#007bff}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1.5rem;color:#212529}\\n\", \"li.iti__country:hover{background-color:#0000000d}.iti__selected-flag.dropdown-toggle:after{content:none}.iti__flag-container.disabled{cursor:default!important}.iti.iti--allow-dropdown .flag-container.disabled:hover .iti__selected-flag{background:none}.country-dropdown{border:1px solid #ccc;width:-moz-fit-content;width:fit-content;padding:1px;border-collapse:collapse}.search-container{position:relative}.search-container input{width:100%;border:none;border-bottom:1px solid #ccc;padding-left:10px}.search-icon{position:absolute;z-index:2;width:25px;margin:1px 10px}.iti__country-list{position:relative;border:none}.iti input#country-search-box{padding-left:6px}.iti .selected-dial-code{margin-left:6px}.iti.separate-dial-code .iti__selected-flag,.iti.separate-dial-code.iti--allow-dropdown.iti-sdc-2 .iti__selected-flag,.iti.separate-dial-code.iti--allow-dropdown.iti-sdc-3 .iti__selected-flag,.iti.separate-dial-code.iti--allow-dropdown.iti-sdc-4 .iti__selected-flag{width:93px}.iti.separate-dial-code input,.iti.separate-dial-code.iti--allow-dropdown.iti-sdc-2 input,.iti.separate-dial-code.iti--allow-dropdown.iti-sdc-3 input,.iti.separate-dial-code.iti--allow-dropdown.iti-sdc-4 input{padding-left:98px}\\n\"], directives: [{ type: i2.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { type: i3.BsDropdownDirective, selector: \"[bsDropdown],[dropdown]\", inputs: [\"autoClose\", \"isAnimated\", \"insideClick\", \"isDisabled\", \"isOpen\", \"placement\", \"triggers\", \"container\", \"dropup\"], outputs: [\"onShown\", \"onHidden\", \"isOpenChange\"], exportAs: [\"bs-dropdown\"] }, { type: i3.BsDropdownToggleDirective, selector: \"[bsDropdownToggle],[dropdownToggle]\", exportAs: [\"bs-dropdown-toggle\"] }, { type: i2.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }, { type: i3.BsDropdownMenuDirective, selector: \"[bsDropdownMenu],[dropdownMenu]\", exportAs: [\"bs-dropdown-menu\"] }, { type: i4.DefaultValueAccessor, selector: \"input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]\" }, { type: i4.NgControlStatus, selector: \"[formControlName],[ngModel],[formControl]\" }, { type: i4.NgModel, selector: \"[ngModel]:not([formControlName]):not([formControl])\", inputs: [\"name\", \"disabled\", \"ngModel\", \"ngModelOptions\"], outputs: [\"ngModelChange\"], exportAs: [\"ngModel\"] }, { type: NativeElementInjectorDirective, selector: \"[ngModel], [formControl], [formControlName]\" }, { type: i2.NgForOf, selector: \"[ngFor][ngForOf]\", inputs: [\"ngForOf\", \"ngForTrackBy\", \"ngForTemplate\"] }] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.1\", ngImport: i0, type: NgxIntlTelInputComponent, decorators: [{\n type: Component,\n args: [{ selector: 'ngx-intl-tel-input', providers: [\n CountryCode,\n {\n provide: NG_VALUE_ACCESSOR,\n // tslint:disable-next-line:no-forward-ref\n useExisting: forwardRef(() => NgxIntlTelInputComponent),\n multi: true,\n },\n {\n provide: NG_VALIDATORS,\n useValue: phoneNumberValidator,\n multi: true,\n },\n ], template: \"
\\n\\t
\\n\\t\\t
\\n\\t\\t\\t
\\n\\t\\t\\t
+{{selectedCountry.dialCode}}
\\n\\t\\t\\t
\\n\\t\\t
\\n\\t\\t
\\n\\t\\t\\t
\\n\\t\\t\\t\\t\\n\\t\\t\\t
\\n\\t\\t\\t
    \\n\\t\\t\\t\\t
  • \\n\\t\\t\\t\\t\\t
    \\n\\t\\t\\t\\t\\t\\t
    \\n\\t\\t\\t\\t\\t
    \\n\\t\\t\\t\\t\\t{{country.name}}\\n\\t\\t\\t\\t\\t+{{country.dialCode}}\\n\\t\\t\\t\\t
  • \\n\\t\\t\\t\\t
  • \\n\\t\\t\\t\\t
  • \\n\\t\\t\\t\\t\\t
    \\n\\t\\t\\t\\t\\t\\t
    \\n\\t\\t\\t\\t\\t
    \\n\\t\\t\\t\\t\\t{{country.name}}\\n\\t\\t\\t\\t\\t+{{country.dialCode}}\\n\\t\\t\\t\\t
  • \\n\\t\\t\\t
\\n\\t\\t
\\n\\t
\\n\\t\\n
\\n\", styles: [\".dropup,.dropright,.dropdown,.dropleft{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:\\\"\\\";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty:after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-left{right:auto;left:0}.dropdown-menu-right{right:0;left:auto}@media (min-width: 576px){.dropdown-menu-sm-left{right:auto;left:0}.dropdown-menu-sm-right{right:0;left:auto}}@media (min-width: 768px){.dropdown-menu-md-left{right:auto;left:0}.dropdown-menu-md-right{right:0;left:auto}}@media (min-width: 992px){.dropdown-menu-lg-left{right:auto;left:0}.dropdown-menu-lg-right{right:0;left:auto}}@media (min-width: 1200px){.dropdown-menu-xl-left{right:auto;left:0}.dropdown-menu-xl-right{right:0;left:auto}}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:\\\"\\\";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:\\\"\\\";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-toggle:after{vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:\\\"\\\"}.dropleft .dropdown-toggle:after{display:none}.dropleft .dropdown-toggle:before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:\\\"\\\";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle:empty:after{margin-left:0}.dropleft .dropdown-toggle:before{vertical-align:0}.dropdown-menu[x-placement^=top],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:transparent;border:0}.dropdown-item:hover,.dropdown-item:focus{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#007bff}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1.5rem;color:#212529}\\n\", \"li.iti__country:hover{background-color:#0000000d}.iti__selected-flag.dropdown-toggle:after{content:none}.iti__flag-container.disabled{cursor:default!important}.iti.iti--allow-dropdown .flag-container.disabled:hover .iti__selected-flag{background:none}.country-dropdown{border:1px solid #ccc;width:-moz-fit-content;width:fit-content;padding:1px;border-collapse:collapse}.search-container{position:relative}.search-container input{width:100%;border:none;border-bottom:1px solid #ccc;padding-left:10px}.search-icon{position:absolute;z-index:2;width:25px;margin:1px 10px}.iti__country-list{position:relative;border:none}.iti input#country-search-box{padding-left:6px}.iti .selected-dial-code{margin-left:6px}.iti.separate-dial-code .iti__selected-flag,.iti.separate-dial-code.iti--allow-dropdown.iti-sdc-2 .iti__selected-flag,.iti.separate-dial-code.iti--allow-dropdown.iti-sdc-3 .iti__selected-flag,.iti.separate-dial-code.iti--allow-dropdown.iti-sdc-4 .iti__selected-flag{width:93px}.iti.separate-dial-code input,.iti.separate-dial-code.iti--allow-dropdown.iti-sdc-2 input,.iti.separate-dial-code.iti--allow-dropdown.iti-sdc-3 input,.iti.separate-dial-code.iti--allow-dropdown.iti-sdc-4 input{padding-left:98px}\\n\"] }]\n }], ctorParameters: function () { return [{ type: CountryCode }]; }, propDecorators: { value: [{\n type: Input\n }], preferredCountries: [{\n type: Input\n }], enablePlaceholder: [{\n type: Input\n }], customPlaceholder: [{\n type: Input\n }], numberFormat: [{\n type: Input\n }], cssClass: [{\n type: Input\n }], onlyCountries: [{\n type: Input\n }], enableAutoCountrySelect: [{\n type: Input\n }], searchCountryFlag: [{\n type: Input\n }], searchCountryField: [{\n type: Input\n }], searchCountryPlaceholder: [{\n type: Input\n }], maxLength: [{\n type: Input\n }], selectFirstCountry: [{\n type: Input\n }], selectedCountryISO: [{\n type: Input\n }], phoneValidation: [{\n type: Input\n }], inputId: [{\n type: Input\n }], separateDialCode: [{\n type: Input\n }], countryChange: [{\n type: Output\n }], countryList: [{\n type: ViewChild,\n args: ['countryList']\n }] } });\n\nconst dropdownModuleForRoot = BsDropdownModule.forRoot();\nclass NgxIntlTelInputModule {\n}\nNgxIntlTelInputModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.1\", ngImport: i0, type: NgxIntlTelInputModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nNgxIntlTelInputModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.3.1\", ngImport: i0, type: NgxIntlTelInputModule, declarations: [NgxIntlTelInputComponent, NativeElementInjectorDirective], imports: [CommonModule,\n FormsModule,\n ReactiveFormsModule, i3.BsDropdownModule], exports: [NgxIntlTelInputComponent, NativeElementInjectorDirective] });\nNgxIntlTelInputModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.3.1\", ngImport: i0, type: NgxIntlTelInputModule, imports: [[\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n dropdownModuleForRoot,\n ]] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.1\", ngImport: i0, type: NgxIntlTelInputModule, decorators: [{\n type: NgModule,\n args: [{\n declarations: [NgxIntlTelInputComponent, NativeElementInjectorDirective],\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n dropdownModuleForRoot,\n ],\n exports: [NgxIntlTelInputComponent, NativeElementInjectorDirective],\n }]\n }] });\n\n/*\n * Public API Surface of ngx-intl-tel-input\n */\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { CountryISO, NativeElementInjectorDirective, NgxIntlTelInputComponent, NgxIntlTelInputModule, PhoneNumberFormat, SearchCountryField, dropdownModuleForRoot };\n"],"names":["lpn","i0","Injectable","Directive","EventEmitter","forwardRef","Component","Input","Output","ViewChild","NgModule","i4","NG_VALUE_ACCESSOR","NG_VALIDATORS","FormsModule","ReactiveFormsModule","setTheme","i2","CommonModule","i3","BsDropdownModule","CountryISO","CountryCode","constructor","allCountries","Afghanistan","Albania","Algeria","Andorra","Angola","Argentina","Armenia","Aruba","Australia","Austria","Azerbaijan","Bahrain","Bangladesh","Belarus","Belgium","Belize","Benin","Bhutan","Bolivia","BosniaAndHerzegovina","Botswana","Brazil","BritishIndianOceanTerritory","Brunei","Bulgaria","BurkinaFaso","Burundi","Cambodia","Cameroon","Canada","CapeVerde","CaribbeanNetherlands","CentralAfricanRepublic","Chad","Chile","China","ChristmasIsland","Cocos","Colombia","Comoros","CongoDRCJamhuriYaKidemokrasiaYaKongo","CongoRepublicCongoBrazzaville","CookIslands","CostaRica","CôteDIvoire","Croatia","Cuba","Curaçao","Cyprus","CzechRepublic","Denmark","Djibouti","Dominica","DominicanRepublic","Ecuador","Egypt","ElSalvador","EquatorialGuinea","Eritrea","Estonia","Ethiopia","FalklandIslands","FaroeIslands","Fiji","Finland","France","FrenchGuiana","FrenchPolynesia","Gabon","Gambia","Georgia","Germany","Ghana","Gibraltar","Greece","Greenland","Grenada","Guadeloupe","Guatemala","Guernsey","Guinea","GuineaBissau","Guyana","Haiti","Honduras","HongKong","Hungary","Iceland","India","Indonesia","Iran","Iraq","Ireland","IsleOfMan","Israel","Italy","Japan","Jersey","Jordan","Kazakhstan","Kenya","Kiribati","Kosovo","Kuwait","Kyrgyzstan","Laos","Latvia","Lebanon","Lesotho","Liberia","Libya","Liechtenstein","Lithuania","Luxembourg","Macau","Macedonia","Madagascar","Malawi","Malaysia","Maldives","Mali","Malta","MarshallIslands","Martinique","Mauritania","Mauritius","Mayotte","Mexico","Micronesia","Moldova","Monaco","Mongolia","Montenegro","Morocco","Mozambique","Myanmar","Namibia","Nauru","Nepal","Netherlands","NewCaledonia","NewZealand","Nicaragua","Niger","Nigeria","Niue","NorfolkIsland","NorthKorea","NorthernMarianaIslands","Norway","Oman","Pakistan","Palau","Palestine","Panama","PapuaNewGuinea","Paraguay","Peru","Philippines","Poland","Portugal","PuertoRico","Qatar","Réunion","Romania","Russia","Rwanda","SaintBarthélemy","SaintHelena","SaintKittsAndNevis","SaintMartin","SaintPierreAndMiquelon","Samoa","SanMarino","SãoToméAndPríncipe","SaudiArabia","Senegal","Serbia","Seychelles","SierraLeone","Singapore","Slovakia","Slovenia","SolomonIslands","Somalia","SouthAfrica","SouthKorea","SouthSudan","Spain","SriLanka","Sudan","Suriname","SvalbardAndJanMayen","Swaziland","Sweden","Switzerland","Syria","Taiwan","Tajikistan","Tanzania","Thailand","TimorLeste","Togo","Tokelau","Tonga","Tunisia","Turkey","Turkmenistan","TurksAndCaicosIslands","Tuvalu","Uganda","Ukraine","UnitedArabEmirates","UnitedKingdom","UnitedStates","Uruguay","Uzbekistan","Vanuatu","VaticanCity","Venezuela","Vietnam","WallisAndFutuna","WesternSahara","Yemen","Zambia","Zimbabwe","ÅlandIslands","ɵfac","ɵprov","type","SearchCountryField","phoneNumberValidator","control","value","el","nativeElement","inputBox","querySelector","undefined","id","isCheckValidation","getAttribute","isRequired","errors","required","error","validatePhoneNumber","valid","setCustomValidity","number","PhoneNumberUtil","getInstance","parse","countryCode","e","isValidNumberForRegion","clearValidators","PhoneNumberFormat","NativeElementInjectorDirective","controlDir","host","ngOnInit","NgControl","ElementRef","ɵdir","args","selector","NgxIntlTelInputComponent","countryCodeData","preferredCountries","enablePlaceholder","numberFormat","International","cssClass","onlyCountries","enableAutoCountrySelect","searchCountryFlag","searchCountryField","All","searchCountryPlaceholder","selectFirstCountry","phoneValidation","inputId","separateDialCode","countryChange","selectedCountry","areaCodes","dialCode","htmlId","flagClass","iso2","name","placeHolder","priority","phoneNumber","preferredCountriesInDropDown","phoneUtil","disabled","countrySearchText","onTouched","propagateChange","_","init","ngOnChanges","changes","selectedISO","currentValue","previousValue","updateSelectedCountry","updatePreferredCountries","checkSeparateDialCodeStyle","fetchCountryData","length","filter","c","includes","setSelectedCountry","country","emit","searchCountry","countryList","scrollIntoView","behavior","block","inline","countrySearchTextLower","toLowerCase","indexOf","startsWith","Iso2","Name","DialCode","onPhoneNumberChange","numberObj","getParsedNumber","getCountryCode","getCountryIsoCode","newCountry","sort","a","b","find","intlNo","format","INTERNATIONAL","removeDialCode","internationalNumber","nationalNumber","NATIONAL","e164Number","E164","toUpperCase","onCountrySelect","focus","onInputKeyPress","event","allowedChars","allowedCtrlChars","allowedOtherKeys","test","key","ctrlKey","preventDefault","registerOnChange","fn","registerOnTouched","setDisabledState","isDisabled","writeValue","obj","setTimeout","resolvePlaceholder","placeholder","customPlaceholder","cntryCd","separateDialCodeClass","substr","rawNumber","toString","countries","mainCountry","secondaryCountries","matchedCountry","forEach","areaCode","getPhoneNumberPlaceHolder","getExampleNumber","toLocaleLowerCase","push","preferredCountry","selectedCountryISO","ɵcmp","provide","useExisting","multi","useValue","NgClass","BsDropdownDirective","BsDropdownToggleDirective","NgIf","BsDropdownMenuDirective","DefaultValueAccessor","NgControlStatus","NgModel","NgForOf","providers","template","styles","maxLength","dropdownModuleForRoot","forRoot","NgxIntlTelInputModule","ɵmod","ɵinj","declarations","imports","exports"],"sourceRoot":"webpack:///","x_google_ignoreList":[]}