@aws-sdk/client-ram 3.312.0 → 3.316.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 (97) hide show
  1. package/README.md +76 -5
  2. package/dist-cjs/RAM.js +47 -350
  3. package/dist-cjs/commands/CreatePermissionCommand.js +45 -0
  4. package/dist-cjs/commands/CreatePermissionVersionCommand.js +45 -0
  5. package/dist-cjs/commands/DeletePermissionCommand.js +45 -0
  6. package/dist-cjs/commands/DeletePermissionVersionCommand.js +45 -0
  7. package/dist-cjs/commands/ListPermissionAssociationsCommand.js +45 -0
  8. package/dist-cjs/commands/ListReplacePermissionAssociationsWorkCommand.js +45 -0
  9. package/dist-cjs/commands/PromotePermissionCreatedFromPolicyCommand.js +45 -0
  10. package/dist-cjs/commands/ReplacePermissionAssociationsCommand.js +45 -0
  11. package/dist-cjs/commands/SetDefaultPermissionVersionCommand.js +45 -0
  12. package/dist-cjs/commands/index.js +9 -0
  13. package/dist-cjs/endpoint/ruleset.js +3 -3
  14. package/dist-cjs/models/models_0.js +104 -1
  15. package/dist-cjs/pagination/ListPermissionAssociationsPaginator.js +29 -0
  16. package/dist-cjs/pagination/ListReplacePermissionAssociationsWorkPaginator.js +29 -0
  17. package/dist-cjs/pagination/index.js +2 -0
  18. package/dist-cjs/protocols/Aws_restJson1.js +1404 -756
  19. package/dist-es/RAM.js +47 -350
  20. package/dist-es/commands/CreatePermissionCommand.js +41 -0
  21. package/dist-es/commands/CreatePermissionVersionCommand.js +41 -0
  22. package/dist-es/commands/DeletePermissionCommand.js +41 -0
  23. package/dist-es/commands/DeletePermissionVersionCommand.js +41 -0
  24. package/dist-es/commands/ListPermissionAssociationsCommand.js +41 -0
  25. package/dist-es/commands/ListReplacePermissionAssociationsWorkCommand.js +41 -0
  26. package/dist-es/commands/PromotePermissionCreatedFromPolicyCommand.js +41 -0
  27. package/dist-es/commands/ReplacePermissionAssociationsCommand.js +41 -0
  28. package/dist-es/commands/SetDefaultPermissionVersionCommand.js +41 -0
  29. package/dist-es/commands/index.js +9 -0
  30. package/dist-es/endpoint/ruleset.js +3 -3
  31. package/dist-es/models/models_0.js +97 -0
  32. package/dist-es/pagination/ListPermissionAssociationsPaginator.js +25 -0
  33. package/dist-es/pagination/ListReplacePermissionAssociationsWorkPaginator.js +25 -0
  34. package/dist-es/pagination/index.js +2 -0
  35. package/dist-es/protocols/Aws_restJson1.js +1327 -698
  36. package/dist-types/RAM.d.ts +114 -113
  37. package/dist-types/RAMClient.d.ts +15 -7
  38. package/dist-types/commands/AcceptResourceShareInvitationCommand.d.ts +16 -12
  39. package/dist-types/commands/AssociateResourceShareCommand.d.ts +19 -14
  40. package/dist-types/commands/AssociateResourceSharePermissionCommand.d.ts +9 -7
  41. package/dist-types/commands/CreatePermissionCommand.d.ts +109 -0
  42. package/dist-types/commands/CreatePermissionVersionCommand.d.ts +106 -0
  43. package/dist-types/commands/CreateResourceShareCommand.d.ts +19 -13
  44. package/dist-types/commands/DeletePermissionCommand.d.ts +91 -0
  45. package/dist-types/commands/DeletePermissionVersionCommand.d.ts +96 -0
  46. package/dist-types/commands/DeleteResourceShareCommand.d.ts +19 -14
  47. package/dist-types/commands/DisassociateResourceShareCommand.d.ts +19 -13
  48. package/dist-types/commands/DisassociateResourceSharePermissionCommand.d.ts +14 -11
  49. package/dist-types/commands/EnableSharingWithAwsOrganizationCommand.d.ts +14 -11
  50. package/dist-types/commands/GetPermissionCommand.d.ts +9 -7
  51. package/dist-types/commands/GetResourcePoliciesCommand.d.ts +10 -6
  52. package/dist-types/commands/GetResourceShareAssociationsCommand.d.ts +13 -8
  53. package/dist-types/commands/GetResourceShareInvitationsCommand.d.ts +14 -8
  54. package/dist-types/commands/GetResourceSharesCommand.d.ts +11 -6
  55. package/dist-types/commands/ListPendingInvitationResourcesCommand.d.ts +15 -9
  56. package/dist-types/commands/ListPermissionAssociationsCommand.d.ts +91 -0
  57. package/dist-types/commands/ListPermissionVersionsCommand.d.ts +11 -7
  58. package/dist-types/commands/ListPermissionsCommand.d.ts +9 -5
  59. package/dist-types/commands/ListPrincipalsCommand.d.ts +10 -6
  60. package/dist-types/commands/ListReplacePermissionAssociationsWorkCommand.d.ts +84 -0
  61. package/dist-types/commands/ListResourceSharePermissionsCommand.d.ts +11 -7
  62. package/dist-types/commands/ListResourceTypesCommand.d.ts +7 -4
  63. package/dist-types/commands/ListResourcesCommand.d.ts +11 -7
  64. package/dist-types/commands/PromotePermissionCreatedFromPolicyCommand.d.ts +119 -0
  65. package/dist-types/commands/PromoteResourceShareCreatedFromPolicyCommand.d.ts +34 -14
  66. package/dist-types/commands/RejectResourceShareInvitationCommand.d.ts +16 -12
  67. package/dist-types/commands/ReplacePermissionAssociationsCommand.d.ts +108 -0
  68. package/dist-types/commands/SetDefaultPermissionVersionCommand.d.ts +92 -0
  69. package/dist-types/commands/TagResourceCommand.d.ts +17 -11
  70. package/dist-types/commands/UntagResourceCommand.d.ts +14 -5
  71. package/dist-types/commands/UpdateResourceShareCommand.d.ts +13 -11
  72. package/dist-types/commands/index.d.ts +9 -0
  73. package/dist-types/endpoint/EndpointParameters.d.ts +1 -1
  74. package/dist-types/models/models_0.d.ts +1286 -195
  75. package/dist-types/pagination/ListPermissionAssociationsPaginator.d.ts +7 -0
  76. package/dist-types/pagination/ListReplacePermissionAssociationsWorkPaginator.d.ts +7 -0
  77. package/dist-types/pagination/index.d.ts +2 -0
  78. package/dist-types/protocols/Aws_restJson1.d.ts +81 -0
  79. package/dist-types/ts3.4/RAM.d.ts +167 -1
  80. package/dist-types/ts3.4/RAMClient.d.ts +54 -0
  81. package/dist-types/ts3.4/commands/CreatePermissionCommand.d.ts +37 -0
  82. package/dist-types/ts3.4/commands/CreatePermissionVersionCommand.d.ts +41 -0
  83. package/dist-types/ts3.4/commands/DeletePermissionCommand.d.ts +37 -0
  84. package/dist-types/ts3.4/commands/DeletePermissionVersionCommand.d.ts +41 -0
  85. package/dist-types/ts3.4/commands/ListPermissionAssociationsCommand.d.ts +41 -0
  86. package/dist-types/ts3.4/commands/ListReplacePermissionAssociationsWorkCommand.d.ts +41 -0
  87. package/dist-types/ts3.4/commands/PromotePermissionCreatedFromPolicyCommand.d.ts +41 -0
  88. package/dist-types/ts3.4/commands/ReplacePermissionAssociationsCommand.d.ts +41 -0
  89. package/dist-types/ts3.4/commands/SetDefaultPermissionVersionCommand.d.ts +41 -0
  90. package/dist-types/ts3.4/commands/index.d.ts +9 -0
  91. package/dist-types/ts3.4/endpoint/EndpointParameters.d.ts +1 -1
  92. package/dist-types/ts3.4/models/models_0.d.ts +234 -19
  93. package/dist-types/ts3.4/pagination/ListPermissionAssociationsPaginator.d.ts +11 -0
  94. package/dist-types/ts3.4/pagination/ListReplacePermissionAssociationsWorkPaginator.d.ts +11 -0
  95. package/dist-types/ts3.4/pagination/index.d.ts +2 -0
  96. package/dist-types/ts3.4/protocols/Aws_restJson1.d.ts +108 -0
  97. package/package.json +6 -6
@@ -1,6 +1,6 @@
1
1
  import { HttpRequest as __HttpRequest } from "@aws-sdk/protocol-http";
2
- import { decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectNonNull as __expectNonNull, expectNumber as __expectNumber, expectObject as __expectObject, expectString as __expectString, map as __map, parseEpochTimestamp as __parseEpochTimestamp, throwDefaultError, } from "@aws-sdk/smithy-client";
3
- import { IdempotentParameterMismatchException, InvalidClientTokenException, InvalidMaxResultsException, InvalidNextTokenException, InvalidParameterException, InvalidResourceTypeException, InvalidStateTransitionException, MalformedArnException, MissingRequiredParameterException, OperationNotPermittedException, ResourceArnNotFoundException, ResourceShareInvitationAlreadyAcceptedException, ResourceShareInvitationAlreadyRejectedException, ResourceShareInvitationArnNotFoundException, ResourceShareInvitationExpiredException, ResourceShareLimitExceededException, ServerInternalException, ServiceUnavailableException, TagLimitExceededException, TagPolicyViolationException, ThrottlingException, UnknownResourceException, } from "../models/models_0";
2
+ import { _json, decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectNonNull as __expectNonNull, expectNumber as __expectNumber, expectObject as __expectObject, expectString as __expectString, map, parseEpochTimestamp as __parseEpochTimestamp, take, withBaseException, } from "@aws-sdk/smithy-client";
3
+ import { IdempotentParameterMismatchException, InvalidClientTokenException, InvalidMaxResultsException, InvalidNextTokenException, InvalidParameterException, InvalidPolicyException, InvalidResourceTypeException, InvalidStateTransitionException, MalformedArnException, MalformedPolicyTemplateException, MissingRequiredParameterException, OperationNotPermittedException, PermissionAlreadyExistsException, PermissionLimitExceededException, PermissionVersionsLimitExceededException, ResourceArnNotFoundException, ResourceShareInvitationAlreadyAcceptedException, ResourceShareInvitationAlreadyRejectedException, ResourceShareInvitationArnNotFoundException, ResourceShareInvitationExpiredException, ResourceShareLimitExceededException, ServerInternalException, ServiceUnavailableException, TagLimitExceededException, TagPolicyViolationException, ThrottlingException, UnknownResourceException, UnmatchedPolicyPermissionException, } from "../models/models_0";
4
4
  import { RAMServiceException as __BaseException } from "../models/RAMServiceException";
5
5
  export const se_AcceptResourceShareInvitationCommand = async (input, context) => {
6
6
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
@@ -9,10 +9,10 @@ export const se_AcceptResourceShareInvitationCommand = async (input, context) =>
9
9
  };
10
10
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/acceptresourceshareinvitation";
11
11
  let body;
12
- body = JSON.stringify({
13
- ...(input.clientToken != null && { clientToken: input.clientToken }),
14
- ...(input.resourceShareInvitationArn != null && { resourceShareInvitationArn: input.resourceShareInvitationArn }),
15
- });
12
+ body = JSON.stringify(take(input, {
13
+ clientToken: [],
14
+ resourceShareInvitationArn: [],
15
+ }));
16
16
  return new __HttpRequest({
17
17
  protocol,
18
18
  hostname,
@@ -30,12 +30,12 @@ export const se_AssociateResourceShareCommand = async (input, context) => {
30
30
  };
31
31
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/associateresourceshare";
32
32
  let body;
33
- body = JSON.stringify({
34
- ...(input.clientToken != null && { clientToken: input.clientToken }),
35
- ...(input.principals != null && { principals: se_PrincipalArnOrIdList(input.principals, context) }),
36
- ...(input.resourceArns != null && { resourceArns: se_ResourceArnList(input.resourceArns, context) }),
37
- ...(input.resourceShareArn != null && { resourceShareArn: input.resourceShareArn }),
38
- });
33
+ body = JSON.stringify(take(input, {
34
+ clientToken: [],
35
+ principals: (_) => _json(_),
36
+ resourceArns: (_) => _json(_),
37
+ resourceShareArn: [],
38
+ }));
39
39
  return new __HttpRequest({
40
40
  protocol,
41
41
  hostname,
@@ -53,13 +53,59 @@ export const se_AssociateResourceSharePermissionCommand = async (input, context)
53
53
  };
54
54
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/associateresourcesharepermission";
55
55
  let body;
56
- body = JSON.stringify({
57
- ...(input.clientToken != null && { clientToken: input.clientToken }),
58
- ...(input.permissionArn != null && { permissionArn: input.permissionArn }),
59
- ...(input.permissionVersion != null && { permissionVersion: input.permissionVersion }),
60
- ...(input.replace != null && { replace: input.replace }),
61
- ...(input.resourceShareArn != null && { resourceShareArn: input.resourceShareArn }),
56
+ body = JSON.stringify(take(input, {
57
+ clientToken: [],
58
+ permissionArn: [],
59
+ permissionVersion: [],
60
+ replace: [],
61
+ resourceShareArn: [],
62
+ }));
63
+ return new __HttpRequest({
64
+ protocol,
65
+ hostname,
66
+ port,
67
+ method: "POST",
68
+ headers,
69
+ path: resolvedPath,
70
+ body,
71
+ });
72
+ };
73
+ export const se_CreatePermissionCommand = async (input, context) => {
74
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
75
+ const headers = {
76
+ "content-type": "application/json",
77
+ };
78
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/createpermission";
79
+ let body;
80
+ body = JSON.stringify(take(input, {
81
+ clientToken: [],
82
+ name: [],
83
+ policyTemplate: [],
84
+ resourceType: [],
85
+ tags: (_) => _json(_),
86
+ }));
87
+ return new __HttpRequest({
88
+ protocol,
89
+ hostname,
90
+ port,
91
+ method: "POST",
92
+ headers,
93
+ path: resolvedPath,
94
+ body,
62
95
  });
96
+ };
97
+ export const se_CreatePermissionVersionCommand = async (input, context) => {
98
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
99
+ const headers = {
100
+ "content-type": "application/json",
101
+ };
102
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/createpermissionversion";
103
+ let body;
104
+ body = JSON.stringify(take(input, {
105
+ clientToken: [],
106
+ permissionArn: [],
107
+ policyTemplate: [],
108
+ }));
63
109
  return new __HttpRequest({
64
110
  protocol,
65
111
  hostname,
@@ -77,15 +123,15 @@ export const se_CreateResourceShareCommand = async (input, context) => {
77
123
  };
78
124
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/createresourceshare";
79
125
  let body;
80
- body = JSON.stringify({
81
- ...(input.allowExternalPrincipals != null && { allowExternalPrincipals: input.allowExternalPrincipals }),
82
- ...(input.clientToken != null && { clientToken: input.clientToken }),
83
- ...(input.name != null && { name: input.name }),
84
- ...(input.permissionArns != null && { permissionArns: se_PermissionArnList(input.permissionArns, context) }),
85
- ...(input.principals != null && { principals: se_PrincipalArnOrIdList(input.principals, context) }),
86
- ...(input.resourceArns != null && { resourceArns: se_ResourceArnList(input.resourceArns, context) }),
87
- ...(input.tags != null && { tags: se_TagList(input.tags, context) }),
88
- });
126
+ body = JSON.stringify(take(input, {
127
+ allowExternalPrincipals: [],
128
+ clientToken: [],
129
+ name: [],
130
+ permissionArns: (_) => _json(_),
131
+ principals: (_) => _json(_),
132
+ resourceArns: (_) => _json(_),
133
+ tags: (_) => _json(_),
134
+ }));
89
135
  return new __HttpRequest({
90
136
  protocol,
91
137
  hostname,
@@ -96,6 +142,50 @@ export const se_CreateResourceShareCommand = async (input, context) => {
96
142
  body,
97
143
  });
98
144
  };
145
+ export const se_DeletePermissionCommand = async (input, context) => {
146
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
147
+ const headers = {};
148
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/deletepermission";
149
+ const query = map({
150
+ permissionArn: [, __expectNonNull(input.permissionArn, `permissionArn`)],
151
+ clientToken: [, input.clientToken],
152
+ });
153
+ let body;
154
+ return new __HttpRequest({
155
+ protocol,
156
+ hostname,
157
+ port,
158
+ method: "DELETE",
159
+ headers,
160
+ path: resolvedPath,
161
+ query,
162
+ body,
163
+ });
164
+ };
165
+ export const se_DeletePermissionVersionCommand = async (input, context) => {
166
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
167
+ const headers = {};
168
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/deletepermissionversion";
169
+ const query = map({
170
+ permissionArn: [, __expectNonNull(input.permissionArn, `permissionArn`)],
171
+ permissionVersion: [
172
+ __expectNonNull(input.permissionVersion, `permissionVersion`) != null,
173
+ () => input.permissionVersion.toString(),
174
+ ],
175
+ clientToken: [, input.clientToken],
176
+ });
177
+ let body;
178
+ return new __HttpRequest({
179
+ protocol,
180
+ hostname,
181
+ port,
182
+ method: "DELETE",
183
+ headers,
184
+ path: resolvedPath,
185
+ query,
186
+ body,
187
+ });
188
+ };
99
189
  export const se_DeleteResourceShareCommand = async (input, context) => {
100
190
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
101
191
  const headers = {};
@@ -123,12 +213,12 @@ export const se_DisassociateResourceShareCommand = async (input, context) => {
123
213
  };
124
214
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/disassociateresourceshare";
125
215
  let body;
126
- body = JSON.stringify({
127
- ...(input.clientToken != null && { clientToken: input.clientToken }),
128
- ...(input.principals != null && { principals: se_PrincipalArnOrIdList(input.principals, context) }),
129
- ...(input.resourceArns != null && { resourceArns: se_ResourceArnList(input.resourceArns, context) }),
130
- ...(input.resourceShareArn != null && { resourceShareArn: input.resourceShareArn }),
131
- });
216
+ body = JSON.stringify(take(input, {
217
+ clientToken: [],
218
+ principals: (_) => _json(_),
219
+ resourceArns: (_) => _json(_),
220
+ resourceShareArn: [],
221
+ }));
132
222
  return new __HttpRequest({
133
223
  protocol,
134
224
  hostname,
@@ -146,11 +236,11 @@ export const se_DisassociateResourceSharePermissionCommand = async (input, conte
146
236
  };
147
237
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/disassociateresourcesharepermission";
148
238
  let body;
149
- body = JSON.stringify({
150
- ...(input.clientToken != null && { clientToken: input.clientToken }),
151
- ...(input.permissionArn != null && { permissionArn: input.permissionArn }),
152
- ...(input.resourceShareArn != null && { resourceShareArn: input.resourceShareArn }),
153
- });
239
+ body = JSON.stringify(take(input, {
240
+ clientToken: [],
241
+ permissionArn: [],
242
+ resourceShareArn: [],
243
+ }));
154
244
  return new __HttpRequest({
155
245
  protocol,
156
246
  hostname,
@@ -186,10 +276,10 @@ export const se_GetPermissionCommand = async (input, context) => {
186
276
  };
187
277
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/getpermission";
188
278
  let body;
189
- body = JSON.stringify({
190
- ...(input.permissionArn != null && { permissionArn: input.permissionArn }),
191
- ...(input.permissionVersion != null && { permissionVersion: input.permissionVersion }),
192
- });
279
+ body = JSON.stringify(take(input, {
280
+ permissionArn: [],
281
+ permissionVersion: [],
282
+ }));
193
283
  return new __HttpRequest({
194
284
  protocol,
195
285
  hostname,
@@ -207,12 +297,12 @@ export const se_GetResourcePoliciesCommand = async (input, context) => {
207
297
  };
208
298
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/getresourcepolicies";
209
299
  let body;
210
- body = JSON.stringify({
211
- ...(input.maxResults != null && { maxResults: input.maxResults }),
212
- ...(input.nextToken != null && { nextToken: input.nextToken }),
213
- ...(input.principal != null && { principal: input.principal }),
214
- ...(input.resourceArns != null && { resourceArns: se_ResourceArnList(input.resourceArns, context) }),
215
- });
300
+ body = JSON.stringify(take(input, {
301
+ maxResults: [],
302
+ nextToken: [],
303
+ principal: [],
304
+ resourceArns: (_) => _json(_),
305
+ }));
216
306
  return new __HttpRequest({
217
307
  protocol,
218
308
  hostname,
@@ -230,17 +320,15 @@ export const se_GetResourceShareAssociationsCommand = async (input, context) =>
230
320
  };
231
321
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/getresourceshareassociations";
232
322
  let body;
233
- body = JSON.stringify({
234
- ...(input.associationStatus != null && { associationStatus: input.associationStatus }),
235
- ...(input.associationType != null && { associationType: input.associationType }),
236
- ...(input.maxResults != null && { maxResults: input.maxResults }),
237
- ...(input.nextToken != null && { nextToken: input.nextToken }),
238
- ...(input.principal != null && { principal: input.principal }),
239
- ...(input.resourceArn != null && { resourceArn: input.resourceArn }),
240
- ...(input.resourceShareArns != null && {
241
- resourceShareArns: se_ResourceShareArnList(input.resourceShareArns, context),
242
- }),
243
- });
323
+ body = JSON.stringify(take(input, {
324
+ associationStatus: [],
325
+ associationType: [],
326
+ maxResults: [],
327
+ nextToken: [],
328
+ principal: [],
329
+ resourceArn: [],
330
+ resourceShareArns: (_) => _json(_),
331
+ }));
244
332
  return new __HttpRequest({
245
333
  protocol,
246
334
  hostname,
@@ -258,16 +346,12 @@ export const se_GetResourceShareInvitationsCommand = async (input, context) => {
258
346
  };
259
347
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/getresourceshareinvitations";
260
348
  let body;
261
- body = JSON.stringify({
262
- ...(input.maxResults != null && { maxResults: input.maxResults }),
263
- ...(input.nextToken != null && { nextToken: input.nextToken }),
264
- ...(input.resourceShareArns != null && {
265
- resourceShareArns: se_ResourceShareArnList(input.resourceShareArns, context),
266
- }),
267
- ...(input.resourceShareInvitationArns != null && {
268
- resourceShareInvitationArns: se_ResourceShareInvitationArnList(input.resourceShareInvitationArns, context),
269
- }),
270
- });
349
+ body = JSON.stringify(take(input, {
350
+ maxResults: [],
351
+ nextToken: [],
352
+ resourceShareArns: (_) => _json(_),
353
+ resourceShareInvitationArns: (_) => _json(_),
354
+ }));
271
355
  return new __HttpRequest({
272
356
  protocol,
273
357
  hostname,
@@ -285,18 +369,17 @@ export const se_GetResourceSharesCommand = async (input, context) => {
285
369
  };
286
370
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/getresourceshares";
287
371
  let body;
288
- body = JSON.stringify({
289
- ...(input.maxResults != null && { maxResults: input.maxResults }),
290
- ...(input.name != null && { name: input.name }),
291
- ...(input.nextToken != null && { nextToken: input.nextToken }),
292
- ...(input.permissionArn != null && { permissionArn: input.permissionArn }),
293
- ...(input.resourceOwner != null && { resourceOwner: input.resourceOwner }),
294
- ...(input.resourceShareArns != null && {
295
- resourceShareArns: se_ResourceShareArnList(input.resourceShareArns, context),
296
- }),
297
- ...(input.resourceShareStatus != null && { resourceShareStatus: input.resourceShareStatus }),
298
- ...(input.tagFilters != null && { tagFilters: se_TagFilters(input.tagFilters, context) }),
299
- });
372
+ body = JSON.stringify(take(input, {
373
+ maxResults: [],
374
+ name: [],
375
+ nextToken: [],
376
+ permissionArn: [],
377
+ permissionVersion: [],
378
+ resourceOwner: [],
379
+ resourceShareArns: (_) => _json(_),
380
+ resourceShareStatus: [],
381
+ tagFilters: (_) => _json(_),
382
+ }));
300
383
  return new __HttpRequest({
301
384
  protocol,
302
385
  hostname,
@@ -314,12 +397,39 @@ export const se_ListPendingInvitationResourcesCommand = async (input, context) =
314
397
  };
315
398
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/listpendinginvitationresources";
316
399
  let body;
317
- body = JSON.stringify({
318
- ...(input.maxResults != null && { maxResults: input.maxResults }),
319
- ...(input.nextToken != null && { nextToken: input.nextToken }),
320
- ...(input.resourceRegionScope != null && { resourceRegionScope: input.resourceRegionScope }),
321
- ...(input.resourceShareInvitationArn != null && { resourceShareInvitationArn: input.resourceShareInvitationArn }),
400
+ body = JSON.stringify(take(input, {
401
+ maxResults: [],
402
+ nextToken: [],
403
+ resourceRegionScope: [],
404
+ resourceShareInvitationArn: [],
405
+ }));
406
+ return new __HttpRequest({
407
+ protocol,
408
+ hostname,
409
+ port,
410
+ method: "POST",
411
+ headers,
412
+ path: resolvedPath,
413
+ body,
322
414
  });
415
+ };
416
+ export const se_ListPermissionAssociationsCommand = async (input, context) => {
417
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
418
+ const headers = {
419
+ "content-type": "application/json",
420
+ };
421
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/listpermissionassociations";
422
+ let body;
423
+ body = JSON.stringify(take(input, {
424
+ associationStatus: [],
425
+ defaultVersion: [],
426
+ featureSet: [],
427
+ maxResults: [],
428
+ nextToken: [],
429
+ permissionArn: [],
430
+ permissionVersion: [],
431
+ resourceType: [],
432
+ }));
323
433
  return new __HttpRequest({
324
434
  protocol,
325
435
  hostname,
@@ -337,11 +447,12 @@ export const se_ListPermissionsCommand = async (input, context) => {
337
447
  };
338
448
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/listpermissions";
339
449
  let body;
340
- body = JSON.stringify({
341
- ...(input.maxResults != null && { maxResults: input.maxResults }),
342
- ...(input.nextToken != null && { nextToken: input.nextToken }),
343
- ...(input.resourceType != null && { resourceType: input.resourceType }),
344
- });
450
+ body = JSON.stringify(take(input, {
451
+ maxResults: [],
452
+ nextToken: [],
453
+ permissionType: [],
454
+ resourceType: [],
455
+ }));
345
456
  return new __HttpRequest({
346
457
  protocol,
347
458
  hostname,
@@ -359,11 +470,11 @@ export const se_ListPermissionVersionsCommand = async (input, context) => {
359
470
  };
360
471
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/listpermissionversions";
361
472
  let body;
362
- body = JSON.stringify({
363
- ...(input.maxResults != null && { maxResults: input.maxResults }),
364
- ...(input.nextToken != null && { nextToken: input.nextToken }),
365
- ...(input.permissionArn != null && { permissionArn: input.permissionArn }),
366
- });
473
+ body = JSON.stringify(take(input, {
474
+ maxResults: [],
475
+ nextToken: [],
476
+ permissionArn: [],
477
+ }));
367
478
  return new __HttpRequest({
368
479
  protocol,
369
480
  hostname,
@@ -381,17 +492,38 @@ export const se_ListPrincipalsCommand = async (input, context) => {
381
492
  };
382
493
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/listprincipals";
383
494
  let body;
384
- body = JSON.stringify({
385
- ...(input.maxResults != null && { maxResults: input.maxResults }),
386
- ...(input.nextToken != null && { nextToken: input.nextToken }),
387
- ...(input.principals != null && { principals: se_PrincipalArnOrIdList(input.principals, context) }),
388
- ...(input.resourceArn != null && { resourceArn: input.resourceArn }),
389
- ...(input.resourceOwner != null && { resourceOwner: input.resourceOwner }),
390
- ...(input.resourceShareArns != null && {
391
- resourceShareArns: se_ResourceShareArnList(input.resourceShareArns, context),
392
- }),
393
- ...(input.resourceType != null && { resourceType: input.resourceType }),
495
+ body = JSON.stringify(take(input, {
496
+ maxResults: [],
497
+ nextToken: [],
498
+ principals: (_) => _json(_),
499
+ resourceArn: [],
500
+ resourceOwner: [],
501
+ resourceShareArns: (_) => _json(_),
502
+ resourceType: [],
503
+ }));
504
+ return new __HttpRequest({
505
+ protocol,
506
+ hostname,
507
+ port,
508
+ method: "POST",
509
+ headers,
510
+ path: resolvedPath,
511
+ body,
394
512
  });
513
+ };
514
+ export const se_ListReplacePermissionAssociationsWorkCommand = async (input, context) => {
515
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
516
+ const headers = {
517
+ "content-type": "application/json",
518
+ };
519
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/listreplacepermissionassociationswork";
520
+ let body;
521
+ body = JSON.stringify(take(input, {
522
+ maxResults: [],
523
+ nextToken: [],
524
+ status: [],
525
+ workIds: (_) => _json(_),
526
+ }));
395
527
  return new __HttpRequest({
396
528
  protocol,
397
529
  hostname,
@@ -409,18 +541,16 @@ export const se_ListResourcesCommand = async (input, context) => {
409
541
  };
410
542
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/listresources";
411
543
  let body;
412
- body = JSON.stringify({
413
- ...(input.maxResults != null && { maxResults: input.maxResults }),
414
- ...(input.nextToken != null && { nextToken: input.nextToken }),
415
- ...(input.principal != null && { principal: input.principal }),
416
- ...(input.resourceArns != null && { resourceArns: se_ResourceArnList(input.resourceArns, context) }),
417
- ...(input.resourceOwner != null && { resourceOwner: input.resourceOwner }),
418
- ...(input.resourceRegionScope != null && { resourceRegionScope: input.resourceRegionScope }),
419
- ...(input.resourceShareArns != null && {
420
- resourceShareArns: se_ResourceShareArnList(input.resourceShareArns, context),
421
- }),
422
- ...(input.resourceType != null && { resourceType: input.resourceType }),
423
- });
544
+ body = JSON.stringify(take(input, {
545
+ maxResults: [],
546
+ nextToken: [],
547
+ principal: [],
548
+ resourceArns: (_) => _json(_),
549
+ resourceOwner: [],
550
+ resourceRegionScope: [],
551
+ resourceShareArns: (_) => _json(_),
552
+ resourceType: [],
553
+ }));
424
554
  return new __HttpRequest({
425
555
  protocol,
426
556
  hostname,
@@ -438,11 +568,11 @@ export const se_ListResourceSharePermissionsCommand = async (input, context) =>
438
568
  };
439
569
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/listresourcesharepermissions";
440
570
  let body;
441
- body = JSON.stringify({
442
- ...(input.maxResults != null && { maxResults: input.maxResults }),
443
- ...(input.nextToken != null && { nextToken: input.nextToken }),
444
- ...(input.resourceShareArn != null && { resourceShareArn: input.resourceShareArn }),
445
- });
571
+ body = JSON.stringify(take(input, {
572
+ maxResults: [],
573
+ nextToken: [],
574
+ resourceShareArn: [],
575
+ }));
446
576
  return new __HttpRequest({
447
577
  protocol,
448
578
  hostname,
@@ -460,11 +590,33 @@ export const se_ListResourceTypesCommand = async (input, context) => {
460
590
  };
461
591
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/listresourcetypes";
462
592
  let body;
463
- body = JSON.stringify({
464
- ...(input.maxResults != null && { maxResults: input.maxResults }),
465
- ...(input.nextToken != null && { nextToken: input.nextToken }),
466
- ...(input.resourceRegionScope != null && { resourceRegionScope: input.resourceRegionScope }),
593
+ body = JSON.stringify(take(input, {
594
+ maxResults: [],
595
+ nextToken: [],
596
+ resourceRegionScope: [],
597
+ }));
598
+ return new __HttpRequest({
599
+ protocol,
600
+ hostname,
601
+ port,
602
+ method: "POST",
603
+ headers,
604
+ path: resolvedPath,
605
+ body,
467
606
  });
607
+ };
608
+ export const se_PromotePermissionCreatedFromPolicyCommand = async (input, context) => {
609
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
610
+ const headers = {
611
+ "content-type": "application/json",
612
+ };
613
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/promotepermissioncreatedfrompolicy";
614
+ let body;
615
+ body = JSON.stringify(take(input, {
616
+ clientToken: [],
617
+ name: [],
618
+ permissionArn: [],
619
+ }));
468
620
  return new __HttpRequest({
469
621
  protocol,
470
622
  hostname,
@@ -501,10 +653,55 @@ export const se_RejectResourceShareInvitationCommand = async (input, context) =>
501
653
  };
502
654
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/rejectresourceshareinvitation";
503
655
  let body;
504
- body = JSON.stringify({
505
- ...(input.clientToken != null && { clientToken: input.clientToken }),
506
- ...(input.resourceShareInvitationArn != null && { resourceShareInvitationArn: input.resourceShareInvitationArn }),
656
+ body = JSON.stringify(take(input, {
657
+ clientToken: [],
658
+ resourceShareInvitationArn: [],
659
+ }));
660
+ return new __HttpRequest({
661
+ protocol,
662
+ hostname,
663
+ port,
664
+ method: "POST",
665
+ headers,
666
+ path: resolvedPath,
667
+ body,
668
+ });
669
+ };
670
+ export const se_ReplacePermissionAssociationsCommand = async (input, context) => {
671
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
672
+ const headers = {
673
+ "content-type": "application/json",
674
+ };
675
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/replacepermissionassociations";
676
+ let body;
677
+ body = JSON.stringify(take(input, {
678
+ clientToken: [],
679
+ fromPermissionArn: [],
680
+ fromPermissionVersion: [],
681
+ toPermissionArn: [],
682
+ }));
683
+ return new __HttpRequest({
684
+ protocol,
685
+ hostname,
686
+ port,
687
+ method: "POST",
688
+ headers,
689
+ path: resolvedPath,
690
+ body,
507
691
  });
692
+ };
693
+ export const se_SetDefaultPermissionVersionCommand = async (input, context) => {
694
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
695
+ const headers = {
696
+ "content-type": "application/json",
697
+ };
698
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/setdefaultpermissionversion";
699
+ let body;
700
+ body = JSON.stringify(take(input, {
701
+ clientToken: [],
702
+ permissionArn: [],
703
+ permissionVersion: [],
704
+ }));
508
705
  return new __HttpRequest({
509
706
  protocol,
510
707
  hostname,
@@ -522,10 +719,11 @@ export const se_TagResourceCommand = async (input, context) => {
522
719
  };
523
720
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/tagresource";
524
721
  let body;
525
- body = JSON.stringify({
526
- ...(input.resourceShareArn != null && { resourceShareArn: input.resourceShareArn }),
527
- ...(input.tags != null && { tags: se_TagList(input.tags, context) }),
528
- });
722
+ body = JSON.stringify(take(input, {
723
+ resourceArn: [],
724
+ resourceShareArn: [],
725
+ tags: (_) => _json(_),
726
+ }));
529
727
  return new __HttpRequest({
530
728
  protocol,
531
729
  hostname,
@@ -543,10 +741,11 @@ export const se_UntagResourceCommand = async (input, context) => {
543
741
  };
544
742
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/untagresource";
545
743
  let body;
546
- body = JSON.stringify({
547
- ...(input.resourceShareArn != null && { resourceShareArn: input.resourceShareArn }),
548
- ...(input.tagKeys != null && { tagKeys: se_TagKeyList(input.tagKeys, context) }),
549
- });
744
+ body = JSON.stringify(take(input, {
745
+ resourceArn: [],
746
+ resourceShareArn: [],
747
+ tagKeys: (_) => _json(_),
748
+ }));
550
749
  return new __HttpRequest({
551
750
  protocol,
552
751
  hostname,
@@ -564,12 +763,12 @@ export const se_UpdateResourceShareCommand = async (input, context) => {
564
763
  };
565
764
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/updateresourceshare";
566
765
  let body;
567
- body = JSON.stringify({
568
- ...(input.allowExternalPrincipals != null && { allowExternalPrincipals: input.allowExternalPrincipals }),
569
- ...(input.clientToken != null && { clientToken: input.clientToken }),
570
- ...(input.name != null && { name: input.name }),
571
- ...(input.resourceShareArn != null && { resourceShareArn: input.resourceShareArn }),
572
- });
766
+ body = JSON.stringify(take(input, {
767
+ allowExternalPrincipals: [],
768
+ clientToken: [],
769
+ name: [],
770
+ resourceShareArn: [],
771
+ }));
573
772
  return new __HttpRequest({
574
773
  protocol,
575
774
  hostname,
@@ -588,12 +787,11 @@ export const de_AcceptResourceShareInvitationCommand = async (output, context) =
588
787
  $metadata: deserializeMetadata(output),
589
788
  });
590
789
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
591
- if (data.clientToken != null) {
592
- contents.clientToken = __expectString(data.clientToken);
593
- }
594
- if (data.resourceShareInvitation != null) {
595
- contents.resourceShareInvitation = de_ResourceShareInvitation(data.resourceShareInvitation, context);
596
- }
790
+ const doc = take(data, {
791
+ clientToken: __expectString,
792
+ resourceShareInvitation: (_) => de_ResourceShareInvitation(_, context),
793
+ });
794
+ Object.assign(contents, doc);
597
795
  return contents;
598
796
  };
599
797
  const de_AcceptResourceShareInvitationCommandError = async (output, context) => {
@@ -635,10 +833,9 @@ const de_AcceptResourceShareInvitationCommandError = async (output, context) =>
635
833
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
636
834
  default:
637
835
  const parsedBody = parsedOutput.body;
638
- throwDefaultError({
836
+ return throwDefaultError({
639
837
  output,
640
838
  parsedBody,
641
- exceptionCtor: __BaseException,
642
839
  errorCode,
643
840
  });
644
841
  }
@@ -651,12 +848,11 @@ export const de_AssociateResourceShareCommand = async (output, context) => {
651
848
  $metadata: deserializeMetadata(output),
652
849
  });
653
850
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
654
- if (data.clientToken != null) {
655
- contents.clientToken = __expectString(data.clientToken);
656
- }
657
- if (data.resourceShareAssociations != null) {
658
- contents.resourceShareAssociations = de_ResourceShareAssociationList(data.resourceShareAssociations, context);
659
- }
851
+ const doc = take(data, {
852
+ clientToken: __expectString,
853
+ resourceShareAssociations: (_) => de_ResourceShareAssociationList(_, context),
854
+ });
855
+ Object.assign(contents, doc);
660
856
  return contents;
661
857
  };
662
858
  const de_AssociateResourceShareCommandError = async (output, context) => {
@@ -701,10 +897,9 @@ const de_AssociateResourceShareCommandError = async (output, context) => {
701
897
  throw await de_UnknownResourceExceptionRes(parsedOutput, context);
702
898
  default:
703
899
  const parsedBody = parsedOutput.body;
704
- throwDefaultError({
900
+ return throwDefaultError({
705
901
  output,
706
902
  parsedBody,
707
- exceptionCtor: __BaseException,
708
903
  errorCode,
709
904
  });
710
905
  }
@@ -717,12 +912,11 @@ export const de_AssociateResourceSharePermissionCommand = async (output, context
717
912
  $metadata: deserializeMetadata(output),
718
913
  });
719
914
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
720
- if (data.clientToken != null) {
721
- contents.clientToken = __expectString(data.clientToken);
722
- }
723
- if (data.returnValue != null) {
724
- contents.returnValue = __expectBoolean(data.returnValue);
725
- }
915
+ const doc = take(data, {
916
+ clientToken: __expectString,
917
+ returnValue: __expectBoolean,
918
+ });
919
+ Object.assign(contents, doc);
726
920
  return contents;
727
921
  };
728
922
  const de_AssociateResourceSharePermissionCommandError = async (output, context) => {
@@ -755,31 +949,29 @@ const de_AssociateResourceSharePermissionCommandError = async (output, context)
755
949
  throw await de_UnknownResourceExceptionRes(parsedOutput, context);
756
950
  default:
757
951
  const parsedBody = parsedOutput.body;
758
- throwDefaultError({
952
+ return throwDefaultError({
759
953
  output,
760
954
  parsedBody,
761
- exceptionCtor: __BaseException,
762
955
  errorCode,
763
956
  });
764
957
  }
765
958
  };
766
- export const de_CreateResourceShareCommand = async (output, context) => {
959
+ export const de_CreatePermissionCommand = async (output, context) => {
767
960
  if (output.statusCode !== 200 && output.statusCode >= 300) {
768
- return de_CreateResourceShareCommandError(output, context);
961
+ return de_CreatePermissionCommandError(output, context);
769
962
  }
770
963
  const contents = map({
771
964
  $metadata: deserializeMetadata(output),
772
965
  });
773
966
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
774
- if (data.clientToken != null) {
775
- contents.clientToken = __expectString(data.clientToken);
776
- }
777
- if (data.resourceShare != null) {
778
- contents.resourceShare = de_ResourceShare(data.resourceShare, context);
779
- }
967
+ const doc = take(data, {
968
+ clientToken: __expectString,
969
+ permission: (_) => de_ResourceSharePermissionSummary(_, context),
970
+ });
971
+ Object.assign(contents, doc);
780
972
  return contents;
781
973
  };
782
- const de_CreateResourceShareCommandError = async (output, context) => {
974
+ const de_CreatePermissionCommandError = async (output, context) => {
783
975
  const parsedOutput = {
784
976
  ...output,
785
977
  body: await parseErrorBody(output.body, context),
@@ -795,57 +987,52 @@ const de_CreateResourceShareCommandError = async (output, context) => {
795
987
  case "InvalidParameterException":
796
988
  case "com.amazonaws.ram#InvalidParameterException":
797
989
  throw await de_InvalidParameterExceptionRes(parsedOutput, context);
798
- case "InvalidStateTransitionException":
799
- case "com.amazonaws.ram#InvalidStateTransitionException":
800
- throw await de_InvalidStateTransitionExceptionRes(parsedOutput, context);
801
- case "MalformedArnException":
802
- case "com.amazonaws.ram#MalformedArnException":
803
- throw await de_MalformedArnExceptionRes(parsedOutput, context);
990
+ case "InvalidPolicyException":
991
+ case "com.amazonaws.ram#InvalidPolicyException":
992
+ throw await de_InvalidPolicyExceptionRes(parsedOutput, context);
993
+ case "MalformedPolicyTemplateException":
994
+ case "com.amazonaws.ram#MalformedPolicyTemplateException":
995
+ throw await de_MalformedPolicyTemplateExceptionRes(parsedOutput, context);
804
996
  case "OperationNotPermittedException":
805
997
  case "com.amazonaws.ram#OperationNotPermittedException":
806
998
  throw await de_OperationNotPermittedExceptionRes(parsedOutput, context);
807
- case "ResourceShareLimitExceededException":
808
- case "com.amazonaws.ram#ResourceShareLimitExceededException":
809
- throw await de_ResourceShareLimitExceededExceptionRes(parsedOutput, context);
999
+ case "PermissionAlreadyExistsException":
1000
+ case "com.amazonaws.ram#PermissionAlreadyExistsException":
1001
+ throw await de_PermissionAlreadyExistsExceptionRes(parsedOutput, context);
1002
+ case "PermissionLimitExceededException":
1003
+ case "com.amazonaws.ram#PermissionLimitExceededException":
1004
+ throw await de_PermissionLimitExceededExceptionRes(parsedOutput, context);
810
1005
  case "ServerInternalException":
811
1006
  case "com.amazonaws.ram#ServerInternalException":
812
1007
  throw await de_ServerInternalExceptionRes(parsedOutput, context);
813
1008
  case "ServiceUnavailableException":
814
1009
  case "com.amazonaws.ram#ServiceUnavailableException":
815
1010
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
816
- case "TagPolicyViolationException":
817
- case "com.amazonaws.ram#TagPolicyViolationException":
818
- throw await de_TagPolicyViolationExceptionRes(parsedOutput, context);
819
- case "UnknownResourceException":
820
- case "com.amazonaws.ram#UnknownResourceException":
821
- throw await de_UnknownResourceExceptionRes(parsedOutput, context);
822
1011
  default:
823
1012
  const parsedBody = parsedOutput.body;
824
- throwDefaultError({
1013
+ return throwDefaultError({
825
1014
  output,
826
1015
  parsedBody,
827
- exceptionCtor: __BaseException,
828
1016
  errorCode,
829
1017
  });
830
1018
  }
831
1019
  };
832
- export const de_DeleteResourceShareCommand = async (output, context) => {
1020
+ export const de_CreatePermissionVersionCommand = async (output, context) => {
833
1021
  if (output.statusCode !== 200 && output.statusCode >= 300) {
834
- return de_DeleteResourceShareCommandError(output, context);
1022
+ return de_CreatePermissionVersionCommandError(output, context);
835
1023
  }
836
1024
  const contents = map({
837
1025
  $metadata: deserializeMetadata(output),
838
1026
  });
839
1027
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
840
- if (data.clientToken != null) {
841
- contents.clientToken = __expectString(data.clientToken);
842
- }
843
- if (data.returnValue != null) {
844
- contents.returnValue = __expectBoolean(data.returnValue);
845
- }
1028
+ const doc = take(data, {
1029
+ clientToken: __expectString,
1030
+ permission: (_) => de_ResourceSharePermissionDetail(_, context),
1031
+ });
1032
+ Object.assign(contents, doc);
846
1033
  return contents;
847
1034
  };
848
- const de_DeleteResourceShareCommandError = async (output, context) => {
1035
+ const de_CreatePermissionVersionCommandError = async (output, context) => {
849
1036
  const parsedOutput = {
850
1037
  ...output,
851
1038
  body: await parseErrorBody(output.body, context),
@@ -861,15 +1048,18 @@ const de_DeleteResourceShareCommandError = async (output, context) => {
861
1048
  case "InvalidParameterException":
862
1049
  case "com.amazonaws.ram#InvalidParameterException":
863
1050
  throw await de_InvalidParameterExceptionRes(parsedOutput, context);
864
- case "InvalidStateTransitionException":
865
- case "com.amazonaws.ram#InvalidStateTransitionException":
866
- throw await de_InvalidStateTransitionExceptionRes(parsedOutput, context);
1051
+ case "InvalidPolicyException":
1052
+ case "com.amazonaws.ram#InvalidPolicyException":
1053
+ throw await de_InvalidPolicyExceptionRes(parsedOutput, context);
867
1054
  case "MalformedArnException":
868
1055
  case "com.amazonaws.ram#MalformedArnException":
869
1056
  throw await de_MalformedArnExceptionRes(parsedOutput, context);
870
- case "OperationNotPermittedException":
871
- case "com.amazonaws.ram#OperationNotPermittedException":
872
- throw await de_OperationNotPermittedExceptionRes(parsedOutput, context);
1057
+ case "MalformedPolicyTemplateException":
1058
+ case "com.amazonaws.ram#MalformedPolicyTemplateException":
1059
+ throw await de_MalformedPolicyTemplateExceptionRes(parsedOutput, context);
1060
+ case "PermissionVersionsLimitExceededException":
1061
+ case "com.amazonaws.ram#PermissionVersionsLimitExceededException":
1062
+ throw await de_PermissionVersionsLimitExceededExceptionRes(parsedOutput, context);
873
1063
  case "ServerInternalException":
874
1064
  case "com.amazonaws.ram#ServerInternalException":
875
1065
  throw await de_ServerInternalExceptionRes(parsedOutput, context);
@@ -881,31 +1071,29 @@ const de_DeleteResourceShareCommandError = async (output, context) => {
881
1071
  throw await de_UnknownResourceExceptionRes(parsedOutput, context);
882
1072
  default:
883
1073
  const parsedBody = parsedOutput.body;
884
- throwDefaultError({
1074
+ return throwDefaultError({
885
1075
  output,
886
1076
  parsedBody,
887
- exceptionCtor: __BaseException,
888
1077
  errorCode,
889
1078
  });
890
1079
  }
891
1080
  };
892
- export const de_DisassociateResourceShareCommand = async (output, context) => {
1081
+ export const de_CreateResourceShareCommand = async (output, context) => {
893
1082
  if (output.statusCode !== 200 && output.statusCode >= 300) {
894
- return de_DisassociateResourceShareCommandError(output, context);
1083
+ return de_CreateResourceShareCommandError(output, context);
895
1084
  }
896
1085
  const contents = map({
897
1086
  $metadata: deserializeMetadata(output),
898
1087
  });
899
1088
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
900
- if (data.clientToken != null) {
901
- contents.clientToken = __expectString(data.clientToken);
902
- }
903
- if (data.resourceShareAssociations != null) {
904
- contents.resourceShareAssociations = de_ResourceShareAssociationList(data.resourceShareAssociations, context);
905
- }
1089
+ const doc = take(data, {
1090
+ clientToken: __expectString,
1091
+ resourceShare: (_) => de_ResourceShare(_, context),
1092
+ });
1093
+ Object.assign(contents, doc);
906
1094
  return contents;
907
1095
  };
908
- const de_DisassociateResourceShareCommandError = async (output, context) => {
1096
+ const de_CreateResourceShareCommandError = async (output, context) => {
909
1097
  const parsedOutput = {
910
1098
  ...output,
911
1099
  body: await parseErrorBody(output.body, context),
@@ -939,51 +1127,50 @@ const de_DisassociateResourceShareCommandError = async (output, context) => {
939
1127
  case "ServiceUnavailableException":
940
1128
  case "com.amazonaws.ram#ServiceUnavailableException":
941
1129
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
1130
+ case "TagPolicyViolationException":
1131
+ case "com.amazonaws.ram#TagPolicyViolationException":
1132
+ throw await de_TagPolicyViolationExceptionRes(parsedOutput, context);
942
1133
  case "UnknownResourceException":
943
1134
  case "com.amazonaws.ram#UnknownResourceException":
944
1135
  throw await de_UnknownResourceExceptionRes(parsedOutput, context);
945
1136
  default:
946
1137
  const parsedBody = parsedOutput.body;
947
- throwDefaultError({
1138
+ return throwDefaultError({
948
1139
  output,
949
1140
  parsedBody,
950
- exceptionCtor: __BaseException,
951
1141
  errorCode,
952
1142
  });
953
1143
  }
954
1144
  };
955
- export const de_DisassociateResourceSharePermissionCommand = async (output, context) => {
1145
+ export const de_DeletePermissionCommand = async (output, context) => {
956
1146
  if (output.statusCode !== 200 && output.statusCode >= 300) {
957
- return de_DisassociateResourceSharePermissionCommandError(output, context);
1147
+ return de_DeletePermissionCommandError(output, context);
958
1148
  }
959
1149
  const contents = map({
960
1150
  $metadata: deserializeMetadata(output),
961
1151
  });
962
1152
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
963
- if (data.clientToken != null) {
964
- contents.clientToken = __expectString(data.clientToken);
965
- }
966
- if (data.returnValue != null) {
967
- contents.returnValue = __expectBoolean(data.returnValue);
968
- }
1153
+ const doc = take(data, {
1154
+ clientToken: __expectString,
1155
+ permissionStatus: __expectString,
1156
+ returnValue: __expectBoolean,
1157
+ });
1158
+ Object.assign(contents, doc);
969
1159
  return contents;
970
1160
  };
971
- const de_DisassociateResourceSharePermissionCommandError = async (output, context) => {
1161
+ const de_DeletePermissionCommandError = async (output, context) => {
972
1162
  const parsedOutput = {
973
1163
  ...output,
974
1164
  body: await parseErrorBody(output.body, context),
975
1165
  };
976
1166
  const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
977
1167
  switch (errorCode) {
1168
+ case "IdempotentParameterMismatchException":
1169
+ case "com.amazonaws.ram#IdempotentParameterMismatchException":
1170
+ throw await de_IdempotentParameterMismatchExceptionRes(parsedOutput, context);
978
1171
  case "InvalidClientTokenException":
979
1172
  case "com.amazonaws.ram#InvalidClientTokenException":
980
1173
  throw await de_InvalidClientTokenExceptionRes(parsedOutput, context);
981
- case "InvalidParameterException":
982
- case "com.amazonaws.ram#InvalidParameterException":
983
- throw await de_InvalidParameterExceptionRes(parsedOutput, context);
984
- case "InvalidStateTransitionException":
985
- case "com.amazonaws.ram#InvalidStateTransitionException":
986
- throw await de_InvalidStateTransitionExceptionRes(parsedOutput, context);
987
1174
  case "MalformedArnException":
988
1175
  case "com.amazonaws.ram#MalformedArnException":
989
1176
  throw await de_MalformedArnExceptionRes(parsedOutput, context);
@@ -1001,34 +1188,48 @@ const de_DisassociateResourceSharePermissionCommandError = async (output, contex
1001
1188
  throw await de_UnknownResourceExceptionRes(parsedOutput, context);
1002
1189
  default:
1003
1190
  const parsedBody = parsedOutput.body;
1004
- throwDefaultError({
1191
+ return throwDefaultError({
1005
1192
  output,
1006
1193
  parsedBody,
1007
- exceptionCtor: __BaseException,
1008
1194
  errorCode,
1009
1195
  });
1010
1196
  }
1011
1197
  };
1012
- export const de_EnableSharingWithAwsOrganizationCommand = async (output, context) => {
1198
+ export const de_DeletePermissionVersionCommand = async (output, context) => {
1013
1199
  if (output.statusCode !== 200 && output.statusCode >= 300) {
1014
- return de_EnableSharingWithAwsOrganizationCommandError(output, context);
1200
+ return de_DeletePermissionVersionCommandError(output, context);
1015
1201
  }
1016
1202
  const contents = map({
1017
1203
  $metadata: deserializeMetadata(output),
1018
1204
  });
1019
1205
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1020
- if (data.returnValue != null) {
1021
- contents.returnValue = __expectBoolean(data.returnValue);
1022
- }
1206
+ const doc = take(data, {
1207
+ clientToken: __expectString,
1208
+ permissionStatus: __expectString,
1209
+ returnValue: __expectBoolean,
1210
+ });
1211
+ Object.assign(contents, doc);
1023
1212
  return contents;
1024
1213
  };
1025
- const de_EnableSharingWithAwsOrganizationCommandError = async (output, context) => {
1214
+ const de_DeletePermissionVersionCommandError = async (output, context) => {
1026
1215
  const parsedOutput = {
1027
1216
  ...output,
1028
1217
  body: await parseErrorBody(output.body, context),
1029
1218
  };
1030
1219
  const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
1031
1220
  switch (errorCode) {
1221
+ case "IdempotentParameterMismatchException":
1222
+ case "com.amazonaws.ram#IdempotentParameterMismatchException":
1223
+ throw await de_IdempotentParameterMismatchExceptionRes(parsedOutput, context);
1224
+ case "InvalidClientTokenException":
1225
+ case "com.amazonaws.ram#InvalidClientTokenException":
1226
+ throw await de_InvalidClientTokenExceptionRes(parsedOutput, context);
1227
+ case "InvalidParameterException":
1228
+ case "com.amazonaws.ram#InvalidParameterException":
1229
+ throw await de_InvalidParameterExceptionRes(parsedOutput, context);
1230
+ case "MalformedArnException":
1231
+ case "com.amazonaws.ram#MalformedArnException":
1232
+ throw await de_MalformedArnExceptionRes(parsedOutput, context);
1032
1233
  case "OperationNotPermittedException":
1033
1234
  case "com.amazonaws.ram#OperationNotPermittedException":
1034
1235
  throw await de_OperationNotPermittedExceptionRes(parsedOutput, context);
@@ -1038,41 +1239,54 @@ const de_EnableSharingWithAwsOrganizationCommandError = async (output, context)
1038
1239
  case "ServiceUnavailableException":
1039
1240
  case "com.amazonaws.ram#ServiceUnavailableException":
1040
1241
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
1242
+ case "UnknownResourceException":
1243
+ case "com.amazonaws.ram#UnknownResourceException":
1244
+ throw await de_UnknownResourceExceptionRes(parsedOutput, context);
1041
1245
  default:
1042
1246
  const parsedBody = parsedOutput.body;
1043
- throwDefaultError({
1247
+ return throwDefaultError({
1044
1248
  output,
1045
1249
  parsedBody,
1046
- exceptionCtor: __BaseException,
1047
1250
  errorCode,
1048
1251
  });
1049
1252
  }
1050
1253
  };
1051
- export const de_GetPermissionCommand = async (output, context) => {
1254
+ export const de_DeleteResourceShareCommand = async (output, context) => {
1052
1255
  if (output.statusCode !== 200 && output.statusCode >= 300) {
1053
- return de_GetPermissionCommandError(output, context);
1256
+ return de_DeleteResourceShareCommandError(output, context);
1054
1257
  }
1055
1258
  const contents = map({
1056
1259
  $metadata: deserializeMetadata(output),
1057
1260
  });
1058
1261
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1059
- if (data.permission != null) {
1060
- contents.permission = de_ResourceSharePermissionDetail(data.permission, context);
1061
- }
1262
+ const doc = take(data, {
1263
+ clientToken: __expectString,
1264
+ returnValue: __expectBoolean,
1265
+ });
1266
+ Object.assign(contents, doc);
1062
1267
  return contents;
1063
1268
  };
1064
- const de_GetPermissionCommandError = async (output, context) => {
1269
+ const de_DeleteResourceShareCommandError = async (output, context) => {
1065
1270
  const parsedOutput = {
1066
1271
  ...output,
1067
1272
  body: await parseErrorBody(output.body, context),
1068
1273
  };
1069
1274
  const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
1070
1275
  switch (errorCode) {
1276
+ case "IdempotentParameterMismatchException":
1277
+ case "com.amazonaws.ram#IdempotentParameterMismatchException":
1278
+ throw await de_IdempotentParameterMismatchExceptionRes(parsedOutput, context);
1279
+ case "InvalidClientTokenException":
1280
+ case "com.amazonaws.ram#InvalidClientTokenException":
1281
+ throw await de_InvalidClientTokenExceptionRes(parsedOutput, context);
1071
1282
  case "InvalidParameterException":
1072
1283
  case "com.amazonaws.ram#InvalidParameterException":
1073
1284
  throw await de_InvalidParameterExceptionRes(parsedOutput, context);
1074
- case "MalformedArnException":
1075
- case "com.amazonaws.ram#MalformedArnException":
1285
+ case "InvalidStateTransitionException":
1286
+ case "com.amazonaws.ram#InvalidStateTransitionException":
1287
+ throw await de_InvalidStateTransitionExceptionRes(parsedOutput, context);
1288
+ case "MalformedArnException":
1289
+ case "com.amazonaws.ram#MalformedArnException":
1076
1290
  throw await de_MalformedArnExceptionRes(parsedOutput, context);
1077
1291
  case "OperationNotPermittedException":
1078
1292
  case "com.amazonaws.ram#OperationNotPermittedException":
@@ -1088,28 +1302,229 @@ const de_GetPermissionCommandError = async (output, context) => {
1088
1302
  throw await de_UnknownResourceExceptionRes(parsedOutput, context);
1089
1303
  default:
1090
1304
  const parsedBody = parsedOutput.body;
1091
- throwDefaultError({
1305
+ return throwDefaultError({
1092
1306
  output,
1093
1307
  parsedBody,
1094
- exceptionCtor: __BaseException,
1095
1308
  errorCode,
1096
1309
  });
1097
1310
  }
1098
1311
  };
1099
- export const de_GetResourcePoliciesCommand = async (output, context) => {
1312
+ export const de_DisassociateResourceShareCommand = async (output, context) => {
1100
1313
  if (output.statusCode !== 200 && output.statusCode >= 300) {
1101
- return de_GetResourcePoliciesCommandError(output, context);
1314
+ return de_DisassociateResourceShareCommandError(output, context);
1102
1315
  }
1103
1316
  const contents = map({
1104
1317
  $metadata: deserializeMetadata(output),
1105
1318
  });
1106
1319
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1107
- if (data.nextToken != null) {
1108
- contents.nextToken = __expectString(data.nextToken);
1320
+ const doc = take(data, {
1321
+ clientToken: __expectString,
1322
+ resourceShareAssociations: (_) => de_ResourceShareAssociationList(_, context),
1323
+ });
1324
+ Object.assign(contents, doc);
1325
+ return contents;
1326
+ };
1327
+ const de_DisassociateResourceShareCommandError = async (output, context) => {
1328
+ const parsedOutput = {
1329
+ ...output,
1330
+ body: await parseErrorBody(output.body, context),
1331
+ };
1332
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
1333
+ switch (errorCode) {
1334
+ case "IdempotentParameterMismatchException":
1335
+ case "com.amazonaws.ram#IdempotentParameterMismatchException":
1336
+ throw await de_IdempotentParameterMismatchExceptionRes(parsedOutput, context);
1337
+ case "InvalidClientTokenException":
1338
+ case "com.amazonaws.ram#InvalidClientTokenException":
1339
+ throw await de_InvalidClientTokenExceptionRes(parsedOutput, context);
1340
+ case "InvalidParameterException":
1341
+ case "com.amazonaws.ram#InvalidParameterException":
1342
+ throw await de_InvalidParameterExceptionRes(parsedOutput, context);
1343
+ case "InvalidStateTransitionException":
1344
+ case "com.amazonaws.ram#InvalidStateTransitionException":
1345
+ throw await de_InvalidStateTransitionExceptionRes(parsedOutput, context);
1346
+ case "MalformedArnException":
1347
+ case "com.amazonaws.ram#MalformedArnException":
1348
+ throw await de_MalformedArnExceptionRes(parsedOutput, context);
1349
+ case "OperationNotPermittedException":
1350
+ case "com.amazonaws.ram#OperationNotPermittedException":
1351
+ throw await de_OperationNotPermittedExceptionRes(parsedOutput, context);
1352
+ case "ResourceShareLimitExceededException":
1353
+ case "com.amazonaws.ram#ResourceShareLimitExceededException":
1354
+ throw await de_ResourceShareLimitExceededExceptionRes(parsedOutput, context);
1355
+ case "ServerInternalException":
1356
+ case "com.amazonaws.ram#ServerInternalException":
1357
+ throw await de_ServerInternalExceptionRes(parsedOutput, context);
1358
+ case "ServiceUnavailableException":
1359
+ case "com.amazonaws.ram#ServiceUnavailableException":
1360
+ throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
1361
+ case "UnknownResourceException":
1362
+ case "com.amazonaws.ram#UnknownResourceException":
1363
+ throw await de_UnknownResourceExceptionRes(parsedOutput, context);
1364
+ default:
1365
+ const parsedBody = parsedOutput.body;
1366
+ return throwDefaultError({
1367
+ output,
1368
+ parsedBody,
1369
+ errorCode,
1370
+ });
1109
1371
  }
1110
- if (data.policies != null) {
1111
- contents.policies = de_PolicyList(data.policies, context);
1372
+ };
1373
+ export const de_DisassociateResourceSharePermissionCommand = async (output, context) => {
1374
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
1375
+ return de_DisassociateResourceSharePermissionCommandError(output, context);
1112
1376
  }
1377
+ const contents = map({
1378
+ $metadata: deserializeMetadata(output),
1379
+ });
1380
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1381
+ const doc = take(data, {
1382
+ clientToken: __expectString,
1383
+ returnValue: __expectBoolean,
1384
+ });
1385
+ Object.assign(contents, doc);
1386
+ return contents;
1387
+ };
1388
+ const de_DisassociateResourceSharePermissionCommandError = async (output, context) => {
1389
+ const parsedOutput = {
1390
+ ...output,
1391
+ body: await parseErrorBody(output.body, context),
1392
+ };
1393
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
1394
+ switch (errorCode) {
1395
+ case "InvalidClientTokenException":
1396
+ case "com.amazonaws.ram#InvalidClientTokenException":
1397
+ throw await de_InvalidClientTokenExceptionRes(parsedOutput, context);
1398
+ case "InvalidParameterException":
1399
+ case "com.amazonaws.ram#InvalidParameterException":
1400
+ throw await de_InvalidParameterExceptionRes(parsedOutput, context);
1401
+ case "InvalidStateTransitionException":
1402
+ case "com.amazonaws.ram#InvalidStateTransitionException":
1403
+ throw await de_InvalidStateTransitionExceptionRes(parsedOutput, context);
1404
+ case "MalformedArnException":
1405
+ case "com.amazonaws.ram#MalformedArnException":
1406
+ throw await de_MalformedArnExceptionRes(parsedOutput, context);
1407
+ case "OperationNotPermittedException":
1408
+ case "com.amazonaws.ram#OperationNotPermittedException":
1409
+ throw await de_OperationNotPermittedExceptionRes(parsedOutput, context);
1410
+ case "ServerInternalException":
1411
+ case "com.amazonaws.ram#ServerInternalException":
1412
+ throw await de_ServerInternalExceptionRes(parsedOutput, context);
1413
+ case "ServiceUnavailableException":
1414
+ case "com.amazonaws.ram#ServiceUnavailableException":
1415
+ throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
1416
+ case "UnknownResourceException":
1417
+ case "com.amazonaws.ram#UnknownResourceException":
1418
+ throw await de_UnknownResourceExceptionRes(parsedOutput, context);
1419
+ default:
1420
+ const parsedBody = parsedOutput.body;
1421
+ return throwDefaultError({
1422
+ output,
1423
+ parsedBody,
1424
+ errorCode,
1425
+ });
1426
+ }
1427
+ };
1428
+ export const de_EnableSharingWithAwsOrganizationCommand = async (output, context) => {
1429
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
1430
+ return de_EnableSharingWithAwsOrganizationCommandError(output, context);
1431
+ }
1432
+ const contents = map({
1433
+ $metadata: deserializeMetadata(output),
1434
+ });
1435
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1436
+ const doc = take(data, {
1437
+ returnValue: __expectBoolean,
1438
+ });
1439
+ Object.assign(contents, doc);
1440
+ return contents;
1441
+ };
1442
+ const de_EnableSharingWithAwsOrganizationCommandError = async (output, context) => {
1443
+ const parsedOutput = {
1444
+ ...output,
1445
+ body: await parseErrorBody(output.body, context),
1446
+ };
1447
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
1448
+ switch (errorCode) {
1449
+ case "OperationNotPermittedException":
1450
+ case "com.amazonaws.ram#OperationNotPermittedException":
1451
+ throw await de_OperationNotPermittedExceptionRes(parsedOutput, context);
1452
+ case "ServerInternalException":
1453
+ case "com.amazonaws.ram#ServerInternalException":
1454
+ throw await de_ServerInternalExceptionRes(parsedOutput, context);
1455
+ case "ServiceUnavailableException":
1456
+ case "com.amazonaws.ram#ServiceUnavailableException":
1457
+ throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
1458
+ default:
1459
+ const parsedBody = parsedOutput.body;
1460
+ return throwDefaultError({
1461
+ output,
1462
+ parsedBody,
1463
+ errorCode,
1464
+ });
1465
+ }
1466
+ };
1467
+ export const de_GetPermissionCommand = async (output, context) => {
1468
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
1469
+ return de_GetPermissionCommandError(output, context);
1470
+ }
1471
+ const contents = map({
1472
+ $metadata: deserializeMetadata(output),
1473
+ });
1474
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1475
+ const doc = take(data, {
1476
+ permission: (_) => de_ResourceSharePermissionDetail(_, context),
1477
+ });
1478
+ Object.assign(contents, doc);
1479
+ return contents;
1480
+ };
1481
+ const de_GetPermissionCommandError = async (output, context) => {
1482
+ const parsedOutput = {
1483
+ ...output,
1484
+ body: await parseErrorBody(output.body, context),
1485
+ };
1486
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
1487
+ switch (errorCode) {
1488
+ case "InvalidParameterException":
1489
+ case "com.amazonaws.ram#InvalidParameterException":
1490
+ throw await de_InvalidParameterExceptionRes(parsedOutput, context);
1491
+ case "MalformedArnException":
1492
+ case "com.amazonaws.ram#MalformedArnException":
1493
+ throw await de_MalformedArnExceptionRes(parsedOutput, context);
1494
+ case "OperationNotPermittedException":
1495
+ case "com.amazonaws.ram#OperationNotPermittedException":
1496
+ throw await de_OperationNotPermittedExceptionRes(parsedOutput, context);
1497
+ case "ServerInternalException":
1498
+ case "com.amazonaws.ram#ServerInternalException":
1499
+ throw await de_ServerInternalExceptionRes(parsedOutput, context);
1500
+ case "ServiceUnavailableException":
1501
+ case "com.amazonaws.ram#ServiceUnavailableException":
1502
+ throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
1503
+ case "UnknownResourceException":
1504
+ case "com.amazonaws.ram#UnknownResourceException":
1505
+ throw await de_UnknownResourceExceptionRes(parsedOutput, context);
1506
+ default:
1507
+ const parsedBody = parsedOutput.body;
1508
+ return throwDefaultError({
1509
+ output,
1510
+ parsedBody,
1511
+ errorCode,
1512
+ });
1513
+ }
1514
+ };
1515
+ export const de_GetResourcePoliciesCommand = async (output, context) => {
1516
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
1517
+ return de_GetResourcePoliciesCommandError(output, context);
1518
+ }
1519
+ const contents = map({
1520
+ $metadata: deserializeMetadata(output),
1521
+ });
1522
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1523
+ const doc = take(data, {
1524
+ nextToken: __expectString,
1525
+ policies: _json,
1526
+ });
1527
+ Object.assign(contents, doc);
1113
1528
  return contents;
1114
1529
  };
1115
1530
  const de_GetResourcePoliciesCommandError = async (output, context) => {
@@ -1139,10 +1554,9 @@ const de_GetResourcePoliciesCommandError = async (output, context) => {
1139
1554
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
1140
1555
  default:
1141
1556
  const parsedBody = parsedOutput.body;
1142
- throwDefaultError({
1557
+ return throwDefaultError({
1143
1558
  output,
1144
1559
  parsedBody,
1145
- exceptionCtor: __BaseException,
1146
1560
  errorCode,
1147
1561
  });
1148
1562
  }
@@ -1155,12 +1569,11 @@ export const de_GetResourceShareAssociationsCommand = async (output, context) =>
1155
1569
  $metadata: deserializeMetadata(output),
1156
1570
  });
1157
1571
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1158
- if (data.nextToken != null) {
1159
- contents.nextToken = __expectString(data.nextToken);
1160
- }
1161
- if (data.resourceShareAssociations != null) {
1162
- contents.resourceShareAssociations = de_ResourceShareAssociationList(data.resourceShareAssociations, context);
1163
- }
1572
+ const doc = take(data, {
1573
+ nextToken: __expectString,
1574
+ resourceShareAssociations: (_) => de_ResourceShareAssociationList(_, context),
1575
+ });
1576
+ Object.assign(contents, doc);
1164
1577
  return contents;
1165
1578
  };
1166
1579
  const de_GetResourceShareAssociationsCommandError = async (output, context) => {
@@ -1193,10 +1606,9 @@ const de_GetResourceShareAssociationsCommandError = async (output, context) => {
1193
1606
  throw await de_UnknownResourceExceptionRes(parsedOutput, context);
1194
1607
  default:
1195
1608
  const parsedBody = parsedOutput.body;
1196
- throwDefaultError({
1609
+ return throwDefaultError({
1197
1610
  output,
1198
1611
  parsedBody,
1199
- exceptionCtor: __BaseException,
1200
1612
  errorCode,
1201
1613
  });
1202
1614
  }
@@ -1209,12 +1621,11 @@ export const de_GetResourceShareInvitationsCommand = async (output, context) =>
1209
1621
  $metadata: deserializeMetadata(output),
1210
1622
  });
1211
1623
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1212
- if (data.nextToken != null) {
1213
- contents.nextToken = __expectString(data.nextToken);
1214
- }
1215
- if (data.resourceShareInvitations != null) {
1216
- contents.resourceShareInvitations = de_ResourceShareInvitationList(data.resourceShareInvitations, context);
1217
- }
1624
+ const doc = take(data, {
1625
+ nextToken: __expectString,
1626
+ resourceShareInvitations: (_) => de_ResourceShareInvitationList(_, context),
1627
+ });
1628
+ Object.assign(contents, doc);
1218
1629
  return contents;
1219
1630
  };
1220
1631
  const de_GetResourceShareInvitationsCommandError = async (output, context) => {
@@ -1250,10 +1661,9 @@ const de_GetResourceShareInvitationsCommandError = async (output, context) => {
1250
1661
  throw await de_UnknownResourceExceptionRes(parsedOutput, context);
1251
1662
  default:
1252
1663
  const parsedBody = parsedOutput.body;
1253
- throwDefaultError({
1664
+ return throwDefaultError({
1254
1665
  output,
1255
1666
  parsedBody,
1256
- exceptionCtor: __BaseException,
1257
1667
  errorCode,
1258
1668
  });
1259
1669
  }
@@ -1266,12 +1676,11 @@ export const de_GetResourceSharesCommand = async (output, context) => {
1266
1676
  $metadata: deserializeMetadata(output),
1267
1677
  });
1268
1678
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1269
- if (data.nextToken != null) {
1270
- contents.nextToken = __expectString(data.nextToken);
1271
- }
1272
- if (data.resourceShares != null) {
1273
- contents.resourceShares = de_ResourceShareList(data.resourceShares, context);
1274
- }
1679
+ const doc = take(data, {
1680
+ nextToken: __expectString,
1681
+ resourceShares: (_) => de_ResourceShareList(_, context),
1682
+ });
1683
+ Object.assign(contents, doc);
1275
1684
  return contents;
1276
1685
  };
1277
1686
  const de_GetResourceSharesCommandError = async (output, context) => {
@@ -1301,10 +1710,9 @@ const de_GetResourceSharesCommandError = async (output, context) => {
1301
1710
  throw await de_UnknownResourceExceptionRes(parsedOutput, context);
1302
1711
  default:
1303
1712
  const parsedBody = parsedOutput.body;
1304
- throwDefaultError({
1713
+ return throwDefaultError({
1305
1714
  output,
1306
1715
  parsedBody,
1307
- exceptionCtor: __BaseException,
1308
1716
  errorCode,
1309
1717
  });
1310
1718
  }
@@ -1317,12 +1725,11 @@ export const de_ListPendingInvitationResourcesCommand = async (output, context)
1317
1725
  $metadata: deserializeMetadata(output),
1318
1726
  });
1319
1727
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1320
- if (data.nextToken != null) {
1321
- contents.nextToken = __expectString(data.nextToken);
1322
- }
1323
- if (data.resources != null) {
1324
- contents.resources = de_ResourceList(data.resources, context);
1325
- }
1728
+ const doc = take(data, {
1729
+ nextToken: __expectString,
1730
+ resources: (_) => de_ResourceList(_, context),
1731
+ });
1732
+ Object.assign(contents, doc);
1326
1733
  return contents;
1327
1734
  };
1328
1735
  const de_ListPendingInvitationResourcesCommandError = async (output, context) => {
@@ -1361,28 +1768,72 @@ const de_ListPendingInvitationResourcesCommandError = async (output, context) =>
1361
1768
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
1362
1769
  default:
1363
1770
  const parsedBody = parsedOutput.body;
1364
- throwDefaultError({
1771
+ return throwDefaultError({
1365
1772
  output,
1366
1773
  parsedBody,
1367
- exceptionCtor: __BaseException,
1368
1774
  errorCode,
1369
1775
  });
1370
1776
  }
1371
1777
  };
1372
- export const de_ListPermissionsCommand = async (output, context) => {
1778
+ export const de_ListPermissionAssociationsCommand = async (output, context) => {
1373
1779
  if (output.statusCode !== 200 && output.statusCode >= 300) {
1374
- return de_ListPermissionsCommandError(output, context);
1780
+ return de_ListPermissionAssociationsCommandError(output, context);
1375
1781
  }
1376
1782
  const contents = map({
1377
1783
  $metadata: deserializeMetadata(output),
1378
1784
  });
1379
1785
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1380
- if (data.nextToken != null) {
1381
- contents.nextToken = __expectString(data.nextToken);
1786
+ const doc = take(data, {
1787
+ nextToken: __expectString,
1788
+ permissions: (_) => de_AssociatedPermissionList(_, context),
1789
+ });
1790
+ Object.assign(contents, doc);
1791
+ return contents;
1792
+ };
1793
+ const de_ListPermissionAssociationsCommandError = async (output, context) => {
1794
+ const parsedOutput = {
1795
+ ...output,
1796
+ body: await parseErrorBody(output.body, context),
1797
+ };
1798
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
1799
+ switch (errorCode) {
1800
+ case "InvalidNextTokenException":
1801
+ case "com.amazonaws.ram#InvalidNextTokenException":
1802
+ throw await de_InvalidNextTokenExceptionRes(parsedOutput, context);
1803
+ case "InvalidParameterException":
1804
+ case "com.amazonaws.ram#InvalidParameterException":
1805
+ throw await de_InvalidParameterExceptionRes(parsedOutput, context);
1806
+ case "MalformedArnException":
1807
+ case "com.amazonaws.ram#MalformedArnException":
1808
+ throw await de_MalformedArnExceptionRes(parsedOutput, context);
1809
+ case "ServerInternalException":
1810
+ case "com.amazonaws.ram#ServerInternalException":
1811
+ throw await de_ServerInternalExceptionRes(parsedOutput, context);
1812
+ case "ServiceUnavailableException":
1813
+ case "com.amazonaws.ram#ServiceUnavailableException":
1814
+ throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
1815
+ default:
1816
+ const parsedBody = parsedOutput.body;
1817
+ return throwDefaultError({
1818
+ output,
1819
+ parsedBody,
1820
+ errorCode,
1821
+ });
1382
1822
  }
1383
- if (data.permissions != null) {
1384
- contents.permissions = de_ResourceSharePermissionList(data.permissions, context);
1823
+ };
1824
+ export const de_ListPermissionsCommand = async (output, context) => {
1825
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
1826
+ return de_ListPermissionsCommandError(output, context);
1385
1827
  }
1828
+ const contents = map({
1829
+ $metadata: deserializeMetadata(output),
1830
+ });
1831
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1832
+ const doc = take(data, {
1833
+ nextToken: __expectString,
1834
+ permissions: (_) => de_ResourceSharePermissionList(_, context),
1835
+ });
1836
+ Object.assign(contents, doc);
1386
1837
  return contents;
1387
1838
  };
1388
1839
  const de_ListPermissionsCommandError = async (output, context) => {
@@ -1409,10 +1860,9 @@ const de_ListPermissionsCommandError = async (output, context) => {
1409
1860
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
1410
1861
  default:
1411
1862
  const parsedBody = parsedOutput.body;
1412
- throwDefaultError({
1863
+ return throwDefaultError({
1413
1864
  output,
1414
1865
  parsedBody,
1415
- exceptionCtor: __BaseException,
1416
1866
  errorCode,
1417
1867
  });
1418
1868
  }
@@ -1425,12 +1875,11 @@ export const de_ListPermissionVersionsCommand = async (output, context) => {
1425
1875
  $metadata: deserializeMetadata(output),
1426
1876
  });
1427
1877
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1428
- if (data.nextToken != null) {
1429
- contents.nextToken = __expectString(data.nextToken);
1430
- }
1431
- if (data.permissions != null) {
1432
- contents.permissions = de_ResourceSharePermissionList(data.permissions, context);
1433
- }
1878
+ const doc = take(data, {
1879
+ nextToken: __expectString,
1880
+ permissions: (_) => de_ResourceSharePermissionList(_, context),
1881
+ });
1882
+ Object.assign(contents, doc);
1434
1883
  return contents;
1435
1884
  };
1436
1885
  const de_ListPermissionVersionsCommandError = async (output, context) => {
@@ -1463,10 +1912,9 @@ const de_ListPermissionVersionsCommandError = async (output, context) => {
1463
1912
  throw await de_UnknownResourceExceptionRes(parsedOutput, context);
1464
1913
  default:
1465
1914
  const parsedBody = parsedOutput.body;
1466
- throwDefaultError({
1915
+ return throwDefaultError({
1467
1916
  output,
1468
1917
  parsedBody,
1469
- exceptionCtor: __BaseException,
1470
1918
  errorCode,
1471
1919
  });
1472
1920
  }
@@ -1479,12 +1927,11 @@ export const de_ListPrincipalsCommand = async (output, context) => {
1479
1927
  $metadata: deserializeMetadata(output),
1480
1928
  });
1481
1929
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1482
- if (data.nextToken != null) {
1483
- contents.nextToken = __expectString(data.nextToken);
1484
- }
1485
- if (data.principals != null) {
1486
- contents.principals = de_PrincipalList(data.principals, context);
1487
- }
1930
+ const doc = take(data, {
1931
+ nextToken: __expectString,
1932
+ principals: (_) => de_PrincipalList(_, context),
1933
+ });
1934
+ Object.assign(contents, doc);
1488
1935
  return contents;
1489
1936
  };
1490
1937
  const de_ListPrincipalsCommandError = async (output, context) => {
@@ -1514,28 +1961,69 @@ const de_ListPrincipalsCommandError = async (output, context) => {
1514
1961
  throw await de_UnknownResourceExceptionRes(parsedOutput, context);
1515
1962
  default:
1516
1963
  const parsedBody = parsedOutput.body;
1517
- throwDefaultError({
1964
+ return throwDefaultError({
1518
1965
  output,
1519
1966
  parsedBody,
1520
- exceptionCtor: __BaseException,
1521
1967
  errorCode,
1522
1968
  });
1523
1969
  }
1524
1970
  };
1525
- export const de_ListResourcesCommand = async (output, context) => {
1971
+ export const de_ListReplacePermissionAssociationsWorkCommand = async (output, context) => {
1526
1972
  if (output.statusCode !== 200 && output.statusCode >= 300) {
1527
- return de_ListResourcesCommandError(output, context);
1973
+ return de_ListReplacePermissionAssociationsWorkCommandError(output, context);
1528
1974
  }
1529
1975
  const contents = map({
1530
1976
  $metadata: deserializeMetadata(output),
1531
1977
  });
1532
1978
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1533
- if (data.nextToken != null) {
1534
- contents.nextToken = __expectString(data.nextToken);
1979
+ const doc = take(data, {
1980
+ nextToken: __expectString,
1981
+ replacePermissionAssociationsWorks: (_) => de_ReplacePermissionAssociationsWorkList(_, context),
1982
+ });
1983
+ Object.assign(contents, doc);
1984
+ return contents;
1985
+ };
1986
+ const de_ListReplacePermissionAssociationsWorkCommandError = async (output, context) => {
1987
+ const parsedOutput = {
1988
+ ...output,
1989
+ body: await parseErrorBody(output.body, context),
1990
+ };
1991
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
1992
+ switch (errorCode) {
1993
+ case "InvalidNextTokenException":
1994
+ case "com.amazonaws.ram#InvalidNextTokenException":
1995
+ throw await de_InvalidNextTokenExceptionRes(parsedOutput, context);
1996
+ case "InvalidParameterException":
1997
+ case "com.amazonaws.ram#InvalidParameterException":
1998
+ throw await de_InvalidParameterExceptionRes(parsedOutput, context);
1999
+ case "ServerInternalException":
2000
+ case "com.amazonaws.ram#ServerInternalException":
2001
+ throw await de_ServerInternalExceptionRes(parsedOutput, context);
2002
+ case "ServiceUnavailableException":
2003
+ case "com.amazonaws.ram#ServiceUnavailableException":
2004
+ throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
2005
+ default:
2006
+ const parsedBody = parsedOutput.body;
2007
+ return throwDefaultError({
2008
+ output,
2009
+ parsedBody,
2010
+ errorCode,
2011
+ });
1535
2012
  }
1536
- if (data.resources != null) {
1537
- contents.resources = de_ResourceList(data.resources, context);
2013
+ };
2014
+ export const de_ListResourcesCommand = async (output, context) => {
2015
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
2016
+ return de_ListResourcesCommandError(output, context);
1538
2017
  }
2018
+ const contents = map({
2019
+ $metadata: deserializeMetadata(output),
2020
+ });
2021
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
2022
+ const doc = take(data, {
2023
+ nextToken: __expectString,
2024
+ resources: (_) => de_ResourceList(_, context),
2025
+ });
2026
+ Object.assign(contents, doc);
1539
2027
  return contents;
1540
2028
  };
1541
2029
  const de_ListResourcesCommandError = async (output, context) => {
@@ -1568,10 +2056,9 @@ const de_ListResourcesCommandError = async (output, context) => {
1568
2056
  throw await de_UnknownResourceExceptionRes(parsedOutput, context);
1569
2057
  default:
1570
2058
  const parsedBody = parsedOutput.body;
1571
- throwDefaultError({
2059
+ return throwDefaultError({
1572
2060
  output,
1573
2061
  parsedBody,
1574
- exceptionCtor: __BaseException,
1575
2062
  errorCode,
1576
2063
  });
1577
2064
  }
@@ -1584,15 +2071,66 @@ export const de_ListResourceSharePermissionsCommand = async (output, context) =>
1584
2071
  $metadata: deserializeMetadata(output),
1585
2072
  });
1586
2073
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1587
- if (data.nextToken != null) {
1588
- contents.nextToken = __expectString(data.nextToken);
2074
+ const doc = take(data, {
2075
+ nextToken: __expectString,
2076
+ permissions: (_) => de_ResourceSharePermissionList(_, context),
2077
+ });
2078
+ Object.assign(contents, doc);
2079
+ return contents;
2080
+ };
2081
+ const de_ListResourceSharePermissionsCommandError = async (output, context) => {
2082
+ const parsedOutput = {
2083
+ ...output,
2084
+ body: await parseErrorBody(output.body, context),
2085
+ };
2086
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
2087
+ switch (errorCode) {
2088
+ case "InvalidNextTokenException":
2089
+ case "com.amazonaws.ram#InvalidNextTokenException":
2090
+ throw await de_InvalidNextTokenExceptionRes(parsedOutput, context);
2091
+ case "InvalidParameterException":
2092
+ case "com.amazonaws.ram#InvalidParameterException":
2093
+ throw await de_InvalidParameterExceptionRes(parsedOutput, context);
2094
+ case "MalformedArnException":
2095
+ case "com.amazonaws.ram#MalformedArnException":
2096
+ throw await de_MalformedArnExceptionRes(parsedOutput, context);
2097
+ case "OperationNotPermittedException":
2098
+ case "com.amazonaws.ram#OperationNotPermittedException":
2099
+ throw await de_OperationNotPermittedExceptionRes(parsedOutput, context);
2100
+ case "ServerInternalException":
2101
+ case "com.amazonaws.ram#ServerInternalException":
2102
+ throw await de_ServerInternalExceptionRes(parsedOutput, context);
2103
+ case "ServiceUnavailableException":
2104
+ case "com.amazonaws.ram#ServiceUnavailableException":
2105
+ throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
2106
+ case "UnknownResourceException":
2107
+ case "com.amazonaws.ram#UnknownResourceException":
2108
+ throw await de_UnknownResourceExceptionRes(parsedOutput, context);
2109
+ default:
2110
+ const parsedBody = parsedOutput.body;
2111
+ return throwDefaultError({
2112
+ output,
2113
+ parsedBody,
2114
+ errorCode,
2115
+ });
1589
2116
  }
1590
- if (data.permissions != null) {
1591
- contents.permissions = de_ResourceSharePermissionList(data.permissions, context);
2117
+ };
2118
+ export const de_ListResourceTypesCommand = async (output, context) => {
2119
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
2120
+ return de_ListResourceTypesCommandError(output, context);
1592
2121
  }
2122
+ const contents = map({
2123
+ $metadata: deserializeMetadata(output),
2124
+ });
2125
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
2126
+ const doc = take(data, {
2127
+ nextToken: __expectString,
2128
+ resourceTypes: _json,
2129
+ });
2130
+ Object.assign(contents, doc);
1593
2131
  return contents;
1594
2132
  };
1595
- const de_ListResourceSharePermissionsCommandError = async (output, context) => {
2133
+ const de_ListResourceTypesCommandError = async (output, context) => {
1596
2134
  const parsedOutput = {
1597
2135
  ...output,
1598
2136
  body: await parseErrorBody(output.body, context),
@@ -1605,12 +2143,112 @@ const de_ListResourceSharePermissionsCommandError = async (output, context) => {
1605
2143
  case "InvalidParameterException":
1606
2144
  case "com.amazonaws.ram#InvalidParameterException":
1607
2145
  throw await de_InvalidParameterExceptionRes(parsedOutput, context);
2146
+ case "ServerInternalException":
2147
+ case "com.amazonaws.ram#ServerInternalException":
2148
+ throw await de_ServerInternalExceptionRes(parsedOutput, context);
2149
+ case "ServiceUnavailableException":
2150
+ case "com.amazonaws.ram#ServiceUnavailableException":
2151
+ throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
2152
+ default:
2153
+ const parsedBody = parsedOutput.body;
2154
+ return throwDefaultError({
2155
+ output,
2156
+ parsedBody,
2157
+ errorCode,
2158
+ });
2159
+ }
2160
+ };
2161
+ export const de_PromotePermissionCreatedFromPolicyCommand = async (output, context) => {
2162
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
2163
+ return de_PromotePermissionCreatedFromPolicyCommandError(output, context);
2164
+ }
2165
+ const contents = map({
2166
+ $metadata: deserializeMetadata(output),
2167
+ });
2168
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
2169
+ const doc = take(data, {
2170
+ clientToken: __expectString,
2171
+ permission: (_) => de_ResourceSharePermissionSummary(_, context),
2172
+ });
2173
+ Object.assign(contents, doc);
2174
+ return contents;
2175
+ };
2176
+ const de_PromotePermissionCreatedFromPolicyCommandError = async (output, context) => {
2177
+ const parsedOutput = {
2178
+ ...output,
2179
+ body: await parseErrorBody(output.body, context),
2180
+ };
2181
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
2182
+ switch (errorCode) {
2183
+ case "InvalidParameterException":
2184
+ case "com.amazonaws.ram#InvalidParameterException":
2185
+ throw await de_InvalidParameterExceptionRes(parsedOutput, context);
2186
+ case "MalformedArnException":
2187
+ case "com.amazonaws.ram#MalformedArnException":
2188
+ throw await de_MalformedArnExceptionRes(parsedOutput, context);
2189
+ case "MissingRequiredParameterException":
2190
+ case "com.amazonaws.ram#MissingRequiredParameterException":
2191
+ throw await de_MissingRequiredParameterExceptionRes(parsedOutput, context);
2192
+ case "OperationNotPermittedException":
2193
+ case "com.amazonaws.ram#OperationNotPermittedException":
2194
+ throw await de_OperationNotPermittedExceptionRes(parsedOutput, context);
2195
+ case "ServerInternalException":
2196
+ case "com.amazonaws.ram#ServerInternalException":
2197
+ throw await de_ServerInternalExceptionRes(parsedOutput, context);
2198
+ case "ServiceUnavailableException":
2199
+ case "com.amazonaws.ram#ServiceUnavailableException":
2200
+ throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
2201
+ case "UnknownResourceException":
2202
+ case "com.amazonaws.ram#UnknownResourceException":
2203
+ throw await de_UnknownResourceExceptionRes(parsedOutput, context);
2204
+ default:
2205
+ const parsedBody = parsedOutput.body;
2206
+ return throwDefaultError({
2207
+ output,
2208
+ parsedBody,
2209
+ errorCode,
2210
+ });
2211
+ }
2212
+ };
2213
+ export const de_PromoteResourceShareCreatedFromPolicyCommand = async (output, context) => {
2214
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
2215
+ return de_PromoteResourceShareCreatedFromPolicyCommandError(output, context);
2216
+ }
2217
+ const contents = map({
2218
+ $metadata: deserializeMetadata(output),
2219
+ });
2220
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
2221
+ const doc = take(data, {
2222
+ returnValue: __expectBoolean,
2223
+ });
2224
+ Object.assign(contents, doc);
2225
+ return contents;
2226
+ };
2227
+ const de_PromoteResourceShareCreatedFromPolicyCommandError = async (output, context) => {
2228
+ const parsedOutput = {
2229
+ ...output,
2230
+ body: await parseErrorBody(output.body, context),
2231
+ };
2232
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
2233
+ switch (errorCode) {
2234
+ case "InvalidParameterException":
2235
+ case "com.amazonaws.ram#InvalidParameterException":
2236
+ throw await de_InvalidParameterExceptionRes(parsedOutput, context);
2237
+ case "InvalidStateTransitionException":
2238
+ case "com.amazonaws.ram#InvalidStateTransitionException":
2239
+ throw await de_InvalidStateTransitionExceptionRes(parsedOutput, context);
1608
2240
  case "MalformedArnException":
1609
2241
  case "com.amazonaws.ram#MalformedArnException":
1610
2242
  throw await de_MalformedArnExceptionRes(parsedOutput, context);
2243
+ case "MissingRequiredParameterException":
2244
+ case "com.amazonaws.ram#MissingRequiredParameterException":
2245
+ throw await de_MissingRequiredParameterExceptionRes(parsedOutput, context);
1611
2246
  case "OperationNotPermittedException":
1612
2247
  case "com.amazonaws.ram#OperationNotPermittedException":
1613
2248
  throw await de_OperationNotPermittedExceptionRes(parsedOutput, context);
2249
+ case "ResourceShareLimitExceededException":
2250
+ case "com.amazonaws.ram#ResourceShareLimitExceededException":
2251
+ throw await de_ResourceShareLimitExceededExceptionRes(parsedOutput, context);
1614
2252
  case "ServerInternalException":
1615
2253
  case "com.amazonaws.ram#ServerInternalException":
1616
2254
  throw await de_ServerInternalExceptionRes(parsedOutput, context);
@@ -1620,45 +2258,64 @@ const de_ListResourceSharePermissionsCommandError = async (output, context) => {
1620
2258
  case "UnknownResourceException":
1621
2259
  case "com.amazonaws.ram#UnknownResourceException":
1622
2260
  throw await de_UnknownResourceExceptionRes(parsedOutput, context);
2261
+ case "UnmatchedPolicyPermissionException":
2262
+ case "com.amazonaws.ram#UnmatchedPolicyPermissionException":
2263
+ throw await de_UnmatchedPolicyPermissionExceptionRes(parsedOutput, context);
1623
2264
  default:
1624
2265
  const parsedBody = parsedOutput.body;
1625
- throwDefaultError({
2266
+ return throwDefaultError({
1626
2267
  output,
1627
2268
  parsedBody,
1628
- exceptionCtor: __BaseException,
1629
2269
  errorCode,
1630
2270
  });
1631
2271
  }
1632
2272
  };
1633
- export const de_ListResourceTypesCommand = async (output, context) => {
2273
+ export const de_RejectResourceShareInvitationCommand = async (output, context) => {
1634
2274
  if (output.statusCode !== 200 && output.statusCode >= 300) {
1635
- return de_ListResourceTypesCommandError(output, context);
2275
+ return de_RejectResourceShareInvitationCommandError(output, context);
1636
2276
  }
1637
2277
  const contents = map({
1638
2278
  $metadata: deserializeMetadata(output),
1639
2279
  });
1640
2280
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1641
- if (data.nextToken != null) {
1642
- contents.nextToken = __expectString(data.nextToken);
1643
- }
1644
- if (data.resourceTypes != null) {
1645
- contents.resourceTypes = de_ServiceNameAndResourceTypeList(data.resourceTypes, context);
1646
- }
2281
+ const doc = take(data, {
2282
+ clientToken: __expectString,
2283
+ resourceShareInvitation: (_) => de_ResourceShareInvitation(_, context),
2284
+ });
2285
+ Object.assign(contents, doc);
1647
2286
  return contents;
1648
2287
  };
1649
- const de_ListResourceTypesCommandError = async (output, context) => {
2288
+ const de_RejectResourceShareInvitationCommandError = async (output, context) => {
1650
2289
  const parsedOutput = {
1651
2290
  ...output,
1652
2291
  body: await parseErrorBody(output.body, context),
1653
2292
  };
1654
2293
  const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
1655
2294
  switch (errorCode) {
1656
- case "InvalidNextTokenException":
1657
- case "com.amazonaws.ram#InvalidNextTokenException":
1658
- throw await de_InvalidNextTokenExceptionRes(parsedOutput, context);
1659
- case "InvalidParameterException":
1660
- case "com.amazonaws.ram#InvalidParameterException":
1661
- throw await de_InvalidParameterExceptionRes(parsedOutput, context);
2295
+ case "IdempotentParameterMismatchException":
2296
+ case "com.amazonaws.ram#IdempotentParameterMismatchException":
2297
+ throw await de_IdempotentParameterMismatchExceptionRes(parsedOutput, context);
2298
+ case "InvalidClientTokenException":
2299
+ case "com.amazonaws.ram#InvalidClientTokenException":
2300
+ throw await de_InvalidClientTokenExceptionRes(parsedOutput, context);
2301
+ case "MalformedArnException":
2302
+ case "com.amazonaws.ram#MalformedArnException":
2303
+ throw await de_MalformedArnExceptionRes(parsedOutput, context);
2304
+ case "OperationNotPermittedException":
2305
+ case "com.amazonaws.ram#OperationNotPermittedException":
2306
+ throw await de_OperationNotPermittedExceptionRes(parsedOutput, context);
2307
+ case "ResourceShareInvitationAlreadyAcceptedException":
2308
+ case "com.amazonaws.ram#ResourceShareInvitationAlreadyAcceptedException":
2309
+ throw await de_ResourceShareInvitationAlreadyAcceptedExceptionRes(parsedOutput, context);
2310
+ case "ResourceShareInvitationAlreadyRejectedException":
2311
+ case "com.amazonaws.ram#ResourceShareInvitationAlreadyRejectedException":
2312
+ throw await de_ResourceShareInvitationAlreadyRejectedExceptionRes(parsedOutput, context);
2313
+ case "ResourceShareInvitationArnNotFoundException":
2314
+ case "com.amazonaws.ram#ResourceShareInvitationArnNotFoundException":
2315
+ throw await de_ResourceShareInvitationArnNotFoundExceptionRes(parsedOutput, context);
2316
+ case "ResourceShareInvitationExpiredException":
2317
+ case "com.amazonaws.ram#ResourceShareInvitationExpiredException":
2318
+ throw await de_ResourceShareInvitationExpiredExceptionRes(parsedOutput, context);
1662
2319
  case "ServerInternalException":
1663
2320
  case "com.amazonaws.ram#ServerInternalException":
1664
2321
  throw await de_ServerInternalExceptionRes(parsedOutput, context);
@@ -1667,49 +2324,50 @@ const de_ListResourceTypesCommandError = async (output, context) => {
1667
2324
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
1668
2325
  default:
1669
2326
  const parsedBody = parsedOutput.body;
1670
- throwDefaultError({
2327
+ return throwDefaultError({
1671
2328
  output,
1672
2329
  parsedBody,
1673
- exceptionCtor: __BaseException,
1674
2330
  errorCode,
1675
2331
  });
1676
2332
  }
1677
2333
  };
1678
- export const de_PromoteResourceShareCreatedFromPolicyCommand = async (output, context) => {
2334
+ export const de_ReplacePermissionAssociationsCommand = async (output, context) => {
1679
2335
  if (output.statusCode !== 200 && output.statusCode >= 300) {
1680
- return de_PromoteResourceShareCreatedFromPolicyCommandError(output, context);
2336
+ return de_ReplacePermissionAssociationsCommandError(output, context);
1681
2337
  }
1682
2338
  const contents = map({
1683
2339
  $metadata: deserializeMetadata(output),
1684
2340
  });
1685
2341
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1686
- if (data.returnValue != null) {
1687
- contents.returnValue = __expectBoolean(data.returnValue);
1688
- }
2342
+ const doc = take(data, {
2343
+ clientToken: __expectString,
2344
+ replacePermissionAssociationsWork: (_) => de_ReplacePermissionAssociationsWork(_, context),
2345
+ });
2346
+ Object.assign(contents, doc);
1689
2347
  return contents;
1690
2348
  };
1691
- const de_PromoteResourceShareCreatedFromPolicyCommandError = async (output, context) => {
2349
+ const de_ReplacePermissionAssociationsCommandError = async (output, context) => {
1692
2350
  const parsedOutput = {
1693
2351
  ...output,
1694
2352
  body: await parseErrorBody(output.body, context),
1695
2353
  };
1696
2354
  const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
1697
2355
  switch (errorCode) {
2356
+ case "IdempotentParameterMismatchException":
2357
+ case "com.amazonaws.ram#IdempotentParameterMismatchException":
2358
+ throw await de_IdempotentParameterMismatchExceptionRes(parsedOutput, context);
2359
+ case "InvalidClientTokenException":
2360
+ case "com.amazonaws.ram#InvalidClientTokenException":
2361
+ throw await de_InvalidClientTokenExceptionRes(parsedOutput, context);
1698
2362
  case "InvalidParameterException":
1699
2363
  case "com.amazonaws.ram#InvalidParameterException":
1700
2364
  throw await de_InvalidParameterExceptionRes(parsedOutput, context);
1701
2365
  case "MalformedArnException":
1702
2366
  case "com.amazonaws.ram#MalformedArnException":
1703
2367
  throw await de_MalformedArnExceptionRes(parsedOutput, context);
1704
- case "MissingRequiredParameterException":
1705
- case "com.amazonaws.ram#MissingRequiredParameterException":
1706
- throw await de_MissingRequiredParameterExceptionRes(parsedOutput, context);
1707
2368
  case "OperationNotPermittedException":
1708
2369
  case "com.amazonaws.ram#OperationNotPermittedException":
1709
2370
  throw await de_OperationNotPermittedExceptionRes(parsedOutput, context);
1710
- case "ResourceShareLimitExceededException":
1711
- case "com.amazonaws.ram#ResourceShareLimitExceededException":
1712
- throw await de_ResourceShareLimitExceededExceptionRes(parsedOutput, context);
1713
2371
  case "ServerInternalException":
1714
2372
  case "com.amazonaws.ram#ServerInternalException":
1715
2373
  throw await de_ServerInternalExceptionRes(parsedOutput, context);
@@ -1721,31 +2379,29 @@ const de_PromoteResourceShareCreatedFromPolicyCommandError = async (output, cont
1721
2379
  throw await de_UnknownResourceExceptionRes(parsedOutput, context);
1722
2380
  default:
1723
2381
  const parsedBody = parsedOutput.body;
1724
- throwDefaultError({
2382
+ return throwDefaultError({
1725
2383
  output,
1726
2384
  parsedBody,
1727
- exceptionCtor: __BaseException,
1728
2385
  errorCode,
1729
2386
  });
1730
2387
  }
1731
2388
  };
1732
- export const de_RejectResourceShareInvitationCommand = async (output, context) => {
2389
+ export const de_SetDefaultPermissionVersionCommand = async (output, context) => {
1733
2390
  if (output.statusCode !== 200 && output.statusCode >= 300) {
1734
- return de_RejectResourceShareInvitationCommandError(output, context);
2391
+ return de_SetDefaultPermissionVersionCommandError(output, context);
1735
2392
  }
1736
2393
  const contents = map({
1737
2394
  $metadata: deserializeMetadata(output),
1738
2395
  });
1739
2396
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1740
- if (data.clientToken != null) {
1741
- contents.clientToken = __expectString(data.clientToken);
1742
- }
1743
- if (data.resourceShareInvitation != null) {
1744
- contents.resourceShareInvitation = de_ResourceShareInvitation(data.resourceShareInvitation, context);
1745
- }
2397
+ const doc = take(data, {
2398
+ clientToken: __expectString,
2399
+ returnValue: __expectBoolean,
2400
+ });
2401
+ Object.assign(contents, doc);
1746
2402
  return contents;
1747
2403
  };
1748
- const de_RejectResourceShareInvitationCommandError = async (output, context) => {
2404
+ const de_SetDefaultPermissionVersionCommandError = async (output, context) => {
1749
2405
  const parsedOutput = {
1750
2406
  ...output,
1751
2407
  body: await parseErrorBody(output.body, context),
@@ -1758,36 +2414,26 @@ const de_RejectResourceShareInvitationCommandError = async (output, context) =>
1758
2414
  case "InvalidClientTokenException":
1759
2415
  case "com.amazonaws.ram#InvalidClientTokenException":
1760
2416
  throw await de_InvalidClientTokenExceptionRes(parsedOutput, context);
2417
+ case "InvalidParameterException":
2418
+ case "com.amazonaws.ram#InvalidParameterException":
2419
+ throw await de_InvalidParameterExceptionRes(parsedOutput, context);
1761
2420
  case "MalformedArnException":
1762
2421
  case "com.amazonaws.ram#MalformedArnException":
1763
2422
  throw await de_MalformedArnExceptionRes(parsedOutput, context);
1764
- case "OperationNotPermittedException":
1765
- case "com.amazonaws.ram#OperationNotPermittedException":
1766
- throw await de_OperationNotPermittedExceptionRes(parsedOutput, context);
1767
- case "ResourceShareInvitationAlreadyAcceptedException":
1768
- case "com.amazonaws.ram#ResourceShareInvitationAlreadyAcceptedException":
1769
- throw await de_ResourceShareInvitationAlreadyAcceptedExceptionRes(parsedOutput, context);
1770
- case "ResourceShareInvitationAlreadyRejectedException":
1771
- case "com.amazonaws.ram#ResourceShareInvitationAlreadyRejectedException":
1772
- throw await de_ResourceShareInvitationAlreadyRejectedExceptionRes(parsedOutput, context);
1773
- case "ResourceShareInvitationArnNotFoundException":
1774
- case "com.amazonaws.ram#ResourceShareInvitationArnNotFoundException":
1775
- throw await de_ResourceShareInvitationArnNotFoundExceptionRes(parsedOutput, context);
1776
- case "ResourceShareInvitationExpiredException":
1777
- case "com.amazonaws.ram#ResourceShareInvitationExpiredException":
1778
- throw await de_ResourceShareInvitationExpiredExceptionRes(parsedOutput, context);
1779
2423
  case "ServerInternalException":
1780
2424
  case "com.amazonaws.ram#ServerInternalException":
1781
2425
  throw await de_ServerInternalExceptionRes(parsedOutput, context);
1782
2426
  case "ServiceUnavailableException":
1783
2427
  case "com.amazonaws.ram#ServiceUnavailableException":
1784
2428
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
2429
+ case "UnknownResourceException":
2430
+ case "com.amazonaws.ram#UnknownResourceException":
2431
+ throw await de_UnknownResourceExceptionRes(parsedOutput, context);
1785
2432
  default:
1786
2433
  const parsedBody = parsedOutput.body;
1787
- throwDefaultError({
2434
+ return throwDefaultError({
1788
2435
  output,
1789
2436
  parsedBody,
1790
- exceptionCtor: __BaseException,
1791
2437
  errorCode,
1792
2438
  });
1793
2439
  }
@@ -1835,10 +2481,9 @@ const de_TagResourceCommandError = async (output, context) => {
1835
2481
  throw await de_UnknownResourceExceptionRes(parsedOutput, context);
1836
2482
  default:
1837
2483
  const parsedBody = parsedOutput.body;
1838
- throwDefaultError({
2484
+ return throwDefaultError({
1839
2485
  output,
1840
2486
  parsedBody,
1841
- exceptionCtor: __BaseException,
1842
2487
  errorCode,
1843
2488
  });
1844
2489
  }
@@ -1863,18 +2508,23 @@ const de_UntagResourceCommandError = async (output, context) => {
1863
2508
  case "InvalidParameterException":
1864
2509
  case "com.amazonaws.ram#InvalidParameterException":
1865
2510
  throw await de_InvalidParameterExceptionRes(parsedOutput, context);
2511
+ case "MalformedArnException":
2512
+ case "com.amazonaws.ram#MalformedArnException":
2513
+ throw await de_MalformedArnExceptionRes(parsedOutput, context);
1866
2514
  case "ServerInternalException":
1867
2515
  case "com.amazonaws.ram#ServerInternalException":
1868
2516
  throw await de_ServerInternalExceptionRes(parsedOutput, context);
1869
2517
  case "ServiceUnavailableException":
1870
2518
  case "com.amazonaws.ram#ServiceUnavailableException":
1871
2519
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
2520
+ case "UnknownResourceException":
2521
+ case "com.amazonaws.ram#UnknownResourceException":
2522
+ throw await de_UnknownResourceExceptionRes(parsedOutput, context);
1872
2523
  default:
1873
2524
  const parsedBody = parsedOutput.body;
1874
- throwDefaultError({
2525
+ return throwDefaultError({
1875
2526
  output,
1876
2527
  parsedBody,
1877
- exceptionCtor: __BaseException,
1878
2528
  errorCode,
1879
2529
  });
1880
2530
  }
@@ -1887,12 +2537,11 @@ export const de_UpdateResourceShareCommand = async (output, context) => {
1887
2537
  $metadata: deserializeMetadata(output),
1888
2538
  });
1889
2539
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1890
- if (data.clientToken != null) {
1891
- contents.clientToken = __expectString(data.clientToken);
1892
- }
1893
- if (data.resourceShare != null) {
1894
- contents.resourceShare = de_ResourceShare(data.resourceShare, context);
1895
- }
2540
+ const doc = take(data, {
2541
+ clientToken: __expectString,
2542
+ resourceShare: (_) => de_ResourceShare(_, context),
2543
+ });
2544
+ Object.assign(contents, doc);
1896
2545
  return contents;
1897
2546
  };
1898
2547
  const de_UpdateResourceShareCommandError = async (output, context) => {
@@ -1931,21 +2580,21 @@ const de_UpdateResourceShareCommandError = async (output, context) => {
1931
2580
  throw await de_UnknownResourceExceptionRes(parsedOutput, context);
1932
2581
  default:
1933
2582
  const parsedBody = parsedOutput.body;
1934
- throwDefaultError({
2583
+ return throwDefaultError({
1935
2584
  output,
1936
2585
  parsedBody,
1937
- exceptionCtor: __BaseException,
1938
2586
  errorCode,
1939
2587
  });
1940
2588
  }
1941
2589
  };
1942
- const map = __map;
2590
+ const throwDefaultError = withBaseException(__BaseException);
1943
2591
  const de_IdempotentParameterMismatchExceptionRes = async (parsedOutput, context) => {
1944
2592
  const contents = map({});
1945
2593
  const data = parsedOutput.body;
1946
- if (data.message != null) {
1947
- contents.message = __expectString(data.message);
1948
- }
2594
+ const doc = take(data, {
2595
+ message: __expectString,
2596
+ });
2597
+ Object.assign(contents, doc);
1949
2598
  const exception = new IdempotentParameterMismatchException({
1950
2599
  $metadata: deserializeMetadata(parsedOutput),
1951
2600
  ...contents,
@@ -1955,9 +2604,10 @@ const de_IdempotentParameterMismatchExceptionRes = async (parsedOutput, context)
1955
2604
  const de_InvalidClientTokenExceptionRes = async (parsedOutput, context) => {
1956
2605
  const contents = map({});
1957
2606
  const data = parsedOutput.body;
1958
- if (data.message != null) {
1959
- contents.message = __expectString(data.message);
1960
- }
2607
+ const doc = take(data, {
2608
+ message: __expectString,
2609
+ });
2610
+ Object.assign(contents, doc);
1961
2611
  const exception = new InvalidClientTokenException({
1962
2612
  $metadata: deserializeMetadata(parsedOutput),
1963
2613
  ...contents,
@@ -1967,9 +2617,10 @@ const de_InvalidClientTokenExceptionRes = async (parsedOutput, context) => {
1967
2617
  const de_InvalidMaxResultsExceptionRes = async (parsedOutput, context) => {
1968
2618
  const contents = map({});
1969
2619
  const data = parsedOutput.body;
1970
- if (data.message != null) {
1971
- contents.message = __expectString(data.message);
1972
- }
2620
+ const doc = take(data, {
2621
+ message: __expectString,
2622
+ });
2623
+ Object.assign(contents, doc);
1973
2624
  const exception = new InvalidMaxResultsException({
1974
2625
  $metadata: deserializeMetadata(parsedOutput),
1975
2626
  ...contents,
@@ -1979,9 +2630,10 @@ const de_InvalidMaxResultsExceptionRes = async (parsedOutput, context) => {
1979
2630
  const de_InvalidNextTokenExceptionRes = async (parsedOutput, context) => {
1980
2631
  const contents = map({});
1981
2632
  const data = parsedOutput.body;
1982
- if (data.message != null) {
1983
- contents.message = __expectString(data.message);
1984
- }
2633
+ const doc = take(data, {
2634
+ message: __expectString,
2635
+ });
2636
+ Object.assign(contents, doc);
1985
2637
  const exception = new InvalidNextTokenException({
1986
2638
  $metadata: deserializeMetadata(parsedOutput),
1987
2639
  ...contents,
@@ -1991,21 +2643,36 @@ const de_InvalidNextTokenExceptionRes = async (parsedOutput, context) => {
1991
2643
  const de_InvalidParameterExceptionRes = async (parsedOutput, context) => {
1992
2644
  const contents = map({});
1993
2645
  const data = parsedOutput.body;
1994
- if (data.message != null) {
1995
- contents.message = __expectString(data.message);
1996
- }
2646
+ const doc = take(data, {
2647
+ message: __expectString,
2648
+ });
2649
+ Object.assign(contents, doc);
1997
2650
  const exception = new InvalidParameterException({
1998
2651
  $metadata: deserializeMetadata(parsedOutput),
1999
2652
  ...contents,
2000
2653
  });
2001
2654
  return __decorateServiceException(exception, parsedOutput.body);
2002
2655
  };
2656
+ const de_InvalidPolicyExceptionRes = async (parsedOutput, context) => {
2657
+ const contents = map({});
2658
+ const data = parsedOutput.body;
2659
+ const doc = take(data, {
2660
+ message: __expectString,
2661
+ });
2662
+ Object.assign(contents, doc);
2663
+ const exception = new InvalidPolicyException({
2664
+ $metadata: deserializeMetadata(parsedOutput),
2665
+ ...contents,
2666
+ });
2667
+ return __decorateServiceException(exception, parsedOutput.body);
2668
+ };
2003
2669
  const de_InvalidResourceTypeExceptionRes = async (parsedOutput, context) => {
2004
2670
  const contents = map({});
2005
2671
  const data = parsedOutput.body;
2006
- if (data.message != null) {
2007
- contents.message = __expectString(data.message);
2008
- }
2672
+ const doc = take(data, {
2673
+ message: __expectString,
2674
+ });
2675
+ Object.assign(contents, doc);
2009
2676
  const exception = new InvalidResourceTypeException({
2010
2677
  $metadata: deserializeMetadata(parsedOutput),
2011
2678
  ...contents,
@@ -2015,9 +2682,10 @@ const de_InvalidResourceTypeExceptionRes = async (parsedOutput, context) => {
2015
2682
  const de_InvalidStateTransitionExceptionRes = async (parsedOutput, context) => {
2016
2683
  const contents = map({});
2017
2684
  const data = parsedOutput.body;
2018
- if (data.message != null) {
2019
- contents.message = __expectString(data.message);
2020
- }
2685
+ const doc = take(data, {
2686
+ message: __expectString,
2687
+ });
2688
+ Object.assign(contents, doc);
2021
2689
  const exception = new InvalidStateTransitionException({
2022
2690
  $metadata: deserializeMetadata(parsedOutput),
2023
2691
  ...contents,
@@ -2027,21 +2695,36 @@ const de_InvalidStateTransitionExceptionRes = async (parsedOutput, context) => {
2027
2695
  const de_MalformedArnExceptionRes = async (parsedOutput, context) => {
2028
2696
  const contents = map({});
2029
2697
  const data = parsedOutput.body;
2030
- if (data.message != null) {
2031
- contents.message = __expectString(data.message);
2032
- }
2698
+ const doc = take(data, {
2699
+ message: __expectString,
2700
+ });
2701
+ Object.assign(contents, doc);
2033
2702
  const exception = new MalformedArnException({
2034
2703
  $metadata: deserializeMetadata(parsedOutput),
2035
2704
  ...contents,
2036
2705
  });
2037
2706
  return __decorateServiceException(exception, parsedOutput.body);
2038
2707
  };
2708
+ const de_MalformedPolicyTemplateExceptionRes = async (parsedOutput, context) => {
2709
+ const contents = map({});
2710
+ const data = parsedOutput.body;
2711
+ const doc = take(data, {
2712
+ message: __expectString,
2713
+ });
2714
+ Object.assign(contents, doc);
2715
+ const exception = new MalformedPolicyTemplateException({
2716
+ $metadata: deserializeMetadata(parsedOutput),
2717
+ ...contents,
2718
+ });
2719
+ return __decorateServiceException(exception, parsedOutput.body);
2720
+ };
2039
2721
  const de_MissingRequiredParameterExceptionRes = async (parsedOutput, context) => {
2040
2722
  const contents = map({});
2041
2723
  const data = parsedOutput.body;
2042
- if (data.message != null) {
2043
- contents.message = __expectString(data.message);
2044
- }
2724
+ const doc = take(data, {
2725
+ message: __expectString,
2726
+ });
2727
+ Object.assign(contents, doc);
2045
2728
  const exception = new MissingRequiredParameterException({
2046
2729
  $metadata: deserializeMetadata(parsedOutput),
2047
2730
  ...contents,
@@ -2051,21 +2734,62 @@ const de_MissingRequiredParameterExceptionRes = async (parsedOutput, context) =>
2051
2734
  const de_OperationNotPermittedExceptionRes = async (parsedOutput, context) => {
2052
2735
  const contents = map({});
2053
2736
  const data = parsedOutput.body;
2054
- if (data.message != null) {
2055
- contents.message = __expectString(data.message);
2056
- }
2737
+ const doc = take(data, {
2738
+ message: __expectString,
2739
+ });
2740
+ Object.assign(contents, doc);
2057
2741
  const exception = new OperationNotPermittedException({
2058
2742
  $metadata: deserializeMetadata(parsedOutput),
2059
2743
  ...contents,
2060
2744
  });
2061
2745
  return __decorateServiceException(exception, parsedOutput.body);
2062
2746
  };
2747
+ const de_PermissionAlreadyExistsExceptionRes = async (parsedOutput, context) => {
2748
+ const contents = map({});
2749
+ const data = parsedOutput.body;
2750
+ const doc = take(data, {
2751
+ message: __expectString,
2752
+ });
2753
+ Object.assign(contents, doc);
2754
+ const exception = new PermissionAlreadyExistsException({
2755
+ $metadata: deserializeMetadata(parsedOutput),
2756
+ ...contents,
2757
+ });
2758
+ return __decorateServiceException(exception, parsedOutput.body);
2759
+ };
2760
+ const de_PermissionLimitExceededExceptionRes = async (parsedOutput, context) => {
2761
+ const contents = map({});
2762
+ const data = parsedOutput.body;
2763
+ const doc = take(data, {
2764
+ message: __expectString,
2765
+ });
2766
+ Object.assign(contents, doc);
2767
+ const exception = new PermissionLimitExceededException({
2768
+ $metadata: deserializeMetadata(parsedOutput),
2769
+ ...contents,
2770
+ });
2771
+ return __decorateServiceException(exception, parsedOutput.body);
2772
+ };
2773
+ const de_PermissionVersionsLimitExceededExceptionRes = async (parsedOutput, context) => {
2774
+ const contents = map({});
2775
+ const data = parsedOutput.body;
2776
+ const doc = take(data, {
2777
+ message: __expectString,
2778
+ });
2779
+ Object.assign(contents, doc);
2780
+ const exception = new PermissionVersionsLimitExceededException({
2781
+ $metadata: deserializeMetadata(parsedOutput),
2782
+ ...contents,
2783
+ });
2784
+ return __decorateServiceException(exception, parsedOutput.body);
2785
+ };
2063
2786
  const de_ResourceArnNotFoundExceptionRes = async (parsedOutput, context) => {
2064
2787
  const contents = map({});
2065
2788
  const data = parsedOutput.body;
2066
- if (data.message != null) {
2067
- contents.message = __expectString(data.message);
2068
- }
2789
+ const doc = take(data, {
2790
+ message: __expectString,
2791
+ });
2792
+ Object.assign(contents, doc);
2069
2793
  const exception = new ResourceArnNotFoundException({
2070
2794
  $metadata: deserializeMetadata(parsedOutput),
2071
2795
  ...contents,
@@ -2075,9 +2799,10 @@ const de_ResourceArnNotFoundExceptionRes = async (parsedOutput, context) => {
2075
2799
  const de_ResourceShareInvitationAlreadyAcceptedExceptionRes = async (parsedOutput, context) => {
2076
2800
  const contents = map({});
2077
2801
  const data = parsedOutput.body;
2078
- if (data.message != null) {
2079
- contents.message = __expectString(data.message);
2080
- }
2802
+ const doc = take(data, {
2803
+ message: __expectString,
2804
+ });
2805
+ Object.assign(contents, doc);
2081
2806
  const exception = new ResourceShareInvitationAlreadyAcceptedException({
2082
2807
  $metadata: deserializeMetadata(parsedOutput),
2083
2808
  ...contents,
@@ -2087,9 +2812,10 @@ const de_ResourceShareInvitationAlreadyAcceptedExceptionRes = async (parsedOutpu
2087
2812
  const de_ResourceShareInvitationAlreadyRejectedExceptionRes = async (parsedOutput, context) => {
2088
2813
  const contents = map({});
2089
2814
  const data = parsedOutput.body;
2090
- if (data.message != null) {
2091
- contents.message = __expectString(data.message);
2092
- }
2815
+ const doc = take(data, {
2816
+ message: __expectString,
2817
+ });
2818
+ Object.assign(contents, doc);
2093
2819
  const exception = new ResourceShareInvitationAlreadyRejectedException({
2094
2820
  $metadata: deserializeMetadata(parsedOutput),
2095
2821
  ...contents,
@@ -2099,9 +2825,10 @@ const de_ResourceShareInvitationAlreadyRejectedExceptionRes = async (parsedOutpu
2099
2825
  const de_ResourceShareInvitationArnNotFoundExceptionRes = async (parsedOutput, context) => {
2100
2826
  const contents = map({});
2101
2827
  const data = parsedOutput.body;
2102
- if (data.message != null) {
2103
- contents.message = __expectString(data.message);
2104
- }
2828
+ const doc = take(data, {
2829
+ message: __expectString,
2830
+ });
2831
+ Object.assign(contents, doc);
2105
2832
  const exception = new ResourceShareInvitationArnNotFoundException({
2106
2833
  $metadata: deserializeMetadata(parsedOutput),
2107
2834
  ...contents,
@@ -2111,9 +2838,10 @@ const de_ResourceShareInvitationArnNotFoundExceptionRes = async (parsedOutput, c
2111
2838
  const de_ResourceShareInvitationExpiredExceptionRes = async (parsedOutput, context) => {
2112
2839
  const contents = map({});
2113
2840
  const data = parsedOutput.body;
2114
- if (data.message != null) {
2115
- contents.message = __expectString(data.message);
2116
- }
2841
+ const doc = take(data, {
2842
+ message: __expectString,
2843
+ });
2844
+ Object.assign(contents, doc);
2117
2845
  const exception = new ResourceShareInvitationExpiredException({
2118
2846
  $metadata: deserializeMetadata(parsedOutput),
2119
2847
  ...contents,
@@ -2123,9 +2851,10 @@ const de_ResourceShareInvitationExpiredExceptionRes = async (parsedOutput, conte
2123
2851
  const de_ResourceShareLimitExceededExceptionRes = async (parsedOutput, context) => {
2124
2852
  const contents = map({});
2125
2853
  const data = parsedOutput.body;
2126
- if (data.message != null) {
2127
- contents.message = __expectString(data.message);
2128
- }
2854
+ const doc = take(data, {
2855
+ message: __expectString,
2856
+ });
2857
+ Object.assign(contents, doc);
2129
2858
  const exception = new ResourceShareLimitExceededException({
2130
2859
  $metadata: deserializeMetadata(parsedOutput),
2131
2860
  ...contents,
@@ -2135,9 +2864,10 @@ const de_ResourceShareLimitExceededExceptionRes = async (parsedOutput, context)
2135
2864
  const de_ServerInternalExceptionRes = async (parsedOutput, context) => {
2136
2865
  const contents = map({});
2137
2866
  const data = parsedOutput.body;
2138
- if (data.message != null) {
2139
- contents.message = __expectString(data.message);
2140
- }
2867
+ const doc = take(data, {
2868
+ message: __expectString,
2869
+ });
2870
+ Object.assign(contents, doc);
2141
2871
  const exception = new ServerInternalException({
2142
2872
  $metadata: deserializeMetadata(parsedOutput),
2143
2873
  ...contents,
@@ -2147,9 +2877,10 @@ const de_ServerInternalExceptionRes = async (parsedOutput, context) => {
2147
2877
  const de_ServiceUnavailableExceptionRes = async (parsedOutput, context) => {
2148
2878
  const contents = map({});
2149
2879
  const data = parsedOutput.body;
2150
- if (data.message != null) {
2151
- contents.message = __expectString(data.message);
2152
- }
2880
+ const doc = take(data, {
2881
+ message: __expectString,
2882
+ });
2883
+ Object.assign(contents, doc);
2153
2884
  const exception = new ServiceUnavailableException({
2154
2885
  $metadata: deserializeMetadata(parsedOutput),
2155
2886
  ...contents,
@@ -2159,9 +2890,10 @@ const de_ServiceUnavailableExceptionRes = async (parsedOutput, context) => {
2159
2890
  const de_TagLimitExceededExceptionRes = async (parsedOutput, context) => {
2160
2891
  const contents = map({});
2161
2892
  const data = parsedOutput.body;
2162
- if (data.message != null) {
2163
- contents.message = __expectString(data.message);
2164
- }
2893
+ const doc = take(data, {
2894
+ message: __expectString,
2895
+ });
2896
+ Object.assign(contents, doc);
2165
2897
  const exception = new TagLimitExceededException({
2166
2898
  $metadata: deserializeMetadata(parsedOutput),
2167
2899
  ...contents,
@@ -2171,9 +2903,10 @@ const de_TagLimitExceededExceptionRes = async (parsedOutput, context) => {
2171
2903
  const de_TagPolicyViolationExceptionRes = async (parsedOutput, context) => {
2172
2904
  const contents = map({});
2173
2905
  const data = parsedOutput.body;
2174
- if (data.message != null) {
2175
- contents.message = __expectString(data.message);
2176
- }
2906
+ const doc = take(data, {
2907
+ message: __expectString,
2908
+ });
2909
+ Object.assign(contents, doc);
2177
2910
  const exception = new TagPolicyViolationException({
2178
2911
  $metadata: deserializeMetadata(parsedOutput),
2179
2912
  ...contents,
@@ -2183,9 +2916,10 @@ const de_TagPolicyViolationExceptionRes = async (parsedOutput, context) => {
2183
2916
  const de_ThrottlingExceptionRes = async (parsedOutput, context) => {
2184
2917
  const contents = map({});
2185
2918
  const data = parsedOutput.body;
2186
- if (data.message != null) {
2187
- contents.message = __expectString(data.message);
2188
- }
2919
+ const doc = take(data, {
2920
+ message: __expectString,
2921
+ });
2922
+ Object.assign(contents, doc);
2189
2923
  const exception = new ThrottlingException({
2190
2924
  $metadata: deserializeMetadata(parsedOutput),
2191
2925
  ...contents,
@@ -2195,223 +2929,160 @@ const de_ThrottlingExceptionRes = async (parsedOutput, context) => {
2195
2929
  const de_UnknownResourceExceptionRes = async (parsedOutput, context) => {
2196
2930
  const contents = map({});
2197
2931
  const data = parsedOutput.body;
2198
- if (data.message != null) {
2199
- contents.message = __expectString(data.message);
2200
- }
2932
+ const doc = take(data, {
2933
+ message: __expectString,
2934
+ });
2935
+ Object.assign(contents, doc);
2201
2936
  const exception = new UnknownResourceException({
2202
2937
  $metadata: deserializeMetadata(parsedOutput),
2203
2938
  ...contents,
2204
2939
  });
2205
2940
  return __decorateServiceException(exception, parsedOutput.body);
2206
2941
  };
2207
- const se_PermissionArnList = (input, context) => {
2208
- return input
2209
- .filter((e) => e != null)
2210
- .map((entry) => {
2211
- return entry;
2212
- });
2213
- };
2214
- const se_PrincipalArnOrIdList = (input, context) => {
2215
- return input
2216
- .filter((e) => e != null)
2217
- .map((entry) => {
2218
- return entry;
2219
- });
2220
- };
2221
- const se_ResourceArnList = (input, context) => {
2222
- return input
2223
- .filter((e) => e != null)
2224
- .map((entry) => {
2225
- return entry;
2226
- });
2227
- };
2228
- const se_ResourceShareArnList = (input, context) => {
2229
- return input
2230
- .filter((e) => e != null)
2231
- .map((entry) => {
2232
- return entry;
2233
- });
2234
- };
2235
- const se_ResourceShareInvitationArnList = (input, context) => {
2236
- return input
2237
- .filter((e) => e != null)
2238
- .map((entry) => {
2239
- return entry;
2942
+ const de_UnmatchedPolicyPermissionExceptionRes = async (parsedOutput, context) => {
2943
+ const contents = map({});
2944
+ const data = parsedOutput.body;
2945
+ const doc = take(data, {
2946
+ message: __expectString,
2240
2947
  });
2241
- };
2242
- const se_Tag = (input, context) => {
2243
- return {
2244
- ...(input.key != null && { key: input.key }),
2245
- ...(input.value != null && { value: input.value }),
2246
- };
2247
- };
2248
- const se_TagFilter = (input, context) => {
2249
- return {
2250
- ...(input.tagKey != null && { tagKey: input.tagKey }),
2251
- ...(input.tagValues != null && { tagValues: se_TagValueList(input.tagValues, context) }),
2252
- };
2253
- };
2254
- const se_TagFilters = (input, context) => {
2255
- return input
2256
- .filter((e) => e != null)
2257
- .map((entry) => {
2258
- return se_TagFilter(entry, context);
2948
+ Object.assign(contents, doc);
2949
+ const exception = new UnmatchedPolicyPermissionException({
2950
+ $metadata: deserializeMetadata(parsedOutput),
2951
+ ...contents,
2259
2952
  });
2953
+ return __decorateServiceException(exception, parsedOutput.body);
2260
2954
  };
2261
- const se_TagKeyList = (input, context) => {
2262
- return input
2263
- .filter((e) => e != null)
2264
- .map((entry) => {
2265
- return entry;
2955
+ const de_AssociatedPermission = (output, context) => {
2956
+ return take(output, {
2957
+ arn: __expectString,
2958
+ defaultVersion: __expectBoolean,
2959
+ featureSet: __expectString,
2960
+ lastUpdatedTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
2961
+ permissionVersion: __expectString,
2962
+ resourceShareArn: __expectString,
2963
+ resourceType: __expectString,
2964
+ status: __expectString,
2266
2965
  });
2267
2966
  };
2268
- const se_TagList = (input, context) => {
2269
- return input
2967
+ const de_AssociatedPermissionList = (output, context) => {
2968
+ const retVal = (output || [])
2270
2969
  .filter((e) => e != null)
2271
2970
  .map((entry) => {
2272
- return se_Tag(entry, context);
2971
+ return de_AssociatedPermission(entry, context);
2273
2972
  });
2973
+ return retVal;
2274
2974
  };
2275
- const se_TagValueList = (input, context) => {
2276
- return input
2277
- .filter((e) => e != null)
2278
- .map((entry) => {
2279
- return entry;
2975
+ const de_Principal = (output, context) => {
2976
+ return take(output, {
2977
+ creationTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
2978
+ external: __expectBoolean,
2979
+ id: __expectString,
2980
+ lastUpdatedTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
2981
+ resourceShareArn: __expectString,
2280
2982
  });
2281
2983
  };
2282
- const de_PolicyList = (output, context) => {
2984
+ const de_PrincipalList = (output, context) => {
2283
2985
  const retVal = (output || [])
2284
2986
  .filter((e) => e != null)
2285
2987
  .map((entry) => {
2286
- if (entry === null) {
2287
- return null;
2288
- }
2289
- return __expectString(entry);
2988
+ return de_Principal(entry, context);
2290
2989
  });
2291
2990
  return retVal;
2292
2991
  };
2293
- const de_Principal = (output, context) => {
2294
- return {
2295
- creationTime: output.creationTime != null
2296
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.creationTime)))
2297
- : undefined,
2298
- external: __expectBoolean(output.external),
2299
- id: __expectString(output.id),
2300
- lastUpdatedTime: output.lastUpdatedTime != null
2301
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.lastUpdatedTime)))
2302
- : undefined,
2303
- resourceShareArn: __expectString(output.resourceShareArn),
2304
- };
2992
+ const de_ReplacePermissionAssociationsWork = (output, context) => {
2993
+ return take(output, {
2994
+ creationTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
2995
+ fromPermissionArn: __expectString,
2996
+ fromPermissionVersion: __expectString,
2997
+ id: __expectString,
2998
+ lastUpdatedTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
2999
+ status: __expectString,
3000
+ statusMessage: __expectString,
3001
+ toPermissionArn: __expectString,
3002
+ toPermissionVersion: __expectString,
3003
+ });
2305
3004
  };
2306
- const de_PrincipalList = (output, context) => {
3005
+ const de_ReplacePermissionAssociationsWorkList = (output, context) => {
2307
3006
  const retVal = (output || [])
2308
3007
  .filter((e) => e != null)
2309
3008
  .map((entry) => {
2310
- if (entry === null) {
2311
- return null;
2312
- }
2313
- return de_Principal(entry, context);
3009
+ return de_ReplacePermissionAssociationsWork(entry, context);
2314
3010
  });
2315
3011
  return retVal;
2316
3012
  };
2317
3013
  const de_Resource = (output, context) => {
2318
- return {
2319
- arn: __expectString(output.arn),
2320
- creationTime: output.creationTime != null
2321
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.creationTime)))
2322
- : undefined,
2323
- lastUpdatedTime: output.lastUpdatedTime != null
2324
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.lastUpdatedTime)))
2325
- : undefined,
2326
- resourceGroupArn: __expectString(output.resourceGroupArn),
2327
- resourceRegionScope: __expectString(output.resourceRegionScope),
2328
- resourceShareArn: __expectString(output.resourceShareArn),
2329
- status: __expectString(output.status),
2330
- statusMessage: __expectString(output.statusMessage),
2331
- type: __expectString(output.type),
2332
- };
3014
+ return take(output, {
3015
+ arn: __expectString,
3016
+ creationTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
3017
+ lastUpdatedTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
3018
+ resourceGroupArn: __expectString,
3019
+ resourceRegionScope: __expectString,
3020
+ resourceShareArn: __expectString,
3021
+ status: __expectString,
3022
+ statusMessage: __expectString,
3023
+ type: __expectString,
3024
+ });
2333
3025
  };
2334
3026
  const de_ResourceList = (output, context) => {
2335
3027
  const retVal = (output || [])
2336
3028
  .filter((e) => e != null)
2337
3029
  .map((entry) => {
2338
- if (entry === null) {
2339
- return null;
2340
- }
2341
3030
  return de_Resource(entry, context);
2342
3031
  });
2343
3032
  return retVal;
2344
3033
  };
2345
3034
  const de_ResourceShare = (output, context) => {
2346
- return {
2347
- allowExternalPrincipals: __expectBoolean(output.allowExternalPrincipals),
2348
- creationTime: output.creationTime != null
2349
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.creationTime)))
2350
- : undefined,
2351
- featureSet: __expectString(output.featureSet),
2352
- lastUpdatedTime: output.lastUpdatedTime != null
2353
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.lastUpdatedTime)))
2354
- : undefined,
2355
- name: __expectString(output.name),
2356
- owningAccountId: __expectString(output.owningAccountId),
2357
- resourceShareArn: __expectString(output.resourceShareArn),
2358
- status: __expectString(output.status),
2359
- statusMessage: __expectString(output.statusMessage),
2360
- tags: output.tags != null ? de_TagList(output.tags, context) : undefined,
2361
- };
3035
+ return take(output, {
3036
+ allowExternalPrincipals: __expectBoolean,
3037
+ creationTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
3038
+ featureSet: __expectString,
3039
+ lastUpdatedTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
3040
+ name: __expectString,
3041
+ owningAccountId: __expectString,
3042
+ resourceShareArn: __expectString,
3043
+ status: __expectString,
3044
+ statusMessage: __expectString,
3045
+ tags: _json,
3046
+ });
2362
3047
  };
2363
3048
  const de_ResourceShareAssociation = (output, context) => {
2364
- return {
2365
- associatedEntity: __expectString(output.associatedEntity),
2366
- associationType: __expectString(output.associationType),
2367
- creationTime: output.creationTime != null
2368
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.creationTime)))
2369
- : undefined,
2370
- external: __expectBoolean(output.external),
2371
- lastUpdatedTime: output.lastUpdatedTime != null
2372
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.lastUpdatedTime)))
2373
- : undefined,
2374
- resourceShareArn: __expectString(output.resourceShareArn),
2375
- resourceShareName: __expectString(output.resourceShareName),
2376
- status: __expectString(output.status),
2377
- statusMessage: __expectString(output.statusMessage),
2378
- };
3049
+ return take(output, {
3050
+ associatedEntity: __expectString,
3051
+ associationType: __expectString,
3052
+ creationTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
3053
+ external: __expectBoolean,
3054
+ lastUpdatedTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
3055
+ resourceShareArn: __expectString,
3056
+ resourceShareName: __expectString,
3057
+ status: __expectString,
3058
+ statusMessage: __expectString,
3059
+ });
2379
3060
  };
2380
3061
  const de_ResourceShareAssociationList = (output, context) => {
2381
3062
  const retVal = (output || [])
2382
3063
  .filter((e) => e != null)
2383
3064
  .map((entry) => {
2384
- if (entry === null) {
2385
- return null;
2386
- }
2387
3065
  return de_ResourceShareAssociation(entry, context);
2388
3066
  });
2389
3067
  return retVal;
2390
3068
  };
2391
3069
  const de_ResourceShareInvitation = (output, context) => {
2392
- return {
2393
- invitationTimestamp: output.invitationTimestamp != null
2394
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.invitationTimestamp)))
2395
- : undefined,
2396
- receiverAccountId: __expectString(output.receiverAccountId),
2397
- receiverArn: __expectString(output.receiverArn),
2398
- resourceShareArn: __expectString(output.resourceShareArn),
2399
- resourceShareAssociations: output.resourceShareAssociations != null
2400
- ? de_ResourceShareAssociationList(output.resourceShareAssociations, context)
2401
- : undefined,
2402
- resourceShareInvitationArn: __expectString(output.resourceShareInvitationArn),
2403
- resourceShareName: __expectString(output.resourceShareName),
2404
- senderAccountId: __expectString(output.senderAccountId),
2405
- status: __expectString(output.status),
2406
- };
3070
+ return take(output, {
3071
+ invitationTimestamp: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
3072
+ receiverAccountId: __expectString,
3073
+ receiverArn: __expectString,
3074
+ resourceShareArn: __expectString,
3075
+ resourceShareAssociations: (_) => de_ResourceShareAssociationList(_, context),
3076
+ resourceShareInvitationArn: __expectString,
3077
+ resourceShareName: __expectString,
3078
+ senderAccountId: __expectString,
3079
+ status: __expectString,
3080
+ });
2407
3081
  };
2408
3082
  const de_ResourceShareInvitationList = (output, context) => {
2409
3083
  const retVal = (output || [])
2410
3084
  .filter((e) => e != null)
2411
3085
  .map((entry) => {
2412
- if (entry === null) {
2413
- return null;
2414
- }
2415
3086
  return de_ResourceShareInvitation(entry, context);
2416
3087
  });
2417
3088
  return retVal;
@@ -2420,92 +3091,50 @@ const de_ResourceShareList = (output, context) => {
2420
3091
  const retVal = (output || [])
2421
3092
  .filter((e) => e != null)
2422
3093
  .map((entry) => {
2423
- if (entry === null) {
2424
- return null;
2425
- }
2426
3094
  return de_ResourceShare(entry, context);
2427
3095
  });
2428
3096
  return retVal;
2429
3097
  };
2430
3098
  const de_ResourceSharePermissionDetail = (output, context) => {
2431
- return {
2432
- arn: __expectString(output.arn),
2433
- creationTime: output.creationTime != null
2434
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.creationTime)))
2435
- : undefined,
2436
- defaultVersion: __expectBoolean(output.defaultVersion),
2437
- isResourceTypeDefault: __expectBoolean(output.isResourceTypeDefault),
2438
- lastUpdatedTime: output.lastUpdatedTime != null
2439
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.lastUpdatedTime)))
2440
- : undefined,
2441
- name: __expectString(output.name),
2442
- permission: __expectString(output.permission),
2443
- resourceType: __expectString(output.resourceType),
2444
- version: __expectString(output.version),
2445
- };
3099
+ return take(output, {
3100
+ arn: __expectString,
3101
+ creationTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
3102
+ defaultVersion: __expectBoolean,
3103
+ featureSet: __expectString,
3104
+ isResourceTypeDefault: __expectBoolean,
3105
+ lastUpdatedTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
3106
+ name: __expectString,
3107
+ permission: __expectString,
3108
+ permissionType: __expectString,
3109
+ resourceType: __expectString,
3110
+ status: __expectString,
3111
+ tags: _json,
3112
+ version: __expectString,
3113
+ });
2446
3114
  };
2447
3115
  const de_ResourceSharePermissionList = (output, context) => {
2448
3116
  const retVal = (output || [])
2449
3117
  .filter((e) => e != null)
2450
3118
  .map((entry) => {
2451
- if (entry === null) {
2452
- return null;
2453
- }
2454
3119
  return de_ResourceSharePermissionSummary(entry, context);
2455
3120
  });
2456
3121
  return retVal;
2457
3122
  };
2458
3123
  const de_ResourceSharePermissionSummary = (output, context) => {
2459
- return {
2460
- arn: __expectString(output.arn),
2461
- creationTime: output.creationTime != null
2462
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.creationTime)))
2463
- : undefined,
2464
- defaultVersion: __expectBoolean(output.defaultVersion),
2465
- isResourceTypeDefault: __expectBoolean(output.isResourceTypeDefault),
2466
- lastUpdatedTime: output.lastUpdatedTime != null
2467
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.lastUpdatedTime)))
2468
- : undefined,
2469
- name: __expectString(output.name),
2470
- resourceType: __expectString(output.resourceType),
2471
- status: __expectString(output.status),
2472
- version: __expectString(output.version),
2473
- };
2474
- };
2475
- const de_ServiceNameAndResourceType = (output, context) => {
2476
- return {
2477
- resourceRegionScope: __expectString(output.resourceRegionScope),
2478
- resourceType: __expectString(output.resourceType),
2479
- serviceName: __expectString(output.serviceName),
2480
- };
2481
- };
2482
- const de_ServiceNameAndResourceTypeList = (output, context) => {
2483
- const retVal = (output || [])
2484
- .filter((e) => e != null)
2485
- .map((entry) => {
2486
- if (entry === null) {
2487
- return null;
2488
- }
2489
- return de_ServiceNameAndResourceType(entry, context);
2490
- });
2491
- return retVal;
2492
- };
2493
- const de_Tag = (output, context) => {
2494
- return {
2495
- key: __expectString(output.key),
2496
- value: __expectString(output.value),
2497
- };
2498
- };
2499
- const de_TagList = (output, context) => {
2500
- const retVal = (output || [])
2501
- .filter((e) => e != null)
2502
- .map((entry) => {
2503
- if (entry === null) {
2504
- return null;
2505
- }
2506
- return de_Tag(entry, context);
3124
+ return take(output, {
3125
+ arn: __expectString,
3126
+ creationTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
3127
+ defaultVersion: __expectBoolean,
3128
+ featureSet: __expectString,
3129
+ isResourceTypeDefault: __expectBoolean,
3130
+ lastUpdatedTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
3131
+ name: __expectString,
3132
+ permissionType: __expectString,
3133
+ resourceType: __expectString,
3134
+ status: __expectString,
3135
+ tags: _json,
3136
+ version: __expectString,
2507
3137
  });
2508
- return retVal;
2509
3138
  };
2510
3139
  const deserializeMetadata = (output) => ({
2511
3140
  httpStatusCode: output.statusCode,