@aws-sdk/client-backup 3.310.0 → 3.315.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.
@@ -1,5 +1,5 @@
1
1
  import { HttpRequest as __HttpRequest } from "@aws-sdk/protocol-http";
2
- import { decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, expectNonNull as __expectNonNull, expectNumber as __expectNumber, expectObject as __expectObject, expectString as __expectString, map as __map, parseEpochTimestamp as __parseEpochTimestamp, resolvedPath as __resolvedPath, throwDefaultError, } from "@aws-sdk/smithy-client";
2
+ import { _json, decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, expectNonNull as __expectNonNull, expectNumber as __expectNumber, expectObject as __expectObject, expectString as __expectString, map, parseEpochTimestamp as __parseEpochTimestamp, resolvedPath as __resolvedPath, take, withBaseException, } from "@aws-sdk/smithy-client";
3
3
  import { v4 as generateIdempotencyToken } from "uuid";
4
4
  import { BackupServiceException as __BaseException } from "../models/BackupServiceException";
5
5
  import { AlreadyExistsException, ConflictException, DependencyFailureException, InvalidParameterValueException, InvalidRequestException, InvalidResourceStateException, LimitExceededException, MissingParameterValueException, ResourceNotFoundException, ServiceUnavailableException, } from "../models/models_0";
@@ -31,11 +31,11 @@ export const se_CreateBackupPlanCommand = async (input, context) => {
31
31
  };
32
32
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/backup/plans";
33
33
  let body;
34
- body = JSON.stringify({
35
- ...(input.BackupPlan != null && { BackupPlan: se_BackupPlanInput(input.BackupPlan, context) }),
36
- ...(input.BackupPlanTags != null && { BackupPlanTags: se_Tags(input.BackupPlanTags, context) }),
37
- ...(input.CreatorRequestId != null && { CreatorRequestId: input.CreatorRequestId }),
38
- });
34
+ body = JSON.stringify(take(input, {
35
+ BackupPlan: (_) => _json(_),
36
+ BackupPlanTags: (_) => _json(_),
37
+ CreatorRequestId: [],
38
+ }));
39
39
  return new __HttpRequest({
40
40
  protocol,
41
41
  hostname,
@@ -54,10 +54,10 @@ export const se_CreateBackupSelectionCommand = async (input, context) => {
54
54
  let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/backup/plans/{BackupPlanId}/selections";
55
55
  resolvedPath = __resolvedPath(resolvedPath, input, "BackupPlanId", () => input.BackupPlanId, "{BackupPlanId}", false);
56
56
  let body;
57
- body = JSON.stringify({
58
- ...(input.BackupSelection != null && { BackupSelection: se_BackupSelection(input.BackupSelection, context) }),
59
- ...(input.CreatorRequestId != null && { CreatorRequestId: input.CreatorRequestId }),
60
- });
57
+ body = JSON.stringify(take(input, {
58
+ BackupSelection: (_) => _json(_),
59
+ CreatorRequestId: [],
60
+ }));
61
61
  return new __HttpRequest({
62
62
  protocol,
63
63
  hostname,
@@ -76,11 +76,11 @@ export const se_CreateBackupVaultCommand = async (input, context) => {
76
76
  let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/backup-vaults/{BackupVaultName}";
77
77
  resolvedPath = __resolvedPath(resolvedPath, input, "BackupVaultName", () => input.BackupVaultName, "{BackupVaultName}", false);
78
78
  let body;
79
- body = JSON.stringify({
80
- ...(input.BackupVaultTags != null && { BackupVaultTags: se_Tags(input.BackupVaultTags, context) }),
81
- ...(input.CreatorRequestId != null && { CreatorRequestId: input.CreatorRequestId }),
82
- ...(input.EncryptionKeyArn != null && { EncryptionKeyArn: input.EncryptionKeyArn }),
83
- });
79
+ body = JSON.stringify(take(input, {
80
+ BackupVaultTags: (_) => _json(_),
81
+ CreatorRequestId: [],
82
+ EncryptionKeyArn: [],
83
+ }));
84
84
  return new __HttpRequest({
85
85
  protocol,
86
86
  hostname,
@@ -98,15 +98,13 @@ export const se_CreateFrameworkCommand = async (input, context) => {
98
98
  };
99
99
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/audit/frameworks";
100
100
  let body;
101
- body = JSON.stringify({
102
- ...(input.FrameworkControls != null && {
103
- FrameworkControls: se_FrameworkControls(input.FrameworkControls, context),
104
- }),
105
- ...(input.FrameworkDescription != null && { FrameworkDescription: input.FrameworkDescription }),
106
- ...(input.FrameworkName != null && { FrameworkName: input.FrameworkName }),
107
- ...(input.FrameworkTags != null && { FrameworkTags: se_stringMap(input.FrameworkTags, context) }),
108
- IdempotencyToken: input.IdempotencyToken ?? generateIdempotencyToken(),
109
- });
101
+ body = JSON.stringify(take(input, {
102
+ FrameworkControls: (_) => _json(_),
103
+ FrameworkDescription: [],
104
+ FrameworkName: [],
105
+ FrameworkTags: (_) => _json(_),
106
+ IdempotencyToken: (_) => _ ?? generateIdempotencyToken(),
107
+ }));
110
108
  return new __HttpRequest({
111
109
  protocol,
112
110
  hostname,
@@ -124,15 +122,13 @@ export const se_CreateLegalHoldCommand = async (input, context) => {
124
122
  };
125
123
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/legal-holds";
126
124
  let body;
127
- body = JSON.stringify({
128
- ...(input.Description != null && { Description: input.Description }),
129
- ...(input.IdempotencyToken != null && { IdempotencyToken: input.IdempotencyToken }),
130
- ...(input.RecoveryPointSelection != null && {
131
- RecoveryPointSelection: se_RecoveryPointSelection(input.RecoveryPointSelection, context),
132
- }),
133
- ...(input.Tags != null && { Tags: se_Tags(input.Tags, context) }),
134
- ...(input.Title != null && { Title: input.Title }),
135
- });
125
+ body = JSON.stringify(take(input, {
126
+ Description: [],
127
+ IdempotencyToken: [],
128
+ RecoveryPointSelection: (_) => se_RecoveryPointSelection(_, context),
129
+ Tags: (_) => _json(_),
130
+ Title: [],
131
+ }));
136
132
  return new __HttpRequest({
137
133
  protocol,
138
134
  hostname,
@@ -150,16 +146,14 @@ export const se_CreateReportPlanCommand = async (input, context) => {
150
146
  };
151
147
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/audit/report-plans";
152
148
  let body;
153
- body = JSON.stringify({
154
- IdempotencyToken: input.IdempotencyToken ?? generateIdempotencyToken(),
155
- ...(input.ReportDeliveryChannel != null && {
156
- ReportDeliveryChannel: se_ReportDeliveryChannel(input.ReportDeliveryChannel, context),
157
- }),
158
- ...(input.ReportPlanDescription != null && { ReportPlanDescription: input.ReportPlanDescription }),
159
- ...(input.ReportPlanName != null && { ReportPlanName: input.ReportPlanName }),
160
- ...(input.ReportPlanTags != null && { ReportPlanTags: se_stringMap(input.ReportPlanTags, context) }),
161
- ...(input.ReportSetting != null && { ReportSetting: se_ReportSetting(input.ReportSetting, context) }),
162
- });
149
+ body = JSON.stringify(take(input, {
150
+ IdempotencyToken: (_) => _ ?? generateIdempotencyToken(),
151
+ ReportDeliveryChannel: (_) => _json(_),
152
+ ReportPlanDescription: [],
153
+ ReportPlanName: [],
154
+ ReportPlanTags: (_) => _json(_),
155
+ ReportSetting: (_) => _json(_),
156
+ }));
163
157
  return new __HttpRequest({
164
158
  protocol,
165
159
  hostname,
@@ -582,9 +576,9 @@ export const se_GetBackupPlanFromJSONCommand = async (input, context) => {
582
576
  };
583
577
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/backup/template/json/toPlan";
584
578
  let body;
585
- body = JSON.stringify({
586
- ...(input.BackupPlanTemplateJson != null && { BackupPlanTemplateJson: input.BackupPlanTemplateJson }),
587
- });
579
+ body = JSON.stringify(take(input, {
580
+ BackupPlanTemplateJson: [],
581
+ }));
588
582
  return new __HttpRequest({
589
583
  protocol,
590
584
  hostname,
@@ -1158,9 +1152,9 @@ export const se_PutBackupVaultAccessPolicyCommand = async (input, context) => {
1158
1152
  "/backup-vaults/{BackupVaultName}/access-policy";
1159
1153
  resolvedPath = __resolvedPath(resolvedPath, input, "BackupVaultName", () => input.BackupVaultName, "{BackupVaultName}", false);
1160
1154
  let body;
1161
- body = JSON.stringify({
1162
- ...(input.Policy != null && { Policy: input.Policy }),
1163
- });
1155
+ body = JSON.stringify(take(input, {
1156
+ Policy: [],
1157
+ }));
1164
1158
  return new __HttpRequest({
1165
1159
  protocol,
1166
1160
  hostname,
@@ -1180,11 +1174,11 @@ export const se_PutBackupVaultLockConfigurationCommand = async (input, context)
1180
1174
  "/backup-vaults/{BackupVaultName}/vault-lock";
1181
1175
  resolvedPath = __resolvedPath(resolvedPath, input, "BackupVaultName", () => input.BackupVaultName, "{BackupVaultName}", false);
1182
1176
  let body;
1183
- body = JSON.stringify({
1184
- ...(input.ChangeableForDays != null && { ChangeableForDays: input.ChangeableForDays }),
1185
- ...(input.MaxRetentionDays != null && { MaxRetentionDays: input.MaxRetentionDays }),
1186
- ...(input.MinRetentionDays != null && { MinRetentionDays: input.MinRetentionDays }),
1187
- });
1177
+ body = JSON.stringify(take(input, {
1178
+ ChangeableForDays: [],
1179
+ MaxRetentionDays: [],
1180
+ MinRetentionDays: [],
1181
+ }));
1188
1182
  return new __HttpRequest({
1189
1183
  protocol,
1190
1184
  hostname,
@@ -1204,12 +1198,10 @@ export const se_PutBackupVaultNotificationsCommand = async (input, context) => {
1204
1198
  "/backup-vaults/{BackupVaultName}/notification-configuration";
1205
1199
  resolvedPath = __resolvedPath(resolvedPath, input, "BackupVaultName", () => input.BackupVaultName, "{BackupVaultName}", false);
1206
1200
  let body;
1207
- body = JSON.stringify({
1208
- ...(input.BackupVaultEvents != null && {
1209
- BackupVaultEvents: se_BackupVaultEvents(input.BackupVaultEvents, context),
1210
- }),
1211
- ...(input.SNSTopicArn != null && { SNSTopicArn: input.SNSTopicArn }),
1212
- });
1201
+ body = JSON.stringify(take(input, {
1202
+ BackupVaultEvents: (_) => _json(_),
1203
+ SNSTopicArn: [],
1204
+ }));
1213
1205
  return new __HttpRequest({
1214
1206
  protocol,
1215
1207
  hostname,
@@ -1227,17 +1219,17 @@ export const se_StartBackupJobCommand = async (input, context) => {
1227
1219
  };
1228
1220
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/backup-jobs";
1229
1221
  let body;
1230
- body = JSON.stringify({
1231
- ...(input.BackupOptions != null && { BackupOptions: se_BackupOptions(input.BackupOptions, context) }),
1232
- ...(input.BackupVaultName != null && { BackupVaultName: input.BackupVaultName }),
1233
- ...(input.CompleteWindowMinutes != null && { CompleteWindowMinutes: input.CompleteWindowMinutes }),
1234
- ...(input.IamRoleArn != null && { IamRoleArn: input.IamRoleArn }),
1235
- ...(input.IdempotencyToken != null && { IdempotencyToken: input.IdempotencyToken }),
1236
- ...(input.Lifecycle != null && { Lifecycle: se_Lifecycle(input.Lifecycle, context) }),
1237
- ...(input.RecoveryPointTags != null && { RecoveryPointTags: se_Tags(input.RecoveryPointTags, context) }),
1238
- ...(input.ResourceArn != null && { ResourceArn: input.ResourceArn }),
1239
- ...(input.StartWindowMinutes != null && { StartWindowMinutes: input.StartWindowMinutes }),
1240
- });
1222
+ body = JSON.stringify(take(input, {
1223
+ BackupOptions: (_) => _json(_),
1224
+ BackupVaultName: [],
1225
+ CompleteWindowMinutes: [],
1226
+ IamRoleArn: [],
1227
+ IdempotencyToken: [],
1228
+ Lifecycle: (_) => _json(_),
1229
+ RecoveryPointTags: (_) => _json(_),
1230
+ ResourceArn: [],
1231
+ StartWindowMinutes: [],
1232
+ }));
1241
1233
  return new __HttpRequest({
1242
1234
  protocol,
1243
1235
  hostname,
@@ -1255,14 +1247,14 @@ export const se_StartCopyJobCommand = async (input, context) => {
1255
1247
  };
1256
1248
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/copy-jobs";
1257
1249
  let body;
1258
- body = JSON.stringify({
1259
- ...(input.DestinationBackupVaultArn != null && { DestinationBackupVaultArn: input.DestinationBackupVaultArn }),
1260
- ...(input.IamRoleArn != null && { IamRoleArn: input.IamRoleArn }),
1261
- ...(input.IdempotencyToken != null && { IdempotencyToken: input.IdempotencyToken }),
1262
- ...(input.Lifecycle != null && { Lifecycle: se_Lifecycle(input.Lifecycle, context) }),
1263
- ...(input.RecoveryPointArn != null && { RecoveryPointArn: input.RecoveryPointArn }),
1264
- ...(input.SourceBackupVaultName != null && { SourceBackupVaultName: input.SourceBackupVaultName }),
1265
- });
1250
+ body = JSON.stringify(take(input, {
1251
+ DestinationBackupVaultArn: [],
1252
+ IamRoleArn: [],
1253
+ IdempotencyToken: [],
1254
+ Lifecycle: (_) => _json(_),
1255
+ RecoveryPointArn: [],
1256
+ SourceBackupVaultName: [],
1257
+ }));
1266
1258
  return new __HttpRequest({
1267
1259
  protocol,
1268
1260
  hostname,
@@ -1281,9 +1273,9 @@ export const se_StartReportJobCommand = async (input, context) => {
1281
1273
  let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/audit/report-jobs/{ReportPlanName}";
1282
1274
  resolvedPath = __resolvedPath(resolvedPath, input, "ReportPlanName", () => input.ReportPlanName, "{ReportPlanName}", false);
1283
1275
  let body;
1284
- body = JSON.stringify({
1285
- IdempotencyToken: input.IdempotencyToken ?? generateIdempotencyToken(),
1286
- });
1276
+ body = JSON.stringify(take(input, {
1277
+ IdempotencyToken: (_) => _ ?? generateIdempotencyToken(),
1278
+ }));
1287
1279
  return new __HttpRequest({
1288
1280
  protocol,
1289
1281
  hostname,
@@ -1301,13 +1293,13 @@ export const se_StartRestoreJobCommand = async (input, context) => {
1301
1293
  };
1302
1294
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/restore-jobs";
1303
1295
  let body;
1304
- body = JSON.stringify({
1305
- ...(input.IamRoleArn != null && { IamRoleArn: input.IamRoleArn }),
1306
- ...(input.IdempotencyToken != null && { IdempotencyToken: input.IdempotencyToken }),
1307
- ...(input.Metadata != null && { Metadata: se_Metadata(input.Metadata, context) }),
1308
- ...(input.RecoveryPointArn != null && { RecoveryPointArn: input.RecoveryPointArn }),
1309
- ...(input.ResourceType != null && { ResourceType: input.ResourceType }),
1310
- });
1296
+ body = JSON.stringify(take(input, {
1297
+ IamRoleArn: [],
1298
+ IdempotencyToken: [],
1299
+ Metadata: (_) => _json(_),
1300
+ RecoveryPointArn: [],
1301
+ ResourceType: [],
1302
+ }));
1311
1303
  return new __HttpRequest({
1312
1304
  protocol,
1313
1305
  hostname,
@@ -1342,9 +1334,9 @@ export const se_TagResourceCommand = async (input, context) => {
1342
1334
  let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/tags/{ResourceArn}";
1343
1335
  resolvedPath = __resolvedPath(resolvedPath, input, "ResourceArn", () => input.ResourceArn, "{ResourceArn}", false);
1344
1336
  let body;
1345
- body = JSON.stringify({
1346
- ...(input.Tags != null && { Tags: se_Tags(input.Tags, context) }),
1347
- });
1337
+ body = JSON.stringify(take(input, {
1338
+ Tags: (_) => _json(_),
1339
+ }));
1348
1340
  return new __HttpRequest({
1349
1341
  protocol,
1350
1342
  hostname,
@@ -1363,9 +1355,9 @@ export const se_UntagResourceCommand = async (input, context) => {
1363
1355
  let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/untag/{ResourceArn}";
1364
1356
  resolvedPath = __resolvedPath(resolvedPath, input, "ResourceArn", () => input.ResourceArn, "{ResourceArn}", false);
1365
1357
  let body;
1366
- body = JSON.stringify({
1367
- ...(input.TagKeyList != null && { TagKeyList: se_TagKeyList(input.TagKeyList, context) }),
1368
- });
1358
+ body = JSON.stringify(take(input, {
1359
+ TagKeyList: (_) => _json(_),
1360
+ }));
1369
1361
  return new __HttpRequest({
1370
1362
  protocol,
1371
1363
  hostname,
@@ -1384,9 +1376,9 @@ export const se_UpdateBackupPlanCommand = async (input, context) => {
1384
1376
  let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/backup/plans/{BackupPlanId}";
1385
1377
  resolvedPath = __resolvedPath(resolvedPath, input, "BackupPlanId", () => input.BackupPlanId, "{BackupPlanId}", false);
1386
1378
  let body;
1387
- body = JSON.stringify({
1388
- ...(input.BackupPlan != null && { BackupPlan: se_BackupPlanInput(input.BackupPlan, context) }),
1389
- });
1379
+ body = JSON.stringify(take(input, {
1380
+ BackupPlan: (_) => _json(_),
1381
+ }));
1390
1382
  return new __HttpRequest({
1391
1383
  protocol,
1392
1384
  hostname,
@@ -1405,13 +1397,11 @@ export const se_UpdateFrameworkCommand = async (input, context) => {
1405
1397
  let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/audit/frameworks/{FrameworkName}";
1406
1398
  resolvedPath = __resolvedPath(resolvedPath, input, "FrameworkName", () => input.FrameworkName, "{FrameworkName}", false);
1407
1399
  let body;
1408
- body = JSON.stringify({
1409
- ...(input.FrameworkControls != null && {
1410
- FrameworkControls: se_FrameworkControls(input.FrameworkControls, context),
1411
- }),
1412
- ...(input.FrameworkDescription != null && { FrameworkDescription: input.FrameworkDescription }),
1413
- IdempotencyToken: input.IdempotencyToken ?? generateIdempotencyToken(),
1414
- });
1400
+ body = JSON.stringify(take(input, {
1401
+ FrameworkControls: (_) => _json(_),
1402
+ FrameworkDescription: [],
1403
+ IdempotencyToken: (_) => _ ?? generateIdempotencyToken(),
1404
+ }));
1415
1405
  return new __HttpRequest({
1416
1406
  protocol,
1417
1407
  hostname,
@@ -1429,9 +1419,9 @@ export const se_UpdateGlobalSettingsCommand = async (input, context) => {
1429
1419
  };
1430
1420
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/global-settings";
1431
1421
  let body;
1432
- body = JSON.stringify({
1433
- ...(input.GlobalSettings != null && { GlobalSettings: se_GlobalSettings(input.GlobalSettings, context) }),
1434
- });
1422
+ body = JSON.stringify(take(input, {
1423
+ GlobalSettings: (_) => _json(_),
1424
+ }));
1435
1425
  return new __HttpRequest({
1436
1426
  protocol,
1437
1427
  hostname,
@@ -1452,9 +1442,9 @@ export const se_UpdateRecoveryPointLifecycleCommand = async (input, context) =>
1452
1442
  resolvedPath = __resolvedPath(resolvedPath, input, "BackupVaultName", () => input.BackupVaultName, "{BackupVaultName}", false);
1453
1443
  resolvedPath = __resolvedPath(resolvedPath, input, "RecoveryPointArn", () => input.RecoveryPointArn, "{RecoveryPointArn}", false);
1454
1444
  let body;
1455
- body = JSON.stringify({
1456
- ...(input.Lifecycle != null && { Lifecycle: se_Lifecycle(input.Lifecycle, context) }),
1457
- });
1445
+ body = JSON.stringify(take(input, {
1446
+ Lifecycle: (_) => _json(_),
1447
+ }));
1458
1448
  return new __HttpRequest({
1459
1449
  protocol,
1460
1450
  hostname,
@@ -1472,14 +1462,10 @@ export const se_UpdateRegionSettingsCommand = async (input, context) => {
1472
1462
  };
1473
1463
  const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/account-settings";
1474
1464
  let body;
1475
- body = JSON.stringify({
1476
- ...(input.ResourceTypeManagementPreference != null && {
1477
- ResourceTypeManagementPreference: se_ResourceTypeManagementPreference(input.ResourceTypeManagementPreference, context),
1478
- }),
1479
- ...(input.ResourceTypeOptInPreference != null && {
1480
- ResourceTypeOptInPreference: se_ResourceTypeOptInPreference(input.ResourceTypeOptInPreference, context),
1481
- }),
1482
- });
1465
+ body = JSON.stringify(take(input, {
1466
+ ResourceTypeManagementPreference: (_) => _json(_),
1467
+ ResourceTypeOptInPreference: (_) => _json(_),
1468
+ }));
1483
1469
  return new __HttpRequest({
1484
1470
  protocol,
1485
1471
  hostname,
@@ -1498,14 +1484,12 @@ export const se_UpdateReportPlanCommand = async (input, context) => {
1498
1484
  let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/audit/report-plans/{ReportPlanName}";
1499
1485
  resolvedPath = __resolvedPath(resolvedPath, input, "ReportPlanName", () => input.ReportPlanName, "{ReportPlanName}", false);
1500
1486
  let body;
1501
- body = JSON.stringify({
1502
- IdempotencyToken: input.IdempotencyToken ?? generateIdempotencyToken(),
1503
- ...(input.ReportDeliveryChannel != null && {
1504
- ReportDeliveryChannel: se_ReportDeliveryChannel(input.ReportDeliveryChannel, context),
1505
- }),
1506
- ...(input.ReportPlanDescription != null && { ReportPlanDescription: input.ReportPlanDescription }),
1507
- ...(input.ReportSetting != null && { ReportSetting: se_ReportSetting(input.ReportSetting, context) }),
1508
- });
1487
+ body = JSON.stringify(take(input, {
1488
+ IdempotencyToken: (_) => _ ?? generateIdempotencyToken(),
1489
+ ReportDeliveryChannel: (_) => _json(_),
1490
+ ReportPlanDescription: [],
1491
+ ReportSetting: (_) => _json(_),
1492
+ }));
1509
1493
  return new __HttpRequest({
1510
1494
  protocol,
1511
1495
  hostname,
@@ -1550,10 +1534,9 @@ const de_CancelLegalHoldCommandError = async (output, context) => {
1550
1534
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
1551
1535
  default:
1552
1536
  const parsedBody = parsedOutput.body;
1553
- throwDefaultError({
1537
+ return throwDefaultError({
1554
1538
  output,
1555
1539
  parsedBody,
1556
- exceptionCtor: __BaseException,
1557
1540
  errorCode,
1558
1541
  });
1559
1542
  }
@@ -1566,21 +1549,14 @@ export const de_CreateBackupPlanCommand = async (output, context) => {
1566
1549
  $metadata: deserializeMetadata(output),
1567
1550
  });
1568
1551
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1569
- if (data.AdvancedBackupSettings != null) {
1570
- contents.AdvancedBackupSettings = de_AdvancedBackupSettings(data.AdvancedBackupSettings, context);
1571
- }
1572
- if (data.BackupPlanArn != null) {
1573
- contents.BackupPlanArn = __expectString(data.BackupPlanArn);
1574
- }
1575
- if (data.BackupPlanId != null) {
1576
- contents.BackupPlanId = __expectString(data.BackupPlanId);
1577
- }
1578
- if (data.CreationDate != null) {
1579
- contents.CreationDate = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.CreationDate)));
1580
- }
1581
- if (data.VersionId != null) {
1582
- contents.VersionId = __expectString(data.VersionId);
1583
- }
1552
+ const doc = take(data, {
1553
+ AdvancedBackupSettings: _json,
1554
+ BackupPlanArn: __expectString,
1555
+ BackupPlanId: __expectString,
1556
+ CreationDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
1557
+ VersionId: __expectString,
1558
+ });
1559
+ Object.assign(contents, doc);
1584
1560
  return contents;
1585
1561
  };
1586
1562
  const de_CreateBackupPlanCommandError = async (output, context) => {
@@ -1607,10 +1583,9 @@ const de_CreateBackupPlanCommandError = async (output, context) => {
1607
1583
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
1608
1584
  default:
1609
1585
  const parsedBody = parsedOutput.body;
1610
- throwDefaultError({
1586
+ return throwDefaultError({
1611
1587
  output,
1612
1588
  parsedBody,
1613
- exceptionCtor: __BaseException,
1614
1589
  errorCode,
1615
1590
  });
1616
1591
  }
@@ -1623,15 +1598,12 @@ export const de_CreateBackupSelectionCommand = async (output, context) => {
1623
1598
  $metadata: deserializeMetadata(output),
1624
1599
  });
1625
1600
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1626
- if (data.BackupPlanId != null) {
1627
- contents.BackupPlanId = __expectString(data.BackupPlanId);
1628
- }
1629
- if (data.CreationDate != null) {
1630
- contents.CreationDate = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.CreationDate)));
1631
- }
1632
- if (data.SelectionId != null) {
1633
- contents.SelectionId = __expectString(data.SelectionId);
1634
- }
1601
+ const doc = take(data, {
1602
+ BackupPlanId: __expectString,
1603
+ CreationDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
1604
+ SelectionId: __expectString,
1605
+ });
1606
+ Object.assign(contents, doc);
1635
1607
  return contents;
1636
1608
  };
1637
1609
  const de_CreateBackupSelectionCommandError = async (output, context) => {
@@ -1658,10 +1630,9 @@ const de_CreateBackupSelectionCommandError = async (output, context) => {
1658
1630
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
1659
1631
  default:
1660
1632
  const parsedBody = parsedOutput.body;
1661
- throwDefaultError({
1633
+ return throwDefaultError({
1662
1634
  output,
1663
1635
  parsedBody,
1664
- exceptionCtor: __BaseException,
1665
1636
  errorCode,
1666
1637
  });
1667
1638
  }
@@ -1674,15 +1645,12 @@ export const de_CreateBackupVaultCommand = async (output, context) => {
1674
1645
  $metadata: deserializeMetadata(output),
1675
1646
  });
1676
1647
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1677
- if (data.BackupVaultArn != null) {
1678
- contents.BackupVaultArn = __expectString(data.BackupVaultArn);
1679
- }
1680
- if (data.BackupVaultName != null) {
1681
- contents.BackupVaultName = __expectString(data.BackupVaultName);
1682
- }
1683
- if (data.CreationDate != null) {
1684
- contents.CreationDate = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.CreationDate)));
1685
- }
1648
+ const doc = take(data, {
1649
+ BackupVaultArn: __expectString,
1650
+ BackupVaultName: __expectString,
1651
+ CreationDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
1652
+ });
1653
+ Object.assign(contents, doc);
1686
1654
  return contents;
1687
1655
  };
1688
1656
  const de_CreateBackupVaultCommandError = async (output, context) => {
@@ -1709,10 +1677,9 @@ const de_CreateBackupVaultCommandError = async (output, context) => {
1709
1677
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
1710
1678
  default:
1711
1679
  const parsedBody = parsedOutput.body;
1712
- throwDefaultError({
1680
+ return throwDefaultError({
1713
1681
  output,
1714
1682
  parsedBody,
1715
- exceptionCtor: __BaseException,
1716
1683
  errorCode,
1717
1684
  });
1718
1685
  }
@@ -1725,12 +1692,11 @@ export const de_CreateFrameworkCommand = async (output, context) => {
1725
1692
  $metadata: deserializeMetadata(output),
1726
1693
  });
1727
1694
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1728
- if (data.FrameworkArn != null) {
1729
- contents.FrameworkArn = __expectString(data.FrameworkArn);
1730
- }
1731
- if (data.FrameworkName != null) {
1732
- contents.FrameworkName = __expectString(data.FrameworkName);
1733
- }
1695
+ const doc = take(data, {
1696
+ FrameworkArn: __expectString,
1697
+ FrameworkName: __expectString,
1698
+ });
1699
+ Object.assign(contents, doc);
1734
1700
  return contents;
1735
1701
  };
1736
1702
  const de_CreateFrameworkCommandError = async (output, context) => {
@@ -1757,10 +1723,9 @@ const de_CreateFrameworkCommandError = async (output, context) => {
1757
1723
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
1758
1724
  default:
1759
1725
  const parsedBody = parsedOutput.body;
1760
- throwDefaultError({
1726
+ return throwDefaultError({
1761
1727
  output,
1762
1728
  parsedBody,
1763
- exceptionCtor: __BaseException,
1764
1729
  errorCode,
1765
1730
  });
1766
1731
  }
@@ -1773,27 +1738,16 @@ export const de_CreateLegalHoldCommand = async (output, context) => {
1773
1738
  $metadata: deserializeMetadata(output),
1774
1739
  });
1775
1740
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1776
- if (data.CreationDate != null) {
1777
- contents.CreationDate = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.CreationDate)));
1778
- }
1779
- if (data.Description != null) {
1780
- contents.Description = __expectString(data.Description);
1781
- }
1782
- if (data.LegalHoldArn != null) {
1783
- contents.LegalHoldArn = __expectString(data.LegalHoldArn);
1784
- }
1785
- if (data.LegalHoldId != null) {
1786
- contents.LegalHoldId = __expectString(data.LegalHoldId);
1787
- }
1788
- if (data.RecoveryPointSelection != null) {
1789
- contents.RecoveryPointSelection = de_RecoveryPointSelection(data.RecoveryPointSelection, context);
1790
- }
1791
- if (data.Status != null) {
1792
- contents.Status = __expectString(data.Status);
1793
- }
1794
- if (data.Title != null) {
1795
- contents.Title = __expectString(data.Title);
1796
- }
1741
+ const doc = take(data, {
1742
+ CreationDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
1743
+ Description: __expectString,
1744
+ LegalHoldArn: __expectString,
1745
+ LegalHoldId: __expectString,
1746
+ RecoveryPointSelection: (_) => de_RecoveryPointSelection(_, context),
1747
+ Status: __expectString,
1748
+ Title: __expectString,
1749
+ });
1750
+ Object.assign(contents, doc);
1797
1751
  return contents;
1798
1752
  };
1799
1753
  const de_CreateLegalHoldCommandError = async (output, context) => {
@@ -1817,10 +1771,9 @@ const de_CreateLegalHoldCommandError = async (output, context) => {
1817
1771
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
1818
1772
  default:
1819
1773
  const parsedBody = parsedOutput.body;
1820
- throwDefaultError({
1774
+ return throwDefaultError({
1821
1775
  output,
1822
1776
  parsedBody,
1823
- exceptionCtor: __BaseException,
1824
1777
  errorCode,
1825
1778
  });
1826
1779
  }
@@ -1833,15 +1786,12 @@ export const de_CreateReportPlanCommand = async (output, context) => {
1833
1786
  $metadata: deserializeMetadata(output),
1834
1787
  });
1835
1788
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1836
- if (data.CreationTime != null) {
1837
- contents.CreationTime = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.CreationTime)));
1838
- }
1839
- if (data.ReportPlanArn != null) {
1840
- contents.ReportPlanArn = __expectString(data.ReportPlanArn);
1841
- }
1842
- if (data.ReportPlanName != null) {
1843
- contents.ReportPlanName = __expectString(data.ReportPlanName);
1844
- }
1789
+ const doc = take(data, {
1790
+ CreationTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
1791
+ ReportPlanArn: __expectString,
1792
+ ReportPlanName: __expectString,
1793
+ });
1794
+ Object.assign(contents, doc);
1845
1795
  return contents;
1846
1796
  };
1847
1797
  const de_CreateReportPlanCommandError = async (output, context) => {
@@ -1868,10 +1818,9 @@ const de_CreateReportPlanCommandError = async (output, context) => {
1868
1818
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
1869
1819
  default:
1870
1820
  const parsedBody = parsedOutput.body;
1871
- throwDefaultError({
1821
+ return throwDefaultError({
1872
1822
  output,
1873
1823
  parsedBody,
1874
- exceptionCtor: __BaseException,
1875
1824
  errorCode,
1876
1825
  });
1877
1826
  }
@@ -1884,18 +1833,13 @@ export const de_DeleteBackupPlanCommand = async (output, context) => {
1884
1833
  $metadata: deserializeMetadata(output),
1885
1834
  });
1886
1835
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1887
- if (data.BackupPlanArn != null) {
1888
- contents.BackupPlanArn = __expectString(data.BackupPlanArn);
1889
- }
1890
- if (data.BackupPlanId != null) {
1891
- contents.BackupPlanId = __expectString(data.BackupPlanId);
1892
- }
1893
- if (data.DeletionDate != null) {
1894
- contents.DeletionDate = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.DeletionDate)));
1895
- }
1896
- if (data.VersionId != null) {
1897
- contents.VersionId = __expectString(data.VersionId);
1898
- }
1836
+ const doc = take(data, {
1837
+ BackupPlanArn: __expectString,
1838
+ BackupPlanId: __expectString,
1839
+ DeletionDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
1840
+ VersionId: __expectString,
1841
+ });
1842
+ Object.assign(contents, doc);
1899
1843
  return contents;
1900
1844
  };
1901
1845
  const de_DeleteBackupPlanCommandError = async (output, context) => {
@@ -1922,10 +1866,9 @@ const de_DeleteBackupPlanCommandError = async (output, context) => {
1922
1866
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
1923
1867
  default:
1924
1868
  const parsedBody = parsedOutput.body;
1925
- throwDefaultError({
1869
+ return throwDefaultError({
1926
1870
  output,
1927
1871
  parsedBody,
1928
- exceptionCtor: __BaseException,
1929
1872
  errorCode,
1930
1873
  });
1931
1874
  }
@@ -1961,10 +1904,9 @@ const de_DeleteBackupSelectionCommandError = async (output, context) => {
1961
1904
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
1962
1905
  default:
1963
1906
  const parsedBody = parsedOutput.body;
1964
- throwDefaultError({
1907
+ return throwDefaultError({
1965
1908
  output,
1966
1909
  parsedBody,
1967
- exceptionCtor: __BaseException,
1968
1910
  errorCode,
1969
1911
  });
1970
1912
  }
@@ -2003,10 +1945,9 @@ const de_DeleteBackupVaultCommandError = async (output, context) => {
2003
1945
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
2004
1946
  default:
2005
1947
  const parsedBody = parsedOutput.body;
2006
- throwDefaultError({
1948
+ return throwDefaultError({
2007
1949
  output,
2008
1950
  parsedBody,
2009
- exceptionCtor: __BaseException,
2010
1951
  errorCode,
2011
1952
  });
2012
1953
  }
@@ -2042,10 +1983,9 @@ const de_DeleteBackupVaultAccessPolicyCommandError = async (output, context) =>
2042
1983
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
2043
1984
  default:
2044
1985
  const parsedBody = parsedOutput.body;
2045
- throwDefaultError({
1986
+ return throwDefaultError({
2046
1987
  output,
2047
1988
  parsedBody,
2048
- exceptionCtor: __BaseException,
2049
1989
  errorCode,
2050
1990
  });
2051
1991
  }
@@ -2084,10 +2024,9 @@ const de_DeleteBackupVaultLockConfigurationCommandError = async (output, context
2084
2024
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
2085
2025
  default:
2086
2026
  const parsedBody = parsedOutput.body;
2087
- throwDefaultError({
2027
+ return throwDefaultError({
2088
2028
  output,
2089
2029
  parsedBody,
2090
- exceptionCtor: __BaseException,
2091
2030
  errorCode,
2092
2031
  });
2093
2032
  }
@@ -2123,10 +2062,9 @@ const de_DeleteBackupVaultNotificationsCommandError = async (output, context) =>
2123
2062
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
2124
2063
  default:
2125
2064
  const parsedBody = parsedOutput.body;
2126
- throwDefaultError({
2065
+ return throwDefaultError({
2127
2066
  output,
2128
2067
  parsedBody,
2129
- exceptionCtor: __BaseException,
2130
2068
  errorCode,
2131
2069
  });
2132
2070
  }
@@ -2165,10 +2103,9 @@ const de_DeleteFrameworkCommandError = async (output, context) => {
2165
2103
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
2166
2104
  default:
2167
2105
  const parsedBody = parsedOutput.body;
2168
- throwDefaultError({
2106
+ return throwDefaultError({
2169
2107
  output,
2170
2108
  parsedBody,
2171
- exceptionCtor: __BaseException,
2172
2109
  errorCode,
2173
2110
  });
2174
2111
  }
@@ -2210,10 +2147,9 @@ const de_DeleteRecoveryPointCommandError = async (output, context) => {
2210
2147
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
2211
2148
  default:
2212
2149
  const parsedBody = parsedOutput.body;
2213
- throwDefaultError({
2150
+ return throwDefaultError({
2214
2151
  output,
2215
2152
  parsedBody,
2216
- exceptionCtor: __BaseException,
2217
2153
  errorCode,
2218
2154
  });
2219
2155
  }
@@ -2252,10 +2188,9 @@ const de_DeleteReportPlanCommandError = async (output, context) => {
2252
2188
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
2253
2189
  default:
2254
2190
  const parsedBody = parsedOutput.body;
2255
- throwDefaultError({
2191
+ return throwDefaultError({
2256
2192
  output,
2257
2193
  parsedBody,
2258
- exceptionCtor: __BaseException,
2259
2194
  errorCode,
2260
2195
  });
2261
2196
  }
@@ -2268,81 +2203,34 @@ export const de_DescribeBackupJobCommand = async (output, context) => {
2268
2203
  $metadata: deserializeMetadata(output),
2269
2204
  });
2270
2205
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
2271
- if (data.AccountId != null) {
2272
- contents.AccountId = __expectString(data.AccountId);
2273
- }
2274
- if (data.BackupJobId != null) {
2275
- contents.BackupJobId = __expectString(data.BackupJobId);
2276
- }
2277
- if (data.BackupOptions != null) {
2278
- contents.BackupOptions = de_BackupOptions(data.BackupOptions, context);
2279
- }
2280
- if (data.BackupSizeInBytes != null) {
2281
- contents.BackupSizeInBytes = __expectLong(data.BackupSizeInBytes);
2282
- }
2283
- if (data.BackupType != null) {
2284
- contents.BackupType = __expectString(data.BackupType);
2285
- }
2286
- if (data.BackupVaultArn != null) {
2287
- contents.BackupVaultArn = __expectString(data.BackupVaultArn);
2288
- }
2289
- if (data.BackupVaultName != null) {
2290
- contents.BackupVaultName = __expectString(data.BackupVaultName);
2291
- }
2292
- if (data.BytesTransferred != null) {
2293
- contents.BytesTransferred = __expectLong(data.BytesTransferred);
2294
- }
2295
- if (data.ChildJobsInState != null) {
2296
- contents.ChildJobsInState = de_BackupJobChildJobsInState(data.ChildJobsInState, context);
2297
- }
2298
- if (data.CompletionDate != null) {
2299
- contents.CompletionDate = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.CompletionDate)));
2300
- }
2301
- if (data.CreatedBy != null) {
2302
- contents.CreatedBy = de_RecoveryPointCreator(data.CreatedBy, context);
2303
- }
2304
- if (data.CreationDate != null) {
2305
- contents.CreationDate = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.CreationDate)));
2306
- }
2307
- if (data.ExpectedCompletionDate != null) {
2308
- contents.ExpectedCompletionDate = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.ExpectedCompletionDate)));
2309
- }
2310
- if (data.IamRoleArn != null) {
2311
- contents.IamRoleArn = __expectString(data.IamRoleArn);
2312
- }
2313
- if (data.IsParent != null) {
2314
- contents.IsParent = __expectBoolean(data.IsParent);
2315
- }
2316
- if (data.NumberOfChildJobs != null) {
2317
- contents.NumberOfChildJobs = __expectLong(data.NumberOfChildJobs);
2318
- }
2319
- if (data.ParentJobId != null) {
2320
- contents.ParentJobId = __expectString(data.ParentJobId);
2321
- }
2322
- if (data.PercentDone != null) {
2323
- contents.PercentDone = __expectString(data.PercentDone);
2324
- }
2325
- if (data.RecoveryPointArn != null) {
2326
- contents.RecoveryPointArn = __expectString(data.RecoveryPointArn);
2327
- }
2328
- if (data.ResourceArn != null) {
2329
- contents.ResourceArn = __expectString(data.ResourceArn);
2330
- }
2331
- if (data.ResourceName != null) {
2332
- contents.ResourceName = __expectString(data.ResourceName);
2333
- }
2334
- if (data.ResourceType != null) {
2335
- contents.ResourceType = __expectString(data.ResourceType);
2336
- }
2337
- if (data.StartBy != null) {
2338
- contents.StartBy = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.StartBy)));
2339
- }
2340
- if (data.State != null) {
2341
- contents.State = __expectString(data.State);
2342
- }
2343
- if (data.StatusMessage != null) {
2344
- contents.StatusMessage = __expectString(data.StatusMessage);
2345
- }
2206
+ const doc = take(data, {
2207
+ AccountId: __expectString,
2208
+ BackupJobId: __expectString,
2209
+ BackupOptions: _json,
2210
+ BackupSizeInBytes: __expectLong,
2211
+ BackupType: __expectString,
2212
+ BackupVaultArn: __expectString,
2213
+ BackupVaultName: __expectString,
2214
+ BytesTransferred: __expectLong,
2215
+ ChildJobsInState: _json,
2216
+ CompletionDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
2217
+ CreatedBy: _json,
2218
+ CreationDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
2219
+ ExpectedCompletionDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
2220
+ IamRoleArn: __expectString,
2221
+ IsParent: __expectBoolean,
2222
+ NumberOfChildJobs: __expectLong,
2223
+ ParentJobId: __expectString,
2224
+ PercentDone: __expectString,
2225
+ RecoveryPointArn: __expectString,
2226
+ ResourceArn: __expectString,
2227
+ ResourceName: __expectString,
2228
+ ResourceType: __expectString,
2229
+ StartBy: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
2230
+ State: __expectString,
2231
+ StatusMessage: __expectString,
2232
+ });
2233
+ Object.assign(contents, doc);
2346
2234
  return contents;
2347
2235
  };
2348
2236
  const de_DescribeBackupJobCommandError = async (output, context) => {
@@ -2369,10 +2257,9 @@ const de_DescribeBackupJobCommandError = async (output, context) => {
2369
2257
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
2370
2258
  default:
2371
2259
  const parsedBody = parsedOutput.body;
2372
- throwDefaultError({
2260
+ return throwDefaultError({
2373
2261
  output,
2374
2262
  parsedBody,
2375
- exceptionCtor: __BaseException,
2376
2263
  errorCode,
2377
2264
  });
2378
2265
  }
@@ -2385,36 +2272,19 @@ export const de_DescribeBackupVaultCommand = async (output, context) => {
2385
2272
  $metadata: deserializeMetadata(output),
2386
2273
  });
2387
2274
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
2388
- if (data.BackupVaultArn != null) {
2389
- contents.BackupVaultArn = __expectString(data.BackupVaultArn);
2390
- }
2391
- if (data.BackupVaultName != null) {
2392
- contents.BackupVaultName = __expectString(data.BackupVaultName);
2393
- }
2394
- if (data.CreationDate != null) {
2395
- contents.CreationDate = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.CreationDate)));
2396
- }
2397
- if (data.CreatorRequestId != null) {
2398
- contents.CreatorRequestId = __expectString(data.CreatorRequestId);
2399
- }
2400
- if (data.EncryptionKeyArn != null) {
2401
- contents.EncryptionKeyArn = __expectString(data.EncryptionKeyArn);
2402
- }
2403
- if (data.LockDate != null) {
2404
- contents.LockDate = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.LockDate)));
2405
- }
2406
- if (data.Locked != null) {
2407
- contents.Locked = __expectBoolean(data.Locked);
2408
- }
2409
- if (data.MaxRetentionDays != null) {
2410
- contents.MaxRetentionDays = __expectLong(data.MaxRetentionDays);
2411
- }
2412
- if (data.MinRetentionDays != null) {
2413
- contents.MinRetentionDays = __expectLong(data.MinRetentionDays);
2414
- }
2415
- if (data.NumberOfRecoveryPoints != null) {
2416
- contents.NumberOfRecoveryPoints = __expectLong(data.NumberOfRecoveryPoints);
2417
- }
2275
+ const doc = take(data, {
2276
+ BackupVaultArn: __expectString,
2277
+ BackupVaultName: __expectString,
2278
+ CreationDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
2279
+ CreatorRequestId: __expectString,
2280
+ EncryptionKeyArn: __expectString,
2281
+ LockDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
2282
+ Locked: __expectBoolean,
2283
+ MaxRetentionDays: __expectLong,
2284
+ MinRetentionDays: __expectLong,
2285
+ NumberOfRecoveryPoints: __expectLong,
2286
+ });
2287
+ Object.assign(contents, doc);
2418
2288
  return contents;
2419
2289
  };
2420
2290
  const de_DescribeBackupVaultCommandError = async (output, context) => {
@@ -2438,10 +2308,9 @@ const de_DescribeBackupVaultCommandError = async (output, context) => {
2438
2308
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
2439
2309
  default:
2440
2310
  const parsedBody = parsedOutput.body;
2441
- throwDefaultError({
2311
+ return throwDefaultError({
2442
2312
  output,
2443
2313
  parsedBody,
2444
- exceptionCtor: __BaseException,
2445
2314
  errorCode,
2446
2315
  });
2447
2316
  }
@@ -2454,9 +2323,10 @@ export const de_DescribeCopyJobCommand = async (output, context) => {
2454
2323
  $metadata: deserializeMetadata(output),
2455
2324
  });
2456
2325
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
2457
- if (data.CopyJob != null) {
2458
- contents.CopyJob = de_CopyJob(data.CopyJob, context);
2459
- }
2326
+ const doc = take(data, {
2327
+ CopyJob: (_) => de_CopyJob(_, context),
2328
+ });
2329
+ Object.assign(contents, doc);
2460
2330
  return contents;
2461
2331
  };
2462
2332
  const de_DescribeCopyJobCommandError = async (output, context) => {
@@ -2480,10 +2350,9 @@ const de_DescribeCopyJobCommandError = async (output, context) => {
2480
2350
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
2481
2351
  default:
2482
2352
  const parsedBody = parsedOutput.body;
2483
- throwDefaultError({
2353
+ return throwDefaultError({
2484
2354
  output,
2485
2355
  parsedBody,
2486
- exceptionCtor: __BaseException,
2487
2356
  errorCode,
2488
2357
  });
2489
2358
  }
@@ -2496,30 +2365,17 @@ export const de_DescribeFrameworkCommand = async (output, context) => {
2496
2365
  $metadata: deserializeMetadata(output),
2497
2366
  });
2498
2367
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
2499
- if (data.CreationTime != null) {
2500
- contents.CreationTime = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.CreationTime)));
2501
- }
2502
- if (data.DeploymentStatus != null) {
2503
- contents.DeploymentStatus = __expectString(data.DeploymentStatus);
2504
- }
2505
- if (data.FrameworkArn != null) {
2506
- contents.FrameworkArn = __expectString(data.FrameworkArn);
2507
- }
2508
- if (data.FrameworkControls != null) {
2509
- contents.FrameworkControls = de_FrameworkControls(data.FrameworkControls, context);
2510
- }
2511
- if (data.FrameworkDescription != null) {
2512
- contents.FrameworkDescription = __expectString(data.FrameworkDescription);
2513
- }
2514
- if (data.FrameworkName != null) {
2515
- contents.FrameworkName = __expectString(data.FrameworkName);
2516
- }
2517
- if (data.FrameworkStatus != null) {
2518
- contents.FrameworkStatus = __expectString(data.FrameworkStatus);
2519
- }
2520
- if (data.IdempotencyToken != null) {
2521
- contents.IdempotencyToken = __expectString(data.IdempotencyToken);
2522
- }
2368
+ const doc = take(data, {
2369
+ CreationTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
2370
+ DeploymentStatus: __expectString,
2371
+ FrameworkArn: __expectString,
2372
+ FrameworkControls: _json,
2373
+ FrameworkDescription: __expectString,
2374
+ FrameworkName: __expectString,
2375
+ FrameworkStatus: __expectString,
2376
+ IdempotencyToken: __expectString,
2377
+ });
2378
+ Object.assign(contents, doc);
2523
2379
  return contents;
2524
2380
  };
2525
2381
  const de_DescribeFrameworkCommandError = async (output, context) => {
@@ -2543,10 +2399,9 @@ const de_DescribeFrameworkCommandError = async (output, context) => {
2543
2399
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
2544
2400
  default:
2545
2401
  const parsedBody = parsedOutput.body;
2546
- throwDefaultError({
2402
+ return throwDefaultError({
2547
2403
  output,
2548
2404
  parsedBody,
2549
- exceptionCtor: __BaseException,
2550
2405
  errorCode,
2551
2406
  });
2552
2407
  }
@@ -2559,12 +2414,11 @@ export const de_DescribeGlobalSettingsCommand = async (output, context) => {
2559
2414
  $metadata: deserializeMetadata(output),
2560
2415
  });
2561
2416
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
2562
- if (data.GlobalSettings != null) {
2563
- contents.GlobalSettings = de_GlobalSettings(data.GlobalSettings, context);
2564
- }
2565
- if (data.LastUpdateTime != null) {
2566
- contents.LastUpdateTime = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.LastUpdateTime)));
2567
- }
2417
+ const doc = take(data, {
2418
+ GlobalSettings: _json,
2419
+ LastUpdateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
2420
+ });
2421
+ Object.assign(contents, doc);
2568
2422
  return contents;
2569
2423
  };
2570
2424
  const de_DescribeGlobalSettingsCommandError = async (output, context) => {
@@ -2582,10 +2436,9 @@ const de_DescribeGlobalSettingsCommandError = async (output, context) => {
2582
2436
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
2583
2437
  default:
2584
2438
  const parsedBody = parsedOutput.body;
2585
- throwDefaultError({
2439
+ return throwDefaultError({
2586
2440
  output,
2587
2441
  parsedBody,
2588
- exceptionCtor: __BaseException,
2589
2442
  errorCode,
2590
2443
  });
2591
2444
  }
@@ -2598,18 +2451,13 @@ export const de_DescribeProtectedResourceCommand = async (output, context) => {
2598
2451
  $metadata: deserializeMetadata(output),
2599
2452
  });
2600
2453
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
2601
- if (data.LastBackupTime != null) {
2602
- contents.LastBackupTime = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.LastBackupTime)));
2603
- }
2604
- if (data.ResourceArn != null) {
2605
- contents.ResourceArn = __expectString(data.ResourceArn);
2606
- }
2607
- if (data.ResourceName != null) {
2608
- contents.ResourceName = __expectString(data.ResourceName);
2609
- }
2610
- if (data.ResourceType != null) {
2611
- contents.ResourceType = __expectString(data.ResourceType);
2612
- }
2454
+ const doc = take(data, {
2455
+ LastBackupTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
2456
+ ResourceArn: __expectString,
2457
+ ResourceName: __expectString,
2458
+ ResourceType: __expectString,
2459
+ });
2460
+ Object.assign(contents, doc);
2613
2461
  return contents;
2614
2462
  };
2615
2463
  const de_DescribeProtectedResourceCommandError = async (output, context) => {
@@ -2633,10 +2481,9 @@ const de_DescribeProtectedResourceCommandError = async (output, context) => {
2633
2481
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
2634
2482
  default:
2635
2483
  const parsedBody = parsedOutput.body;
2636
- throwDefaultError({
2484
+ return throwDefaultError({
2637
2485
  output,
2638
2486
  parsedBody,
2639
- exceptionCtor: __BaseException,
2640
2487
  errorCode,
2641
2488
  });
2642
2489
  }
@@ -2649,75 +2496,32 @@ export const de_DescribeRecoveryPointCommand = async (output, context) => {
2649
2496
  $metadata: deserializeMetadata(output),
2650
2497
  });
2651
2498
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
2652
- if (data.BackupSizeInBytes != null) {
2653
- contents.BackupSizeInBytes = __expectLong(data.BackupSizeInBytes);
2654
- }
2655
- if (data.BackupVaultArn != null) {
2656
- contents.BackupVaultArn = __expectString(data.BackupVaultArn);
2657
- }
2658
- if (data.BackupVaultName != null) {
2659
- contents.BackupVaultName = __expectString(data.BackupVaultName);
2660
- }
2661
- if (data.CalculatedLifecycle != null) {
2662
- contents.CalculatedLifecycle = de_CalculatedLifecycle(data.CalculatedLifecycle, context);
2663
- }
2664
- if (data.CompletionDate != null) {
2665
- contents.CompletionDate = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.CompletionDate)));
2666
- }
2667
- if (data.CompositeMemberIdentifier != null) {
2668
- contents.CompositeMemberIdentifier = __expectString(data.CompositeMemberIdentifier);
2669
- }
2670
- if (data.CreatedBy != null) {
2671
- contents.CreatedBy = de_RecoveryPointCreator(data.CreatedBy, context);
2672
- }
2673
- if (data.CreationDate != null) {
2674
- contents.CreationDate = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.CreationDate)));
2675
- }
2676
- if (data.EncryptionKeyArn != null) {
2677
- contents.EncryptionKeyArn = __expectString(data.EncryptionKeyArn);
2678
- }
2679
- if (data.IamRoleArn != null) {
2680
- contents.IamRoleArn = __expectString(data.IamRoleArn);
2681
- }
2682
- if (data.IsEncrypted != null) {
2683
- contents.IsEncrypted = __expectBoolean(data.IsEncrypted);
2684
- }
2685
- if (data.IsParent != null) {
2686
- contents.IsParent = __expectBoolean(data.IsParent);
2687
- }
2688
- if (data.LastRestoreTime != null) {
2689
- contents.LastRestoreTime = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.LastRestoreTime)));
2690
- }
2691
- if (data.Lifecycle != null) {
2692
- contents.Lifecycle = de_Lifecycle(data.Lifecycle, context);
2693
- }
2694
- if (data.ParentRecoveryPointArn != null) {
2695
- contents.ParentRecoveryPointArn = __expectString(data.ParentRecoveryPointArn);
2696
- }
2697
- if (data.RecoveryPointArn != null) {
2698
- contents.RecoveryPointArn = __expectString(data.RecoveryPointArn);
2699
- }
2700
- if (data.ResourceArn != null) {
2701
- contents.ResourceArn = __expectString(data.ResourceArn);
2702
- }
2703
- if (data.ResourceName != null) {
2704
- contents.ResourceName = __expectString(data.ResourceName);
2705
- }
2706
- if (data.ResourceType != null) {
2707
- contents.ResourceType = __expectString(data.ResourceType);
2708
- }
2709
- if (data.SourceBackupVaultArn != null) {
2710
- contents.SourceBackupVaultArn = __expectString(data.SourceBackupVaultArn);
2711
- }
2712
- if (data.Status != null) {
2713
- contents.Status = __expectString(data.Status);
2714
- }
2715
- if (data.StatusMessage != null) {
2716
- contents.StatusMessage = __expectString(data.StatusMessage);
2717
- }
2718
- if (data.StorageClass != null) {
2719
- contents.StorageClass = __expectString(data.StorageClass);
2720
- }
2499
+ const doc = take(data, {
2500
+ BackupSizeInBytes: __expectLong,
2501
+ BackupVaultArn: __expectString,
2502
+ BackupVaultName: __expectString,
2503
+ CalculatedLifecycle: (_) => de_CalculatedLifecycle(_, context),
2504
+ CompletionDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
2505
+ CompositeMemberIdentifier: __expectString,
2506
+ CreatedBy: _json,
2507
+ CreationDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
2508
+ EncryptionKeyArn: __expectString,
2509
+ IamRoleArn: __expectString,
2510
+ IsEncrypted: __expectBoolean,
2511
+ IsParent: __expectBoolean,
2512
+ LastRestoreTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
2513
+ Lifecycle: _json,
2514
+ ParentRecoveryPointArn: __expectString,
2515
+ RecoveryPointArn: __expectString,
2516
+ ResourceArn: __expectString,
2517
+ ResourceName: __expectString,
2518
+ ResourceType: __expectString,
2519
+ SourceBackupVaultArn: __expectString,
2520
+ Status: __expectString,
2521
+ StatusMessage: __expectString,
2522
+ StorageClass: __expectString,
2523
+ });
2524
+ Object.assign(contents, doc);
2721
2525
  return contents;
2722
2526
  };
2723
2527
  const de_DescribeRecoveryPointCommandError = async (output, context) => {
@@ -2741,10 +2545,9 @@ const de_DescribeRecoveryPointCommandError = async (output, context) => {
2741
2545
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
2742
2546
  default:
2743
2547
  const parsedBody = parsedOutput.body;
2744
- throwDefaultError({
2548
+ return throwDefaultError({
2745
2549
  output,
2746
2550
  parsedBody,
2747
- exceptionCtor: __BaseException,
2748
2551
  errorCode,
2749
2552
  });
2750
2553
  }
@@ -2757,12 +2560,11 @@ export const de_DescribeRegionSettingsCommand = async (output, context) => {
2757
2560
  $metadata: deserializeMetadata(output),
2758
2561
  });
2759
2562
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
2760
- if (data.ResourceTypeManagementPreference != null) {
2761
- contents.ResourceTypeManagementPreference = de_ResourceTypeManagementPreference(data.ResourceTypeManagementPreference, context);
2762
- }
2763
- if (data.ResourceTypeOptInPreference != null) {
2764
- contents.ResourceTypeOptInPreference = de_ResourceTypeOptInPreference(data.ResourceTypeOptInPreference, context);
2765
- }
2563
+ const doc = take(data, {
2564
+ ResourceTypeManagementPreference: _json,
2565
+ ResourceTypeOptInPreference: _json,
2566
+ });
2567
+ Object.assign(contents, doc);
2766
2568
  return contents;
2767
2569
  };
2768
2570
  const de_DescribeRegionSettingsCommandError = async (output, context) => {
@@ -2777,10 +2579,9 @@ const de_DescribeRegionSettingsCommandError = async (output, context) => {
2777
2579
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
2778
2580
  default:
2779
2581
  const parsedBody = parsedOutput.body;
2780
- throwDefaultError({
2582
+ return throwDefaultError({
2781
2583
  output,
2782
2584
  parsedBody,
2783
- exceptionCtor: __BaseException,
2784
2585
  errorCode,
2785
2586
  });
2786
2587
  }
@@ -2793,9 +2594,10 @@ export const de_DescribeReportJobCommand = async (output, context) => {
2793
2594
  $metadata: deserializeMetadata(output),
2794
2595
  });
2795
2596
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
2796
- if (data.ReportJob != null) {
2797
- contents.ReportJob = de_ReportJob(data.ReportJob, context);
2798
- }
2597
+ const doc = take(data, {
2598
+ ReportJob: (_) => de_ReportJob(_, context),
2599
+ });
2600
+ Object.assign(contents, doc);
2799
2601
  return contents;
2800
2602
  };
2801
2603
  const de_DescribeReportJobCommandError = async (output, context) => {
@@ -2816,10 +2618,9 @@ const de_DescribeReportJobCommandError = async (output, context) => {
2816
2618
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
2817
2619
  default:
2818
2620
  const parsedBody = parsedOutput.body;
2819
- throwDefaultError({
2621
+ return throwDefaultError({
2820
2622
  output,
2821
2623
  parsedBody,
2822
- exceptionCtor: __BaseException,
2823
2624
  errorCode,
2824
2625
  });
2825
2626
  }
@@ -2832,9 +2633,10 @@ export const de_DescribeReportPlanCommand = async (output, context) => {
2832
2633
  $metadata: deserializeMetadata(output),
2833
2634
  });
2834
2635
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
2835
- if (data.ReportPlan != null) {
2836
- contents.ReportPlan = de_ReportPlan(data.ReportPlan, context);
2837
- }
2636
+ const doc = take(data, {
2637
+ ReportPlan: (_) => de_ReportPlan(_, context),
2638
+ });
2639
+ Object.assign(contents, doc);
2838
2640
  return contents;
2839
2641
  };
2840
2642
  const de_DescribeReportPlanCommandError = async (output, context) => {
@@ -2858,10 +2660,9 @@ const de_DescribeReportPlanCommandError = async (output, context) => {
2858
2660
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
2859
2661
  default:
2860
2662
  const parsedBody = parsedOutput.body;
2861
- throwDefaultError({
2663
+ return throwDefaultError({
2862
2664
  output,
2863
2665
  parsedBody,
2864
- exceptionCtor: __BaseException,
2865
2666
  errorCode,
2866
2667
  });
2867
2668
  }
@@ -2874,45 +2675,22 @@ export const de_DescribeRestoreJobCommand = async (output, context) => {
2874
2675
  $metadata: deserializeMetadata(output),
2875
2676
  });
2876
2677
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
2877
- if (data.AccountId != null) {
2878
- contents.AccountId = __expectString(data.AccountId);
2879
- }
2880
- if (data.BackupSizeInBytes != null) {
2881
- contents.BackupSizeInBytes = __expectLong(data.BackupSizeInBytes);
2882
- }
2883
- if (data.CompletionDate != null) {
2884
- contents.CompletionDate = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.CompletionDate)));
2885
- }
2886
- if (data.CreatedResourceArn != null) {
2887
- contents.CreatedResourceArn = __expectString(data.CreatedResourceArn);
2888
- }
2889
- if (data.CreationDate != null) {
2890
- contents.CreationDate = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.CreationDate)));
2891
- }
2892
- if (data.ExpectedCompletionTimeMinutes != null) {
2893
- contents.ExpectedCompletionTimeMinutes = __expectLong(data.ExpectedCompletionTimeMinutes);
2894
- }
2895
- if (data.IamRoleArn != null) {
2896
- contents.IamRoleArn = __expectString(data.IamRoleArn);
2897
- }
2898
- if (data.PercentDone != null) {
2899
- contents.PercentDone = __expectString(data.PercentDone);
2900
- }
2901
- if (data.RecoveryPointArn != null) {
2902
- contents.RecoveryPointArn = __expectString(data.RecoveryPointArn);
2903
- }
2904
- if (data.ResourceType != null) {
2905
- contents.ResourceType = __expectString(data.ResourceType);
2906
- }
2907
- if (data.RestoreJobId != null) {
2908
- contents.RestoreJobId = __expectString(data.RestoreJobId);
2909
- }
2910
- if (data.Status != null) {
2911
- contents.Status = __expectString(data.Status);
2912
- }
2913
- if (data.StatusMessage != null) {
2914
- contents.StatusMessage = __expectString(data.StatusMessage);
2915
- }
2678
+ const doc = take(data, {
2679
+ AccountId: __expectString,
2680
+ BackupSizeInBytes: __expectLong,
2681
+ CompletionDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
2682
+ CreatedResourceArn: __expectString,
2683
+ CreationDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
2684
+ ExpectedCompletionTimeMinutes: __expectLong,
2685
+ IamRoleArn: __expectString,
2686
+ PercentDone: __expectString,
2687
+ RecoveryPointArn: __expectString,
2688
+ ResourceType: __expectString,
2689
+ RestoreJobId: __expectString,
2690
+ Status: __expectString,
2691
+ StatusMessage: __expectString,
2692
+ });
2693
+ Object.assign(contents, doc);
2916
2694
  return contents;
2917
2695
  };
2918
2696
  const de_DescribeRestoreJobCommandError = async (output, context) => {
@@ -2939,10 +2717,9 @@ const de_DescribeRestoreJobCommandError = async (output, context) => {
2939
2717
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
2940
2718
  default:
2941
2719
  const parsedBody = parsedOutput.body;
2942
- throwDefaultError({
2720
+ return throwDefaultError({
2943
2721
  output,
2944
2722
  parsedBody,
2945
- exceptionCtor: __BaseException,
2946
2723
  errorCode,
2947
2724
  });
2948
2725
  }
@@ -2984,10 +2761,9 @@ const de_DisassociateRecoveryPointCommandError = async (output, context) => {
2984
2761
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
2985
2762
  default:
2986
2763
  const parsedBody = parsedOutput.body;
2987
- throwDefaultError({
2764
+ return throwDefaultError({
2988
2765
  output,
2989
2766
  parsedBody,
2990
- exceptionCtor: __BaseException,
2991
2767
  errorCode,
2992
2768
  });
2993
2769
  }
@@ -3026,10 +2802,9 @@ const de_DisassociateRecoveryPointFromParentCommandError = async (output, contex
3026
2802
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
3027
2803
  default:
3028
2804
  const parsedBody = parsedOutput.body;
3029
- throwDefaultError({
2805
+ return throwDefaultError({
3030
2806
  output,
3031
2807
  parsedBody,
3032
- exceptionCtor: __BaseException,
3033
2808
  errorCode,
3034
2809
  });
3035
2810
  }
@@ -3042,9 +2817,10 @@ export const de_ExportBackupPlanTemplateCommand = async (output, context) => {
3042
2817
  $metadata: deserializeMetadata(output),
3043
2818
  });
3044
2819
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
3045
- if (data.BackupPlanTemplateJson != null) {
3046
- contents.BackupPlanTemplateJson = __expectString(data.BackupPlanTemplateJson);
3047
- }
2820
+ const doc = take(data, {
2821
+ BackupPlanTemplateJson: __expectString,
2822
+ });
2823
+ Object.assign(contents, doc);
3048
2824
  return contents;
3049
2825
  };
3050
2826
  const de_ExportBackupPlanTemplateCommandError = async (output, context) => {
@@ -3068,10 +2844,9 @@ const de_ExportBackupPlanTemplateCommandError = async (output, context) => {
3068
2844
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
3069
2845
  default:
3070
2846
  const parsedBody = parsedOutput.body;
3071
- throwDefaultError({
2847
+ return throwDefaultError({
3072
2848
  output,
3073
2849
  parsedBody,
3074
- exceptionCtor: __BaseException,
3075
2850
  errorCode,
3076
2851
  });
3077
2852
  }
@@ -3084,33 +2859,18 @@ export const de_GetBackupPlanCommand = async (output, context) => {
3084
2859
  $metadata: deserializeMetadata(output),
3085
2860
  });
3086
2861
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
3087
- if (data.AdvancedBackupSettings != null) {
3088
- contents.AdvancedBackupSettings = de_AdvancedBackupSettings(data.AdvancedBackupSettings, context);
3089
- }
3090
- if (data.BackupPlan != null) {
3091
- contents.BackupPlan = de_BackupPlan(data.BackupPlan, context);
3092
- }
3093
- if (data.BackupPlanArn != null) {
3094
- contents.BackupPlanArn = __expectString(data.BackupPlanArn);
3095
- }
3096
- if (data.BackupPlanId != null) {
3097
- contents.BackupPlanId = __expectString(data.BackupPlanId);
3098
- }
3099
- if (data.CreationDate != null) {
3100
- contents.CreationDate = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.CreationDate)));
3101
- }
3102
- if (data.CreatorRequestId != null) {
3103
- contents.CreatorRequestId = __expectString(data.CreatorRequestId);
3104
- }
3105
- if (data.DeletionDate != null) {
3106
- contents.DeletionDate = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.DeletionDate)));
3107
- }
3108
- if (data.LastExecutionDate != null) {
3109
- contents.LastExecutionDate = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.LastExecutionDate)));
3110
- }
3111
- if (data.VersionId != null) {
3112
- contents.VersionId = __expectString(data.VersionId);
3113
- }
2862
+ const doc = take(data, {
2863
+ AdvancedBackupSettings: _json,
2864
+ BackupPlan: _json,
2865
+ BackupPlanArn: __expectString,
2866
+ BackupPlanId: __expectString,
2867
+ CreationDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
2868
+ CreatorRequestId: __expectString,
2869
+ DeletionDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
2870
+ LastExecutionDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
2871
+ VersionId: __expectString,
2872
+ });
2873
+ Object.assign(contents, doc);
3114
2874
  return contents;
3115
2875
  };
3116
2876
  const de_GetBackupPlanCommandError = async (output, context) => {
@@ -3134,10 +2894,9 @@ const de_GetBackupPlanCommandError = async (output, context) => {
3134
2894
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
3135
2895
  default:
3136
2896
  const parsedBody = parsedOutput.body;
3137
- throwDefaultError({
2897
+ return throwDefaultError({
3138
2898
  output,
3139
2899
  parsedBody,
3140
- exceptionCtor: __BaseException,
3141
2900
  errorCode,
3142
2901
  });
3143
2902
  }
@@ -3150,9 +2909,10 @@ export const de_GetBackupPlanFromJSONCommand = async (output, context) => {
3150
2909
  $metadata: deserializeMetadata(output),
3151
2910
  });
3152
2911
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
3153
- if (data.BackupPlan != null) {
3154
- contents.BackupPlan = de_BackupPlan(data.BackupPlan, context);
3155
- }
2912
+ const doc = take(data, {
2913
+ BackupPlan: _json,
2914
+ });
2915
+ Object.assign(contents, doc);
3156
2916
  return contents;
3157
2917
  };
3158
2918
  const de_GetBackupPlanFromJSONCommandError = async (output, context) => {
@@ -3179,10 +2939,9 @@ const de_GetBackupPlanFromJSONCommandError = async (output, context) => {
3179
2939
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
3180
2940
  default:
3181
2941
  const parsedBody = parsedOutput.body;
3182
- throwDefaultError({
2942
+ return throwDefaultError({
3183
2943
  output,
3184
2944
  parsedBody,
3185
- exceptionCtor: __BaseException,
3186
2945
  errorCode,
3187
2946
  });
3188
2947
  }
@@ -3195,9 +2954,10 @@ export const de_GetBackupPlanFromTemplateCommand = async (output, context) => {
3195
2954
  $metadata: deserializeMetadata(output),
3196
2955
  });
3197
2956
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
3198
- if (data.BackupPlanDocument != null) {
3199
- contents.BackupPlanDocument = de_BackupPlan(data.BackupPlanDocument, context);
3200
- }
2957
+ const doc = take(data, {
2958
+ BackupPlanDocument: _json,
2959
+ });
2960
+ Object.assign(contents, doc);
3201
2961
  return contents;
3202
2962
  };
3203
2963
  const de_GetBackupPlanFromTemplateCommandError = async (output, context) => {
@@ -3221,10 +2981,9 @@ const de_GetBackupPlanFromTemplateCommandError = async (output, context) => {
3221
2981
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
3222
2982
  default:
3223
2983
  const parsedBody = parsedOutput.body;
3224
- throwDefaultError({
2984
+ return throwDefaultError({
3225
2985
  output,
3226
2986
  parsedBody,
3227
- exceptionCtor: __BaseException,
3228
2987
  errorCode,
3229
2988
  });
3230
2989
  }
@@ -3237,21 +2996,14 @@ export const de_GetBackupSelectionCommand = async (output, context) => {
3237
2996
  $metadata: deserializeMetadata(output),
3238
2997
  });
3239
2998
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
3240
- if (data.BackupPlanId != null) {
3241
- contents.BackupPlanId = __expectString(data.BackupPlanId);
3242
- }
3243
- if (data.BackupSelection != null) {
3244
- contents.BackupSelection = de_BackupSelection(data.BackupSelection, context);
3245
- }
3246
- if (data.CreationDate != null) {
3247
- contents.CreationDate = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.CreationDate)));
3248
- }
3249
- if (data.CreatorRequestId != null) {
3250
- contents.CreatorRequestId = __expectString(data.CreatorRequestId);
3251
- }
3252
- if (data.SelectionId != null) {
3253
- contents.SelectionId = __expectString(data.SelectionId);
3254
- }
2999
+ const doc = take(data, {
3000
+ BackupPlanId: __expectString,
3001
+ BackupSelection: _json,
3002
+ CreationDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
3003
+ CreatorRequestId: __expectString,
3004
+ SelectionId: __expectString,
3005
+ });
3006
+ Object.assign(contents, doc);
3255
3007
  return contents;
3256
3008
  };
3257
3009
  const de_GetBackupSelectionCommandError = async (output, context) => {
@@ -3275,10 +3027,9 @@ const de_GetBackupSelectionCommandError = async (output, context) => {
3275
3027
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
3276
3028
  default:
3277
3029
  const parsedBody = parsedOutput.body;
3278
- throwDefaultError({
3030
+ return throwDefaultError({
3279
3031
  output,
3280
3032
  parsedBody,
3281
- exceptionCtor: __BaseException,
3282
3033
  errorCode,
3283
3034
  });
3284
3035
  }
@@ -3291,15 +3042,12 @@ export const de_GetBackupVaultAccessPolicyCommand = async (output, context) => {
3291
3042
  $metadata: deserializeMetadata(output),
3292
3043
  });
3293
3044
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
3294
- if (data.BackupVaultArn != null) {
3295
- contents.BackupVaultArn = __expectString(data.BackupVaultArn);
3296
- }
3297
- if (data.BackupVaultName != null) {
3298
- contents.BackupVaultName = __expectString(data.BackupVaultName);
3299
- }
3300
- if (data.Policy != null) {
3301
- contents.Policy = __expectString(data.Policy);
3302
- }
3045
+ const doc = take(data, {
3046
+ BackupVaultArn: __expectString,
3047
+ BackupVaultName: __expectString,
3048
+ Policy: __expectString,
3049
+ });
3050
+ Object.assign(contents, doc);
3303
3051
  return contents;
3304
3052
  };
3305
3053
  const de_GetBackupVaultAccessPolicyCommandError = async (output, context) => {
@@ -3323,10 +3071,9 @@ const de_GetBackupVaultAccessPolicyCommandError = async (output, context) => {
3323
3071
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
3324
3072
  default:
3325
3073
  const parsedBody = parsedOutput.body;
3326
- throwDefaultError({
3074
+ return throwDefaultError({
3327
3075
  output,
3328
3076
  parsedBody,
3329
- exceptionCtor: __BaseException,
3330
3077
  errorCode,
3331
3078
  });
3332
3079
  }
@@ -3339,18 +3086,13 @@ export const de_GetBackupVaultNotificationsCommand = async (output, context) =>
3339
3086
  $metadata: deserializeMetadata(output),
3340
3087
  });
3341
3088
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
3342
- if (data.BackupVaultArn != null) {
3343
- contents.BackupVaultArn = __expectString(data.BackupVaultArn);
3344
- }
3345
- if (data.BackupVaultEvents != null) {
3346
- contents.BackupVaultEvents = de_BackupVaultEvents(data.BackupVaultEvents, context);
3347
- }
3348
- if (data.BackupVaultName != null) {
3349
- contents.BackupVaultName = __expectString(data.BackupVaultName);
3350
- }
3351
- if (data.SNSTopicArn != null) {
3352
- contents.SNSTopicArn = __expectString(data.SNSTopicArn);
3353
- }
3089
+ const doc = take(data, {
3090
+ BackupVaultArn: __expectString,
3091
+ BackupVaultEvents: _json,
3092
+ BackupVaultName: __expectString,
3093
+ SNSTopicArn: __expectString,
3094
+ });
3095
+ Object.assign(contents, doc);
3354
3096
  return contents;
3355
3097
  };
3356
3098
  const de_GetBackupVaultNotificationsCommandError = async (output, context) => {
@@ -3374,10 +3116,9 @@ const de_GetBackupVaultNotificationsCommandError = async (output, context) => {
3374
3116
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
3375
3117
  default:
3376
3118
  const parsedBody = parsedOutput.body;
3377
- throwDefaultError({
3119
+ return throwDefaultError({
3378
3120
  output,
3379
3121
  parsedBody,
3380
- exceptionCtor: __BaseException,
3381
3122
  errorCode,
3382
3123
  });
3383
3124
  }
@@ -3390,36 +3131,19 @@ export const de_GetLegalHoldCommand = async (output, context) => {
3390
3131
  $metadata: deserializeMetadata(output),
3391
3132
  });
3392
3133
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
3393
- if (data.CancelDescription != null) {
3394
- contents.CancelDescription = __expectString(data.CancelDescription);
3395
- }
3396
- if (data.CancellationDate != null) {
3397
- contents.CancellationDate = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.CancellationDate)));
3398
- }
3399
- if (data.CreationDate != null) {
3400
- contents.CreationDate = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.CreationDate)));
3401
- }
3402
- if (data.Description != null) {
3403
- contents.Description = __expectString(data.Description);
3404
- }
3405
- if (data.LegalHoldArn != null) {
3406
- contents.LegalHoldArn = __expectString(data.LegalHoldArn);
3407
- }
3408
- if (data.LegalHoldId != null) {
3409
- contents.LegalHoldId = __expectString(data.LegalHoldId);
3410
- }
3411
- if (data.RecoveryPointSelection != null) {
3412
- contents.RecoveryPointSelection = de_RecoveryPointSelection(data.RecoveryPointSelection, context);
3413
- }
3414
- if (data.RetainRecordUntil != null) {
3415
- contents.RetainRecordUntil = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.RetainRecordUntil)));
3416
- }
3417
- if (data.Status != null) {
3418
- contents.Status = __expectString(data.Status);
3419
- }
3420
- if (data.Title != null) {
3421
- contents.Title = __expectString(data.Title);
3422
- }
3134
+ const doc = take(data, {
3135
+ CancelDescription: __expectString,
3136
+ CancellationDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
3137
+ CreationDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
3138
+ Description: __expectString,
3139
+ LegalHoldArn: __expectString,
3140
+ LegalHoldId: __expectString,
3141
+ RecoveryPointSelection: (_) => de_RecoveryPointSelection(_, context),
3142
+ RetainRecordUntil: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
3143
+ Status: __expectString,
3144
+ Title: __expectString,
3145
+ });
3146
+ Object.assign(contents, doc);
3423
3147
  return contents;
3424
3148
  };
3425
3149
  const de_GetLegalHoldCommandError = async (output, context) => {
@@ -3443,10 +3167,9 @@ const de_GetLegalHoldCommandError = async (output, context) => {
3443
3167
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
3444
3168
  default:
3445
3169
  const parsedBody = parsedOutput.body;
3446
- throwDefaultError({
3170
+ return throwDefaultError({
3447
3171
  output,
3448
3172
  parsedBody,
3449
- exceptionCtor: __BaseException,
3450
3173
  errorCode,
3451
3174
  });
3452
3175
  }
@@ -3459,15 +3182,12 @@ export const de_GetRecoveryPointRestoreMetadataCommand = async (output, context)
3459
3182
  $metadata: deserializeMetadata(output),
3460
3183
  });
3461
3184
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
3462
- if (data.BackupVaultArn != null) {
3463
- contents.BackupVaultArn = __expectString(data.BackupVaultArn);
3464
- }
3465
- if (data.RecoveryPointArn != null) {
3466
- contents.RecoveryPointArn = __expectString(data.RecoveryPointArn);
3467
- }
3468
- if (data.RestoreMetadata != null) {
3469
- contents.RestoreMetadata = de_Metadata(data.RestoreMetadata, context);
3470
- }
3185
+ const doc = take(data, {
3186
+ BackupVaultArn: __expectString,
3187
+ RecoveryPointArn: __expectString,
3188
+ RestoreMetadata: _json,
3189
+ });
3190
+ Object.assign(contents, doc);
3471
3191
  return contents;
3472
3192
  };
3473
3193
  const de_GetRecoveryPointRestoreMetadataCommandError = async (output, context) => {
@@ -3491,10 +3211,9 @@ const de_GetRecoveryPointRestoreMetadataCommandError = async (output, context) =
3491
3211
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
3492
3212
  default:
3493
3213
  const parsedBody = parsedOutput.body;
3494
- throwDefaultError({
3214
+ return throwDefaultError({
3495
3215
  output,
3496
3216
  parsedBody,
3497
- exceptionCtor: __BaseException,
3498
3217
  errorCode,
3499
3218
  });
3500
3219
  }
@@ -3507,9 +3226,10 @@ export const de_GetSupportedResourceTypesCommand = async (output, context) => {
3507
3226
  $metadata: deserializeMetadata(output),
3508
3227
  });
3509
3228
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
3510
- if (data.ResourceTypes != null) {
3511
- contents.ResourceTypes = de_ResourceTypes(data.ResourceTypes, context);
3512
- }
3229
+ const doc = take(data, {
3230
+ ResourceTypes: _json,
3231
+ });
3232
+ Object.assign(contents, doc);
3513
3233
  return contents;
3514
3234
  };
3515
3235
  const de_GetSupportedResourceTypesCommandError = async (output, context) => {
@@ -3524,10 +3244,9 @@ const de_GetSupportedResourceTypesCommandError = async (output, context) => {
3524
3244
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
3525
3245
  default:
3526
3246
  const parsedBody = parsedOutput.body;
3527
- throwDefaultError({
3247
+ return throwDefaultError({
3528
3248
  output,
3529
3249
  parsedBody,
3530
- exceptionCtor: __BaseException,
3531
3250
  errorCode,
3532
3251
  });
3533
3252
  }
@@ -3540,12 +3259,11 @@ export const de_ListBackupJobsCommand = async (output, context) => {
3540
3259
  $metadata: deserializeMetadata(output),
3541
3260
  });
3542
3261
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
3543
- if (data.BackupJobs != null) {
3544
- contents.BackupJobs = de_BackupJobsList(data.BackupJobs, context);
3545
- }
3546
- if (data.NextToken != null) {
3547
- contents.NextToken = __expectString(data.NextToken);
3548
- }
3262
+ const doc = take(data, {
3263
+ BackupJobs: (_) => de_BackupJobsList(_, context),
3264
+ NextToken: __expectString,
3265
+ });
3266
+ Object.assign(contents, doc);
3549
3267
  return contents;
3550
3268
  };
3551
3269
  const de_ListBackupJobsCommandError = async (output, context) => {
@@ -3563,10 +3281,9 @@ const de_ListBackupJobsCommandError = async (output, context) => {
3563
3281
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
3564
3282
  default:
3565
3283
  const parsedBody = parsedOutput.body;
3566
- throwDefaultError({
3284
+ return throwDefaultError({
3567
3285
  output,
3568
3286
  parsedBody,
3569
- exceptionCtor: __BaseException,
3570
3287
  errorCode,
3571
3288
  });
3572
3289
  }
@@ -3579,12 +3296,11 @@ export const de_ListBackupPlansCommand = async (output, context) => {
3579
3296
  $metadata: deserializeMetadata(output),
3580
3297
  });
3581
3298
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
3582
- if (data.BackupPlansList != null) {
3583
- contents.BackupPlansList = de_BackupPlansList(data.BackupPlansList, context);
3584
- }
3585
- if (data.NextToken != null) {
3586
- contents.NextToken = __expectString(data.NextToken);
3587
- }
3299
+ const doc = take(data, {
3300
+ BackupPlansList: (_) => de_BackupPlansList(_, context),
3301
+ NextToken: __expectString,
3302
+ });
3303
+ Object.assign(contents, doc);
3588
3304
  return contents;
3589
3305
  };
3590
3306
  const de_ListBackupPlansCommandError = async (output, context) => {
@@ -3608,10 +3324,9 @@ const de_ListBackupPlansCommandError = async (output, context) => {
3608
3324
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
3609
3325
  default:
3610
3326
  const parsedBody = parsedOutput.body;
3611
- throwDefaultError({
3327
+ return throwDefaultError({
3612
3328
  output,
3613
3329
  parsedBody,
3614
- exceptionCtor: __BaseException,
3615
3330
  errorCode,
3616
3331
  });
3617
3332
  }
@@ -3624,12 +3339,11 @@ export const de_ListBackupPlanTemplatesCommand = async (output, context) => {
3624
3339
  $metadata: deserializeMetadata(output),
3625
3340
  });
3626
3341
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
3627
- if (data.BackupPlanTemplatesList != null) {
3628
- contents.BackupPlanTemplatesList = de_BackupPlanTemplatesList(data.BackupPlanTemplatesList, context);
3629
- }
3630
- if (data.NextToken != null) {
3631
- contents.NextToken = __expectString(data.NextToken);
3632
- }
3342
+ const doc = take(data, {
3343
+ BackupPlanTemplatesList: _json,
3344
+ NextToken: __expectString,
3345
+ });
3346
+ Object.assign(contents, doc);
3633
3347
  return contents;
3634
3348
  };
3635
3349
  const de_ListBackupPlanTemplatesCommandError = async (output, context) => {
@@ -3653,10 +3367,9 @@ const de_ListBackupPlanTemplatesCommandError = async (output, context) => {
3653
3367
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
3654
3368
  default:
3655
3369
  const parsedBody = parsedOutput.body;
3656
- throwDefaultError({
3370
+ return throwDefaultError({
3657
3371
  output,
3658
3372
  parsedBody,
3659
- exceptionCtor: __BaseException,
3660
3373
  errorCode,
3661
3374
  });
3662
3375
  }
@@ -3669,12 +3382,11 @@ export const de_ListBackupPlanVersionsCommand = async (output, context) => {
3669
3382
  $metadata: deserializeMetadata(output),
3670
3383
  });
3671
3384
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
3672
- if (data.BackupPlanVersionsList != null) {
3673
- contents.BackupPlanVersionsList = de_BackupPlanVersionsList(data.BackupPlanVersionsList, context);
3674
- }
3675
- if (data.NextToken != null) {
3676
- contents.NextToken = __expectString(data.NextToken);
3677
- }
3385
+ const doc = take(data, {
3386
+ BackupPlanVersionsList: (_) => de_BackupPlanVersionsList(_, context),
3387
+ NextToken: __expectString,
3388
+ });
3389
+ Object.assign(contents, doc);
3678
3390
  return contents;
3679
3391
  };
3680
3392
  const de_ListBackupPlanVersionsCommandError = async (output, context) => {
@@ -3698,10 +3410,9 @@ const de_ListBackupPlanVersionsCommandError = async (output, context) => {
3698
3410
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
3699
3411
  default:
3700
3412
  const parsedBody = parsedOutput.body;
3701
- throwDefaultError({
3413
+ return throwDefaultError({
3702
3414
  output,
3703
3415
  parsedBody,
3704
- exceptionCtor: __BaseException,
3705
3416
  errorCode,
3706
3417
  });
3707
3418
  }
@@ -3714,12 +3425,11 @@ export const de_ListBackupSelectionsCommand = async (output, context) => {
3714
3425
  $metadata: deserializeMetadata(output),
3715
3426
  });
3716
3427
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
3717
- if (data.BackupSelectionsList != null) {
3718
- contents.BackupSelectionsList = de_BackupSelectionsList(data.BackupSelectionsList, context);
3719
- }
3720
- if (data.NextToken != null) {
3721
- contents.NextToken = __expectString(data.NextToken);
3722
- }
3428
+ const doc = take(data, {
3429
+ BackupSelectionsList: (_) => de_BackupSelectionsList(_, context),
3430
+ NextToken: __expectString,
3431
+ });
3432
+ Object.assign(contents, doc);
3723
3433
  return contents;
3724
3434
  };
3725
3435
  const de_ListBackupSelectionsCommandError = async (output, context) => {
@@ -3743,10 +3453,9 @@ const de_ListBackupSelectionsCommandError = async (output, context) => {
3743
3453
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
3744
3454
  default:
3745
3455
  const parsedBody = parsedOutput.body;
3746
- throwDefaultError({
3456
+ return throwDefaultError({
3747
3457
  output,
3748
3458
  parsedBody,
3749
- exceptionCtor: __BaseException,
3750
3459
  errorCode,
3751
3460
  });
3752
3461
  }
@@ -3759,12 +3468,11 @@ export const de_ListBackupVaultsCommand = async (output, context) => {
3759
3468
  $metadata: deserializeMetadata(output),
3760
3469
  });
3761
3470
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
3762
- if (data.BackupVaultList != null) {
3763
- contents.BackupVaultList = de_BackupVaultList(data.BackupVaultList, context);
3764
- }
3765
- if (data.NextToken != null) {
3766
- contents.NextToken = __expectString(data.NextToken);
3767
- }
3471
+ const doc = take(data, {
3472
+ BackupVaultList: (_) => de_BackupVaultList(_, context),
3473
+ NextToken: __expectString,
3474
+ });
3475
+ Object.assign(contents, doc);
3768
3476
  return contents;
3769
3477
  };
3770
3478
  const de_ListBackupVaultsCommandError = async (output, context) => {
@@ -3788,10 +3496,9 @@ const de_ListBackupVaultsCommandError = async (output, context) => {
3788
3496
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
3789
3497
  default:
3790
3498
  const parsedBody = parsedOutput.body;
3791
- throwDefaultError({
3499
+ return throwDefaultError({
3792
3500
  output,
3793
3501
  parsedBody,
3794
- exceptionCtor: __BaseException,
3795
3502
  errorCode,
3796
3503
  });
3797
3504
  }
@@ -3804,12 +3511,11 @@ export const de_ListCopyJobsCommand = async (output, context) => {
3804
3511
  $metadata: deserializeMetadata(output),
3805
3512
  });
3806
3513
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
3807
- if (data.CopyJobs != null) {
3808
- contents.CopyJobs = de_CopyJobsList(data.CopyJobs, context);
3809
- }
3810
- if (data.NextToken != null) {
3811
- contents.NextToken = __expectString(data.NextToken);
3812
- }
3514
+ const doc = take(data, {
3515
+ CopyJobs: (_) => de_CopyJobsList(_, context),
3516
+ NextToken: __expectString,
3517
+ });
3518
+ Object.assign(contents, doc);
3813
3519
  return contents;
3814
3520
  };
3815
3521
  const de_ListCopyJobsCommandError = async (output, context) => {
@@ -3827,10 +3533,9 @@ const de_ListCopyJobsCommandError = async (output, context) => {
3827
3533
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
3828
3534
  default:
3829
3535
  const parsedBody = parsedOutput.body;
3830
- throwDefaultError({
3536
+ return throwDefaultError({
3831
3537
  output,
3832
3538
  parsedBody,
3833
- exceptionCtor: __BaseException,
3834
3539
  errorCode,
3835
3540
  });
3836
3541
  }
@@ -3843,12 +3548,11 @@ export const de_ListFrameworksCommand = async (output, context) => {
3843
3548
  $metadata: deserializeMetadata(output),
3844
3549
  });
3845
3550
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
3846
- if (data.Frameworks != null) {
3847
- contents.Frameworks = de_FrameworkList(data.Frameworks, context);
3848
- }
3849
- if (data.NextToken != null) {
3850
- contents.NextToken = __expectString(data.NextToken);
3851
- }
3551
+ const doc = take(data, {
3552
+ Frameworks: (_) => de_FrameworkList(_, context),
3553
+ NextToken: __expectString,
3554
+ });
3555
+ Object.assign(contents, doc);
3852
3556
  return contents;
3853
3557
  };
3854
3558
  const de_ListFrameworksCommandError = async (output, context) => {
@@ -3866,10 +3570,9 @@ const de_ListFrameworksCommandError = async (output, context) => {
3866
3570
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
3867
3571
  default:
3868
3572
  const parsedBody = parsedOutput.body;
3869
- throwDefaultError({
3573
+ return throwDefaultError({
3870
3574
  output,
3871
3575
  parsedBody,
3872
- exceptionCtor: __BaseException,
3873
3576
  errorCode,
3874
3577
  });
3875
3578
  }
@@ -3882,12 +3585,11 @@ export const de_ListLegalHoldsCommand = async (output, context) => {
3882
3585
  $metadata: deserializeMetadata(output),
3883
3586
  });
3884
3587
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
3885
- if (data.LegalHolds != null) {
3886
- contents.LegalHolds = de_LegalHoldsList(data.LegalHolds, context);
3887
- }
3888
- if (data.NextToken != null) {
3889
- contents.NextToken = __expectString(data.NextToken);
3890
- }
3588
+ const doc = take(data, {
3589
+ LegalHolds: (_) => de_LegalHoldsList(_, context),
3590
+ NextToken: __expectString,
3591
+ });
3592
+ Object.assign(contents, doc);
3891
3593
  return contents;
3892
3594
  };
3893
3595
  const de_ListLegalHoldsCommandError = async (output, context) => {
@@ -3905,10 +3607,9 @@ const de_ListLegalHoldsCommandError = async (output, context) => {
3905
3607
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
3906
3608
  default:
3907
3609
  const parsedBody = parsedOutput.body;
3908
- throwDefaultError({
3610
+ return throwDefaultError({
3909
3611
  output,
3910
3612
  parsedBody,
3911
- exceptionCtor: __BaseException,
3912
3613
  errorCode,
3913
3614
  });
3914
3615
  }
@@ -3921,12 +3622,11 @@ export const de_ListProtectedResourcesCommand = async (output, context) => {
3921
3622
  $metadata: deserializeMetadata(output),
3922
3623
  });
3923
3624
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
3924
- if (data.NextToken != null) {
3925
- contents.NextToken = __expectString(data.NextToken);
3926
- }
3927
- if (data.Results != null) {
3928
- contents.Results = de_ProtectedResourcesList(data.Results, context);
3929
- }
3625
+ const doc = take(data, {
3626
+ NextToken: __expectString,
3627
+ Results: (_) => de_ProtectedResourcesList(_, context),
3628
+ });
3629
+ Object.assign(contents, doc);
3930
3630
  return contents;
3931
3631
  };
3932
3632
  const de_ListProtectedResourcesCommandError = async (output, context) => {
@@ -3944,10 +3644,9 @@ const de_ListProtectedResourcesCommandError = async (output, context) => {
3944
3644
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
3945
3645
  default:
3946
3646
  const parsedBody = parsedOutput.body;
3947
- throwDefaultError({
3647
+ return throwDefaultError({
3948
3648
  output,
3949
3649
  parsedBody,
3950
- exceptionCtor: __BaseException,
3951
3650
  errorCode,
3952
3651
  });
3953
3652
  }
@@ -3960,12 +3659,11 @@ export const de_ListRecoveryPointsByBackupVaultCommand = async (output, context)
3960
3659
  $metadata: deserializeMetadata(output),
3961
3660
  });
3962
3661
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
3963
- if (data.NextToken != null) {
3964
- contents.NextToken = __expectString(data.NextToken);
3965
- }
3966
- if (data.RecoveryPoints != null) {
3967
- contents.RecoveryPoints = de_RecoveryPointByBackupVaultList(data.RecoveryPoints, context);
3968
- }
3662
+ const doc = take(data, {
3663
+ NextToken: __expectString,
3664
+ RecoveryPoints: (_) => de_RecoveryPointByBackupVaultList(_, context),
3665
+ });
3666
+ Object.assign(contents, doc);
3969
3667
  return contents;
3970
3668
  };
3971
3669
  const de_ListRecoveryPointsByBackupVaultCommandError = async (output, context) => {
@@ -3989,10 +3687,9 @@ const de_ListRecoveryPointsByBackupVaultCommandError = async (output, context) =
3989
3687
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
3990
3688
  default:
3991
3689
  const parsedBody = parsedOutput.body;
3992
- throwDefaultError({
3690
+ return throwDefaultError({
3993
3691
  output,
3994
3692
  parsedBody,
3995
- exceptionCtor: __BaseException,
3996
3693
  errorCode,
3997
3694
  });
3998
3695
  }
@@ -4005,12 +3702,11 @@ export const de_ListRecoveryPointsByLegalHoldCommand = async (output, context) =
4005
3702
  $metadata: deserializeMetadata(output),
4006
3703
  });
4007
3704
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
4008
- if (data.NextToken != null) {
4009
- contents.NextToken = __expectString(data.NextToken);
4010
- }
4011
- if (data.RecoveryPoints != null) {
4012
- contents.RecoveryPoints = de_RecoveryPointsList(data.RecoveryPoints, context);
4013
- }
3705
+ const doc = take(data, {
3706
+ NextToken: __expectString,
3707
+ RecoveryPoints: _json,
3708
+ });
3709
+ Object.assign(contents, doc);
4014
3710
  return contents;
4015
3711
  };
4016
3712
  const de_ListRecoveryPointsByLegalHoldCommandError = async (output, context) => {
@@ -4031,10 +3727,9 @@ const de_ListRecoveryPointsByLegalHoldCommandError = async (output, context) =>
4031
3727
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
4032
3728
  default:
4033
3729
  const parsedBody = parsedOutput.body;
4034
- throwDefaultError({
3730
+ return throwDefaultError({
4035
3731
  output,
4036
3732
  parsedBody,
4037
- exceptionCtor: __BaseException,
4038
3733
  errorCode,
4039
3734
  });
4040
3735
  }
@@ -4047,12 +3742,11 @@ export const de_ListRecoveryPointsByResourceCommand = async (output, context) =>
4047
3742
  $metadata: deserializeMetadata(output),
4048
3743
  });
4049
3744
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
4050
- if (data.NextToken != null) {
4051
- contents.NextToken = __expectString(data.NextToken);
4052
- }
4053
- if (data.RecoveryPoints != null) {
4054
- contents.RecoveryPoints = de_RecoveryPointByResourceList(data.RecoveryPoints, context);
4055
- }
3745
+ const doc = take(data, {
3746
+ NextToken: __expectString,
3747
+ RecoveryPoints: (_) => de_RecoveryPointByResourceList(_, context),
3748
+ });
3749
+ Object.assign(contents, doc);
4056
3750
  return contents;
4057
3751
  };
4058
3752
  const de_ListRecoveryPointsByResourceCommandError = async (output, context) => {
@@ -4076,10 +3770,9 @@ const de_ListRecoveryPointsByResourceCommandError = async (output, context) => {
4076
3770
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
4077
3771
  default:
4078
3772
  const parsedBody = parsedOutput.body;
4079
- throwDefaultError({
3773
+ return throwDefaultError({
4080
3774
  output,
4081
3775
  parsedBody,
4082
- exceptionCtor: __BaseException,
4083
3776
  errorCode,
4084
3777
  });
4085
3778
  }
@@ -4092,12 +3785,11 @@ export const de_ListReportJobsCommand = async (output, context) => {
4092
3785
  $metadata: deserializeMetadata(output),
4093
3786
  });
4094
3787
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
4095
- if (data.NextToken != null) {
4096
- contents.NextToken = __expectString(data.NextToken);
4097
- }
4098
- if (data.ReportJobs != null) {
4099
- contents.ReportJobs = de_ReportJobList(data.ReportJobs, context);
4100
- }
3788
+ const doc = take(data, {
3789
+ NextToken: __expectString,
3790
+ ReportJobs: (_) => de_ReportJobList(_, context),
3791
+ });
3792
+ Object.assign(contents, doc);
4101
3793
  return contents;
4102
3794
  };
4103
3795
  const de_ListReportJobsCommandError = async (output, context) => {
@@ -4118,10 +3810,9 @@ const de_ListReportJobsCommandError = async (output, context) => {
4118
3810
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
4119
3811
  default:
4120
3812
  const parsedBody = parsedOutput.body;
4121
- throwDefaultError({
3813
+ return throwDefaultError({
4122
3814
  output,
4123
3815
  parsedBody,
4124
- exceptionCtor: __BaseException,
4125
3816
  errorCode,
4126
3817
  });
4127
3818
  }
@@ -4134,12 +3825,11 @@ export const de_ListReportPlansCommand = async (output, context) => {
4134
3825
  $metadata: deserializeMetadata(output),
4135
3826
  });
4136
3827
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
4137
- if (data.NextToken != null) {
4138
- contents.NextToken = __expectString(data.NextToken);
4139
- }
4140
- if (data.ReportPlans != null) {
4141
- contents.ReportPlans = de_ReportPlanList(data.ReportPlans, context);
4142
- }
3828
+ const doc = take(data, {
3829
+ NextToken: __expectString,
3830
+ ReportPlans: (_) => de_ReportPlanList(_, context),
3831
+ });
3832
+ Object.assign(contents, doc);
4143
3833
  return contents;
4144
3834
  };
4145
3835
  const de_ListReportPlansCommandError = async (output, context) => {
@@ -4157,10 +3847,9 @@ const de_ListReportPlansCommandError = async (output, context) => {
4157
3847
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
4158
3848
  default:
4159
3849
  const parsedBody = parsedOutput.body;
4160
- throwDefaultError({
3850
+ return throwDefaultError({
4161
3851
  output,
4162
3852
  parsedBody,
4163
- exceptionCtor: __BaseException,
4164
3853
  errorCode,
4165
3854
  });
4166
3855
  }
@@ -4173,12 +3862,11 @@ export const de_ListRestoreJobsCommand = async (output, context) => {
4173
3862
  $metadata: deserializeMetadata(output),
4174
3863
  });
4175
3864
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
4176
- if (data.NextToken != null) {
4177
- contents.NextToken = __expectString(data.NextToken);
4178
- }
4179
- if (data.RestoreJobs != null) {
4180
- contents.RestoreJobs = de_RestoreJobsList(data.RestoreJobs, context);
4181
- }
3865
+ const doc = take(data, {
3866
+ NextToken: __expectString,
3867
+ RestoreJobs: (_) => de_RestoreJobsList(_, context),
3868
+ });
3869
+ Object.assign(contents, doc);
4182
3870
  return contents;
4183
3871
  };
4184
3872
  const de_ListRestoreJobsCommandError = async (output, context) => {
@@ -4202,10 +3890,9 @@ const de_ListRestoreJobsCommandError = async (output, context) => {
4202
3890
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
4203
3891
  default:
4204
3892
  const parsedBody = parsedOutput.body;
4205
- throwDefaultError({
3893
+ return throwDefaultError({
4206
3894
  output,
4207
3895
  parsedBody,
4208
- exceptionCtor: __BaseException,
4209
3896
  errorCode,
4210
3897
  });
4211
3898
  }
@@ -4218,12 +3905,11 @@ export const de_ListTagsCommand = async (output, context) => {
4218
3905
  $metadata: deserializeMetadata(output),
4219
3906
  });
4220
3907
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
4221
- if (data.NextToken != null) {
4222
- contents.NextToken = __expectString(data.NextToken);
4223
- }
4224
- if (data.Tags != null) {
4225
- contents.Tags = de_Tags(data.Tags, context);
4226
- }
3908
+ const doc = take(data, {
3909
+ NextToken: __expectString,
3910
+ Tags: _json,
3911
+ });
3912
+ Object.assign(contents, doc);
4227
3913
  return contents;
4228
3914
  };
4229
3915
  const de_ListTagsCommandError = async (output, context) => {
@@ -4247,10 +3933,9 @@ const de_ListTagsCommandError = async (output, context) => {
4247
3933
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
4248
3934
  default:
4249
3935
  const parsedBody = parsedOutput.body;
4250
- throwDefaultError({
3936
+ return throwDefaultError({
4251
3937
  output,
4252
3938
  parsedBody,
4253
- exceptionCtor: __BaseException,
4254
3939
  errorCode,
4255
3940
  });
4256
3941
  }
@@ -4286,10 +3971,9 @@ const de_PutBackupVaultAccessPolicyCommandError = async (output, context) => {
4286
3971
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
4287
3972
  default:
4288
3973
  const parsedBody = parsedOutput.body;
4289
- throwDefaultError({
3974
+ return throwDefaultError({
4290
3975
  output,
4291
3976
  parsedBody,
4292
- exceptionCtor: __BaseException,
4293
3977
  errorCode,
4294
3978
  });
4295
3979
  }
@@ -4328,10 +4012,9 @@ const de_PutBackupVaultLockConfigurationCommandError = async (output, context) =
4328
4012
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
4329
4013
  default:
4330
4014
  const parsedBody = parsedOutput.body;
4331
- throwDefaultError({
4015
+ return throwDefaultError({
4332
4016
  output,
4333
4017
  parsedBody,
4334
- exceptionCtor: __BaseException,
4335
4018
  errorCode,
4336
4019
  });
4337
4020
  }
@@ -4367,10 +4050,9 @@ const de_PutBackupVaultNotificationsCommandError = async (output, context) => {
4367
4050
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
4368
4051
  default:
4369
4052
  const parsedBody = parsedOutput.body;
4370
- throwDefaultError({
4053
+ return throwDefaultError({
4371
4054
  output,
4372
4055
  parsedBody,
4373
- exceptionCtor: __BaseException,
4374
4056
  errorCode,
4375
4057
  });
4376
4058
  }
@@ -4383,18 +4065,13 @@ export const de_StartBackupJobCommand = async (output, context) => {
4383
4065
  $metadata: deserializeMetadata(output),
4384
4066
  });
4385
4067
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
4386
- if (data.BackupJobId != null) {
4387
- contents.BackupJobId = __expectString(data.BackupJobId);
4388
- }
4389
- if (data.CreationDate != null) {
4390
- contents.CreationDate = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.CreationDate)));
4391
- }
4392
- if (data.IsParent != null) {
4393
- contents.IsParent = __expectBoolean(data.IsParent);
4394
- }
4395
- if (data.RecoveryPointArn != null) {
4396
- contents.RecoveryPointArn = __expectString(data.RecoveryPointArn);
4397
- }
4068
+ const doc = take(data, {
4069
+ BackupJobId: __expectString,
4070
+ CreationDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
4071
+ IsParent: __expectBoolean,
4072
+ RecoveryPointArn: __expectString,
4073
+ });
4074
+ Object.assign(contents, doc);
4398
4075
  return contents;
4399
4076
  };
4400
4077
  const de_StartBackupJobCommandError = async (output, context) => {
@@ -4424,10 +4101,9 @@ const de_StartBackupJobCommandError = async (output, context) => {
4424
4101
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
4425
4102
  default:
4426
4103
  const parsedBody = parsedOutput.body;
4427
- throwDefaultError({
4104
+ return throwDefaultError({
4428
4105
  output,
4429
4106
  parsedBody,
4430
- exceptionCtor: __BaseException,
4431
4107
  errorCode,
4432
4108
  });
4433
4109
  }
@@ -4440,15 +4116,12 @@ export const de_StartCopyJobCommand = async (output, context) => {
4440
4116
  $metadata: deserializeMetadata(output),
4441
4117
  });
4442
4118
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
4443
- if (data.CopyJobId != null) {
4444
- contents.CopyJobId = __expectString(data.CopyJobId);
4445
- }
4446
- if (data.CreationDate != null) {
4447
- contents.CreationDate = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.CreationDate)));
4448
- }
4449
- if (data.IsParent != null) {
4450
- contents.IsParent = __expectBoolean(data.IsParent);
4451
- }
4119
+ const doc = take(data, {
4120
+ CopyJobId: __expectString,
4121
+ CreationDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
4122
+ IsParent: __expectBoolean,
4123
+ });
4124
+ Object.assign(contents, doc);
4452
4125
  return contents;
4453
4126
  };
4454
4127
  const de_StartCopyJobCommandError = async (output, context) => {
@@ -4478,10 +4151,9 @@ const de_StartCopyJobCommandError = async (output, context) => {
4478
4151
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
4479
4152
  default:
4480
4153
  const parsedBody = parsedOutput.body;
4481
- throwDefaultError({
4154
+ return throwDefaultError({
4482
4155
  output,
4483
4156
  parsedBody,
4484
- exceptionCtor: __BaseException,
4485
4157
  errorCode,
4486
4158
  });
4487
4159
  }
@@ -4494,9 +4166,10 @@ export const de_StartReportJobCommand = async (output, context) => {
4494
4166
  $metadata: deserializeMetadata(output),
4495
4167
  });
4496
4168
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
4497
- if (data.ReportJobId != null) {
4498
- contents.ReportJobId = __expectString(data.ReportJobId);
4499
- }
4169
+ const doc = take(data, {
4170
+ ReportJobId: __expectString,
4171
+ });
4172
+ Object.assign(contents, doc);
4500
4173
  return contents;
4501
4174
  };
4502
4175
  const de_StartReportJobCommandError = async (output, context) => {
@@ -4520,10 +4193,9 @@ const de_StartReportJobCommandError = async (output, context) => {
4520
4193
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
4521
4194
  default:
4522
4195
  const parsedBody = parsedOutput.body;
4523
- throwDefaultError({
4196
+ return throwDefaultError({
4524
4197
  output,
4525
4198
  parsedBody,
4526
- exceptionCtor: __BaseException,
4527
4199
  errorCode,
4528
4200
  });
4529
4201
  }
@@ -4536,9 +4208,10 @@ export const de_StartRestoreJobCommand = async (output, context) => {
4536
4208
  $metadata: deserializeMetadata(output),
4537
4209
  });
4538
4210
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
4539
- if (data.RestoreJobId != null) {
4540
- contents.RestoreJobId = __expectString(data.RestoreJobId);
4541
- }
4211
+ const doc = take(data, {
4212
+ RestoreJobId: __expectString,
4213
+ });
4214
+ Object.assign(contents, doc);
4542
4215
  return contents;
4543
4216
  };
4544
4217
  const de_StartRestoreJobCommandError = async (output, context) => {
@@ -4562,10 +4235,9 @@ const de_StartRestoreJobCommandError = async (output, context) => {
4562
4235
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
4563
4236
  default:
4564
4237
  const parsedBody = parsedOutput.body;
4565
- throwDefaultError({
4238
+ return throwDefaultError({
4566
4239
  output,
4567
4240
  parsedBody,
4568
- exceptionCtor: __BaseException,
4569
4241
  errorCode,
4570
4242
  });
4571
4243
  }
@@ -4604,10 +4276,9 @@ const de_StopBackupJobCommandError = async (output, context) => {
4604
4276
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
4605
4277
  default:
4606
4278
  const parsedBody = parsedOutput.body;
4607
- throwDefaultError({
4279
+ return throwDefaultError({
4608
4280
  output,
4609
4281
  parsedBody,
4610
- exceptionCtor: __BaseException,
4611
4282
  errorCode,
4612
4283
  });
4613
4284
  }
@@ -4646,10 +4317,9 @@ const de_TagResourceCommandError = async (output, context) => {
4646
4317
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
4647
4318
  default:
4648
4319
  const parsedBody = parsedOutput.body;
4649
- throwDefaultError({
4320
+ return throwDefaultError({
4650
4321
  output,
4651
4322
  parsedBody,
4652
- exceptionCtor: __BaseException,
4653
4323
  errorCode,
4654
4324
  });
4655
4325
  }
@@ -4685,10 +4355,9 @@ const de_UntagResourceCommandError = async (output, context) => {
4685
4355
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
4686
4356
  default:
4687
4357
  const parsedBody = parsedOutput.body;
4688
- throwDefaultError({
4358
+ return throwDefaultError({
4689
4359
  output,
4690
4360
  parsedBody,
4691
- exceptionCtor: __BaseException,
4692
4361
  errorCode,
4693
4362
  });
4694
4363
  }
@@ -4701,21 +4370,14 @@ export const de_UpdateBackupPlanCommand = async (output, context) => {
4701
4370
  $metadata: deserializeMetadata(output),
4702
4371
  });
4703
4372
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
4704
- if (data.AdvancedBackupSettings != null) {
4705
- contents.AdvancedBackupSettings = de_AdvancedBackupSettings(data.AdvancedBackupSettings, context);
4706
- }
4707
- if (data.BackupPlanArn != null) {
4708
- contents.BackupPlanArn = __expectString(data.BackupPlanArn);
4709
- }
4710
- if (data.BackupPlanId != null) {
4711
- contents.BackupPlanId = __expectString(data.BackupPlanId);
4712
- }
4713
- if (data.CreationDate != null) {
4714
- contents.CreationDate = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.CreationDate)));
4715
- }
4716
- if (data.VersionId != null) {
4717
- contents.VersionId = __expectString(data.VersionId);
4718
- }
4373
+ const doc = take(data, {
4374
+ AdvancedBackupSettings: _json,
4375
+ BackupPlanArn: __expectString,
4376
+ BackupPlanId: __expectString,
4377
+ CreationDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
4378
+ VersionId: __expectString,
4379
+ });
4380
+ Object.assign(contents, doc);
4719
4381
  return contents;
4720
4382
  };
4721
4383
  const de_UpdateBackupPlanCommandError = async (output, context) => {
@@ -4739,10 +4401,9 @@ const de_UpdateBackupPlanCommandError = async (output, context) => {
4739
4401
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
4740
4402
  default:
4741
4403
  const parsedBody = parsedOutput.body;
4742
- throwDefaultError({
4404
+ return throwDefaultError({
4743
4405
  output,
4744
4406
  parsedBody,
4745
- exceptionCtor: __BaseException,
4746
4407
  errorCode,
4747
4408
  });
4748
4409
  }
@@ -4755,15 +4416,12 @@ export const de_UpdateFrameworkCommand = async (output, context) => {
4755
4416
  $metadata: deserializeMetadata(output),
4756
4417
  });
4757
4418
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
4758
- if (data.CreationTime != null) {
4759
- contents.CreationTime = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.CreationTime)));
4760
- }
4761
- if (data.FrameworkArn != null) {
4762
- contents.FrameworkArn = __expectString(data.FrameworkArn);
4763
- }
4764
- if (data.FrameworkName != null) {
4765
- contents.FrameworkName = __expectString(data.FrameworkName);
4766
- }
4419
+ const doc = take(data, {
4420
+ CreationTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
4421
+ FrameworkArn: __expectString,
4422
+ FrameworkName: __expectString,
4423
+ });
4424
+ Object.assign(contents, doc);
4767
4425
  return contents;
4768
4426
  };
4769
4427
  const de_UpdateFrameworkCommandError = async (output, context) => {
@@ -4796,10 +4454,9 @@ const de_UpdateFrameworkCommandError = async (output, context) => {
4796
4454
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
4797
4455
  default:
4798
4456
  const parsedBody = parsedOutput.body;
4799
- throwDefaultError({
4457
+ return throwDefaultError({
4800
4458
  output,
4801
4459
  parsedBody,
4802
- exceptionCtor: __BaseException,
4803
4460
  errorCode,
4804
4461
  });
4805
4462
  }
@@ -4835,10 +4492,9 @@ const de_UpdateGlobalSettingsCommandError = async (output, context) => {
4835
4492
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
4836
4493
  default:
4837
4494
  const parsedBody = parsedOutput.body;
4838
- throwDefaultError({
4495
+ return throwDefaultError({
4839
4496
  output,
4840
4497
  parsedBody,
4841
- exceptionCtor: __BaseException,
4842
4498
  errorCode,
4843
4499
  });
4844
4500
  }
@@ -4851,18 +4507,13 @@ export const de_UpdateRecoveryPointLifecycleCommand = async (output, context) =>
4851
4507
  $metadata: deserializeMetadata(output),
4852
4508
  });
4853
4509
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
4854
- if (data.BackupVaultArn != null) {
4855
- contents.BackupVaultArn = __expectString(data.BackupVaultArn);
4856
- }
4857
- if (data.CalculatedLifecycle != null) {
4858
- contents.CalculatedLifecycle = de_CalculatedLifecycle(data.CalculatedLifecycle, context);
4859
- }
4860
- if (data.Lifecycle != null) {
4861
- contents.Lifecycle = de_Lifecycle(data.Lifecycle, context);
4862
- }
4863
- if (data.RecoveryPointArn != null) {
4864
- contents.RecoveryPointArn = __expectString(data.RecoveryPointArn);
4865
- }
4510
+ const doc = take(data, {
4511
+ BackupVaultArn: __expectString,
4512
+ CalculatedLifecycle: (_) => de_CalculatedLifecycle(_, context),
4513
+ Lifecycle: _json,
4514
+ RecoveryPointArn: __expectString,
4515
+ });
4516
+ Object.assign(contents, doc);
4866
4517
  return contents;
4867
4518
  };
4868
4519
  const de_UpdateRecoveryPointLifecycleCommandError = async (output, context) => {
@@ -4889,10 +4540,9 @@ const de_UpdateRecoveryPointLifecycleCommandError = async (output, context) => {
4889
4540
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
4890
4541
  default:
4891
4542
  const parsedBody = parsedOutput.body;
4892
- throwDefaultError({
4543
+ return throwDefaultError({
4893
4544
  output,
4894
4545
  parsedBody,
4895
- exceptionCtor: __BaseException,
4896
4546
  errorCode,
4897
4547
  });
4898
4548
  }
@@ -4925,10 +4575,9 @@ const de_UpdateRegionSettingsCommandError = async (output, context) => {
4925
4575
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
4926
4576
  default:
4927
4577
  const parsedBody = parsedOutput.body;
4928
- throwDefaultError({
4578
+ return throwDefaultError({
4929
4579
  output,
4930
4580
  parsedBody,
4931
- exceptionCtor: __BaseException,
4932
4581
  errorCode,
4933
4582
  });
4934
4583
  }
@@ -4941,15 +4590,12 @@ export const de_UpdateReportPlanCommand = async (output, context) => {
4941
4590
  $metadata: deserializeMetadata(output),
4942
4591
  });
4943
4592
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
4944
- if (data.CreationTime != null) {
4945
- contents.CreationTime = __expectNonNull(__parseEpochTimestamp(__expectNumber(data.CreationTime)));
4946
- }
4947
- if (data.ReportPlanArn != null) {
4948
- contents.ReportPlanArn = __expectString(data.ReportPlanArn);
4949
- }
4950
- if (data.ReportPlanName != null) {
4951
- contents.ReportPlanName = __expectString(data.ReportPlanName);
4952
- }
4593
+ const doc = take(data, {
4594
+ CreationTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
4595
+ ReportPlanArn: __expectString,
4596
+ ReportPlanName: __expectString,
4597
+ });
4598
+ Object.assign(contents, doc);
4953
4599
  return contents;
4954
4600
  };
4955
4601
  const de_UpdateReportPlanCommandError = async (output, context) => {
@@ -4976,36 +4622,26 @@ const de_UpdateReportPlanCommandError = async (output, context) => {
4976
4622
  throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);
4977
4623
  default:
4978
4624
  const parsedBody = parsedOutput.body;
4979
- throwDefaultError({
4625
+ return throwDefaultError({
4980
4626
  output,
4981
4627
  parsedBody,
4982
- exceptionCtor: __BaseException,
4983
4628
  errorCode,
4984
4629
  });
4985
4630
  }
4986
4631
  };
4987
- const map = __map;
4632
+ const throwDefaultError = withBaseException(__BaseException);
4988
4633
  const de_AlreadyExistsExceptionRes = async (parsedOutput, context) => {
4989
4634
  const contents = map({});
4990
4635
  const data = parsedOutput.body;
4991
- if (data.Arn != null) {
4992
- contents.Arn = __expectString(data.Arn);
4993
- }
4994
- if (data.Code != null) {
4995
- contents.Code = __expectString(data.Code);
4996
- }
4997
- if (data.Context != null) {
4998
- contents.Context = __expectString(data.Context);
4999
- }
5000
- if (data.CreatorRequestId != null) {
5001
- contents.CreatorRequestId = __expectString(data.CreatorRequestId);
5002
- }
5003
- if (data.Message != null) {
5004
- contents.Message = __expectString(data.Message);
5005
- }
5006
- if (data.Type != null) {
5007
- contents.Type = __expectString(data.Type);
5008
- }
4636
+ const doc = take(data, {
4637
+ Arn: __expectString,
4638
+ Code: __expectString,
4639
+ Context: __expectString,
4640
+ CreatorRequestId: __expectString,
4641
+ Message: __expectString,
4642
+ Type: __expectString,
4643
+ });
4644
+ Object.assign(contents, doc);
5009
4645
  const exception = new AlreadyExistsException({
5010
4646
  $metadata: deserializeMetadata(parsedOutput),
5011
4647
  ...contents,
@@ -5015,18 +4651,13 @@ const de_AlreadyExistsExceptionRes = async (parsedOutput, context) => {
5015
4651
  const de_ConflictExceptionRes = async (parsedOutput, context) => {
5016
4652
  const contents = map({});
5017
4653
  const data = parsedOutput.body;
5018
- if (data.Code != null) {
5019
- contents.Code = __expectString(data.Code);
5020
- }
5021
- if (data.Context != null) {
5022
- contents.Context = __expectString(data.Context);
5023
- }
5024
- if (data.Message != null) {
5025
- contents.Message = __expectString(data.Message);
5026
- }
5027
- if (data.Type != null) {
5028
- contents.Type = __expectString(data.Type);
5029
- }
4654
+ const doc = take(data, {
4655
+ Code: __expectString,
4656
+ Context: __expectString,
4657
+ Message: __expectString,
4658
+ Type: __expectString,
4659
+ });
4660
+ Object.assign(contents, doc);
5030
4661
  const exception = new ConflictException({
5031
4662
  $metadata: deserializeMetadata(parsedOutput),
5032
4663
  ...contents,
@@ -5036,18 +4667,13 @@ const de_ConflictExceptionRes = async (parsedOutput, context) => {
5036
4667
  const de_DependencyFailureExceptionRes = async (parsedOutput, context) => {
5037
4668
  const contents = map({});
5038
4669
  const data = parsedOutput.body;
5039
- if (data.Code != null) {
5040
- contents.Code = __expectString(data.Code);
5041
- }
5042
- if (data.Context != null) {
5043
- contents.Context = __expectString(data.Context);
5044
- }
5045
- if (data.Message != null) {
5046
- contents.Message = __expectString(data.Message);
5047
- }
5048
- if (data.Type != null) {
5049
- contents.Type = __expectString(data.Type);
5050
- }
4670
+ const doc = take(data, {
4671
+ Code: __expectString,
4672
+ Context: __expectString,
4673
+ Message: __expectString,
4674
+ Type: __expectString,
4675
+ });
4676
+ Object.assign(contents, doc);
5051
4677
  const exception = new DependencyFailureException({
5052
4678
  $metadata: deserializeMetadata(parsedOutput),
5053
4679
  ...contents,
@@ -5057,18 +4683,13 @@ const de_DependencyFailureExceptionRes = async (parsedOutput, context) => {
5057
4683
  const de_InvalidParameterValueExceptionRes = async (parsedOutput, context) => {
5058
4684
  const contents = map({});
5059
4685
  const data = parsedOutput.body;
5060
- if (data.Code != null) {
5061
- contents.Code = __expectString(data.Code);
5062
- }
5063
- if (data.Context != null) {
5064
- contents.Context = __expectString(data.Context);
5065
- }
5066
- if (data.Message != null) {
5067
- contents.Message = __expectString(data.Message);
5068
- }
5069
- if (data.Type != null) {
5070
- contents.Type = __expectString(data.Type);
5071
- }
4686
+ const doc = take(data, {
4687
+ Code: __expectString,
4688
+ Context: __expectString,
4689
+ Message: __expectString,
4690
+ Type: __expectString,
4691
+ });
4692
+ Object.assign(contents, doc);
5072
4693
  const exception = new InvalidParameterValueException({
5073
4694
  $metadata: deserializeMetadata(parsedOutput),
5074
4695
  ...contents,
@@ -5078,18 +4699,13 @@ const de_InvalidParameterValueExceptionRes = async (parsedOutput, context) => {
5078
4699
  const de_InvalidRequestExceptionRes = async (parsedOutput, context) => {
5079
4700
  const contents = map({});
5080
4701
  const data = parsedOutput.body;
5081
- if (data.Code != null) {
5082
- contents.Code = __expectString(data.Code);
5083
- }
5084
- if (data.Context != null) {
5085
- contents.Context = __expectString(data.Context);
5086
- }
5087
- if (data.Message != null) {
5088
- contents.Message = __expectString(data.Message);
5089
- }
5090
- if (data.Type != null) {
5091
- contents.Type = __expectString(data.Type);
5092
- }
4702
+ const doc = take(data, {
4703
+ Code: __expectString,
4704
+ Context: __expectString,
4705
+ Message: __expectString,
4706
+ Type: __expectString,
4707
+ });
4708
+ Object.assign(contents, doc);
5093
4709
  const exception = new InvalidRequestException({
5094
4710
  $metadata: deserializeMetadata(parsedOutput),
5095
4711
  ...contents,
@@ -5099,18 +4715,13 @@ const de_InvalidRequestExceptionRes = async (parsedOutput, context) => {
5099
4715
  const de_InvalidResourceStateExceptionRes = async (parsedOutput, context) => {
5100
4716
  const contents = map({});
5101
4717
  const data = parsedOutput.body;
5102
- if (data.Code != null) {
5103
- contents.Code = __expectString(data.Code);
5104
- }
5105
- if (data.Context != null) {
5106
- contents.Context = __expectString(data.Context);
5107
- }
5108
- if (data.Message != null) {
5109
- contents.Message = __expectString(data.Message);
5110
- }
5111
- if (data.Type != null) {
5112
- contents.Type = __expectString(data.Type);
5113
- }
4718
+ const doc = take(data, {
4719
+ Code: __expectString,
4720
+ Context: __expectString,
4721
+ Message: __expectString,
4722
+ Type: __expectString,
4723
+ });
4724
+ Object.assign(contents, doc);
5114
4725
  const exception = new InvalidResourceStateException({
5115
4726
  $metadata: deserializeMetadata(parsedOutput),
5116
4727
  ...contents,
@@ -5120,18 +4731,13 @@ const de_InvalidResourceStateExceptionRes = async (parsedOutput, context) => {
5120
4731
  const de_LimitExceededExceptionRes = async (parsedOutput, context) => {
5121
4732
  const contents = map({});
5122
4733
  const data = parsedOutput.body;
5123
- if (data.Code != null) {
5124
- contents.Code = __expectString(data.Code);
5125
- }
5126
- if (data.Context != null) {
5127
- contents.Context = __expectString(data.Context);
5128
- }
5129
- if (data.Message != null) {
5130
- contents.Message = __expectString(data.Message);
5131
- }
5132
- if (data.Type != null) {
5133
- contents.Type = __expectString(data.Type);
5134
- }
4734
+ const doc = take(data, {
4735
+ Code: __expectString,
4736
+ Context: __expectString,
4737
+ Message: __expectString,
4738
+ Type: __expectString,
4739
+ });
4740
+ Object.assign(contents, doc);
5135
4741
  const exception = new LimitExceededException({
5136
4742
  $metadata: deserializeMetadata(parsedOutput),
5137
4743
  ...contents,
@@ -5141,18 +4747,13 @@ const de_LimitExceededExceptionRes = async (parsedOutput, context) => {
5141
4747
  const de_MissingParameterValueExceptionRes = async (parsedOutput, context) => {
5142
4748
  const contents = map({});
5143
4749
  const data = parsedOutput.body;
5144
- if (data.Code != null) {
5145
- contents.Code = __expectString(data.Code);
5146
- }
5147
- if (data.Context != null) {
5148
- contents.Context = __expectString(data.Context);
5149
- }
5150
- if (data.Message != null) {
5151
- contents.Message = __expectString(data.Message);
5152
- }
5153
- if (data.Type != null) {
5154
- contents.Type = __expectString(data.Type);
5155
- }
4750
+ const doc = take(data, {
4751
+ Code: __expectString,
4752
+ Context: __expectString,
4753
+ Message: __expectString,
4754
+ Type: __expectString,
4755
+ });
4756
+ Object.assign(contents, doc);
5156
4757
  const exception = new MissingParameterValueException({
5157
4758
  $metadata: deserializeMetadata(parsedOutput),
5158
4759
  ...contents,
@@ -5162,18 +4763,13 @@ const de_MissingParameterValueExceptionRes = async (parsedOutput, context) => {
5162
4763
  const de_ResourceNotFoundExceptionRes = async (parsedOutput, context) => {
5163
4764
  const contents = map({});
5164
4765
  const data = parsedOutput.body;
5165
- if (data.Code != null) {
5166
- contents.Code = __expectString(data.Code);
5167
- }
5168
- if (data.Context != null) {
5169
- contents.Context = __expectString(data.Context);
5170
- }
5171
- if (data.Message != null) {
5172
- contents.Message = __expectString(data.Message);
5173
- }
5174
- if (data.Type != null) {
5175
- contents.Type = __expectString(data.Type);
5176
- }
4766
+ const doc = take(data, {
4767
+ Code: __expectString,
4768
+ Context: __expectString,
4769
+ Message: __expectString,
4770
+ Type: __expectString,
4771
+ });
4772
+ Object.assign(contents, doc);
5177
4773
  const exception = new ResourceNotFoundException({
5178
4774
  $metadata: deserializeMetadata(parsedOutput),
5179
4775
  ...contents,
@@ -5183,1173 +4779,362 @@ const de_ResourceNotFoundExceptionRes = async (parsedOutput, context) => {
5183
4779
  const de_ServiceUnavailableExceptionRes = async (parsedOutput, context) => {
5184
4780
  const contents = map({});
5185
4781
  const data = parsedOutput.body;
5186
- if (data.Code != null) {
5187
- contents.Code = __expectString(data.Code);
5188
- }
5189
- if (data.Context != null) {
5190
- contents.Context = __expectString(data.Context);
5191
- }
5192
- if (data.Message != null) {
5193
- contents.Message = __expectString(data.Message);
5194
- }
5195
- if (data.Type != null) {
5196
- contents.Type = __expectString(data.Type);
5197
- }
4782
+ const doc = take(data, {
4783
+ Code: __expectString,
4784
+ Context: __expectString,
4785
+ Message: __expectString,
4786
+ Type: __expectString,
4787
+ });
4788
+ Object.assign(contents, doc);
5198
4789
  const exception = new ServiceUnavailableException({
5199
4790
  $metadata: deserializeMetadata(parsedOutput),
5200
4791
  ...contents,
5201
4792
  });
5202
4793
  return __decorateServiceException(exception, parsedOutput.body);
5203
4794
  };
5204
- const se_AdvancedBackupSetting = (input, context) => {
5205
- return {
5206
- ...(input.BackupOptions != null && { BackupOptions: se_BackupOptions(input.BackupOptions, context) }),
5207
- ...(input.ResourceType != null && { ResourceType: input.ResourceType }),
5208
- };
5209
- };
5210
- const se_AdvancedBackupSettings = (input, context) => {
5211
- return input
5212
- .filter((e) => e != null)
5213
- .map((entry) => {
5214
- return se_AdvancedBackupSetting(entry, context);
5215
- });
5216
- };
5217
- const se_BackupOptions = (input, context) => {
5218
- return Object.entries(input).reduce((acc, [key, value]) => {
5219
- if (value === null) {
5220
- return acc;
5221
- }
5222
- acc[key] = value;
5223
- return acc;
5224
- }, {});
5225
- };
5226
- const se_BackupPlanInput = (input, context) => {
5227
- return {
5228
- ...(input.AdvancedBackupSettings != null && {
5229
- AdvancedBackupSettings: se_AdvancedBackupSettings(input.AdvancedBackupSettings, context),
5230
- }),
5231
- ...(input.BackupPlanName != null && { BackupPlanName: input.BackupPlanName }),
5232
- ...(input.Rules != null && { Rules: se_BackupRulesInput(input.Rules, context) }),
5233
- };
5234
- };
5235
- const se_BackupRuleInput = (input, context) => {
5236
- return {
5237
- ...(input.CompletionWindowMinutes != null && { CompletionWindowMinutes: input.CompletionWindowMinutes }),
5238
- ...(input.CopyActions != null && { CopyActions: se_CopyActions(input.CopyActions, context) }),
5239
- ...(input.EnableContinuousBackup != null && { EnableContinuousBackup: input.EnableContinuousBackup }),
5240
- ...(input.Lifecycle != null && { Lifecycle: se_Lifecycle(input.Lifecycle, context) }),
5241
- ...(input.RecoveryPointTags != null && { RecoveryPointTags: se_Tags(input.RecoveryPointTags, context) }),
5242
- ...(input.RuleName != null && { RuleName: input.RuleName }),
5243
- ...(input.ScheduleExpression != null && { ScheduleExpression: input.ScheduleExpression }),
5244
- ...(input.StartWindowMinutes != null && { StartWindowMinutes: input.StartWindowMinutes }),
5245
- ...(input.TargetBackupVaultName != null && { TargetBackupVaultName: input.TargetBackupVaultName }),
5246
- };
5247
- };
5248
- const se_BackupRulesInput = (input, context) => {
5249
- return input
5250
- .filter((e) => e != null)
5251
- .map((entry) => {
5252
- return se_BackupRuleInput(entry, context);
5253
- });
5254
- };
5255
- const se_BackupSelection = (input, context) => {
5256
- return {
5257
- ...(input.Conditions != null && { Conditions: se_Conditions(input.Conditions, context) }),
5258
- ...(input.IamRoleArn != null && { IamRoleArn: input.IamRoleArn }),
5259
- ...(input.ListOfTags != null && { ListOfTags: se_ListOfTags(input.ListOfTags, context) }),
5260
- ...(input.NotResources != null && { NotResources: se_ResourceArns(input.NotResources, context) }),
5261
- ...(input.Resources != null && { Resources: se_ResourceArns(input.Resources, context) }),
5262
- ...(input.SelectionName != null && { SelectionName: input.SelectionName }),
5263
- };
5264
- };
5265
- const se_BackupVaultEvents = (input, context) => {
5266
- return input
5267
- .filter((e) => e != null)
5268
- .map((entry) => {
5269
- return entry;
5270
- });
5271
- };
5272
- const se_ComplianceResourceIdList = (input, context) => {
5273
- return input
5274
- .filter((e) => e != null)
5275
- .map((entry) => {
5276
- return entry;
5277
- });
5278
- };
5279
- const se_Condition = (input, context) => {
5280
- return {
5281
- ...(input.ConditionKey != null && { ConditionKey: input.ConditionKey }),
5282
- ...(input.ConditionType != null && { ConditionType: input.ConditionType }),
5283
- ...(input.ConditionValue != null && { ConditionValue: input.ConditionValue }),
5284
- };
5285
- };
5286
- const se_ConditionParameter = (input, context) => {
5287
- return {
5288
- ...(input.ConditionKey != null && { ConditionKey: input.ConditionKey }),
5289
- ...(input.ConditionValue != null && { ConditionValue: input.ConditionValue }),
5290
- };
5291
- };
5292
- const se_ConditionParameters = (input, context) => {
5293
- return input
5294
- .filter((e) => e != null)
5295
- .map((entry) => {
5296
- return se_ConditionParameter(entry, context);
5297
- });
5298
- };
5299
- const se_Conditions = (input, context) => {
5300
- return {
5301
- ...(input.StringEquals != null && { StringEquals: se_ConditionParameters(input.StringEquals, context) }),
5302
- ...(input.StringLike != null && { StringLike: se_ConditionParameters(input.StringLike, context) }),
5303
- ...(input.StringNotEquals != null && { StringNotEquals: se_ConditionParameters(input.StringNotEquals, context) }),
5304
- ...(input.StringNotLike != null && { StringNotLike: se_ConditionParameters(input.StringNotLike, context) }),
5305
- };
5306
- };
5307
- const se_ControlInputParameter = (input, context) => {
5308
- return {
5309
- ...(input.ParameterName != null && { ParameterName: input.ParameterName }),
5310
- ...(input.ParameterValue != null && { ParameterValue: input.ParameterValue }),
5311
- };
5312
- };
5313
- const se_ControlInputParameters = (input, context) => {
5314
- return input
5315
- .filter((e) => e != null)
5316
- .map((entry) => {
5317
- return se_ControlInputParameter(entry, context);
5318
- });
5319
- };
5320
- const se_ControlScope = (input, context) => {
5321
- return {
5322
- ...(input.ComplianceResourceIds != null && {
5323
- ComplianceResourceIds: se_ComplianceResourceIdList(input.ComplianceResourceIds, context),
5324
- }),
5325
- ...(input.ComplianceResourceTypes != null && {
5326
- ComplianceResourceTypes: se_ResourceTypeList(input.ComplianceResourceTypes, context),
5327
- }),
5328
- ...(input.Tags != null && { Tags: se_stringMap(input.Tags, context) }),
5329
- };
5330
- };
5331
- const se_CopyAction = (input, context) => {
5332
- return {
5333
- ...(input.DestinationBackupVaultArn != null && { DestinationBackupVaultArn: input.DestinationBackupVaultArn }),
5334
- ...(input.Lifecycle != null && { Lifecycle: se_Lifecycle(input.Lifecycle, context) }),
5335
- };
5336
- };
5337
- const se_CopyActions = (input, context) => {
5338
- return input
5339
- .filter((e) => e != null)
5340
- .map((entry) => {
5341
- return se_CopyAction(entry, context);
5342
- });
5343
- };
5344
4795
  const se_DateRange = (input, context) => {
5345
- return {
5346
- ...(input.FromDate != null && { FromDate: Math.round(input.FromDate.getTime() / 1000) }),
5347
- ...(input.ToDate != null && { ToDate: Math.round(input.ToDate.getTime() / 1000) }),
5348
- };
5349
- };
5350
- const se_FormatList = (input, context) => {
5351
- return input
5352
- .filter((e) => e != null)
5353
- .map((entry) => {
5354
- return entry;
5355
- });
5356
- };
5357
- const se_FrameworkControl = (input, context) => {
5358
- return {
5359
- ...(input.ControlInputParameters != null && {
5360
- ControlInputParameters: se_ControlInputParameters(input.ControlInputParameters, context),
5361
- }),
5362
- ...(input.ControlName != null && { ControlName: input.ControlName }),
5363
- ...(input.ControlScope != null && { ControlScope: se_ControlScope(input.ControlScope, context) }),
5364
- };
5365
- };
5366
- const se_FrameworkControls = (input, context) => {
5367
- return input
5368
- .filter((e) => e != null)
5369
- .map((entry) => {
5370
- return se_FrameworkControl(entry, context);
5371
- });
5372
- };
5373
- const se_GlobalSettings = (input, context) => {
5374
- return Object.entries(input).reduce((acc, [key, value]) => {
5375
- if (value === null) {
5376
- return acc;
5377
- }
5378
- acc[key] = value;
5379
- return acc;
5380
- }, {});
5381
- };
5382
- const se_Lifecycle = (input, context) => {
5383
- return {
5384
- ...(input.DeleteAfterDays != null && { DeleteAfterDays: input.DeleteAfterDays }),
5385
- ...(input.MoveToColdStorageAfterDays != null && { MoveToColdStorageAfterDays: input.MoveToColdStorageAfterDays }),
5386
- };
5387
- };
5388
- const se_ListOfTags = (input, context) => {
5389
- return input
5390
- .filter((e) => e != null)
5391
- .map((entry) => {
5392
- return se_Condition(entry, context);
4796
+ return take(input, {
4797
+ FromDate: (_) => Math.round(_.getTime() / 1000),
4798
+ ToDate: (_) => Math.round(_.getTime() / 1000),
5393
4799
  });
5394
4800
  };
5395
- const se_Metadata = (input, context) => {
5396
- return Object.entries(input).reduce((acc, [key, value]) => {
5397
- if (value === null) {
5398
- return acc;
5399
- }
5400
- acc[key] = value;
5401
- return acc;
5402
- }, {});
5403
- };
5404
4801
  const se_RecoveryPointSelection = (input, context) => {
5405
- return {
5406
- ...(input.DateRange != null && { DateRange: se_DateRange(input.DateRange, context) }),
5407
- ...(input.ResourceIdentifiers != null && {
5408
- ResourceIdentifiers: se_ResourceIdentifiers(input.ResourceIdentifiers, context),
5409
- }),
5410
- ...(input.VaultNames != null && { VaultNames: se_VaultNames(input.VaultNames, context) }),
5411
- };
5412
- };
5413
- const se_ReportDeliveryChannel = (input, context) => {
5414
- return {
5415
- ...(input.Formats != null && { Formats: se_FormatList(input.Formats, context) }),
5416
- ...(input.S3BucketName != null && { S3BucketName: input.S3BucketName }),
5417
- ...(input.S3KeyPrefix != null && { S3KeyPrefix: input.S3KeyPrefix }),
5418
- };
5419
- };
5420
- const se_ReportSetting = (input, context) => {
5421
- return {
5422
- ...(input.Accounts != null && { Accounts: se_stringList(input.Accounts, context) }),
5423
- ...(input.FrameworkArns != null && { FrameworkArns: se_stringList(input.FrameworkArns, context) }),
5424
- ...(input.NumberOfFrameworks != null && { NumberOfFrameworks: input.NumberOfFrameworks }),
5425
- ...(input.OrganizationUnits != null && { OrganizationUnits: se_stringList(input.OrganizationUnits, context) }),
5426
- ...(input.Regions != null && { Regions: se_stringList(input.Regions, context) }),
5427
- ...(input.ReportTemplate != null && { ReportTemplate: input.ReportTemplate }),
5428
- };
5429
- };
5430
- const se_ResourceArns = (input, context) => {
5431
- return input
5432
- .filter((e) => e != null)
5433
- .map((entry) => {
5434
- return entry;
5435
- });
5436
- };
5437
- const se_ResourceIdentifiers = (input, context) => {
5438
- return input
5439
- .filter((e) => e != null)
5440
- .map((entry) => {
5441
- return entry;
5442
- });
5443
- };
5444
- const se_ResourceTypeList = (input, context) => {
5445
- return input
5446
- .filter((e) => e != null)
5447
- .map((entry) => {
5448
- return entry;
5449
- });
5450
- };
5451
- const se_ResourceTypeManagementPreference = (input, context) => {
5452
- return Object.entries(input).reduce((acc, [key, value]) => {
5453
- if (value === null) {
5454
- return acc;
5455
- }
5456
- acc[key] = value;
5457
- return acc;
5458
- }, {});
5459
- };
5460
- const se_ResourceTypeOptInPreference = (input, context) => {
5461
- return Object.entries(input).reduce((acc, [key, value]) => {
5462
- if (value === null) {
5463
- return acc;
5464
- }
5465
- acc[key] = value;
5466
- return acc;
5467
- }, {});
5468
- };
5469
- const se_stringList = (input, context) => {
5470
- return input
5471
- .filter((e) => e != null)
5472
- .map((entry) => {
5473
- return entry;
5474
- });
5475
- };
5476
- const se_stringMap = (input, context) => {
5477
- return Object.entries(input).reduce((acc, [key, value]) => {
5478
- if (value === null) {
5479
- return acc;
5480
- }
5481
- acc[key] = value;
5482
- return acc;
5483
- }, {});
5484
- };
5485
- const se_TagKeyList = (input, context) => {
5486
- return input
5487
- .filter((e) => e != null)
5488
- .map((entry) => {
5489
- return entry;
4802
+ return take(input, {
4803
+ DateRange: (_) => se_DateRange(_, context),
4804
+ ResourceIdentifiers: _json,
4805
+ VaultNames: _json,
5490
4806
  });
5491
4807
  };
5492
- const se_Tags = (input, context) => {
5493
- return Object.entries(input).reduce((acc, [key, value]) => {
5494
- if (value === null) {
5495
- return acc;
5496
- }
5497
- acc[key] = value;
5498
- return acc;
5499
- }, {});
5500
- };
5501
- const se_VaultNames = (input, context) => {
5502
- return input
5503
- .filter((e) => e != null)
5504
- .map((entry) => {
5505
- return entry;
5506
- });
5507
- };
5508
- const de_AdvancedBackupSetting = (output, context) => {
5509
- return {
5510
- BackupOptions: output.BackupOptions != null ? de_BackupOptions(output.BackupOptions, context) : undefined,
5511
- ResourceType: __expectString(output.ResourceType),
5512
- };
5513
- };
5514
- const de_AdvancedBackupSettings = (output, context) => {
5515
- const retVal = (output || [])
5516
- .filter((e) => e != null)
5517
- .map((entry) => {
5518
- if (entry === null) {
5519
- return null;
5520
- }
5521
- return de_AdvancedBackupSetting(entry, context);
5522
- });
5523
- return retVal;
5524
- };
5525
4808
  const de_BackupJob = (output, context) => {
5526
- return {
5527
- AccountId: __expectString(output.AccountId),
5528
- BackupJobId: __expectString(output.BackupJobId),
5529
- BackupOptions: output.BackupOptions != null ? de_BackupOptions(output.BackupOptions, context) : undefined,
5530
- BackupSizeInBytes: __expectLong(output.BackupSizeInBytes),
5531
- BackupType: __expectString(output.BackupType),
5532
- BackupVaultArn: __expectString(output.BackupVaultArn),
5533
- BackupVaultName: __expectString(output.BackupVaultName),
5534
- BytesTransferred: __expectLong(output.BytesTransferred),
5535
- CompletionDate: output.CompletionDate != null
5536
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.CompletionDate)))
5537
- : undefined,
5538
- CreatedBy: output.CreatedBy != null ? de_RecoveryPointCreator(output.CreatedBy, context) : undefined,
5539
- CreationDate: output.CreationDate != null
5540
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.CreationDate)))
5541
- : undefined,
5542
- ExpectedCompletionDate: output.ExpectedCompletionDate != null
5543
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.ExpectedCompletionDate)))
5544
- : undefined,
5545
- IamRoleArn: __expectString(output.IamRoleArn),
5546
- IsParent: __expectBoolean(output.IsParent),
5547
- ParentJobId: __expectString(output.ParentJobId),
5548
- PercentDone: __expectString(output.PercentDone),
5549
- RecoveryPointArn: __expectString(output.RecoveryPointArn),
5550
- ResourceArn: __expectString(output.ResourceArn),
5551
- ResourceName: __expectString(output.ResourceName),
5552
- ResourceType: __expectString(output.ResourceType),
5553
- StartBy: output.StartBy != null ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.StartBy))) : undefined,
5554
- State: __expectString(output.State),
5555
- StatusMessage: __expectString(output.StatusMessage),
5556
- };
5557
- };
5558
- const de_BackupJobChildJobsInState = (output, context) => {
5559
- return Object.entries(output).reduce((acc, [key, value]) => {
5560
- if (value === null) {
5561
- return acc;
5562
- }
5563
- acc[key] = __expectLong(value);
5564
- return acc;
5565
- }, {});
4809
+ return take(output, {
4810
+ AccountId: __expectString,
4811
+ BackupJobId: __expectString,
4812
+ BackupOptions: _json,
4813
+ BackupSizeInBytes: __expectLong,
4814
+ BackupType: __expectString,
4815
+ BackupVaultArn: __expectString,
4816
+ BackupVaultName: __expectString,
4817
+ BytesTransferred: __expectLong,
4818
+ CompletionDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
4819
+ CreatedBy: _json,
4820
+ CreationDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
4821
+ ExpectedCompletionDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
4822
+ IamRoleArn: __expectString,
4823
+ IsParent: __expectBoolean,
4824
+ ParentJobId: __expectString,
4825
+ PercentDone: __expectString,
4826
+ RecoveryPointArn: __expectString,
4827
+ ResourceArn: __expectString,
4828
+ ResourceName: __expectString,
4829
+ ResourceType: __expectString,
4830
+ StartBy: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
4831
+ State: __expectString,
4832
+ StatusMessage: __expectString,
4833
+ });
5566
4834
  };
5567
4835
  const de_BackupJobsList = (output, context) => {
5568
4836
  const retVal = (output || [])
5569
4837
  .filter((e) => e != null)
5570
4838
  .map((entry) => {
5571
- if (entry === null) {
5572
- return null;
5573
- }
5574
4839
  return de_BackupJob(entry, context);
5575
4840
  });
5576
4841
  return retVal;
5577
4842
  };
5578
- const de_BackupOptions = (output, context) => {
5579
- return Object.entries(output).reduce((acc, [key, value]) => {
5580
- if (value === null) {
5581
- return acc;
5582
- }
5583
- acc[key] = __expectString(value);
5584
- return acc;
5585
- }, {});
5586
- };
5587
- const de_BackupPlan = (output, context) => {
5588
- return {
5589
- AdvancedBackupSettings: output.AdvancedBackupSettings != null
5590
- ? de_AdvancedBackupSettings(output.AdvancedBackupSettings, context)
5591
- : undefined,
5592
- BackupPlanName: __expectString(output.BackupPlanName),
5593
- Rules: output.Rules != null ? de_BackupRules(output.Rules, context) : undefined,
5594
- };
5595
- };
5596
4843
  const de_BackupPlansList = (output, context) => {
5597
4844
  const retVal = (output || [])
5598
4845
  .filter((e) => e != null)
5599
4846
  .map((entry) => {
5600
- if (entry === null) {
5601
- return null;
5602
- }
5603
4847
  return de_BackupPlansListMember(entry, context);
5604
4848
  });
5605
4849
  return retVal;
5606
4850
  };
5607
4851
  const de_BackupPlansListMember = (output, context) => {
5608
- return {
5609
- AdvancedBackupSettings: output.AdvancedBackupSettings != null
5610
- ? de_AdvancedBackupSettings(output.AdvancedBackupSettings, context)
5611
- : undefined,
5612
- BackupPlanArn: __expectString(output.BackupPlanArn),
5613
- BackupPlanId: __expectString(output.BackupPlanId),
5614
- BackupPlanName: __expectString(output.BackupPlanName),
5615
- CreationDate: output.CreationDate != null
5616
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.CreationDate)))
5617
- : undefined,
5618
- CreatorRequestId: __expectString(output.CreatorRequestId),
5619
- DeletionDate: output.DeletionDate != null
5620
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.DeletionDate)))
5621
- : undefined,
5622
- LastExecutionDate: output.LastExecutionDate != null
5623
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.LastExecutionDate)))
5624
- : undefined,
5625
- VersionId: __expectString(output.VersionId),
5626
- };
5627
- };
5628
- const de_BackupPlanTemplatesList = (output, context) => {
5629
- const retVal = (output || [])
5630
- .filter((e) => e != null)
5631
- .map((entry) => {
5632
- if (entry === null) {
5633
- return null;
5634
- }
5635
- return de_BackupPlanTemplatesListMember(entry, context);
4852
+ return take(output, {
4853
+ AdvancedBackupSettings: _json,
4854
+ BackupPlanArn: __expectString,
4855
+ BackupPlanId: __expectString,
4856
+ BackupPlanName: __expectString,
4857
+ CreationDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
4858
+ CreatorRequestId: __expectString,
4859
+ DeletionDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
4860
+ LastExecutionDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
4861
+ VersionId: __expectString,
5636
4862
  });
5637
- return retVal;
5638
- };
5639
- const de_BackupPlanTemplatesListMember = (output, context) => {
5640
- return {
5641
- BackupPlanTemplateId: __expectString(output.BackupPlanTemplateId),
5642
- BackupPlanTemplateName: __expectString(output.BackupPlanTemplateName),
5643
- };
5644
4863
  };
5645
4864
  const de_BackupPlanVersionsList = (output, context) => {
5646
4865
  const retVal = (output || [])
5647
4866
  .filter((e) => e != null)
5648
4867
  .map((entry) => {
5649
- if (entry === null) {
5650
- return null;
5651
- }
5652
4868
  return de_BackupPlansListMember(entry, context);
5653
4869
  });
5654
4870
  return retVal;
5655
4871
  };
5656
- const de_BackupRule = (output, context) => {
5657
- return {
5658
- CompletionWindowMinutes: __expectLong(output.CompletionWindowMinutes),
5659
- CopyActions: output.CopyActions != null ? de_CopyActions(output.CopyActions, context) : undefined,
5660
- EnableContinuousBackup: __expectBoolean(output.EnableContinuousBackup),
5661
- Lifecycle: output.Lifecycle != null ? de_Lifecycle(output.Lifecycle, context) : undefined,
5662
- RecoveryPointTags: output.RecoveryPointTags != null ? de_Tags(output.RecoveryPointTags, context) : undefined,
5663
- RuleId: __expectString(output.RuleId),
5664
- RuleName: __expectString(output.RuleName),
5665
- ScheduleExpression: __expectString(output.ScheduleExpression),
5666
- StartWindowMinutes: __expectLong(output.StartWindowMinutes),
5667
- TargetBackupVaultName: __expectString(output.TargetBackupVaultName),
5668
- };
5669
- };
5670
- const de_BackupRules = (output, context) => {
5671
- const retVal = (output || [])
5672
- .filter((e) => e != null)
5673
- .map((entry) => {
5674
- if (entry === null) {
5675
- return null;
5676
- }
5677
- return de_BackupRule(entry, context);
5678
- });
5679
- return retVal;
5680
- };
5681
- const de_BackupSelection = (output, context) => {
5682
- return {
5683
- Conditions: output.Conditions != null ? de_Conditions(output.Conditions, context) : undefined,
5684
- IamRoleArn: __expectString(output.IamRoleArn),
5685
- ListOfTags: output.ListOfTags != null ? de_ListOfTags(output.ListOfTags, context) : undefined,
5686
- NotResources: output.NotResources != null ? de_ResourceArns(output.NotResources, context) : undefined,
5687
- Resources: output.Resources != null ? de_ResourceArns(output.Resources, context) : undefined,
5688
- SelectionName: __expectString(output.SelectionName),
5689
- };
5690
- };
5691
4872
  const de_BackupSelectionsList = (output, context) => {
5692
4873
  const retVal = (output || [])
5693
4874
  .filter((e) => e != null)
5694
4875
  .map((entry) => {
5695
- if (entry === null) {
5696
- return null;
5697
- }
5698
4876
  return de_BackupSelectionsListMember(entry, context);
5699
4877
  });
5700
4878
  return retVal;
5701
4879
  };
5702
4880
  const de_BackupSelectionsListMember = (output, context) => {
5703
- return {
5704
- BackupPlanId: __expectString(output.BackupPlanId),
5705
- CreationDate: output.CreationDate != null
5706
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.CreationDate)))
5707
- : undefined,
5708
- CreatorRequestId: __expectString(output.CreatorRequestId),
5709
- IamRoleArn: __expectString(output.IamRoleArn),
5710
- SelectionId: __expectString(output.SelectionId),
5711
- SelectionName: __expectString(output.SelectionName),
5712
- };
5713
- };
5714
- const de_BackupVaultEvents = (output, context) => {
5715
- const retVal = (output || [])
5716
- .filter((e) => e != null)
5717
- .map((entry) => {
5718
- if (entry === null) {
5719
- return null;
5720
- }
5721
- return __expectString(entry);
4881
+ return take(output, {
4882
+ BackupPlanId: __expectString,
4883
+ CreationDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
4884
+ CreatorRequestId: __expectString,
4885
+ IamRoleArn: __expectString,
4886
+ SelectionId: __expectString,
4887
+ SelectionName: __expectString,
5722
4888
  });
5723
- return retVal;
5724
4889
  };
5725
4890
  const de_BackupVaultList = (output, context) => {
5726
4891
  const retVal = (output || [])
5727
4892
  .filter((e) => e != null)
5728
4893
  .map((entry) => {
5729
- if (entry === null) {
5730
- return null;
5731
- }
5732
4894
  return de_BackupVaultListMember(entry, context);
5733
4895
  });
5734
4896
  return retVal;
5735
4897
  };
5736
4898
  const de_BackupVaultListMember = (output, context) => {
5737
- return {
5738
- BackupVaultArn: __expectString(output.BackupVaultArn),
5739
- BackupVaultName: __expectString(output.BackupVaultName),
5740
- CreationDate: output.CreationDate != null
5741
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.CreationDate)))
5742
- : undefined,
5743
- CreatorRequestId: __expectString(output.CreatorRequestId),
5744
- EncryptionKeyArn: __expectString(output.EncryptionKeyArn),
5745
- LockDate: output.LockDate != null ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.LockDate))) : undefined,
5746
- Locked: __expectBoolean(output.Locked),
5747
- MaxRetentionDays: __expectLong(output.MaxRetentionDays),
5748
- MinRetentionDays: __expectLong(output.MinRetentionDays),
5749
- NumberOfRecoveryPoints: __expectLong(output.NumberOfRecoveryPoints),
5750
- };
5751
- };
5752
- const de_CalculatedLifecycle = (output, context) => {
5753
- return {
5754
- DeleteAt: output.DeleteAt != null ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.DeleteAt))) : undefined,
5755
- MoveToColdStorageAt: output.MoveToColdStorageAt != null
5756
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.MoveToColdStorageAt)))
5757
- : undefined,
5758
- };
5759
- };
5760
- const de_ComplianceResourceIdList = (output, context) => {
5761
- const retVal = (output || [])
5762
- .filter((e) => e != null)
5763
- .map((entry) => {
5764
- if (entry === null) {
5765
- return null;
5766
- }
5767
- return __expectString(entry);
5768
- });
5769
- return retVal;
5770
- };
5771
- const de_Condition = (output, context) => {
5772
- return {
5773
- ConditionKey: __expectString(output.ConditionKey),
5774
- ConditionType: __expectString(output.ConditionType),
5775
- ConditionValue: __expectString(output.ConditionValue),
5776
- };
5777
- };
5778
- const de_ConditionParameter = (output, context) => {
5779
- return {
5780
- ConditionKey: __expectString(output.ConditionKey),
5781
- ConditionValue: __expectString(output.ConditionValue),
5782
- };
5783
- };
5784
- const de_ConditionParameters = (output, context) => {
5785
- const retVal = (output || [])
5786
- .filter((e) => e != null)
5787
- .map((entry) => {
5788
- if (entry === null) {
5789
- return null;
5790
- }
5791
- return de_ConditionParameter(entry, context);
5792
- });
5793
- return retVal;
5794
- };
5795
- const de_Conditions = (output, context) => {
5796
- return {
5797
- StringEquals: output.StringEquals != null ? de_ConditionParameters(output.StringEquals, context) : undefined,
5798
- StringLike: output.StringLike != null ? de_ConditionParameters(output.StringLike, context) : undefined,
5799
- StringNotEquals: output.StringNotEquals != null ? de_ConditionParameters(output.StringNotEquals, context) : undefined,
5800
- StringNotLike: output.StringNotLike != null ? de_ConditionParameters(output.StringNotLike, context) : undefined,
5801
- };
5802
- };
5803
- const de_ControlInputParameter = (output, context) => {
5804
- return {
5805
- ParameterName: __expectString(output.ParameterName),
5806
- ParameterValue: __expectString(output.ParameterValue),
5807
- };
5808
- };
5809
- const de_ControlInputParameters = (output, context) => {
5810
- const retVal = (output || [])
5811
- .filter((e) => e != null)
5812
- .map((entry) => {
5813
- if (entry === null) {
5814
- return null;
5815
- }
5816
- return de_ControlInputParameter(entry, context);
4899
+ return take(output, {
4900
+ BackupVaultArn: __expectString,
4901
+ BackupVaultName: __expectString,
4902
+ CreationDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
4903
+ CreatorRequestId: __expectString,
4904
+ EncryptionKeyArn: __expectString,
4905
+ LockDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
4906
+ Locked: __expectBoolean,
4907
+ MaxRetentionDays: __expectLong,
4908
+ MinRetentionDays: __expectLong,
4909
+ NumberOfRecoveryPoints: __expectLong,
5817
4910
  });
5818
- return retVal;
5819
- };
5820
- const de_ControlScope = (output, context) => {
5821
- return {
5822
- ComplianceResourceIds: output.ComplianceResourceIds != null
5823
- ? de_ComplianceResourceIdList(output.ComplianceResourceIds, context)
5824
- : undefined,
5825
- ComplianceResourceTypes: output.ComplianceResourceTypes != null ? de_ResourceTypeList(output.ComplianceResourceTypes, context) : undefined,
5826
- Tags: output.Tags != null ? de_stringMap(output.Tags, context) : undefined,
5827
- };
5828
- };
5829
- const de_CopyAction = (output, context) => {
5830
- return {
5831
- DestinationBackupVaultArn: __expectString(output.DestinationBackupVaultArn),
5832
- Lifecycle: output.Lifecycle != null ? de_Lifecycle(output.Lifecycle, context) : undefined,
5833
- };
5834
4911
  };
5835
- const de_CopyActions = (output, context) => {
5836
- const retVal = (output || [])
5837
- .filter((e) => e != null)
5838
- .map((entry) => {
5839
- if (entry === null) {
5840
- return null;
5841
- }
5842
- return de_CopyAction(entry, context);
4912
+ const de_CalculatedLifecycle = (output, context) => {
4913
+ return take(output, {
4914
+ DeleteAt: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
4915
+ MoveToColdStorageAt: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
5843
4916
  });
5844
- return retVal;
5845
4917
  };
5846
4918
  const de_CopyJob = (output, context) => {
5847
- return {
5848
- AccountId: __expectString(output.AccountId),
5849
- BackupSizeInBytes: __expectLong(output.BackupSizeInBytes),
5850
- ChildJobsInState: output.ChildJobsInState != null ? de_CopyJobChildJobsInState(output.ChildJobsInState, context) : undefined,
5851
- CompletionDate: output.CompletionDate != null
5852
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.CompletionDate)))
5853
- : undefined,
5854
- CompositeMemberIdentifier: __expectString(output.CompositeMemberIdentifier),
5855
- CopyJobId: __expectString(output.CopyJobId),
5856
- CreatedBy: output.CreatedBy != null ? de_RecoveryPointCreator(output.CreatedBy, context) : undefined,
5857
- CreationDate: output.CreationDate != null
5858
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.CreationDate)))
5859
- : undefined,
5860
- DestinationBackupVaultArn: __expectString(output.DestinationBackupVaultArn),
5861
- DestinationRecoveryPointArn: __expectString(output.DestinationRecoveryPointArn),
5862
- IamRoleArn: __expectString(output.IamRoleArn),
5863
- IsParent: __expectBoolean(output.IsParent),
5864
- NumberOfChildJobs: __expectLong(output.NumberOfChildJobs),
5865
- ParentJobId: __expectString(output.ParentJobId),
5866
- ResourceArn: __expectString(output.ResourceArn),
5867
- ResourceName: __expectString(output.ResourceName),
5868
- ResourceType: __expectString(output.ResourceType),
5869
- SourceBackupVaultArn: __expectString(output.SourceBackupVaultArn),
5870
- SourceRecoveryPointArn: __expectString(output.SourceRecoveryPointArn),
5871
- State: __expectString(output.State),
5872
- StatusMessage: __expectString(output.StatusMessage),
5873
- };
5874
- };
5875
- const de_CopyJobChildJobsInState = (output, context) => {
5876
- return Object.entries(output).reduce((acc, [key, value]) => {
5877
- if (value === null) {
5878
- return acc;
5879
- }
5880
- acc[key] = __expectLong(value);
5881
- return acc;
5882
- }, {});
4919
+ return take(output, {
4920
+ AccountId: __expectString,
4921
+ BackupSizeInBytes: __expectLong,
4922
+ ChildJobsInState: _json,
4923
+ CompletionDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
4924
+ CompositeMemberIdentifier: __expectString,
4925
+ CopyJobId: __expectString,
4926
+ CreatedBy: _json,
4927
+ CreationDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
4928
+ DestinationBackupVaultArn: __expectString,
4929
+ DestinationRecoveryPointArn: __expectString,
4930
+ IamRoleArn: __expectString,
4931
+ IsParent: __expectBoolean,
4932
+ NumberOfChildJobs: __expectLong,
4933
+ ParentJobId: __expectString,
4934
+ ResourceArn: __expectString,
4935
+ ResourceName: __expectString,
4936
+ ResourceType: __expectString,
4937
+ SourceBackupVaultArn: __expectString,
4938
+ SourceRecoveryPointArn: __expectString,
4939
+ State: __expectString,
4940
+ StatusMessage: __expectString,
4941
+ });
5883
4942
  };
5884
4943
  const de_CopyJobsList = (output, context) => {
5885
4944
  const retVal = (output || [])
5886
4945
  .filter((e) => e != null)
5887
4946
  .map((entry) => {
5888
- if (entry === null) {
5889
- return null;
5890
- }
5891
4947
  return de_CopyJob(entry, context);
5892
4948
  });
5893
4949
  return retVal;
5894
4950
  };
5895
4951
  const de_DateRange = (output, context) => {
5896
- return {
5897
- FromDate: output.FromDate != null ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.FromDate))) : undefined,
5898
- ToDate: output.ToDate != null ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.ToDate))) : undefined,
5899
- };
5900
- };
5901
- const de_FormatList = (output, context) => {
5902
- const retVal = (output || [])
5903
- .filter((e) => e != null)
5904
- .map((entry) => {
5905
- if (entry === null) {
5906
- return null;
5907
- }
5908
- return __expectString(entry);
4952
+ return take(output, {
4953
+ FromDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
4954
+ ToDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
5909
4955
  });
5910
- return retVal;
5911
4956
  };
5912
4957
  const de_Framework = (output, context) => {
5913
- return {
5914
- CreationTime: output.CreationTime != null
5915
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.CreationTime)))
5916
- : undefined,
5917
- DeploymentStatus: __expectString(output.DeploymentStatus),
5918
- FrameworkArn: __expectString(output.FrameworkArn),
5919
- FrameworkDescription: __expectString(output.FrameworkDescription),
5920
- FrameworkName: __expectString(output.FrameworkName),
5921
- NumberOfControls: __expectInt32(output.NumberOfControls),
5922
- };
5923
- };
5924
- const de_FrameworkControl = (output, context) => {
5925
- return {
5926
- ControlInputParameters: output.ControlInputParameters != null
5927
- ? de_ControlInputParameters(output.ControlInputParameters, context)
5928
- : undefined,
5929
- ControlName: __expectString(output.ControlName),
5930
- ControlScope: output.ControlScope != null ? de_ControlScope(output.ControlScope, context) : undefined,
5931
- };
5932
- };
5933
- const de_FrameworkControls = (output, context) => {
5934
- const retVal = (output || [])
5935
- .filter((e) => e != null)
5936
- .map((entry) => {
5937
- if (entry === null) {
5938
- return null;
5939
- }
5940
- return de_FrameworkControl(entry, context);
4958
+ return take(output, {
4959
+ CreationTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
4960
+ DeploymentStatus: __expectString,
4961
+ FrameworkArn: __expectString,
4962
+ FrameworkDescription: __expectString,
4963
+ FrameworkName: __expectString,
4964
+ NumberOfControls: __expectInt32,
5941
4965
  });
5942
- return retVal;
5943
4966
  };
5944
4967
  const de_FrameworkList = (output, context) => {
5945
4968
  const retVal = (output || [])
5946
4969
  .filter((e) => e != null)
5947
4970
  .map((entry) => {
5948
- if (entry === null) {
5949
- return null;
5950
- }
5951
4971
  return de_Framework(entry, context);
5952
4972
  });
5953
4973
  return retVal;
5954
4974
  };
5955
- const de_GlobalSettings = (output, context) => {
5956
- return Object.entries(output).reduce((acc, [key, value]) => {
5957
- if (value === null) {
5958
- return acc;
5959
- }
5960
- acc[key] = __expectString(value);
5961
- return acc;
5962
- }, {});
5963
- };
5964
4975
  const de_LegalHold = (output, context) => {
5965
- return {
5966
- CancellationDate: output.CancellationDate != null
5967
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.CancellationDate)))
5968
- : undefined,
5969
- CreationDate: output.CreationDate != null
5970
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.CreationDate)))
5971
- : undefined,
5972
- Description: __expectString(output.Description),
5973
- LegalHoldArn: __expectString(output.LegalHoldArn),
5974
- LegalHoldId: __expectString(output.LegalHoldId),
5975
- Status: __expectString(output.Status),
5976
- Title: __expectString(output.Title),
5977
- };
4976
+ return take(output, {
4977
+ CancellationDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
4978
+ CreationDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
4979
+ Description: __expectString,
4980
+ LegalHoldArn: __expectString,
4981
+ LegalHoldId: __expectString,
4982
+ Status: __expectString,
4983
+ Title: __expectString,
4984
+ });
5978
4985
  };
5979
4986
  const de_LegalHoldsList = (output, context) => {
5980
4987
  const retVal = (output || [])
5981
4988
  .filter((e) => e != null)
5982
4989
  .map((entry) => {
5983
- if (entry === null) {
5984
- return null;
5985
- }
5986
4990
  return de_LegalHold(entry, context);
5987
4991
  });
5988
4992
  return retVal;
5989
4993
  };
5990
- const de_Lifecycle = (output, context) => {
5991
- return {
5992
- DeleteAfterDays: __expectLong(output.DeleteAfterDays),
5993
- MoveToColdStorageAfterDays: __expectLong(output.MoveToColdStorageAfterDays),
5994
- };
5995
- };
5996
- const de_ListOfTags = (output, context) => {
5997
- const retVal = (output || [])
5998
- .filter((e) => e != null)
5999
- .map((entry) => {
6000
- if (entry === null) {
6001
- return null;
6002
- }
6003
- return de_Condition(entry, context);
6004
- });
6005
- return retVal;
6006
- };
6007
- const de_Metadata = (output, context) => {
6008
- return Object.entries(output).reduce((acc, [key, value]) => {
6009
- if (value === null) {
6010
- return acc;
6011
- }
6012
- acc[key] = __expectString(value);
6013
- return acc;
6014
- }, {});
6015
- };
6016
4994
  const de_ProtectedResource = (output, context) => {
6017
- return {
6018
- LastBackupTime: output.LastBackupTime != null
6019
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.LastBackupTime)))
6020
- : undefined,
6021
- ResourceArn: __expectString(output.ResourceArn),
6022
- ResourceName: __expectString(output.ResourceName),
6023
- ResourceType: __expectString(output.ResourceType),
6024
- };
4995
+ return take(output, {
4996
+ LastBackupTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
4997
+ ResourceArn: __expectString,
4998
+ ResourceName: __expectString,
4999
+ ResourceType: __expectString,
5000
+ });
6025
5001
  };
6026
5002
  const de_ProtectedResourcesList = (output, context) => {
6027
5003
  const retVal = (output || [])
6028
5004
  .filter((e) => e != null)
6029
5005
  .map((entry) => {
6030
- if (entry === null) {
6031
- return null;
6032
- }
6033
5006
  return de_ProtectedResource(entry, context);
6034
5007
  });
6035
5008
  return retVal;
6036
5009
  };
6037
5010
  const de_RecoveryPointByBackupVault = (output, context) => {
6038
- return {
6039
- BackupSizeInBytes: __expectLong(output.BackupSizeInBytes),
6040
- BackupVaultArn: __expectString(output.BackupVaultArn),
6041
- BackupVaultName: __expectString(output.BackupVaultName),
6042
- CalculatedLifecycle: output.CalculatedLifecycle != null ? de_CalculatedLifecycle(output.CalculatedLifecycle, context) : undefined,
6043
- CompletionDate: output.CompletionDate != null
6044
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.CompletionDate)))
6045
- : undefined,
6046
- CompositeMemberIdentifier: __expectString(output.CompositeMemberIdentifier),
6047
- CreatedBy: output.CreatedBy != null ? de_RecoveryPointCreator(output.CreatedBy, context) : undefined,
6048
- CreationDate: output.CreationDate != null
6049
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.CreationDate)))
6050
- : undefined,
6051
- EncryptionKeyArn: __expectString(output.EncryptionKeyArn),
6052
- IamRoleArn: __expectString(output.IamRoleArn),
6053
- IsEncrypted: __expectBoolean(output.IsEncrypted),
6054
- IsParent: __expectBoolean(output.IsParent),
6055
- LastRestoreTime: output.LastRestoreTime != null
6056
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.LastRestoreTime)))
6057
- : undefined,
6058
- Lifecycle: output.Lifecycle != null ? de_Lifecycle(output.Lifecycle, context) : undefined,
6059
- ParentRecoveryPointArn: __expectString(output.ParentRecoveryPointArn),
6060
- RecoveryPointArn: __expectString(output.RecoveryPointArn),
6061
- ResourceArn: __expectString(output.ResourceArn),
6062
- ResourceName: __expectString(output.ResourceName),
6063
- ResourceType: __expectString(output.ResourceType),
6064
- SourceBackupVaultArn: __expectString(output.SourceBackupVaultArn),
6065
- Status: __expectString(output.Status),
6066
- StatusMessage: __expectString(output.StatusMessage),
6067
- };
5011
+ return take(output, {
5012
+ BackupSizeInBytes: __expectLong,
5013
+ BackupVaultArn: __expectString,
5014
+ BackupVaultName: __expectString,
5015
+ CalculatedLifecycle: (_) => de_CalculatedLifecycle(_, context),
5016
+ CompletionDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
5017
+ CompositeMemberIdentifier: __expectString,
5018
+ CreatedBy: _json,
5019
+ CreationDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
5020
+ EncryptionKeyArn: __expectString,
5021
+ IamRoleArn: __expectString,
5022
+ IsEncrypted: __expectBoolean,
5023
+ IsParent: __expectBoolean,
5024
+ LastRestoreTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
5025
+ Lifecycle: _json,
5026
+ ParentRecoveryPointArn: __expectString,
5027
+ RecoveryPointArn: __expectString,
5028
+ ResourceArn: __expectString,
5029
+ ResourceName: __expectString,
5030
+ ResourceType: __expectString,
5031
+ SourceBackupVaultArn: __expectString,
5032
+ Status: __expectString,
5033
+ StatusMessage: __expectString,
5034
+ });
6068
5035
  };
6069
5036
  const de_RecoveryPointByBackupVaultList = (output, context) => {
6070
5037
  const retVal = (output || [])
6071
5038
  .filter((e) => e != null)
6072
5039
  .map((entry) => {
6073
- if (entry === null) {
6074
- return null;
6075
- }
6076
5040
  return de_RecoveryPointByBackupVault(entry, context);
6077
5041
  });
6078
5042
  return retVal;
6079
5043
  };
6080
5044
  const de_RecoveryPointByResource = (output, context) => {
6081
- return {
6082
- BackupSizeBytes: __expectLong(output.BackupSizeBytes),
6083
- BackupVaultName: __expectString(output.BackupVaultName),
6084
- CreationDate: output.CreationDate != null
6085
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.CreationDate)))
6086
- : undefined,
6087
- EncryptionKeyArn: __expectString(output.EncryptionKeyArn),
6088
- IsParent: __expectBoolean(output.IsParent),
6089
- ParentRecoveryPointArn: __expectString(output.ParentRecoveryPointArn),
6090
- RecoveryPointArn: __expectString(output.RecoveryPointArn),
6091
- ResourceName: __expectString(output.ResourceName),
6092
- Status: __expectString(output.Status),
6093
- StatusMessage: __expectString(output.StatusMessage),
6094
- };
5045
+ return take(output, {
5046
+ BackupSizeBytes: __expectLong,
5047
+ BackupVaultName: __expectString,
5048
+ CreationDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
5049
+ EncryptionKeyArn: __expectString,
5050
+ IsParent: __expectBoolean,
5051
+ ParentRecoveryPointArn: __expectString,
5052
+ RecoveryPointArn: __expectString,
5053
+ ResourceName: __expectString,
5054
+ Status: __expectString,
5055
+ StatusMessage: __expectString,
5056
+ });
6095
5057
  };
6096
5058
  const de_RecoveryPointByResourceList = (output, context) => {
6097
5059
  const retVal = (output || [])
6098
5060
  .filter((e) => e != null)
6099
5061
  .map((entry) => {
6100
- if (entry === null) {
6101
- return null;
6102
- }
6103
5062
  return de_RecoveryPointByResource(entry, context);
6104
5063
  });
6105
5064
  return retVal;
6106
5065
  };
6107
- const de_RecoveryPointCreator = (output, context) => {
6108
- return {
6109
- BackupPlanArn: __expectString(output.BackupPlanArn),
6110
- BackupPlanId: __expectString(output.BackupPlanId),
6111
- BackupPlanVersion: __expectString(output.BackupPlanVersion),
6112
- BackupRuleId: __expectString(output.BackupRuleId),
6113
- };
6114
- };
6115
- const de_RecoveryPointMember = (output, context) => {
6116
- return {
6117
- RecoveryPointArn: __expectString(output.RecoveryPointArn),
6118
- };
6119
- };
6120
5066
  const de_RecoveryPointSelection = (output, context) => {
6121
- return {
6122
- DateRange: output.DateRange != null ? de_DateRange(output.DateRange, context) : undefined,
6123
- ResourceIdentifiers: output.ResourceIdentifiers != null ? de_ResourceIdentifiers(output.ResourceIdentifiers, context) : undefined,
6124
- VaultNames: output.VaultNames != null ? de_VaultNames(output.VaultNames, context) : undefined,
6125
- };
6126
- };
6127
- const de_RecoveryPointsList = (output, context) => {
6128
- const retVal = (output || [])
6129
- .filter((e) => e != null)
6130
- .map((entry) => {
6131
- if (entry === null) {
6132
- return null;
6133
- }
6134
- return de_RecoveryPointMember(entry, context);
5067
+ return take(output, {
5068
+ DateRange: (_) => de_DateRange(_, context),
5069
+ ResourceIdentifiers: _json,
5070
+ VaultNames: _json,
6135
5071
  });
6136
- return retVal;
6137
- };
6138
- const de_ReportDeliveryChannel = (output, context) => {
6139
- return {
6140
- Formats: output.Formats != null ? de_FormatList(output.Formats, context) : undefined,
6141
- S3BucketName: __expectString(output.S3BucketName),
6142
- S3KeyPrefix: __expectString(output.S3KeyPrefix),
6143
- };
6144
- };
6145
- const de_ReportDestination = (output, context) => {
6146
- return {
6147
- S3BucketName: __expectString(output.S3BucketName),
6148
- S3Keys: output.S3Keys != null ? de_stringList(output.S3Keys, context) : undefined,
6149
- };
6150
5072
  };
6151
5073
  const de_ReportJob = (output, context) => {
6152
- return {
6153
- CompletionTime: output.CompletionTime != null
6154
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.CompletionTime)))
6155
- : undefined,
6156
- CreationTime: output.CreationTime != null
6157
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.CreationTime)))
6158
- : undefined,
6159
- ReportDestination: output.ReportDestination != null ? de_ReportDestination(output.ReportDestination, context) : undefined,
6160
- ReportJobId: __expectString(output.ReportJobId),
6161
- ReportPlanArn: __expectString(output.ReportPlanArn),
6162
- ReportTemplate: __expectString(output.ReportTemplate),
6163
- Status: __expectString(output.Status),
6164
- StatusMessage: __expectString(output.StatusMessage),
6165
- };
5074
+ return take(output, {
5075
+ CompletionTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
5076
+ CreationTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
5077
+ ReportDestination: _json,
5078
+ ReportJobId: __expectString,
5079
+ ReportPlanArn: __expectString,
5080
+ ReportTemplate: __expectString,
5081
+ Status: __expectString,
5082
+ StatusMessage: __expectString,
5083
+ });
6166
5084
  };
6167
5085
  const de_ReportJobList = (output, context) => {
6168
5086
  const retVal = (output || [])
6169
5087
  .filter((e) => e != null)
6170
5088
  .map((entry) => {
6171
- if (entry === null) {
6172
- return null;
6173
- }
6174
5089
  return de_ReportJob(entry, context);
6175
5090
  });
6176
5091
  return retVal;
6177
5092
  };
6178
5093
  const de_ReportPlan = (output, context) => {
6179
- return {
6180
- CreationTime: output.CreationTime != null
6181
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.CreationTime)))
6182
- : undefined,
6183
- DeploymentStatus: __expectString(output.DeploymentStatus),
6184
- LastAttemptedExecutionTime: output.LastAttemptedExecutionTime != null
6185
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.LastAttemptedExecutionTime)))
6186
- : undefined,
6187
- LastSuccessfulExecutionTime: output.LastSuccessfulExecutionTime != null
6188
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.LastSuccessfulExecutionTime)))
6189
- : undefined,
6190
- ReportDeliveryChannel: output.ReportDeliveryChannel != null
6191
- ? de_ReportDeliveryChannel(output.ReportDeliveryChannel, context)
6192
- : undefined,
6193
- ReportPlanArn: __expectString(output.ReportPlanArn),
6194
- ReportPlanDescription: __expectString(output.ReportPlanDescription),
6195
- ReportPlanName: __expectString(output.ReportPlanName),
6196
- ReportSetting: output.ReportSetting != null ? de_ReportSetting(output.ReportSetting, context) : undefined,
6197
- };
5094
+ return take(output, {
5095
+ CreationTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
5096
+ DeploymentStatus: __expectString,
5097
+ LastAttemptedExecutionTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
5098
+ LastSuccessfulExecutionTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
5099
+ ReportDeliveryChannel: _json,
5100
+ ReportPlanArn: __expectString,
5101
+ ReportPlanDescription: __expectString,
5102
+ ReportPlanName: __expectString,
5103
+ ReportSetting: _json,
5104
+ });
6198
5105
  };
6199
5106
  const de_ReportPlanList = (output, context) => {
6200
5107
  const retVal = (output || [])
6201
5108
  .filter((e) => e != null)
6202
5109
  .map((entry) => {
6203
- if (entry === null) {
6204
- return null;
6205
- }
6206
5110
  return de_ReportPlan(entry, context);
6207
5111
  });
6208
5112
  return retVal;
6209
5113
  };
6210
- const de_ReportSetting = (output, context) => {
6211
- return {
6212
- Accounts: output.Accounts != null ? de_stringList(output.Accounts, context) : undefined,
6213
- FrameworkArns: output.FrameworkArns != null ? de_stringList(output.FrameworkArns, context) : undefined,
6214
- NumberOfFrameworks: __expectInt32(output.NumberOfFrameworks),
6215
- OrganizationUnits: output.OrganizationUnits != null ? de_stringList(output.OrganizationUnits, context) : undefined,
6216
- Regions: output.Regions != null ? de_stringList(output.Regions, context) : undefined,
6217
- ReportTemplate: __expectString(output.ReportTemplate),
6218
- };
6219
- };
6220
- const de_ResourceArns = (output, context) => {
6221
- const retVal = (output || [])
6222
- .filter((e) => e != null)
6223
- .map((entry) => {
6224
- if (entry === null) {
6225
- return null;
6226
- }
6227
- return __expectString(entry);
6228
- });
6229
- return retVal;
6230
- };
6231
- const de_ResourceIdentifiers = (output, context) => {
6232
- const retVal = (output || [])
6233
- .filter((e) => e != null)
6234
- .map((entry) => {
6235
- if (entry === null) {
6236
- return null;
6237
- }
6238
- return __expectString(entry);
6239
- });
6240
- return retVal;
6241
- };
6242
- const de_ResourceTypeList = (output, context) => {
6243
- const retVal = (output || [])
6244
- .filter((e) => e != null)
6245
- .map((entry) => {
6246
- if (entry === null) {
6247
- return null;
6248
- }
6249
- return __expectString(entry);
6250
- });
6251
- return retVal;
6252
- };
6253
- const de_ResourceTypeManagementPreference = (output, context) => {
6254
- return Object.entries(output).reduce((acc, [key, value]) => {
6255
- if (value === null) {
6256
- return acc;
6257
- }
6258
- acc[key] = __expectBoolean(value);
6259
- return acc;
6260
- }, {});
6261
- };
6262
- const de_ResourceTypeOptInPreference = (output, context) => {
6263
- return Object.entries(output).reduce((acc, [key, value]) => {
6264
- if (value === null) {
6265
- return acc;
6266
- }
6267
- acc[key] = __expectBoolean(value);
6268
- return acc;
6269
- }, {});
6270
- };
6271
- const de_ResourceTypes = (output, context) => {
6272
- const retVal = (output || [])
6273
- .filter((e) => e != null)
6274
- .map((entry) => {
6275
- if (entry === null) {
6276
- return null;
6277
- }
6278
- return __expectString(entry);
6279
- });
6280
- return retVal;
6281
- };
6282
5114
  const de_RestoreJobsList = (output, context) => {
6283
5115
  const retVal = (output || [])
6284
5116
  .filter((e) => e != null)
6285
5117
  .map((entry) => {
6286
- if (entry === null) {
6287
- return null;
6288
- }
6289
5118
  return de_RestoreJobsListMember(entry, context);
6290
5119
  });
6291
5120
  return retVal;
6292
5121
  };
6293
5122
  const de_RestoreJobsListMember = (output, context) => {
6294
- return {
6295
- AccountId: __expectString(output.AccountId),
6296
- BackupSizeInBytes: __expectLong(output.BackupSizeInBytes),
6297
- CompletionDate: output.CompletionDate != null
6298
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.CompletionDate)))
6299
- : undefined,
6300
- CreatedResourceArn: __expectString(output.CreatedResourceArn),
6301
- CreationDate: output.CreationDate != null
6302
- ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.CreationDate)))
6303
- : undefined,
6304
- ExpectedCompletionTimeMinutes: __expectLong(output.ExpectedCompletionTimeMinutes),
6305
- IamRoleArn: __expectString(output.IamRoleArn),
6306
- PercentDone: __expectString(output.PercentDone),
6307
- RecoveryPointArn: __expectString(output.RecoveryPointArn),
6308
- ResourceType: __expectString(output.ResourceType),
6309
- RestoreJobId: __expectString(output.RestoreJobId),
6310
- Status: __expectString(output.Status),
6311
- StatusMessage: __expectString(output.StatusMessage),
6312
- };
6313
- };
6314
- const de_stringList = (output, context) => {
6315
- const retVal = (output || [])
6316
- .filter((e) => e != null)
6317
- .map((entry) => {
6318
- if (entry === null) {
6319
- return null;
6320
- }
6321
- return __expectString(entry);
5123
+ return take(output, {
5124
+ AccountId: __expectString,
5125
+ BackupSizeInBytes: __expectLong,
5126
+ CompletionDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
5127
+ CreatedResourceArn: __expectString,
5128
+ CreationDate: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
5129
+ ExpectedCompletionTimeMinutes: __expectLong,
5130
+ IamRoleArn: __expectString,
5131
+ PercentDone: __expectString,
5132
+ RecoveryPointArn: __expectString,
5133
+ ResourceType: __expectString,
5134
+ RestoreJobId: __expectString,
5135
+ Status: __expectString,
5136
+ StatusMessage: __expectString,
6322
5137
  });
6323
- return retVal;
6324
- };
6325
- const de_stringMap = (output, context) => {
6326
- return Object.entries(output).reduce((acc, [key, value]) => {
6327
- if (value === null) {
6328
- return acc;
6329
- }
6330
- acc[key] = __expectString(value);
6331
- return acc;
6332
- }, {});
6333
- };
6334
- const de_Tags = (output, context) => {
6335
- return Object.entries(output).reduce((acc, [key, value]) => {
6336
- if (value === null) {
6337
- return acc;
6338
- }
6339
- acc[key] = __expectString(value);
6340
- return acc;
6341
- }, {});
6342
- };
6343
- const de_VaultNames = (output, context) => {
6344
- const retVal = (output || [])
6345
- .filter((e) => e != null)
6346
- .map((entry) => {
6347
- if (entry === null) {
6348
- return null;
6349
- }
6350
- return __expectString(entry);
6351
- });
6352
- return retVal;
6353
5138
  };
6354
5139
  const deserializeMetadata = (output) => ({
6355
5140
  httpStatusCode: output.statusCode,