@aws-sdk/client-workmail 3.183.0 → 3.185.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (175) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/README.md +1 -1
  3. package/dist-cjs/WorkMail.js +105 -0
  4. package/dist-cjs/commands/AssumeImpersonationRoleCommand.js +36 -0
  5. package/dist-cjs/commands/CreateImpersonationRoleCommand.js +36 -0
  6. package/dist-cjs/commands/DeleteImpersonationRoleCommand.js +36 -0
  7. package/dist-cjs/commands/GetImpersonationRoleCommand.js +36 -0
  8. package/dist-cjs/commands/GetImpersonationRoleEffectCommand.js +36 -0
  9. package/dist-cjs/commands/ListImpersonationRolesCommand.js +36 -0
  10. package/dist-cjs/commands/UpdateImpersonationRoleCommand.js +36 -0
  11. package/dist-cjs/commands/index.js +7 -0
  12. package/dist-cjs/models/models_0.js +97 -19
  13. package/dist-cjs/pagination/ListImpersonationRolesPaginator.js +36 -0
  14. package/dist-cjs/pagination/index.js +1 -0
  15. package/dist-cjs/protocols/Aws_json1_1.js +628 -5
  16. package/dist-es/WorkMail.js +406 -294
  17. package/dist-es/WorkMailClient.js +28 -22
  18. package/dist-es/commands/AssociateDelegateToResourceCommand.js +28 -21
  19. package/dist-es/commands/AssociateMemberToGroupCommand.js +28 -21
  20. package/dist-es/commands/AssumeImpersonationRoleCommand.js +39 -0
  21. package/dist-es/commands/CancelMailboxExportJobCommand.js +28 -21
  22. package/dist-es/commands/CreateAliasCommand.js +28 -21
  23. package/dist-es/commands/CreateAvailabilityConfigurationCommand.js +28 -21
  24. package/dist-es/commands/CreateGroupCommand.js +28 -21
  25. package/dist-es/commands/CreateImpersonationRoleCommand.js +39 -0
  26. package/dist-es/commands/CreateMobileDeviceAccessRuleCommand.js +28 -21
  27. package/dist-es/commands/CreateOrganizationCommand.js +28 -21
  28. package/dist-es/commands/CreateResourceCommand.js +28 -21
  29. package/dist-es/commands/CreateUserCommand.js +28 -21
  30. package/dist-es/commands/DeleteAccessControlRuleCommand.js +28 -21
  31. package/dist-es/commands/DeleteAliasCommand.js +28 -21
  32. package/dist-es/commands/DeleteAvailabilityConfigurationCommand.js +28 -21
  33. package/dist-es/commands/DeleteEmailMonitoringConfigurationCommand.js +28 -21
  34. package/dist-es/commands/DeleteGroupCommand.js +28 -21
  35. package/dist-es/commands/DeleteImpersonationRoleCommand.js +39 -0
  36. package/dist-es/commands/DeleteMailboxPermissionsCommand.js +28 -21
  37. package/dist-es/commands/DeleteMobileDeviceAccessOverrideCommand.js +28 -21
  38. package/dist-es/commands/DeleteMobileDeviceAccessRuleCommand.js +28 -21
  39. package/dist-es/commands/DeleteOrganizationCommand.js +28 -21
  40. package/dist-es/commands/DeleteResourceCommand.js +28 -21
  41. package/dist-es/commands/DeleteRetentionPolicyCommand.js +28 -21
  42. package/dist-es/commands/DeleteUserCommand.js +28 -21
  43. package/dist-es/commands/DeregisterFromWorkMailCommand.js +28 -21
  44. package/dist-es/commands/DeregisterMailDomainCommand.js +28 -21
  45. package/dist-es/commands/DescribeEmailMonitoringConfigurationCommand.js +28 -21
  46. package/dist-es/commands/DescribeGroupCommand.js +28 -21
  47. package/dist-es/commands/DescribeInboundDmarcSettingsCommand.js +28 -21
  48. package/dist-es/commands/DescribeMailboxExportJobCommand.js +28 -21
  49. package/dist-es/commands/DescribeOrganizationCommand.js +28 -21
  50. package/dist-es/commands/DescribeResourceCommand.js +28 -21
  51. package/dist-es/commands/DescribeUserCommand.js +28 -21
  52. package/dist-es/commands/DisassociateDelegateFromResourceCommand.js +28 -21
  53. package/dist-es/commands/DisassociateMemberFromGroupCommand.js +28 -21
  54. package/dist-es/commands/GetAccessControlEffectCommand.js +28 -21
  55. package/dist-es/commands/GetDefaultRetentionPolicyCommand.js +28 -21
  56. package/dist-es/commands/GetImpersonationRoleCommand.js +39 -0
  57. package/dist-es/commands/GetImpersonationRoleEffectCommand.js +39 -0
  58. package/dist-es/commands/GetMailDomainCommand.js +28 -21
  59. package/dist-es/commands/GetMailboxDetailsCommand.js +28 -21
  60. package/dist-es/commands/GetMobileDeviceAccessEffectCommand.js +28 -21
  61. package/dist-es/commands/GetMobileDeviceAccessOverrideCommand.js +28 -21
  62. package/dist-es/commands/ListAccessControlRulesCommand.js +28 -21
  63. package/dist-es/commands/ListAliasesCommand.js +28 -21
  64. package/dist-es/commands/ListAvailabilityConfigurationsCommand.js +28 -21
  65. package/dist-es/commands/ListGroupMembersCommand.js +28 -21
  66. package/dist-es/commands/ListGroupsCommand.js +28 -21
  67. package/dist-es/commands/ListImpersonationRolesCommand.js +39 -0
  68. package/dist-es/commands/ListMailDomainsCommand.js +28 -21
  69. package/dist-es/commands/ListMailboxExportJobsCommand.js +28 -21
  70. package/dist-es/commands/ListMailboxPermissionsCommand.js +28 -21
  71. package/dist-es/commands/ListMobileDeviceAccessOverridesCommand.js +28 -21
  72. package/dist-es/commands/ListMobileDeviceAccessRulesCommand.js +28 -21
  73. package/dist-es/commands/ListOrganizationsCommand.js +28 -21
  74. package/dist-es/commands/ListResourceDelegatesCommand.js +28 -21
  75. package/dist-es/commands/ListResourcesCommand.js +28 -21
  76. package/dist-es/commands/ListTagsForResourceCommand.js +28 -21
  77. package/dist-es/commands/ListUsersCommand.js +28 -21
  78. package/dist-es/commands/PutAccessControlRuleCommand.js +28 -21
  79. package/dist-es/commands/PutEmailMonitoringConfigurationCommand.js +28 -21
  80. package/dist-es/commands/PutInboundDmarcSettingsCommand.js +28 -21
  81. package/dist-es/commands/PutMailboxPermissionsCommand.js +28 -21
  82. package/dist-es/commands/PutMobileDeviceAccessOverrideCommand.js +28 -21
  83. package/dist-es/commands/PutRetentionPolicyCommand.js +28 -21
  84. package/dist-es/commands/RegisterMailDomainCommand.js +28 -21
  85. package/dist-es/commands/RegisterToWorkMailCommand.js +28 -21
  86. package/dist-es/commands/ResetPasswordCommand.js +28 -21
  87. package/dist-es/commands/StartMailboxExportJobCommand.js +28 -21
  88. package/dist-es/commands/TagResourceCommand.js +28 -21
  89. package/dist-es/commands/TestAvailabilityConfigurationCommand.js +28 -21
  90. package/dist-es/commands/UntagResourceCommand.js +28 -21
  91. package/dist-es/commands/UpdateAvailabilityConfigurationCommand.js +28 -21
  92. package/dist-es/commands/UpdateDefaultMailDomainCommand.js +28 -21
  93. package/dist-es/commands/UpdateImpersonationRoleCommand.js +39 -0
  94. package/dist-es/commands/UpdateMailboxQuotaCommand.js +28 -21
  95. package/dist-es/commands/UpdateMobileDeviceAccessRuleCommand.js +28 -21
  96. package/dist-es/commands/UpdatePrimaryEmailAddressCommand.js +28 -21
  97. package/dist-es/commands/UpdateResourceCommand.js +28 -21
  98. package/dist-es/commands/index.js +7 -0
  99. package/dist-es/endpoints.js +8 -8
  100. package/dist-es/models/WorkMailServiceException.js +10 -5
  101. package/dist-es/models/models_0.js +461 -776
  102. package/dist-es/pagination/ListAliasesPaginator.js +68 -25
  103. package/dist-es/pagination/ListAvailabilityConfigurationsPaginator.js +68 -25
  104. package/dist-es/pagination/ListGroupMembersPaginator.js +68 -25
  105. package/dist-es/pagination/ListGroupsPaginator.js +68 -25
  106. package/dist-es/pagination/ListImpersonationRolesPaginator.js +75 -0
  107. package/dist-es/pagination/ListMailDomainsPaginator.js +68 -25
  108. package/dist-es/pagination/ListMailboxExportJobsPaginator.js +68 -25
  109. package/dist-es/pagination/ListMailboxPermissionsPaginator.js +68 -25
  110. package/dist-es/pagination/ListMobileDeviceAccessOverridesPaginator.js +68 -25
  111. package/dist-es/pagination/ListOrganizationsPaginator.js +68 -25
  112. package/dist-es/pagination/ListResourceDelegatesPaginator.js +68 -25
  113. package/dist-es/pagination/ListResourcesPaginator.js +68 -25
  114. package/dist-es/pagination/ListUsersPaginator.js +68 -25
  115. package/dist-es/pagination/index.js +1 -0
  116. package/dist-es/protocols/Aws_json1_1.js +7042 -4887
  117. package/dist-es/runtimeConfig.browser.js +12 -26
  118. package/dist-es/runtimeConfig.js +12 -30
  119. package/dist-es/runtimeConfig.native.js +5 -8
  120. package/dist-es/runtimeConfig.shared.js +11 -8
  121. package/dist-types/WorkMail.d.ts +91 -32
  122. package/dist-types/WorkMailClient.d.ts +10 -3
  123. package/dist-types/commands/AssumeImpersonationRoleCommand.d.ts +36 -0
  124. package/dist-types/commands/CreateAliasCommand.d.ts +1 -1
  125. package/dist-types/commands/CreateGroupCommand.d.ts +1 -1
  126. package/dist-types/commands/CreateImpersonationRoleCommand.d.ts +40 -0
  127. package/dist-types/commands/CreateMobileDeviceAccessRuleCommand.d.ts +1 -1
  128. package/dist-types/commands/CreateOrganizationCommand.d.ts +9 -5
  129. package/dist-types/commands/CreateResourceCommand.d.ts +1 -1
  130. package/dist-types/commands/CreateUserCommand.d.ts +1 -1
  131. package/dist-types/commands/DeleteGroupCommand.d.ts +1 -1
  132. package/dist-types/commands/DeleteImpersonationRoleCommand.d.ts +35 -0
  133. package/dist-types/commands/DeleteMobileDeviceAccessRuleCommand.d.ts +1 -1
  134. package/dist-types/commands/DeleteOrganizationCommand.d.ts +1 -1
  135. package/dist-types/commands/DeleteResourceCommand.d.ts +1 -1
  136. package/dist-types/commands/DeleteUserCommand.d.ts +1 -1
  137. package/dist-types/commands/DeregisterFromWorkMailCommand.d.ts +1 -1
  138. package/dist-types/commands/DeregisterMailDomainCommand.d.ts +1 -1
  139. package/dist-types/commands/GetAccessControlEffectCommand.d.ts +1 -1
  140. package/dist-types/commands/GetImpersonationRoleCommand.d.ts +35 -0
  141. package/dist-types/commands/GetImpersonationRoleEffectCommand.d.ts +35 -0
  142. package/dist-types/commands/GetMobileDeviceAccessEffectCommand.d.ts +1 -1
  143. package/dist-types/commands/ListImpersonationRolesCommand.d.ts +35 -0
  144. package/dist-types/commands/ListMailDomainsCommand.d.ts +1 -1
  145. package/dist-types/commands/ListMobileDeviceAccessRulesCommand.d.ts +1 -1
  146. package/dist-types/commands/ListTagsForResourceCommand.d.ts +1 -1
  147. package/dist-types/commands/PutAccessControlRuleCommand.d.ts +1 -1
  148. package/dist-types/commands/RegisterMailDomainCommand.d.ts +1 -1
  149. package/dist-types/commands/RegisterToWorkMailCommand.d.ts +2 -2
  150. package/dist-types/commands/StartMailboxExportJobCommand.d.ts +1 -1
  151. package/dist-types/commands/TagResourceCommand.d.ts +1 -1
  152. package/dist-types/commands/TestAvailabilityConfigurationCommand.d.ts +1 -1
  153. package/dist-types/commands/UntagResourceCommand.d.ts +1 -1
  154. package/dist-types/commands/UpdateImpersonationRoleCommand.d.ts +35 -0
  155. package/dist-types/commands/UpdateMobileDeviceAccessRuleCommand.d.ts +1 -1
  156. package/dist-types/commands/index.d.ts +7 -0
  157. package/dist-types/models/models_0.d.ts +442 -73
  158. package/dist-types/pagination/ListImpersonationRolesPaginator.d.ts +4 -0
  159. package/dist-types/pagination/index.d.ts +1 -0
  160. package/dist-types/protocols/Aws_json1_1.d.ts +21 -0
  161. package/dist-types/ts3.4/WorkMail.d.ts +119 -0
  162. package/dist-types/ts3.4/WorkMailClient.d.ts +42 -0
  163. package/dist-types/ts3.4/commands/AssumeImpersonationRoleCommand.d.ts +39 -0
  164. package/dist-types/ts3.4/commands/CreateImpersonationRoleCommand.d.ts +39 -0
  165. package/dist-types/ts3.4/commands/DeleteImpersonationRoleCommand.d.ts +39 -0
  166. package/dist-types/ts3.4/commands/GetImpersonationRoleCommand.d.ts +39 -0
  167. package/dist-types/ts3.4/commands/GetImpersonationRoleEffectCommand.d.ts +39 -0
  168. package/dist-types/ts3.4/commands/ListImpersonationRolesCommand.d.ts +39 -0
  169. package/dist-types/ts3.4/commands/UpdateImpersonationRoleCommand.d.ts +39 -0
  170. package/dist-types/ts3.4/commands/index.d.ts +7 -0
  171. package/dist-types/ts3.4/models/models_0.d.ts +157 -9
  172. package/dist-types/ts3.4/pagination/ListImpersonationRolesPaginator.d.ts +11 -0
  173. package/dist-types/ts3.4/pagination/index.d.ts +1 -0
  174. package/dist-types/ts3.4/protocols/Aws_json1_1.d.ts +84 -0
  175. package/package.json +5 -5
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.serializeAws_json1_1ListOrganizationsCommand = exports.serializeAws_json1_1ListMobileDeviceAccessRulesCommand = exports.serializeAws_json1_1ListMobileDeviceAccessOverridesCommand = exports.serializeAws_json1_1ListMailDomainsCommand = exports.serializeAws_json1_1ListMailboxPermissionsCommand = exports.serializeAws_json1_1ListMailboxExportJobsCommand = exports.serializeAws_json1_1ListGroupsCommand = exports.serializeAws_json1_1ListGroupMembersCommand = exports.serializeAws_json1_1ListAvailabilityConfigurationsCommand = exports.serializeAws_json1_1ListAliasesCommand = exports.serializeAws_json1_1ListAccessControlRulesCommand = exports.serializeAws_json1_1GetMobileDeviceAccessOverrideCommand = exports.serializeAws_json1_1GetMobileDeviceAccessEffectCommand = exports.serializeAws_json1_1GetMailDomainCommand = exports.serializeAws_json1_1GetMailboxDetailsCommand = exports.serializeAws_json1_1GetDefaultRetentionPolicyCommand = exports.serializeAws_json1_1GetAccessControlEffectCommand = exports.serializeAws_json1_1DisassociateMemberFromGroupCommand = exports.serializeAws_json1_1DisassociateDelegateFromResourceCommand = exports.serializeAws_json1_1DescribeUserCommand = exports.serializeAws_json1_1DescribeResourceCommand = exports.serializeAws_json1_1DescribeOrganizationCommand = exports.serializeAws_json1_1DescribeMailboxExportJobCommand = exports.serializeAws_json1_1DescribeInboundDmarcSettingsCommand = exports.serializeAws_json1_1DescribeGroupCommand = exports.serializeAws_json1_1DescribeEmailMonitoringConfigurationCommand = exports.serializeAws_json1_1DeregisterMailDomainCommand = exports.serializeAws_json1_1DeregisterFromWorkMailCommand = exports.serializeAws_json1_1DeleteUserCommand = exports.serializeAws_json1_1DeleteRetentionPolicyCommand = exports.serializeAws_json1_1DeleteResourceCommand = exports.serializeAws_json1_1DeleteOrganizationCommand = exports.serializeAws_json1_1DeleteMobileDeviceAccessRuleCommand = exports.serializeAws_json1_1DeleteMobileDeviceAccessOverrideCommand = exports.serializeAws_json1_1DeleteMailboxPermissionsCommand = exports.serializeAws_json1_1DeleteGroupCommand = exports.serializeAws_json1_1DeleteEmailMonitoringConfigurationCommand = exports.serializeAws_json1_1DeleteAvailabilityConfigurationCommand = exports.serializeAws_json1_1DeleteAliasCommand = exports.serializeAws_json1_1DeleteAccessControlRuleCommand = exports.serializeAws_json1_1CreateUserCommand = exports.serializeAws_json1_1CreateResourceCommand = exports.serializeAws_json1_1CreateOrganizationCommand = exports.serializeAws_json1_1CreateMobileDeviceAccessRuleCommand = exports.serializeAws_json1_1CreateGroupCommand = exports.serializeAws_json1_1CreateAvailabilityConfigurationCommand = exports.serializeAws_json1_1CreateAliasCommand = exports.serializeAws_json1_1CancelMailboxExportJobCommand = exports.serializeAws_json1_1AssociateMemberToGroupCommand = exports.serializeAws_json1_1AssociateDelegateToResourceCommand = void 0;
4
- exports.deserializeAws_json1_1DescribeInboundDmarcSettingsCommand = exports.deserializeAws_json1_1DescribeGroupCommand = exports.deserializeAws_json1_1DescribeEmailMonitoringConfigurationCommand = exports.deserializeAws_json1_1DeregisterMailDomainCommand = exports.deserializeAws_json1_1DeregisterFromWorkMailCommand = exports.deserializeAws_json1_1DeleteUserCommand = exports.deserializeAws_json1_1DeleteRetentionPolicyCommand = exports.deserializeAws_json1_1DeleteResourceCommand = exports.deserializeAws_json1_1DeleteOrganizationCommand = exports.deserializeAws_json1_1DeleteMobileDeviceAccessRuleCommand = exports.deserializeAws_json1_1DeleteMobileDeviceAccessOverrideCommand = exports.deserializeAws_json1_1DeleteMailboxPermissionsCommand = exports.deserializeAws_json1_1DeleteGroupCommand = exports.deserializeAws_json1_1DeleteEmailMonitoringConfigurationCommand = exports.deserializeAws_json1_1DeleteAvailabilityConfigurationCommand = exports.deserializeAws_json1_1DeleteAliasCommand = exports.deserializeAws_json1_1DeleteAccessControlRuleCommand = exports.deserializeAws_json1_1CreateUserCommand = exports.deserializeAws_json1_1CreateResourceCommand = exports.deserializeAws_json1_1CreateOrganizationCommand = exports.deserializeAws_json1_1CreateMobileDeviceAccessRuleCommand = exports.deserializeAws_json1_1CreateGroupCommand = exports.deserializeAws_json1_1CreateAvailabilityConfigurationCommand = exports.deserializeAws_json1_1CreateAliasCommand = exports.deserializeAws_json1_1CancelMailboxExportJobCommand = exports.deserializeAws_json1_1AssociateMemberToGroupCommand = exports.deserializeAws_json1_1AssociateDelegateToResourceCommand = exports.serializeAws_json1_1UpdateResourceCommand = exports.serializeAws_json1_1UpdatePrimaryEmailAddressCommand = exports.serializeAws_json1_1UpdateMobileDeviceAccessRuleCommand = exports.serializeAws_json1_1UpdateMailboxQuotaCommand = exports.serializeAws_json1_1UpdateDefaultMailDomainCommand = exports.serializeAws_json1_1UpdateAvailabilityConfigurationCommand = exports.serializeAws_json1_1UntagResourceCommand = exports.serializeAws_json1_1TestAvailabilityConfigurationCommand = exports.serializeAws_json1_1TagResourceCommand = exports.serializeAws_json1_1StartMailboxExportJobCommand = exports.serializeAws_json1_1ResetPasswordCommand = exports.serializeAws_json1_1RegisterToWorkMailCommand = exports.serializeAws_json1_1RegisterMailDomainCommand = exports.serializeAws_json1_1PutRetentionPolicyCommand = exports.serializeAws_json1_1PutMobileDeviceAccessOverrideCommand = exports.serializeAws_json1_1PutMailboxPermissionsCommand = exports.serializeAws_json1_1PutInboundDmarcSettingsCommand = exports.serializeAws_json1_1PutEmailMonitoringConfigurationCommand = exports.serializeAws_json1_1PutAccessControlRuleCommand = exports.serializeAws_json1_1ListUsersCommand = exports.serializeAws_json1_1ListTagsForResourceCommand = exports.serializeAws_json1_1ListResourcesCommand = exports.serializeAws_json1_1ListResourceDelegatesCommand = void 0;
5
- exports.deserializeAws_json1_1UpdateResourceCommand = exports.deserializeAws_json1_1UpdatePrimaryEmailAddressCommand = exports.deserializeAws_json1_1UpdateMobileDeviceAccessRuleCommand = exports.deserializeAws_json1_1UpdateMailboxQuotaCommand = exports.deserializeAws_json1_1UpdateDefaultMailDomainCommand = exports.deserializeAws_json1_1UpdateAvailabilityConfigurationCommand = exports.deserializeAws_json1_1UntagResourceCommand = exports.deserializeAws_json1_1TestAvailabilityConfigurationCommand = exports.deserializeAws_json1_1TagResourceCommand = exports.deserializeAws_json1_1StartMailboxExportJobCommand = exports.deserializeAws_json1_1ResetPasswordCommand = exports.deserializeAws_json1_1RegisterToWorkMailCommand = exports.deserializeAws_json1_1RegisterMailDomainCommand = exports.deserializeAws_json1_1PutRetentionPolicyCommand = exports.deserializeAws_json1_1PutMobileDeviceAccessOverrideCommand = exports.deserializeAws_json1_1PutMailboxPermissionsCommand = exports.deserializeAws_json1_1PutInboundDmarcSettingsCommand = exports.deserializeAws_json1_1PutEmailMonitoringConfigurationCommand = exports.deserializeAws_json1_1PutAccessControlRuleCommand = exports.deserializeAws_json1_1ListUsersCommand = exports.deserializeAws_json1_1ListTagsForResourceCommand = exports.deserializeAws_json1_1ListResourcesCommand = exports.deserializeAws_json1_1ListResourceDelegatesCommand = exports.deserializeAws_json1_1ListOrganizationsCommand = exports.deserializeAws_json1_1ListMobileDeviceAccessRulesCommand = exports.deserializeAws_json1_1ListMobileDeviceAccessOverridesCommand = exports.deserializeAws_json1_1ListMailDomainsCommand = exports.deserializeAws_json1_1ListMailboxPermissionsCommand = exports.deserializeAws_json1_1ListMailboxExportJobsCommand = exports.deserializeAws_json1_1ListGroupsCommand = exports.deserializeAws_json1_1ListGroupMembersCommand = exports.deserializeAws_json1_1ListAvailabilityConfigurationsCommand = exports.deserializeAws_json1_1ListAliasesCommand = exports.deserializeAws_json1_1ListAccessControlRulesCommand = exports.deserializeAws_json1_1GetMobileDeviceAccessOverrideCommand = exports.deserializeAws_json1_1GetMobileDeviceAccessEffectCommand = exports.deserializeAws_json1_1GetMailDomainCommand = exports.deserializeAws_json1_1GetMailboxDetailsCommand = exports.deserializeAws_json1_1GetDefaultRetentionPolicyCommand = exports.deserializeAws_json1_1GetAccessControlEffectCommand = exports.deserializeAws_json1_1DisassociateMemberFromGroupCommand = exports.deserializeAws_json1_1DisassociateDelegateFromResourceCommand = exports.deserializeAws_json1_1DescribeUserCommand = exports.deserializeAws_json1_1DescribeResourceCommand = exports.deserializeAws_json1_1DescribeOrganizationCommand = exports.deserializeAws_json1_1DescribeMailboxExportJobCommand = void 0;
3
+ exports.serializeAws_json1_1ListImpersonationRolesCommand = exports.serializeAws_json1_1ListGroupsCommand = exports.serializeAws_json1_1ListGroupMembersCommand = exports.serializeAws_json1_1ListAvailabilityConfigurationsCommand = exports.serializeAws_json1_1ListAliasesCommand = exports.serializeAws_json1_1ListAccessControlRulesCommand = exports.serializeAws_json1_1GetMobileDeviceAccessOverrideCommand = exports.serializeAws_json1_1GetMobileDeviceAccessEffectCommand = exports.serializeAws_json1_1GetMailDomainCommand = exports.serializeAws_json1_1GetMailboxDetailsCommand = exports.serializeAws_json1_1GetImpersonationRoleEffectCommand = exports.serializeAws_json1_1GetImpersonationRoleCommand = exports.serializeAws_json1_1GetDefaultRetentionPolicyCommand = exports.serializeAws_json1_1GetAccessControlEffectCommand = exports.serializeAws_json1_1DisassociateMemberFromGroupCommand = exports.serializeAws_json1_1DisassociateDelegateFromResourceCommand = exports.serializeAws_json1_1DescribeUserCommand = exports.serializeAws_json1_1DescribeResourceCommand = exports.serializeAws_json1_1DescribeOrganizationCommand = exports.serializeAws_json1_1DescribeMailboxExportJobCommand = exports.serializeAws_json1_1DescribeInboundDmarcSettingsCommand = exports.serializeAws_json1_1DescribeGroupCommand = exports.serializeAws_json1_1DescribeEmailMonitoringConfigurationCommand = exports.serializeAws_json1_1DeregisterMailDomainCommand = exports.serializeAws_json1_1DeregisterFromWorkMailCommand = exports.serializeAws_json1_1DeleteUserCommand = exports.serializeAws_json1_1DeleteRetentionPolicyCommand = exports.serializeAws_json1_1DeleteResourceCommand = exports.serializeAws_json1_1DeleteOrganizationCommand = exports.serializeAws_json1_1DeleteMobileDeviceAccessRuleCommand = exports.serializeAws_json1_1DeleteMobileDeviceAccessOverrideCommand = exports.serializeAws_json1_1DeleteMailboxPermissionsCommand = exports.serializeAws_json1_1DeleteImpersonationRoleCommand = exports.serializeAws_json1_1DeleteGroupCommand = exports.serializeAws_json1_1DeleteEmailMonitoringConfigurationCommand = exports.serializeAws_json1_1DeleteAvailabilityConfigurationCommand = exports.serializeAws_json1_1DeleteAliasCommand = exports.serializeAws_json1_1DeleteAccessControlRuleCommand = exports.serializeAws_json1_1CreateUserCommand = exports.serializeAws_json1_1CreateResourceCommand = exports.serializeAws_json1_1CreateOrganizationCommand = exports.serializeAws_json1_1CreateMobileDeviceAccessRuleCommand = exports.serializeAws_json1_1CreateImpersonationRoleCommand = exports.serializeAws_json1_1CreateGroupCommand = exports.serializeAws_json1_1CreateAvailabilityConfigurationCommand = exports.serializeAws_json1_1CreateAliasCommand = exports.serializeAws_json1_1CancelMailboxExportJobCommand = exports.serializeAws_json1_1AssumeImpersonationRoleCommand = exports.serializeAws_json1_1AssociateMemberToGroupCommand = exports.serializeAws_json1_1AssociateDelegateToResourceCommand = void 0;
4
+ exports.deserializeAws_json1_1DeleteMobileDeviceAccessOverrideCommand = exports.deserializeAws_json1_1DeleteMailboxPermissionsCommand = exports.deserializeAws_json1_1DeleteImpersonationRoleCommand = exports.deserializeAws_json1_1DeleteGroupCommand = exports.deserializeAws_json1_1DeleteEmailMonitoringConfigurationCommand = exports.deserializeAws_json1_1DeleteAvailabilityConfigurationCommand = exports.deserializeAws_json1_1DeleteAliasCommand = exports.deserializeAws_json1_1DeleteAccessControlRuleCommand = exports.deserializeAws_json1_1CreateUserCommand = exports.deserializeAws_json1_1CreateResourceCommand = exports.deserializeAws_json1_1CreateOrganizationCommand = exports.deserializeAws_json1_1CreateMobileDeviceAccessRuleCommand = exports.deserializeAws_json1_1CreateImpersonationRoleCommand = exports.deserializeAws_json1_1CreateGroupCommand = exports.deserializeAws_json1_1CreateAvailabilityConfigurationCommand = exports.deserializeAws_json1_1CreateAliasCommand = exports.deserializeAws_json1_1CancelMailboxExportJobCommand = exports.deserializeAws_json1_1AssumeImpersonationRoleCommand = exports.deserializeAws_json1_1AssociateMemberToGroupCommand = exports.deserializeAws_json1_1AssociateDelegateToResourceCommand = exports.serializeAws_json1_1UpdateResourceCommand = exports.serializeAws_json1_1UpdatePrimaryEmailAddressCommand = exports.serializeAws_json1_1UpdateMobileDeviceAccessRuleCommand = exports.serializeAws_json1_1UpdateMailboxQuotaCommand = exports.serializeAws_json1_1UpdateImpersonationRoleCommand = exports.serializeAws_json1_1UpdateDefaultMailDomainCommand = exports.serializeAws_json1_1UpdateAvailabilityConfigurationCommand = exports.serializeAws_json1_1UntagResourceCommand = exports.serializeAws_json1_1TestAvailabilityConfigurationCommand = exports.serializeAws_json1_1TagResourceCommand = exports.serializeAws_json1_1StartMailboxExportJobCommand = exports.serializeAws_json1_1ResetPasswordCommand = exports.serializeAws_json1_1RegisterToWorkMailCommand = exports.serializeAws_json1_1RegisterMailDomainCommand = exports.serializeAws_json1_1PutRetentionPolicyCommand = exports.serializeAws_json1_1PutMobileDeviceAccessOverrideCommand = exports.serializeAws_json1_1PutMailboxPermissionsCommand = exports.serializeAws_json1_1PutInboundDmarcSettingsCommand = exports.serializeAws_json1_1PutEmailMonitoringConfigurationCommand = exports.serializeAws_json1_1PutAccessControlRuleCommand = exports.serializeAws_json1_1ListUsersCommand = exports.serializeAws_json1_1ListTagsForResourceCommand = exports.serializeAws_json1_1ListResourcesCommand = exports.serializeAws_json1_1ListResourceDelegatesCommand = exports.serializeAws_json1_1ListOrganizationsCommand = exports.serializeAws_json1_1ListMobileDeviceAccessRulesCommand = exports.serializeAws_json1_1ListMobileDeviceAccessOverridesCommand = exports.serializeAws_json1_1ListMailDomainsCommand = exports.serializeAws_json1_1ListMailboxPermissionsCommand = exports.serializeAws_json1_1ListMailboxExportJobsCommand = void 0;
5
+ exports.deserializeAws_json1_1StartMailboxExportJobCommand = exports.deserializeAws_json1_1ResetPasswordCommand = exports.deserializeAws_json1_1RegisterToWorkMailCommand = exports.deserializeAws_json1_1RegisterMailDomainCommand = exports.deserializeAws_json1_1PutRetentionPolicyCommand = exports.deserializeAws_json1_1PutMobileDeviceAccessOverrideCommand = exports.deserializeAws_json1_1PutMailboxPermissionsCommand = exports.deserializeAws_json1_1PutInboundDmarcSettingsCommand = exports.deserializeAws_json1_1PutEmailMonitoringConfigurationCommand = exports.deserializeAws_json1_1PutAccessControlRuleCommand = exports.deserializeAws_json1_1ListUsersCommand = exports.deserializeAws_json1_1ListTagsForResourceCommand = exports.deserializeAws_json1_1ListResourcesCommand = exports.deserializeAws_json1_1ListResourceDelegatesCommand = exports.deserializeAws_json1_1ListOrganizationsCommand = exports.deserializeAws_json1_1ListMobileDeviceAccessRulesCommand = exports.deserializeAws_json1_1ListMobileDeviceAccessOverridesCommand = exports.deserializeAws_json1_1ListMailDomainsCommand = exports.deserializeAws_json1_1ListMailboxPermissionsCommand = exports.deserializeAws_json1_1ListMailboxExportJobsCommand = exports.deserializeAws_json1_1ListImpersonationRolesCommand = exports.deserializeAws_json1_1ListGroupsCommand = exports.deserializeAws_json1_1ListGroupMembersCommand = exports.deserializeAws_json1_1ListAvailabilityConfigurationsCommand = exports.deserializeAws_json1_1ListAliasesCommand = exports.deserializeAws_json1_1ListAccessControlRulesCommand = exports.deserializeAws_json1_1GetMobileDeviceAccessOverrideCommand = exports.deserializeAws_json1_1GetMobileDeviceAccessEffectCommand = exports.deserializeAws_json1_1GetMailDomainCommand = exports.deserializeAws_json1_1GetMailboxDetailsCommand = exports.deserializeAws_json1_1GetImpersonationRoleEffectCommand = exports.deserializeAws_json1_1GetImpersonationRoleCommand = exports.deserializeAws_json1_1GetDefaultRetentionPolicyCommand = exports.deserializeAws_json1_1GetAccessControlEffectCommand = exports.deserializeAws_json1_1DisassociateMemberFromGroupCommand = exports.deserializeAws_json1_1DisassociateDelegateFromResourceCommand = exports.deserializeAws_json1_1DescribeUserCommand = exports.deserializeAws_json1_1DescribeResourceCommand = exports.deserializeAws_json1_1DescribeOrganizationCommand = exports.deserializeAws_json1_1DescribeMailboxExportJobCommand = exports.deserializeAws_json1_1DescribeInboundDmarcSettingsCommand = exports.deserializeAws_json1_1DescribeGroupCommand = exports.deserializeAws_json1_1DescribeEmailMonitoringConfigurationCommand = exports.deserializeAws_json1_1DeregisterMailDomainCommand = exports.deserializeAws_json1_1DeregisterFromWorkMailCommand = exports.deserializeAws_json1_1DeleteUserCommand = exports.deserializeAws_json1_1DeleteRetentionPolicyCommand = exports.deserializeAws_json1_1DeleteResourceCommand = exports.deserializeAws_json1_1DeleteOrganizationCommand = exports.deserializeAws_json1_1DeleteMobileDeviceAccessRuleCommand = void 0;
6
+ exports.deserializeAws_json1_1UpdateResourceCommand = exports.deserializeAws_json1_1UpdatePrimaryEmailAddressCommand = exports.deserializeAws_json1_1UpdateMobileDeviceAccessRuleCommand = exports.deserializeAws_json1_1UpdateMailboxQuotaCommand = exports.deserializeAws_json1_1UpdateImpersonationRoleCommand = exports.deserializeAws_json1_1UpdateDefaultMailDomainCommand = exports.deserializeAws_json1_1UpdateAvailabilityConfigurationCommand = exports.deserializeAws_json1_1UntagResourceCommand = exports.deserializeAws_json1_1TestAvailabilityConfigurationCommand = exports.deserializeAws_json1_1TagResourceCommand = void 0;
6
7
  const protocol_http_1 = require("@aws-sdk/protocol-http");
7
8
  const smithy_client_1 = require("@aws-sdk/smithy-client");
8
9
  const uuid_1 = require("uuid");
@@ -28,6 +29,16 @@ const serializeAws_json1_1AssociateMemberToGroupCommand = async (input, context)
28
29
  return buildHttpRpcRequest(context, headers, "/", undefined, body);
29
30
  };
30
31
  exports.serializeAws_json1_1AssociateMemberToGroupCommand = serializeAws_json1_1AssociateMemberToGroupCommand;
32
+ const serializeAws_json1_1AssumeImpersonationRoleCommand = async (input, context) => {
33
+ const headers = {
34
+ "content-type": "application/x-amz-json-1.1",
35
+ "x-amz-target": "WorkMailService.AssumeImpersonationRole",
36
+ };
37
+ let body;
38
+ body = JSON.stringify(serializeAws_json1_1AssumeImpersonationRoleRequest(input, context));
39
+ return buildHttpRpcRequest(context, headers, "/", undefined, body);
40
+ };
41
+ exports.serializeAws_json1_1AssumeImpersonationRoleCommand = serializeAws_json1_1AssumeImpersonationRoleCommand;
31
42
  const serializeAws_json1_1CancelMailboxExportJobCommand = async (input, context) => {
32
43
  const headers = {
33
44
  "content-type": "application/x-amz-json-1.1",
@@ -68,6 +79,16 @@ const serializeAws_json1_1CreateGroupCommand = async (input, context) => {
68
79
  return buildHttpRpcRequest(context, headers, "/", undefined, body);
69
80
  };
70
81
  exports.serializeAws_json1_1CreateGroupCommand = serializeAws_json1_1CreateGroupCommand;
82
+ const serializeAws_json1_1CreateImpersonationRoleCommand = async (input, context) => {
83
+ const headers = {
84
+ "content-type": "application/x-amz-json-1.1",
85
+ "x-amz-target": "WorkMailService.CreateImpersonationRole",
86
+ };
87
+ let body;
88
+ body = JSON.stringify(serializeAws_json1_1CreateImpersonationRoleRequest(input, context));
89
+ return buildHttpRpcRequest(context, headers, "/", undefined, body);
90
+ };
91
+ exports.serializeAws_json1_1CreateImpersonationRoleCommand = serializeAws_json1_1CreateImpersonationRoleCommand;
71
92
  const serializeAws_json1_1CreateMobileDeviceAccessRuleCommand = async (input, context) => {
72
93
  const headers = {
73
94
  "content-type": "application/x-amz-json-1.1",
@@ -158,6 +179,16 @@ const serializeAws_json1_1DeleteGroupCommand = async (input, context) => {
158
179
  return buildHttpRpcRequest(context, headers, "/", undefined, body);
159
180
  };
160
181
  exports.serializeAws_json1_1DeleteGroupCommand = serializeAws_json1_1DeleteGroupCommand;
182
+ const serializeAws_json1_1DeleteImpersonationRoleCommand = async (input, context) => {
183
+ const headers = {
184
+ "content-type": "application/x-amz-json-1.1",
185
+ "x-amz-target": "WorkMailService.DeleteImpersonationRole",
186
+ };
187
+ let body;
188
+ body = JSON.stringify(serializeAws_json1_1DeleteImpersonationRoleRequest(input, context));
189
+ return buildHttpRpcRequest(context, headers, "/", undefined, body);
190
+ };
191
+ exports.serializeAws_json1_1DeleteImpersonationRoleCommand = serializeAws_json1_1DeleteImpersonationRoleCommand;
161
192
  const serializeAws_json1_1DeleteMailboxPermissionsCommand = async (input, context) => {
162
193
  const headers = {
163
194
  "content-type": "application/x-amz-json-1.1",
@@ -358,6 +389,26 @@ const serializeAws_json1_1GetDefaultRetentionPolicyCommand = async (input, conte
358
389
  return buildHttpRpcRequest(context, headers, "/", undefined, body);
359
390
  };
360
391
  exports.serializeAws_json1_1GetDefaultRetentionPolicyCommand = serializeAws_json1_1GetDefaultRetentionPolicyCommand;
392
+ const serializeAws_json1_1GetImpersonationRoleCommand = async (input, context) => {
393
+ const headers = {
394
+ "content-type": "application/x-amz-json-1.1",
395
+ "x-amz-target": "WorkMailService.GetImpersonationRole",
396
+ };
397
+ let body;
398
+ body = JSON.stringify(serializeAws_json1_1GetImpersonationRoleRequest(input, context));
399
+ return buildHttpRpcRequest(context, headers, "/", undefined, body);
400
+ };
401
+ exports.serializeAws_json1_1GetImpersonationRoleCommand = serializeAws_json1_1GetImpersonationRoleCommand;
402
+ const serializeAws_json1_1GetImpersonationRoleEffectCommand = async (input, context) => {
403
+ const headers = {
404
+ "content-type": "application/x-amz-json-1.1",
405
+ "x-amz-target": "WorkMailService.GetImpersonationRoleEffect",
406
+ };
407
+ let body;
408
+ body = JSON.stringify(serializeAws_json1_1GetImpersonationRoleEffectRequest(input, context));
409
+ return buildHttpRpcRequest(context, headers, "/", undefined, body);
410
+ };
411
+ exports.serializeAws_json1_1GetImpersonationRoleEffectCommand = serializeAws_json1_1GetImpersonationRoleEffectCommand;
361
412
  const serializeAws_json1_1GetMailboxDetailsCommand = async (input, context) => {
362
413
  const headers = {
363
414
  "content-type": "application/x-amz-json-1.1",
@@ -448,6 +499,16 @@ const serializeAws_json1_1ListGroupsCommand = async (input, context) => {
448
499
  return buildHttpRpcRequest(context, headers, "/", undefined, body);
449
500
  };
450
501
  exports.serializeAws_json1_1ListGroupsCommand = serializeAws_json1_1ListGroupsCommand;
502
+ const serializeAws_json1_1ListImpersonationRolesCommand = async (input, context) => {
503
+ const headers = {
504
+ "content-type": "application/x-amz-json-1.1",
505
+ "x-amz-target": "WorkMailService.ListImpersonationRoles",
506
+ };
507
+ let body;
508
+ body = JSON.stringify(serializeAws_json1_1ListImpersonationRolesRequest(input, context));
509
+ return buildHttpRpcRequest(context, headers, "/", undefined, body);
510
+ };
511
+ exports.serializeAws_json1_1ListImpersonationRolesCommand = serializeAws_json1_1ListImpersonationRolesCommand;
451
512
  const serializeAws_json1_1ListMailboxExportJobsCommand = async (input, context) => {
452
513
  const headers = {
453
514
  "content-type": "application/x-amz-json-1.1",
@@ -698,6 +759,16 @@ const serializeAws_json1_1UpdateDefaultMailDomainCommand = async (input, context
698
759
  return buildHttpRpcRequest(context, headers, "/", undefined, body);
699
760
  };
700
761
  exports.serializeAws_json1_1UpdateDefaultMailDomainCommand = serializeAws_json1_1UpdateDefaultMailDomainCommand;
762
+ const serializeAws_json1_1UpdateImpersonationRoleCommand = async (input, context) => {
763
+ const headers = {
764
+ "content-type": "application/x-amz-json-1.1",
765
+ "x-amz-target": "WorkMailService.UpdateImpersonationRole",
766
+ };
767
+ let body;
768
+ body = JSON.stringify(serializeAws_json1_1UpdateImpersonationRoleRequest(input, context));
769
+ return buildHttpRpcRequest(context, headers, "/", undefined, body);
770
+ };
771
+ exports.serializeAws_json1_1UpdateImpersonationRoleCommand = serializeAws_json1_1UpdateImpersonationRoleCommand;
701
772
  const serializeAws_json1_1UpdateMailboxQuotaCommand = async (input, context) => {
702
773
  const headers = {
703
774
  "content-type": "application/x-amz-json-1.1",
@@ -839,6 +910,49 @@ const deserializeAws_json1_1AssociateMemberToGroupCommandError = async (output,
839
910
  });
840
911
  }
841
912
  };
913
+ const deserializeAws_json1_1AssumeImpersonationRoleCommand = async (output, context) => {
914
+ if (output.statusCode >= 300) {
915
+ return deserializeAws_json1_1AssumeImpersonationRoleCommandError(output, context);
916
+ }
917
+ const data = await parseBody(output.body, context);
918
+ let contents = {};
919
+ contents = deserializeAws_json1_1AssumeImpersonationRoleResponse(data, context);
920
+ const response = {
921
+ $metadata: deserializeMetadata(output),
922
+ ...contents,
923
+ };
924
+ return Promise.resolve(response);
925
+ };
926
+ exports.deserializeAws_json1_1AssumeImpersonationRoleCommand = deserializeAws_json1_1AssumeImpersonationRoleCommand;
927
+ const deserializeAws_json1_1AssumeImpersonationRoleCommandError = async (output, context) => {
928
+ const parsedOutput = {
929
+ ...output,
930
+ body: await parseErrorBody(output.body, context),
931
+ };
932
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
933
+ switch (errorCode) {
934
+ case "InvalidParameterException":
935
+ case "com.amazonaws.workmail#InvalidParameterException":
936
+ throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context);
937
+ case "OrganizationNotFoundException":
938
+ case "com.amazonaws.workmail#OrganizationNotFoundException":
939
+ throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context);
940
+ case "OrganizationStateException":
941
+ case "com.amazonaws.workmail#OrganizationStateException":
942
+ throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context);
943
+ case "ResourceNotFoundException":
944
+ case "com.amazonaws.workmail#ResourceNotFoundException":
945
+ throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context);
946
+ default:
947
+ const parsedBody = parsedOutput.body;
948
+ (0, smithy_client_1.throwDefaultError)({
949
+ output,
950
+ parsedBody,
951
+ exceptionCtor: WorkMailServiceException_1.WorkMailServiceException,
952
+ errorCode,
953
+ });
954
+ }
955
+ };
842
956
  const deserializeAws_json1_1CancelMailboxExportJobCommand = async (output, context) => {
843
957
  if (output.statusCode >= 300) {
844
958
  return deserializeAws_json1_1CancelMailboxExportJobCommandError(output, context);
@@ -1041,6 +1155,55 @@ const deserializeAws_json1_1CreateGroupCommandError = async (output, context) =>
1041
1155
  });
1042
1156
  }
1043
1157
  };
1158
+ const deserializeAws_json1_1CreateImpersonationRoleCommand = async (output, context) => {
1159
+ if (output.statusCode >= 300) {
1160
+ return deserializeAws_json1_1CreateImpersonationRoleCommandError(output, context);
1161
+ }
1162
+ const data = await parseBody(output.body, context);
1163
+ let contents = {};
1164
+ contents = deserializeAws_json1_1CreateImpersonationRoleResponse(data, context);
1165
+ const response = {
1166
+ $metadata: deserializeMetadata(output),
1167
+ ...contents,
1168
+ };
1169
+ return Promise.resolve(response);
1170
+ };
1171
+ exports.deserializeAws_json1_1CreateImpersonationRoleCommand = deserializeAws_json1_1CreateImpersonationRoleCommand;
1172
+ const deserializeAws_json1_1CreateImpersonationRoleCommandError = async (output, context) => {
1173
+ const parsedOutput = {
1174
+ ...output,
1175
+ body: await parseErrorBody(output.body, context),
1176
+ };
1177
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
1178
+ switch (errorCode) {
1179
+ case "EntityNotFoundException":
1180
+ case "com.amazonaws.workmail#EntityNotFoundException":
1181
+ throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context);
1182
+ case "EntityStateException":
1183
+ case "com.amazonaws.workmail#EntityStateException":
1184
+ throw await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context);
1185
+ case "InvalidParameterException":
1186
+ case "com.amazonaws.workmail#InvalidParameterException":
1187
+ throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context);
1188
+ case "LimitExceededException":
1189
+ case "com.amazonaws.workmail#LimitExceededException":
1190
+ throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context);
1191
+ case "OrganizationNotFoundException":
1192
+ case "com.amazonaws.workmail#OrganizationNotFoundException":
1193
+ throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context);
1194
+ case "OrganizationStateException":
1195
+ case "com.amazonaws.workmail#OrganizationStateException":
1196
+ throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context);
1197
+ default:
1198
+ const parsedBody = parsedOutput.body;
1199
+ (0, smithy_client_1.throwDefaultError)({
1200
+ output,
1201
+ parsedBody,
1202
+ exceptionCtor: WorkMailServiceException_1.WorkMailServiceException,
1203
+ errorCode,
1204
+ });
1205
+ }
1206
+ };
1044
1207
  const deserializeAws_json1_1CreateMobileDeviceAccessRuleCommand = async (output, context) => {
1045
1208
  if (output.statusCode >= 300) {
1046
1209
  return deserializeAws_json1_1CreateMobileDeviceAccessRuleCommandError(output, context);
@@ -1452,6 +1615,46 @@ const deserializeAws_json1_1DeleteGroupCommandError = async (output, context) =>
1452
1615
  });
1453
1616
  }
1454
1617
  };
1618
+ const deserializeAws_json1_1DeleteImpersonationRoleCommand = async (output, context) => {
1619
+ if (output.statusCode >= 300) {
1620
+ return deserializeAws_json1_1DeleteImpersonationRoleCommandError(output, context);
1621
+ }
1622
+ const data = await parseBody(output.body, context);
1623
+ let contents = {};
1624
+ contents = deserializeAws_json1_1DeleteImpersonationRoleResponse(data, context);
1625
+ const response = {
1626
+ $metadata: deserializeMetadata(output),
1627
+ ...contents,
1628
+ };
1629
+ return Promise.resolve(response);
1630
+ };
1631
+ exports.deserializeAws_json1_1DeleteImpersonationRoleCommand = deserializeAws_json1_1DeleteImpersonationRoleCommand;
1632
+ const deserializeAws_json1_1DeleteImpersonationRoleCommandError = async (output, context) => {
1633
+ const parsedOutput = {
1634
+ ...output,
1635
+ body: await parseErrorBody(output.body, context),
1636
+ };
1637
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
1638
+ switch (errorCode) {
1639
+ case "InvalidParameterException":
1640
+ case "com.amazonaws.workmail#InvalidParameterException":
1641
+ throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context);
1642
+ case "OrganizationNotFoundException":
1643
+ case "com.amazonaws.workmail#OrganizationNotFoundException":
1644
+ throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context);
1645
+ case "OrganizationStateException":
1646
+ case "com.amazonaws.workmail#OrganizationStateException":
1647
+ throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context);
1648
+ default:
1649
+ const parsedBody = parsedOutput.body;
1650
+ (0, smithy_client_1.throwDefaultError)({
1651
+ output,
1652
+ parsedBody,
1653
+ exceptionCtor: WorkMailServiceException_1.WorkMailServiceException,
1654
+ errorCode,
1655
+ });
1656
+ }
1657
+ };
1455
1658
  const deserializeAws_json1_1DeleteMailboxPermissionsCommand = async (output, context) => {
1456
1659
  if (output.statusCode >= 300) {
1457
1660
  return deserializeAws_json1_1DeleteMailboxPermissionsCommandError(output, context);
@@ -2271,6 +2474,9 @@ const deserializeAws_json1_1GetAccessControlEffectCommandError = async (output,
2271
2474
  case "OrganizationStateException":
2272
2475
  case "com.amazonaws.workmail#OrganizationStateException":
2273
2476
  throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context);
2477
+ case "ResourceNotFoundException":
2478
+ case "com.amazonaws.workmail#ResourceNotFoundException":
2479
+ throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context);
2274
2480
  default:
2275
2481
  const parsedBody = parsedOutput.body;
2276
2482
  (0, smithy_client_1.throwDefaultError)({
@@ -2324,6 +2530,98 @@ const deserializeAws_json1_1GetDefaultRetentionPolicyCommandError = async (outpu
2324
2530
  });
2325
2531
  }
2326
2532
  };
2533
+ const deserializeAws_json1_1GetImpersonationRoleCommand = async (output, context) => {
2534
+ if (output.statusCode >= 300) {
2535
+ return deserializeAws_json1_1GetImpersonationRoleCommandError(output, context);
2536
+ }
2537
+ const data = await parseBody(output.body, context);
2538
+ let contents = {};
2539
+ contents = deserializeAws_json1_1GetImpersonationRoleResponse(data, context);
2540
+ const response = {
2541
+ $metadata: deserializeMetadata(output),
2542
+ ...contents,
2543
+ };
2544
+ return Promise.resolve(response);
2545
+ };
2546
+ exports.deserializeAws_json1_1GetImpersonationRoleCommand = deserializeAws_json1_1GetImpersonationRoleCommand;
2547
+ const deserializeAws_json1_1GetImpersonationRoleCommandError = async (output, context) => {
2548
+ const parsedOutput = {
2549
+ ...output,
2550
+ body: await parseErrorBody(output.body, context),
2551
+ };
2552
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
2553
+ switch (errorCode) {
2554
+ case "InvalidParameterException":
2555
+ case "com.amazonaws.workmail#InvalidParameterException":
2556
+ throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context);
2557
+ case "OrganizationNotFoundException":
2558
+ case "com.amazonaws.workmail#OrganizationNotFoundException":
2559
+ throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context);
2560
+ case "OrganizationStateException":
2561
+ case "com.amazonaws.workmail#OrganizationStateException":
2562
+ throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context);
2563
+ case "ResourceNotFoundException":
2564
+ case "com.amazonaws.workmail#ResourceNotFoundException":
2565
+ throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context);
2566
+ default:
2567
+ const parsedBody = parsedOutput.body;
2568
+ (0, smithy_client_1.throwDefaultError)({
2569
+ output,
2570
+ parsedBody,
2571
+ exceptionCtor: WorkMailServiceException_1.WorkMailServiceException,
2572
+ errorCode,
2573
+ });
2574
+ }
2575
+ };
2576
+ const deserializeAws_json1_1GetImpersonationRoleEffectCommand = async (output, context) => {
2577
+ if (output.statusCode >= 300) {
2578
+ return deserializeAws_json1_1GetImpersonationRoleEffectCommandError(output, context);
2579
+ }
2580
+ const data = await parseBody(output.body, context);
2581
+ let contents = {};
2582
+ contents = deserializeAws_json1_1GetImpersonationRoleEffectResponse(data, context);
2583
+ const response = {
2584
+ $metadata: deserializeMetadata(output),
2585
+ ...contents,
2586
+ };
2587
+ return Promise.resolve(response);
2588
+ };
2589
+ exports.deserializeAws_json1_1GetImpersonationRoleEffectCommand = deserializeAws_json1_1GetImpersonationRoleEffectCommand;
2590
+ const deserializeAws_json1_1GetImpersonationRoleEffectCommandError = async (output, context) => {
2591
+ const parsedOutput = {
2592
+ ...output,
2593
+ body: await parseErrorBody(output.body, context),
2594
+ };
2595
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
2596
+ switch (errorCode) {
2597
+ case "EntityNotFoundException":
2598
+ case "com.amazonaws.workmail#EntityNotFoundException":
2599
+ throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context);
2600
+ case "EntityStateException":
2601
+ case "com.amazonaws.workmail#EntityStateException":
2602
+ throw await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context);
2603
+ case "InvalidParameterException":
2604
+ case "com.amazonaws.workmail#InvalidParameterException":
2605
+ throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context);
2606
+ case "OrganizationNotFoundException":
2607
+ case "com.amazonaws.workmail#OrganizationNotFoundException":
2608
+ throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context);
2609
+ case "OrganizationStateException":
2610
+ case "com.amazonaws.workmail#OrganizationStateException":
2611
+ throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context);
2612
+ case "ResourceNotFoundException":
2613
+ case "com.amazonaws.workmail#ResourceNotFoundException":
2614
+ throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context);
2615
+ default:
2616
+ const parsedBody = parsedOutput.body;
2617
+ (0, smithy_client_1.throwDefaultError)({
2618
+ output,
2619
+ parsedBody,
2620
+ exceptionCtor: WorkMailServiceException_1.WorkMailServiceException,
2621
+ errorCode,
2622
+ });
2623
+ }
2624
+ };
2327
2625
  const deserializeAws_json1_1GetMailboxDetailsCommand = async (output, context) => {
2328
2626
  if (output.statusCode >= 300) {
2329
2627
  return deserializeAws_json1_1GetMailboxDetailsCommandError(output, context);
@@ -2702,6 +3000,46 @@ const deserializeAws_json1_1ListGroupsCommandError = async (output, context) =>
2702
3000
  });
2703
3001
  }
2704
3002
  };
3003
+ const deserializeAws_json1_1ListImpersonationRolesCommand = async (output, context) => {
3004
+ if (output.statusCode >= 300) {
3005
+ return deserializeAws_json1_1ListImpersonationRolesCommandError(output, context);
3006
+ }
3007
+ const data = await parseBody(output.body, context);
3008
+ let contents = {};
3009
+ contents = deserializeAws_json1_1ListImpersonationRolesResponse(data, context);
3010
+ const response = {
3011
+ $metadata: deserializeMetadata(output),
3012
+ ...contents,
3013
+ };
3014
+ return Promise.resolve(response);
3015
+ };
3016
+ exports.deserializeAws_json1_1ListImpersonationRolesCommand = deserializeAws_json1_1ListImpersonationRolesCommand;
3017
+ const deserializeAws_json1_1ListImpersonationRolesCommandError = async (output, context) => {
3018
+ const parsedOutput = {
3019
+ ...output,
3020
+ body: await parseErrorBody(output.body, context),
3021
+ };
3022
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
3023
+ switch (errorCode) {
3024
+ case "InvalidParameterException":
3025
+ case "com.amazonaws.workmail#InvalidParameterException":
3026
+ throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context);
3027
+ case "OrganizationNotFoundException":
3028
+ case "com.amazonaws.workmail#OrganizationNotFoundException":
3029
+ throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context);
3030
+ case "OrganizationStateException":
3031
+ case "com.amazonaws.workmail#OrganizationStateException":
3032
+ throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context);
3033
+ default:
3034
+ const parsedBody = parsedOutput.body;
3035
+ (0, smithy_client_1.throwDefaultError)({
3036
+ output,
3037
+ parsedBody,
3038
+ exceptionCtor: WorkMailServiceException_1.WorkMailServiceException,
3039
+ errorCode,
3040
+ });
3041
+ }
3042
+ };
2705
3043
  const deserializeAws_json1_1ListMailboxExportJobsCommand = async (output, context) => {
2706
3044
  if (output.statusCode >= 300) {
2707
3045
  return deserializeAws_json1_1ListMailboxExportJobsCommandError(output, context);
@@ -3138,6 +3476,9 @@ const deserializeAws_json1_1PutAccessControlRuleCommandError = async (output, co
3138
3476
  case "OrganizationStateException":
3139
3477
  case "com.amazonaws.workmail#OrganizationStateException":
3140
3478
  throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context);
3479
+ case "ResourceNotFoundException":
3480
+ case "com.amazonaws.workmail#ResourceNotFoundException":
3481
+ throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context);
3141
3482
  default:
3142
3483
  const parsedBody = parsedOutput.body;
3143
3484
  (0, smithy_client_1.throwDefaultError)({
@@ -3783,6 +4124,58 @@ const deserializeAws_json1_1UpdateDefaultMailDomainCommandError = async (output,
3783
4124
  });
3784
4125
  }
3785
4126
  };
4127
+ const deserializeAws_json1_1UpdateImpersonationRoleCommand = async (output, context) => {
4128
+ if (output.statusCode >= 300) {
4129
+ return deserializeAws_json1_1UpdateImpersonationRoleCommandError(output, context);
4130
+ }
4131
+ const data = await parseBody(output.body, context);
4132
+ let contents = {};
4133
+ contents = deserializeAws_json1_1UpdateImpersonationRoleResponse(data, context);
4134
+ const response = {
4135
+ $metadata: deserializeMetadata(output),
4136
+ ...contents,
4137
+ };
4138
+ return Promise.resolve(response);
4139
+ };
4140
+ exports.deserializeAws_json1_1UpdateImpersonationRoleCommand = deserializeAws_json1_1UpdateImpersonationRoleCommand;
4141
+ const deserializeAws_json1_1UpdateImpersonationRoleCommandError = async (output, context) => {
4142
+ const parsedOutput = {
4143
+ ...output,
4144
+ body: await parseErrorBody(output.body, context),
4145
+ };
4146
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
4147
+ switch (errorCode) {
4148
+ case "EntityNotFoundException":
4149
+ case "com.amazonaws.workmail#EntityNotFoundException":
4150
+ throw await deserializeAws_json1_1EntityNotFoundExceptionResponse(parsedOutput, context);
4151
+ case "EntityStateException":
4152
+ case "com.amazonaws.workmail#EntityStateException":
4153
+ throw await deserializeAws_json1_1EntityStateExceptionResponse(parsedOutput, context);
4154
+ case "InvalidParameterException":
4155
+ case "com.amazonaws.workmail#InvalidParameterException":
4156
+ throw await deserializeAws_json1_1InvalidParameterExceptionResponse(parsedOutput, context);
4157
+ case "LimitExceededException":
4158
+ case "com.amazonaws.workmail#LimitExceededException":
4159
+ throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context);
4160
+ case "OrganizationNotFoundException":
4161
+ case "com.amazonaws.workmail#OrganizationNotFoundException":
4162
+ throw await deserializeAws_json1_1OrganizationNotFoundExceptionResponse(parsedOutput, context);
4163
+ case "OrganizationStateException":
4164
+ case "com.amazonaws.workmail#OrganizationStateException":
4165
+ throw await deserializeAws_json1_1OrganizationStateExceptionResponse(parsedOutput, context);
4166
+ case "ResourceNotFoundException":
4167
+ case "com.amazonaws.workmail#ResourceNotFoundException":
4168
+ throw await deserializeAws_json1_1ResourceNotFoundExceptionResponse(parsedOutput, context);
4169
+ default:
4170
+ const parsedBody = parsedOutput.body;
4171
+ (0, smithy_client_1.throwDefaultError)({
4172
+ output,
4173
+ parsedBody,
4174
+ exceptionCtor: WorkMailServiceException_1.WorkMailServiceException,
4175
+ errorCode,
4176
+ });
4177
+ }
4178
+ };
3786
4179
  const deserializeAws_json1_1UpdateMailboxQuotaCommand = async (output, context) => {
3787
4180
  if (output.statusCode >= 300) {
3788
4181
  return deserializeAws_json1_1UpdateMailboxQuotaCommandError(output, context);
@@ -4216,6 +4609,12 @@ const serializeAws_json1_1AssociateMemberToGroupRequest = (input, context) => {
4216
4609
  ...(input.OrganizationId != null && { OrganizationId: input.OrganizationId }),
4217
4610
  };
4218
4611
  };
4612
+ const serializeAws_json1_1AssumeImpersonationRoleRequest = (input, context) => {
4613
+ return {
4614
+ ...(input.ImpersonationRoleId != null && { ImpersonationRoleId: input.ImpersonationRoleId }),
4615
+ ...(input.OrganizationId != null && { OrganizationId: input.OrganizationId }),
4616
+ };
4617
+ };
4219
4618
  const serializeAws_json1_1BookingOptions = (input, context) => {
4220
4619
  return {
4221
4620
  ...(input.AutoAcceptRequests != null && { AutoAcceptRequests: input.AutoAcceptRequests }),
@@ -4262,6 +4661,17 @@ const serializeAws_json1_1CreateGroupRequest = (input, context) => {
4262
4661
  ...(input.OrganizationId != null && { OrganizationId: input.OrganizationId }),
4263
4662
  };
4264
4663
  };
4664
+ const serializeAws_json1_1CreateImpersonationRoleRequest = (input, context) => {
4665
+ var _a;
4666
+ return {
4667
+ ClientToken: (_a = input.ClientToken) !== null && _a !== void 0 ? _a : (0, uuid_1.v4)(),
4668
+ ...(input.Description != null && { Description: input.Description }),
4669
+ ...(input.Name != null && { Name: input.Name }),
4670
+ ...(input.OrganizationId != null && { OrganizationId: input.OrganizationId }),
4671
+ ...(input.Rules != null && { Rules: serializeAws_json1_1ImpersonationRuleList(input.Rules, context) }),
4672
+ ...(input.Type != null && { Type: input.Type }),
4673
+ };
4674
+ };
4265
4675
  const serializeAws_json1_1CreateMobileDeviceAccessRuleRequest = (input, context) => {
4266
4676
  var _a;
4267
4677
  return {
@@ -4350,6 +4760,12 @@ const serializeAws_json1_1DeleteGroupRequest = (input, context) => {
4350
4760
  ...(input.OrganizationId != null && { OrganizationId: input.OrganizationId }),
4351
4761
  };
4352
4762
  };
4763
+ const serializeAws_json1_1DeleteImpersonationRoleRequest = (input, context) => {
4764
+ return {
4765
+ ...(input.ImpersonationRoleId != null && { ImpersonationRoleId: input.ImpersonationRoleId }),
4766
+ ...(input.OrganizationId != null && { OrganizationId: input.OrganizationId }),
4767
+ };
4768
+ };
4353
4769
  const serializeAws_json1_1DeleteMailboxPermissionsRequest = (input, context) => {
4354
4770
  return {
4355
4771
  ...(input.EntityId != null && { EntityId: input.EntityId }),
@@ -4526,6 +4942,7 @@ const serializeAws_json1_1FolderConfigurations = (input, context) => {
4526
4942
  const serializeAws_json1_1GetAccessControlEffectRequest = (input, context) => {
4527
4943
  return {
4528
4944
  ...(input.Action != null && { Action: input.Action }),
4945
+ ...(input.ImpersonationRoleId != null && { ImpersonationRoleId: input.ImpersonationRoleId }),
4529
4946
  ...(input.IpAddress != null && { IpAddress: input.IpAddress }),
4530
4947
  ...(input.OrganizationId != null && { OrganizationId: input.OrganizationId }),
4531
4948
  ...(input.UserId != null && { UserId: input.UserId }),
@@ -4536,6 +4953,19 @@ const serializeAws_json1_1GetDefaultRetentionPolicyRequest = (input, context) =>
4536
4953
  ...(input.OrganizationId != null && { OrganizationId: input.OrganizationId }),
4537
4954
  };
4538
4955
  };
4956
+ const serializeAws_json1_1GetImpersonationRoleEffectRequest = (input, context) => {
4957
+ return {
4958
+ ...(input.ImpersonationRoleId != null && { ImpersonationRoleId: input.ImpersonationRoleId }),
4959
+ ...(input.OrganizationId != null && { OrganizationId: input.OrganizationId }),
4960
+ ...(input.TargetUser != null && { TargetUser: input.TargetUser }),
4961
+ };
4962
+ };
4963
+ const serializeAws_json1_1GetImpersonationRoleRequest = (input, context) => {
4964
+ return {
4965
+ ...(input.ImpersonationRoleId != null && { ImpersonationRoleId: input.ImpersonationRoleId }),
4966
+ ...(input.OrganizationId != null && { OrganizationId: input.OrganizationId }),
4967
+ };
4968
+ };
4539
4969
  const serializeAws_json1_1GetMailboxDetailsRequest = (input, context) => {
4540
4970
  return {
4541
4971
  ...(input.OrganizationId != null && { OrganizationId: input.OrganizationId }),
@@ -4564,6 +4994,32 @@ const serializeAws_json1_1GetMobileDeviceAccessOverrideRequest = (input, context
4564
4994
  ...(input.UserId != null && { UserId: input.UserId }),
4565
4995
  };
4566
4996
  };
4997
+ const serializeAws_json1_1ImpersonationRoleIdList = (input, context) => {
4998
+ return input
4999
+ .filter((e) => e != null)
5000
+ .map((entry) => {
5001
+ return entry;
5002
+ });
5003
+ };
5004
+ const serializeAws_json1_1ImpersonationRule = (input, context) => {
5005
+ return {
5006
+ ...(input.Description != null && { Description: input.Description }),
5007
+ ...(input.Effect != null && { Effect: input.Effect }),
5008
+ ...(input.ImpersonationRuleId != null && { ImpersonationRuleId: input.ImpersonationRuleId }),
5009
+ ...(input.Name != null && { Name: input.Name }),
5010
+ ...(input.NotTargetUsers != null && {
5011
+ NotTargetUsers: serializeAws_json1_1TargetUsers(input.NotTargetUsers, context),
5012
+ }),
5013
+ ...(input.TargetUsers != null && { TargetUsers: serializeAws_json1_1TargetUsers(input.TargetUsers, context) }),
5014
+ };
5015
+ };
5016
+ const serializeAws_json1_1ImpersonationRuleList = (input, context) => {
5017
+ return input
5018
+ .filter((e) => e != null)
5019
+ .map((entry) => {
5020
+ return serializeAws_json1_1ImpersonationRule(entry, context);
5021
+ });
5022
+ };
4567
5023
  const serializeAws_json1_1IpRangeList = (input, context) => {
4568
5024
  return input
4569
5025
  .filter((e) => e != null)
@@ -4611,6 +5067,13 @@ const serializeAws_json1_1ListGroupsRequest = (input, context) => {
4611
5067
  ...(input.OrganizationId != null && { OrganizationId: input.OrganizationId }),
4612
5068
  };
4613
5069
  };
5070
+ const serializeAws_json1_1ListImpersonationRolesRequest = (input, context) => {
5071
+ return {
5072
+ ...(input.MaxResults != null && { MaxResults: input.MaxResults }),
5073
+ ...(input.NextToken != null && { NextToken: input.NextToken }),
5074
+ ...(input.OrganizationId != null && { OrganizationId: input.OrganizationId }),
5075
+ };
5076
+ };
4614
5077
  const serializeAws_json1_1ListMailboxExportJobsRequest = (input, context) => {
4615
5078
  return {
4616
5079
  ...(input.MaxResults != null && { MaxResults: input.MaxResults }),
@@ -4692,9 +5155,15 @@ const serializeAws_json1_1PutAccessControlRuleRequest = (input, context) => {
4692
5155
  ...(input.Actions != null && { Actions: serializeAws_json1_1ActionsList(input.Actions, context) }),
4693
5156
  ...(input.Description != null && { Description: input.Description }),
4694
5157
  ...(input.Effect != null && { Effect: input.Effect }),
5158
+ ...(input.ImpersonationRoleIds != null && {
5159
+ ImpersonationRoleIds: serializeAws_json1_1ImpersonationRoleIdList(input.ImpersonationRoleIds, context),
5160
+ }),
4695
5161
  ...(input.IpRanges != null && { IpRanges: serializeAws_json1_1IpRangeList(input.IpRanges, context) }),
4696
5162
  ...(input.Name != null && { Name: input.Name }),
4697
5163
  ...(input.NotActions != null && { NotActions: serializeAws_json1_1ActionsList(input.NotActions, context) }),
5164
+ ...(input.NotImpersonationRoleIds != null && {
5165
+ NotImpersonationRoleIds: serializeAws_json1_1ImpersonationRoleIdList(input.NotImpersonationRoleIds, context),
5166
+ }),
4698
5167
  ...(input.NotIpRanges != null && { NotIpRanges: serializeAws_json1_1IpRangeList(input.NotIpRanges, context) }),
4699
5168
  ...(input.NotUserIds != null && { NotUserIds: serializeAws_json1_1UserIdList(input.NotUserIds, context) }),
4700
5169
  ...(input.OrganizationId != null && { OrganizationId: input.OrganizationId }),
@@ -4805,6 +5274,13 @@ const serializeAws_json1_1TagResourceRequest = (input, context) => {
4805
5274
  ...(input.Tags != null && { Tags: serializeAws_json1_1TagList(input.Tags, context) }),
4806
5275
  };
4807
5276
  };
5277
+ const serializeAws_json1_1TargetUsers = (input, context) => {
5278
+ return input
5279
+ .filter((e) => e != null)
5280
+ .map((entry) => {
5281
+ return entry;
5282
+ });
5283
+ };
4808
5284
  const serializeAws_json1_1TestAvailabilityConfigurationRequest = (input, context) => {
4809
5285
  return {
4810
5286
  ...(input.DomainName != null && { DomainName: input.DomainName }),
@@ -4841,6 +5317,16 @@ const serializeAws_json1_1UpdateDefaultMailDomainRequest = (input, context) => {
4841
5317
  ...(input.OrganizationId != null && { OrganizationId: input.OrganizationId }),
4842
5318
  };
4843
5319
  };
5320
+ const serializeAws_json1_1UpdateImpersonationRoleRequest = (input, context) => {
5321
+ return {
5322
+ ...(input.Description != null && { Description: input.Description }),
5323
+ ...(input.ImpersonationRoleId != null && { ImpersonationRoleId: input.ImpersonationRoleId }),
5324
+ ...(input.Name != null && { Name: input.Name }),
5325
+ ...(input.OrganizationId != null && { OrganizationId: input.OrganizationId }),
5326
+ ...(input.Rules != null && { Rules: serializeAws_json1_1ImpersonationRuleList(input.Rules, context) }),
5327
+ ...(input.Type != null && { Type: input.Type }),
5328
+ };
5329
+ };
4844
5330
  const serializeAws_json1_1UpdateMailboxQuotaRequest = (input, context) => {
4845
5331
  return {
4846
5332
  ...(input.MailboxQuota != null && { MailboxQuota: input.MailboxQuota }),
@@ -4914,9 +5400,15 @@ const deserializeAws_json1_1AccessControlRule = (output, context) => {
4914
5400
  : undefined,
4915
5401
  Description: (0, smithy_client_1.expectString)(output.Description),
4916
5402
  Effect: (0, smithy_client_1.expectString)(output.Effect),
5403
+ ImpersonationRoleIds: output.ImpersonationRoleIds != null
5404
+ ? deserializeAws_json1_1ImpersonationRoleIdList(output.ImpersonationRoleIds, context)
5405
+ : undefined,
4917
5406
  IpRanges: output.IpRanges != null ? deserializeAws_json1_1IpRangeList(output.IpRanges, context) : undefined,
4918
5407
  Name: (0, smithy_client_1.expectString)(output.Name),
4919
5408
  NotActions: output.NotActions != null ? deserializeAws_json1_1ActionsList(output.NotActions, context) : undefined,
5409
+ NotImpersonationRoleIds: output.NotImpersonationRoleIds != null
5410
+ ? deserializeAws_json1_1ImpersonationRoleIdList(output.NotImpersonationRoleIds, context)
5411
+ : undefined,
4920
5412
  NotIpRanges: output.NotIpRanges != null ? deserializeAws_json1_1IpRangeList(output.NotIpRanges, context) : undefined,
4921
5413
  NotUserIds: output.NotUserIds != null ? deserializeAws_json1_1UserIdList(output.NotUserIds, context) : undefined,
4922
5414
  UserIds: output.UserIds != null ? deserializeAws_json1_1UserIdList(output.UserIds, context) : undefined,
@@ -4972,6 +5464,12 @@ const deserializeAws_json1_1AssociateDelegateToResourceResponse = (output, conte
4972
5464
  const deserializeAws_json1_1AssociateMemberToGroupResponse = (output, context) => {
4973
5465
  return {};
4974
5466
  };
5467
+ const deserializeAws_json1_1AssumeImpersonationRoleResponse = (output, context) => {
5468
+ return {
5469
+ ExpiresIn: (0, smithy_client_1.expectLong)(output.ExpiresIn),
5470
+ Token: (0, smithy_client_1.expectString)(output.Token),
5471
+ };
5472
+ };
4975
5473
  const deserializeAws_json1_1AvailabilityConfiguration = (output, context) => {
4976
5474
  return {
4977
5475
  DateCreated: output.DateCreated != null
@@ -5022,6 +5520,11 @@ const deserializeAws_json1_1CreateGroupResponse = (output, context) => {
5022
5520
  GroupId: (0, smithy_client_1.expectString)(output.GroupId),
5023
5521
  };
5024
5522
  };
5523
+ const deserializeAws_json1_1CreateImpersonationRoleResponse = (output, context) => {
5524
+ return {
5525
+ ImpersonationRoleId: (0, smithy_client_1.expectString)(output.ImpersonationRoleId),
5526
+ };
5527
+ };
5025
5528
  const deserializeAws_json1_1CreateMobileDeviceAccessRuleResponse = (output, context) => {
5026
5529
  return {
5027
5530
  MobileDeviceAccessRuleId: (0, smithy_client_1.expectString)(output.MobileDeviceAccessRuleId),
@@ -5063,6 +5566,9 @@ const deserializeAws_json1_1DeleteEmailMonitoringConfigurationResponse = (output
5063
5566
  const deserializeAws_json1_1DeleteGroupResponse = (output, context) => {
5064
5567
  return {};
5065
5568
  };
5569
+ const deserializeAws_json1_1DeleteImpersonationRoleResponse = (output, context) => {
5570
+ return {};
5571
+ };
5066
5572
  const deserializeAws_json1_1DeleteMailboxPermissionsResponse = (output, context) => {
5067
5573
  return {};
5068
5574
  };
@@ -5320,6 +5826,30 @@ const deserializeAws_json1_1GetDefaultRetentionPolicyResponse = (output, context
5320
5826
  Name: (0, smithy_client_1.expectString)(output.Name),
5321
5827
  };
5322
5828
  };
5829
+ const deserializeAws_json1_1GetImpersonationRoleEffectResponse = (output, context) => {
5830
+ return {
5831
+ Effect: (0, smithy_client_1.expectString)(output.Effect),
5832
+ MatchedRules: output.MatchedRules != null
5833
+ ? deserializeAws_json1_1ImpersonationMatchedRuleList(output.MatchedRules, context)
5834
+ : undefined,
5835
+ Type: (0, smithy_client_1.expectString)(output.Type),
5836
+ };
5837
+ };
5838
+ const deserializeAws_json1_1GetImpersonationRoleResponse = (output, context) => {
5839
+ return {
5840
+ DateCreated: output.DateCreated != null
5841
+ ? (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(output.DateCreated)))
5842
+ : undefined,
5843
+ DateModified: output.DateModified != null
5844
+ ? (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(output.DateModified)))
5845
+ : undefined,
5846
+ Description: (0, smithy_client_1.expectString)(output.Description),
5847
+ ImpersonationRoleId: (0, smithy_client_1.expectString)(output.ImpersonationRoleId),
5848
+ Name: (0, smithy_client_1.expectString)(output.Name),
5849
+ Rules: output.Rules != null ? deserializeAws_json1_1ImpersonationRuleList(output.Rules, context) : undefined,
5850
+ Type: (0, smithy_client_1.expectString)(output.Type),
5851
+ };
5852
+ };
5323
5853
  const deserializeAws_json1_1GetMailboxDetailsResponse = (output, context) => {
5324
5854
  return {
5325
5855
  MailboxQuota: (0, smithy_client_1.expectInt32)(output.MailboxQuota),
@@ -5382,6 +5912,79 @@ const deserializeAws_json1_1Groups = (output, context) => {
5382
5912
  });
5383
5913
  return retVal;
5384
5914
  };
5915
+ const deserializeAws_json1_1ImpersonationMatchedRule = (output, context) => {
5916
+ return {
5917
+ ImpersonationRuleId: (0, smithy_client_1.expectString)(output.ImpersonationRuleId),
5918
+ Name: (0, smithy_client_1.expectString)(output.Name),
5919
+ };
5920
+ };
5921
+ const deserializeAws_json1_1ImpersonationMatchedRuleList = (output, context) => {
5922
+ const retVal = (output || [])
5923
+ .filter((e) => e != null)
5924
+ .map((entry) => {
5925
+ if (entry === null) {
5926
+ return null;
5927
+ }
5928
+ return deserializeAws_json1_1ImpersonationMatchedRule(entry, context);
5929
+ });
5930
+ return retVal;
5931
+ };
5932
+ const deserializeAws_json1_1ImpersonationRole = (output, context) => {
5933
+ return {
5934
+ DateCreated: output.DateCreated != null
5935
+ ? (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(output.DateCreated)))
5936
+ : undefined,
5937
+ DateModified: output.DateModified != null
5938
+ ? (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseEpochTimestamp)((0, smithy_client_1.expectNumber)(output.DateModified)))
5939
+ : undefined,
5940
+ ImpersonationRoleId: (0, smithy_client_1.expectString)(output.ImpersonationRoleId),
5941
+ Name: (0, smithy_client_1.expectString)(output.Name),
5942
+ Type: (0, smithy_client_1.expectString)(output.Type),
5943
+ };
5944
+ };
5945
+ const deserializeAws_json1_1ImpersonationRoleIdList = (output, context) => {
5946
+ const retVal = (output || [])
5947
+ .filter((e) => e != null)
5948
+ .map((entry) => {
5949
+ if (entry === null) {
5950
+ return null;
5951
+ }
5952
+ return (0, smithy_client_1.expectString)(entry);
5953
+ });
5954
+ return retVal;
5955
+ };
5956
+ const deserializeAws_json1_1ImpersonationRoleList = (output, context) => {
5957
+ const retVal = (output || [])
5958
+ .filter((e) => e != null)
5959
+ .map((entry) => {
5960
+ if (entry === null) {
5961
+ return null;
5962
+ }
5963
+ return deserializeAws_json1_1ImpersonationRole(entry, context);
5964
+ });
5965
+ return retVal;
5966
+ };
5967
+ const deserializeAws_json1_1ImpersonationRule = (output, context) => {
5968
+ return {
5969
+ Description: (0, smithy_client_1.expectString)(output.Description),
5970
+ Effect: (0, smithy_client_1.expectString)(output.Effect),
5971
+ ImpersonationRuleId: (0, smithy_client_1.expectString)(output.ImpersonationRuleId),
5972
+ Name: (0, smithy_client_1.expectString)(output.Name),
5973
+ NotTargetUsers: output.NotTargetUsers != null ? deserializeAws_json1_1TargetUsers(output.NotTargetUsers, context) : undefined,
5974
+ TargetUsers: output.TargetUsers != null ? deserializeAws_json1_1TargetUsers(output.TargetUsers, context) : undefined,
5975
+ };
5976
+ };
5977
+ const deserializeAws_json1_1ImpersonationRuleList = (output, context) => {
5978
+ const retVal = (output || [])
5979
+ .filter((e) => e != null)
5980
+ .map((entry) => {
5981
+ if (entry === null) {
5982
+ return null;
5983
+ }
5984
+ return deserializeAws_json1_1ImpersonationRule(entry, context);
5985
+ });
5986
+ return retVal;
5987
+ };
5385
5988
  const deserializeAws_json1_1InvalidConfigurationException = (output, context) => {
5386
5989
  return {
5387
5990
  Message: (0, smithy_client_1.expectString)(output.Message),
@@ -5465,6 +6068,12 @@ const deserializeAws_json1_1ListGroupsResponse = (output, context) => {
5465
6068
  NextToken: (0, smithy_client_1.expectString)(output.NextToken),
5466
6069
  };
5467
6070
  };
6071
+ const deserializeAws_json1_1ListImpersonationRolesResponse = (output, context) => {
6072
+ return {
6073
+ NextToken: (0, smithy_client_1.expectString)(output.NextToken),
6074
+ Roles: output.Roles != null ? deserializeAws_json1_1ImpersonationRoleList(output.Roles, context) : undefined,
6075
+ };
6076
+ };
5468
6077
  const deserializeAws_json1_1ListMailboxExportJobsResponse = (output, context) => {
5469
6078
  return {
5470
6079
  Jobs: output.Jobs != null ? deserializeAws_json1_1Jobs(output.Jobs, context) : undefined,
@@ -5853,6 +6462,17 @@ const deserializeAws_json1_1TagList = (output, context) => {
5853
6462
  const deserializeAws_json1_1TagResourceResponse = (output, context) => {
5854
6463
  return {};
5855
6464
  };
6465
+ const deserializeAws_json1_1TargetUsers = (output, context) => {
6466
+ const retVal = (output || [])
6467
+ .filter((e) => e != null)
6468
+ .map((entry) => {
6469
+ if (entry === null) {
6470
+ return null;
6471
+ }
6472
+ return (0, smithy_client_1.expectString)(entry);
6473
+ });
6474
+ return retVal;
6475
+ };
5856
6476
  const deserializeAws_json1_1TestAvailabilityConfigurationResponse = (output, context) => {
5857
6477
  return {
5858
6478
  FailureReason: (0, smithy_client_1.expectString)(output.FailureReason),
@@ -5878,6 +6498,9 @@ const deserializeAws_json1_1UpdateAvailabilityConfigurationResponse = (output, c
5878
6498
  const deserializeAws_json1_1UpdateDefaultMailDomainResponse = (output, context) => {
5879
6499
  return {};
5880
6500
  };
6501
+ const deserializeAws_json1_1UpdateImpersonationRoleResponse = (output, context) => {
6502
+ return {};
6503
+ };
5881
6504
  const deserializeAws_json1_1UpdateMailboxQuotaResponse = (output, context) => {
5882
6505
  return {};
5883
6506
  };
@@ -5929,10 +6552,10 @@ const deserializeAws_json1_1Users = (output, context) => {
5929
6552
  return retVal;
5930
6553
  };
5931
6554
  const deserializeMetadata = (output) => {
5932
- var _a;
6555
+ var _a, _b;
5933
6556
  return ({
5934
6557
  httpStatusCode: output.statusCode,
5935
- requestId: (_a = output.headers["x-amzn-requestid"]) !== null && _a !== void 0 ? _a : output.headers["x-amzn-request-id"],
6558
+ requestId: (_b = (_a = output.headers["x-amzn-requestid"]) !== null && _a !== void 0 ? _a : output.headers["x-amzn-request-id"]) !== null && _b !== void 0 ? _b : output.headers["x-amz-request-id"],
5936
6559
  extendedRequestId: output.headers["x-amz-id-2"],
5937
6560
  cfId: output.headers["x-amz-cf-id"],
5938
6561
  });