@aws-sdk/client-s3-control 3.457.0 → 3.458.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (168) hide show
  1. package/README.md +232 -72
  2. package/dist-cjs/S3Control.js +40 -0
  3. package/dist-cjs/commands/AssociateAccessGrantsIdentityCenterCommand.js +58 -0
  4. package/dist-cjs/commands/CreateAccessGrantCommand.js +58 -0
  5. package/dist-cjs/commands/CreateAccessGrantsInstanceCommand.js +58 -0
  6. package/dist-cjs/commands/CreateAccessGrantsLocationCommand.js +58 -0
  7. package/dist-cjs/commands/DeleteAccessGrantCommand.js +58 -0
  8. package/dist-cjs/commands/DeleteAccessGrantsInstanceCommand.js +58 -0
  9. package/dist-cjs/commands/DeleteAccessGrantsInstanceResourcePolicyCommand.js +58 -0
  10. package/dist-cjs/commands/DeleteAccessGrantsLocationCommand.js +58 -0
  11. package/dist-cjs/commands/DissociateAccessGrantsIdentityCenterCommand.js +58 -0
  12. package/dist-cjs/commands/GetAccessGrantCommand.js +58 -0
  13. package/dist-cjs/commands/GetAccessGrantsInstanceCommand.js +58 -0
  14. package/dist-cjs/commands/GetAccessGrantsInstanceForPrefixCommand.js +58 -0
  15. package/dist-cjs/commands/GetAccessGrantsInstanceResourcePolicyCommand.js +58 -0
  16. package/dist-cjs/commands/GetAccessGrantsLocationCommand.js +58 -0
  17. package/dist-cjs/commands/GetDataAccessCommand.js +59 -0
  18. package/dist-cjs/commands/ListAccessGrantsCommand.js +58 -0
  19. package/dist-cjs/commands/ListAccessGrantsInstancesCommand.js +58 -0
  20. package/dist-cjs/commands/ListAccessGrantsLocationsCommand.js +58 -0
  21. package/dist-cjs/commands/PutAccessGrantsInstanceResourcePolicyCommand.js +58 -0
  22. package/dist-cjs/commands/UpdateAccessGrantsLocationCommand.js +58 -0
  23. package/dist-cjs/commands/index.js +20 -0
  24. package/dist-cjs/models/index.js +1 -0
  25. package/dist-cjs/models/models_0.js +32 -38
  26. package/dist-cjs/models/models_1.js +40 -0
  27. package/dist-cjs/pagination/ListAccessGrantsInstancesPaginator.js +29 -0
  28. package/dist-cjs/pagination/ListAccessGrantsLocationsPaginator.js +29 -0
  29. package/dist-cjs/pagination/ListAccessGrantsPaginator.js +29 -0
  30. package/dist-cjs/pagination/index.js +3 -0
  31. package/dist-cjs/protocols/Aws_restXml.js +1697 -156
  32. package/dist-es/S3Control.js +40 -0
  33. package/dist-es/commands/AssociateAccessGrantsIdentityCenterCommand.js +54 -0
  34. package/dist-es/commands/CreateAccessGrantCommand.js +54 -0
  35. package/dist-es/commands/CreateAccessGrantsInstanceCommand.js +54 -0
  36. package/dist-es/commands/CreateAccessGrantsLocationCommand.js +54 -0
  37. package/dist-es/commands/DeleteAccessGrantCommand.js +54 -0
  38. package/dist-es/commands/DeleteAccessGrantsInstanceCommand.js +54 -0
  39. package/dist-es/commands/DeleteAccessGrantsInstanceResourcePolicyCommand.js +54 -0
  40. package/dist-es/commands/DeleteAccessGrantsLocationCommand.js +54 -0
  41. package/dist-es/commands/DissociateAccessGrantsIdentityCenterCommand.js +54 -0
  42. package/dist-es/commands/GetAccessGrantCommand.js +54 -0
  43. package/dist-es/commands/GetAccessGrantsInstanceCommand.js +54 -0
  44. package/dist-es/commands/GetAccessGrantsInstanceForPrefixCommand.js +54 -0
  45. package/dist-es/commands/GetAccessGrantsInstanceResourcePolicyCommand.js +54 -0
  46. package/dist-es/commands/GetAccessGrantsLocationCommand.js +54 -0
  47. package/dist-es/commands/GetDataAccessCommand.js +55 -0
  48. package/dist-es/commands/ListAccessGrantsCommand.js +54 -0
  49. package/dist-es/commands/ListAccessGrantsInstancesCommand.js +54 -0
  50. package/dist-es/commands/ListAccessGrantsLocationsCommand.js +54 -0
  51. package/dist-es/commands/PutAccessGrantsInstanceResourcePolicyCommand.js +54 -0
  52. package/dist-es/commands/UpdateAccessGrantsLocationCommand.js +54 -0
  53. package/dist-es/commands/index.js +20 -0
  54. package/dist-es/models/index.js +1 -0
  55. package/dist-es/models/models_0.js +28 -34
  56. package/dist-es/models/models_1.js +35 -0
  57. package/dist-es/pagination/ListAccessGrantsInstancesPaginator.js +25 -0
  58. package/dist-es/pagination/ListAccessGrantsLocationsPaginator.js +25 -0
  59. package/dist-es/pagination/ListAccessGrantsPaginator.js +25 -0
  60. package/dist-es/pagination/index.js +3 -0
  61. package/dist-es/protocols/Aws_restXml.js +1733 -233
  62. package/dist-types/S3Control.d.ts +140 -0
  63. package/dist-types/S3ControlClient.d.ts +22 -2
  64. package/dist-types/commands/AssociateAccessGrantsIdentityCenterCommand.d.ts +82 -0
  65. package/dist-types/commands/CreateAccessGrantCommand.d.ts +118 -0
  66. package/dist-types/commands/CreateAccessGrantsInstanceCommand.d.ts +93 -0
  67. package/dist-types/commands/CreateAccessGrantsLocationCommand.d.ts +111 -0
  68. package/dist-types/commands/DeleteAccessGrantCommand.d.ts +78 -0
  69. package/dist-types/commands/DeleteAccessGrantsInstanceCommand.d.ts +77 -0
  70. package/dist-types/commands/DeleteAccessGrantsInstanceResourcePolicyCommand.d.ts +77 -0
  71. package/dist-types/commands/DeleteAccessGrantsLocationCommand.d.ts +78 -0
  72. package/dist-types/commands/DeleteStorageLensGroupCommand.d.ts +5 -4
  73. package/dist-types/commands/DissociateAccessGrantsIdentityCenterCommand.d.ts +81 -0
  74. package/dist-types/commands/GetAccessGrantCommand.d.ts +93 -0
  75. package/dist-types/commands/GetAccessGrantsInstanceCommand.d.ts +82 -0
  76. package/dist-types/commands/GetAccessGrantsInstanceForPrefixCommand.d.ts +85 -0
  77. package/dist-types/commands/GetAccessGrantsInstanceResourcePolicyCommand.d.ts +81 -0
  78. package/dist-types/commands/GetAccessGrantsLocationCommand.d.ts +84 -0
  79. package/dist-types/commands/GetDataAccessCommand.d.ts +94 -0
  80. package/dist-types/commands/GetStorageLensGroupCommand.d.ts +5 -4
  81. package/dist-types/commands/ListAccessGrantsCommand.d.ts +104 -0
  82. package/dist-types/commands/ListAccessGrantsInstancesCommand.d.ts +89 -0
  83. package/dist-types/commands/ListAccessGrantsLocationsCommand.d.ts +91 -0
  84. package/dist-types/commands/ListStorageLensGroupsCommand.d.ts +8 -5
  85. package/dist-types/commands/ListTagsForResourceCommand.d.ts +12 -10
  86. package/dist-types/commands/PutAccessGrantsInstanceResourcePolicyCommand.d.ts +83 -0
  87. package/dist-types/commands/PutAccessPointConfigurationForObjectLambdaCommand.d.ts +1 -1
  88. package/dist-types/commands/PutAccessPointPolicyCommand.d.ts +1 -1
  89. package/dist-types/commands/PutAccessPointPolicyForObjectLambdaCommand.d.ts +1 -1
  90. package/dist-types/commands/PutBucketLifecycleConfigurationCommand.d.ts +1 -1
  91. package/dist-types/commands/PutBucketPolicyCommand.d.ts +1 -1
  92. package/dist-types/commands/PutBucketReplicationCommand.d.ts +1 -1
  93. package/dist-types/commands/PutBucketTaggingCommand.d.ts +1 -1
  94. package/dist-types/commands/PutBucketVersioningCommand.d.ts +1 -1
  95. package/dist-types/commands/PutJobTaggingCommand.d.ts +1 -1
  96. package/dist-types/commands/PutMultiRegionAccessPointPolicyCommand.d.ts +1 -1
  97. package/dist-types/commands/PutPublicAccessBlockCommand.d.ts +1 -1
  98. package/dist-types/commands/PutStorageLensConfigurationCommand.d.ts +1 -1
  99. package/dist-types/commands/PutStorageLensConfigurationTaggingCommand.d.ts +1 -1
  100. package/dist-types/commands/SubmitMultiRegionAccessPointRoutesCommand.d.ts +1 -1
  101. package/dist-types/commands/TagResourceCommand.d.ts +12 -10
  102. package/dist-types/commands/UntagResourceCommand.d.ts +12 -8
  103. package/dist-types/commands/UpdateAccessGrantsLocationCommand.d.ts +90 -0
  104. package/dist-types/commands/UpdateJobPriorityCommand.d.ts +1 -1
  105. package/dist-types/commands/UpdateJobStatusCommand.d.ts +1 -1
  106. package/dist-types/commands/UpdateStorageLensGroupCommand.d.ts +6 -5
  107. package/dist-types/commands/index.d.ts +20 -0
  108. package/dist-types/models/index.d.ts +1 -0
  109. package/dist-types/models/models_0.d.ts +1246 -854
  110. package/dist-types/models/models_1.d.ts +775 -0
  111. package/dist-types/pagination/ListAccessGrantsInstancesPaginator.d.ts +7 -0
  112. package/dist-types/pagination/ListAccessGrantsLocationsPaginator.d.ts +7 -0
  113. package/dist-types/pagination/ListAccessGrantsPaginator.d.ts +7 -0
  114. package/dist-types/pagination/index.d.ts +3 -0
  115. package/dist-types/protocols/Aws_restXml.d.ts +180 -0
  116. package/dist-types/ts3.4/S3Control.d.ts +370 -0
  117. package/dist-types/ts3.4/S3ControlClient.d.ts +120 -0
  118. package/dist-types/ts3.4/commands/AssociateAccessGrantsIdentityCenterCommand.d.ts +38 -0
  119. package/dist-types/ts3.4/commands/CreateAccessGrantCommand.d.ts +39 -0
  120. package/dist-types/ts3.4/commands/CreateAccessGrantsInstanceCommand.d.ts +42 -0
  121. package/dist-types/ts3.4/commands/CreateAccessGrantsLocationCommand.d.ts +42 -0
  122. package/dist-types/ts3.4/commands/DeleteAccessGrantCommand.d.ts +34 -0
  123. package/dist-types/ts3.4/commands/DeleteAccessGrantsInstanceCommand.d.ts +38 -0
  124. package/dist-types/ts3.4/commands/DeleteAccessGrantsInstanceResourcePolicyCommand.d.ts +38 -0
  125. package/dist-types/ts3.4/commands/DeleteAccessGrantsLocationCommand.d.ts +38 -0
  126. package/dist-types/ts3.4/commands/DissociateAccessGrantsIdentityCenterCommand.d.ts +38 -0
  127. package/dist-types/ts3.4/commands/GetAccessGrantCommand.d.ts +38 -0
  128. package/dist-types/ts3.4/commands/GetAccessGrantsInstanceCommand.d.ts +42 -0
  129. package/dist-types/ts3.4/commands/GetAccessGrantsInstanceForPrefixCommand.d.ts +42 -0
  130. package/dist-types/ts3.4/commands/GetAccessGrantsInstanceResourcePolicyCommand.d.ts +42 -0
  131. package/dist-types/ts3.4/commands/GetAccessGrantsLocationCommand.d.ts +42 -0
  132. package/dist-types/ts3.4/commands/GetDataAccessCommand.d.ts +35 -0
  133. package/dist-types/ts3.4/commands/ListAccessGrantsCommand.d.ts +38 -0
  134. package/dist-types/ts3.4/commands/ListAccessGrantsInstancesCommand.d.ts +42 -0
  135. package/dist-types/ts3.4/commands/ListAccessGrantsLocationsCommand.d.ts +42 -0
  136. package/dist-types/ts3.4/commands/ListStorageLensGroupsCommand.d.ts +2 -4
  137. package/dist-types/ts3.4/commands/ListTagsForResourceCommand.d.ts +1 -1
  138. package/dist-types/ts3.4/commands/PutAccessGrantsInstanceResourcePolicyCommand.d.ts +42 -0
  139. package/dist-types/ts3.4/commands/PutAccessPointConfigurationForObjectLambdaCommand.d.ts +1 -1
  140. package/dist-types/ts3.4/commands/PutAccessPointPolicyCommand.d.ts +1 -1
  141. package/dist-types/ts3.4/commands/PutAccessPointPolicyForObjectLambdaCommand.d.ts +1 -1
  142. package/dist-types/ts3.4/commands/PutBucketLifecycleConfigurationCommand.d.ts +1 -1
  143. package/dist-types/ts3.4/commands/PutBucketPolicyCommand.d.ts +1 -1
  144. package/dist-types/ts3.4/commands/PutBucketReplicationCommand.d.ts +1 -1
  145. package/dist-types/ts3.4/commands/PutBucketTaggingCommand.d.ts +1 -1
  146. package/dist-types/ts3.4/commands/PutBucketVersioningCommand.d.ts +1 -1
  147. package/dist-types/ts3.4/commands/PutJobTaggingCommand.d.ts +1 -1
  148. package/dist-types/ts3.4/commands/PutMultiRegionAccessPointPolicyCommand.d.ts +1 -1
  149. package/dist-types/ts3.4/commands/PutPublicAccessBlockCommand.d.ts +1 -1
  150. package/dist-types/ts3.4/commands/PutStorageLensConfigurationCommand.d.ts +1 -1
  151. package/dist-types/ts3.4/commands/PutStorageLensConfigurationTaggingCommand.d.ts +1 -1
  152. package/dist-types/ts3.4/commands/SubmitMultiRegionAccessPointRoutesCommand.d.ts +1 -1
  153. package/dist-types/ts3.4/commands/TagResourceCommand.d.ts +1 -1
  154. package/dist-types/ts3.4/commands/UntagResourceCommand.d.ts +1 -1
  155. package/dist-types/ts3.4/commands/UpdateAccessGrantsLocationCommand.d.ts +42 -0
  156. package/dist-types/ts3.4/commands/UpdateJobPriorityCommand.d.ts +1 -1
  157. package/dist-types/ts3.4/commands/UpdateJobStatusCommand.d.ts +1 -1
  158. package/dist-types/ts3.4/commands/UpdateStorageLensGroupCommand.d.ts +1 -1
  159. package/dist-types/ts3.4/commands/index.d.ts +20 -0
  160. package/dist-types/ts3.4/models/index.d.ts +1 -0
  161. package/dist-types/ts3.4/models/models_0.d.ts +228 -170
  162. package/dist-types/ts3.4/models/models_1.d.ts +205 -0
  163. package/dist-types/ts3.4/pagination/ListAccessGrantsInstancesPaginator.d.ts +11 -0
  164. package/dist-types/ts3.4/pagination/ListAccessGrantsLocationsPaginator.d.ts +11 -0
  165. package/dist-types/ts3.4/pagination/ListAccessGrantsPaginator.d.ts +11 -0
  166. package/dist-types/ts3.4/pagination/index.d.ts +3 -0
  167. package/dist-types/ts3.4/protocols/Aws_restXml.d.ts +240 -0
  168. package/package.json +3 -3
@@ -3,8 +3,208 @@ import { HttpRequest as __HttpRequest, isValidHostname as __isValidHostname, } f
3
3
  import { collectBody, decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, expectUnion as __expectUnion, getArrayIfSingleItem as __getArrayIfSingleItem, getValueFromTextNode as __getValueFromTextNode, map, parseBoolean as __parseBoolean, parseRfc3339DateTimeWithOffset as __parseRfc3339DateTimeWithOffset, resolvedPath as __resolvedPath, strictParseFloat as __strictParseFloat, strictParseInt32 as __strictParseInt32, strictParseLong as __strictParseLong, withBaseException, } from "@smithy/smithy-client";
4
4
  import { XMLParser } from "fast-xml-parser";
5
5
  import { v4 as generateIdempotencyToken } from "uuid";
6
- import { BadRequestException, BucketAlreadyExists, BucketAlreadyOwnedByYou, IdempotencyException, InternalServiceException, InvalidNextTokenException, InvalidRequestException, JobManifestGenerator, JobStatusException, NoSuchPublicAccessBlockConfiguration, NotFoundException, ObjectLambdaContentTransformation, TooManyRequestsException, TooManyTagsException, } from "../models/models_0";
6
+ import { BadRequestException, BucketAlreadyExists, BucketAlreadyOwnedByYou, IdempotencyException, InternalServiceException, InvalidNextTokenException, InvalidRequestException, JobManifestGenerator, NoSuchPublicAccessBlockConfiguration, NotFoundException, ObjectLambdaContentTransformation, TooManyRequestsException, } from "../models/models_0";
7
+ import { JobStatusException, TooManyTagsException, } from "../models/models_1";
7
8
  import { S3ControlServiceException as __BaseException } from "../models/S3ControlServiceException";
9
+ export const se_AssociateAccessGrantsIdentityCenterCommand = async (input, context) => {
10
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
11
+ const headers = map({}, isSerializableHeaderValue, {
12
+ "content-type": "application/xml",
13
+ "x-amz-account-id": input.AccountId,
14
+ });
15
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
16
+ "/v20180820/accessgrantsinstance/identitycenter";
17
+ let body;
18
+ body = '<?xml version="1.0" encoding="UTF-8"?>';
19
+ const bodyNode = new __XmlNode("AssociateAccessGrantsIdentityCenterRequest");
20
+ bodyNode.addAttribute("xmlns", "http://awss3control.amazonaws.com/doc/2018-08-20/");
21
+ if (input.IdentityCenterArn !== undefined) {
22
+ const node = __XmlNode.of("IdentityCenterArn", input.IdentityCenterArn).withName("IdentityCenterArn");
23
+ bodyNode.addChildNode(node);
24
+ }
25
+ body += bodyNode.toString();
26
+ let { hostname: resolvedHostname } = await context.endpoint();
27
+ if (context.disableHostPrefix !== true) {
28
+ resolvedHostname = "{AccountId}." + resolvedHostname;
29
+ if (input.AccountId === undefined) {
30
+ throw new Error("Empty value provided for input host prefix: AccountId.");
31
+ }
32
+ resolvedHostname = resolvedHostname.replace("{AccountId}", input.AccountId);
33
+ if (!__isValidHostname(resolvedHostname)) {
34
+ throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
35
+ }
36
+ }
37
+ return new __HttpRequest({
38
+ protocol,
39
+ hostname: resolvedHostname,
40
+ port,
41
+ method: "POST",
42
+ headers,
43
+ path: resolvedPath,
44
+ body,
45
+ });
46
+ };
47
+ export const se_CreateAccessGrantCommand = async (input, context) => {
48
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
49
+ const headers = map({}, isSerializableHeaderValue, {
50
+ "content-type": "application/xml",
51
+ "x-amz-account-id": input.AccountId,
52
+ });
53
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/accessgrantsinstance/grant";
54
+ let body;
55
+ body = '<?xml version="1.0" encoding="UTF-8"?>';
56
+ const bodyNode = new __XmlNode("CreateAccessGrantRequest");
57
+ bodyNode.addAttribute("xmlns", "http://awss3control.amazonaws.com/doc/2018-08-20/");
58
+ if (input.AccessGrantsLocationConfiguration !== undefined) {
59
+ const node = se_AccessGrantsLocationConfiguration(input.AccessGrantsLocationConfiguration, context).withName("AccessGrantsLocationConfiguration");
60
+ bodyNode.addChildNode(node);
61
+ }
62
+ if (input.AccessGrantsLocationId !== undefined) {
63
+ const node = __XmlNode
64
+ .of("AccessGrantsLocationId", input.AccessGrantsLocationId)
65
+ .withName("AccessGrantsLocationId");
66
+ bodyNode.addChildNode(node);
67
+ }
68
+ if (input.ApplicationArn !== undefined) {
69
+ const node = __XmlNode.of("IdentityCenterApplicationArn", input.ApplicationArn).withName("ApplicationArn");
70
+ bodyNode.addChildNode(node);
71
+ }
72
+ if (input.Grantee !== undefined) {
73
+ const node = se_Grantee(input.Grantee, context).withName("Grantee");
74
+ bodyNode.addChildNode(node);
75
+ }
76
+ if (input.Permission !== undefined) {
77
+ const node = __XmlNode.of("Permission", input.Permission).withName("Permission");
78
+ bodyNode.addChildNode(node);
79
+ }
80
+ if (input.S3PrefixType !== undefined) {
81
+ const node = __XmlNode.of("S3PrefixType", input.S3PrefixType).withName("S3PrefixType");
82
+ bodyNode.addChildNode(node);
83
+ }
84
+ if (input.Tags !== undefined) {
85
+ const nodes = se_TagList(input.Tags, context);
86
+ const containerNode = new __XmlNode("Tags");
87
+ nodes.map((node) => {
88
+ containerNode.addChildNode(node);
89
+ });
90
+ bodyNode.addChildNode(containerNode);
91
+ }
92
+ body += bodyNode.toString();
93
+ let { hostname: resolvedHostname } = await context.endpoint();
94
+ if (context.disableHostPrefix !== true) {
95
+ resolvedHostname = "{AccountId}." + resolvedHostname;
96
+ if (input.AccountId === undefined) {
97
+ throw new Error("Empty value provided for input host prefix: AccountId.");
98
+ }
99
+ resolvedHostname = resolvedHostname.replace("{AccountId}", input.AccountId);
100
+ if (!__isValidHostname(resolvedHostname)) {
101
+ throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
102
+ }
103
+ }
104
+ return new __HttpRequest({
105
+ protocol,
106
+ hostname: resolvedHostname,
107
+ port,
108
+ method: "POST",
109
+ headers,
110
+ path: resolvedPath,
111
+ body,
112
+ });
113
+ };
114
+ export const se_CreateAccessGrantsInstanceCommand = async (input, context) => {
115
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
116
+ const headers = map({}, isSerializableHeaderValue, {
117
+ "content-type": "application/xml",
118
+ "x-amz-account-id": input.AccountId,
119
+ });
120
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/accessgrantsinstance";
121
+ let body;
122
+ body = '<?xml version="1.0" encoding="UTF-8"?>';
123
+ const bodyNode = new __XmlNode("CreateAccessGrantsInstanceRequest");
124
+ bodyNode.addAttribute("xmlns", "http://awss3control.amazonaws.com/doc/2018-08-20/");
125
+ if (input.IdentityCenterArn !== undefined) {
126
+ const node = __XmlNode.of("IdentityCenterArn", input.IdentityCenterArn).withName("IdentityCenterArn");
127
+ bodyNode.addChildNode(node);
128
+ }
129
+ if (input.Tags !== undefined) {
130
+ const nodes = se_TagList(input.Tags, context);
131
+ const containerNode = new __XmlNode("Tags");
132
+ nodes.map((node) => {
133
+ containerNode.addChildNode(node);
134
+ });
135
+ bodyNode.addChildNode(containerNode);
136
+ }
137
+ body += bodyNode.toString();
138
+ let { hostname: resolvedHostname } = await context.endpoint();
139
+ if (context.disableHostPrefix !== true) {
140
+ resolvedHostname = "{AccountId}." + resolvedHostname;
141
+ if (input.AccountId === undefined) {
142
+ throw new Error("Empty value provided for input host prefix: AccountId.");
143
+ }
144
+ resolvedHostname = resolvedHostname.replace("{AccountId}", input.AccountId);
145
+ if (!__isValidHostname(resolvedHostname)) {
146
+ throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
147
+ }
148
+ }
149
+ return new __HttpRequest({
150
+ protocol,
151
+ hostname: resolvedHostname,
152
+ port,
153
+ method: "POST",
154
+ headers,
155
+ path: resolvedPath,
156
+ body,
157
+ });
158
+ };
159
+ export const se_CreateAccessGrantsLocationCommand = async (input, context) => {
160
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
161
+ const headers = map({}, isSerializableHeaderValue, {
162
+ "content-type": "application/xml",
163
+ "x-amz-account-id": input.AccountId,
164
+ });
165
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/accessgrantsinstance/location";
166
+ let body;
167
+ body = '<?xml version="1.0" encoding="UTF-8"?>';
168
+ const bodyNode = new __XmlNode("CreateAccessGrantsLocationRequest");
169
+ bodyNode.addAttribute("xmlns", "http://awss3control.amazonaws.com/doc/2018-08-20/");
170
+ if (input.IAMRoleArn !== undefined) {
171
+ const node = __XmlNode.of("IAMRoleArn", input.IAMRoleArn).withName("IAMRoleArn");
172
+ bodyNode.addChildNode(node);
173
+ }
174
+ if (input.LocationScope !== undefined) {
175
+ const node = __XmlNode.of("S3Prefix", input.LocationScope).withName("LocationScope");
176
+ bodyNode.addChildNode(node);
177
+ }
178
+ if (input.Tags !== undefined) {
179
+ const nodes = se_TagList(input.Tags, context);
180
+ const containerNode = new __XmlNode("Tags");
181
+ nodes.map((node) => {
182
+ containerNode.addChildNode(node);
183
+ });
184
+ bodyNode.addChildNode(containerNode);
185
+ }
186
+ body += bodyNode.toString();
187
+ let { hostname: resolvedHostname } = await context.endpoint();
188
+ if (context.disableHostPrefix !== true) {
189
+ resolvedHostname = "{AccountId}." + resolvedHostname;
190
+ if (input.AccountId === undefined) {
191
+ throw new Error("Empty value provided for input host prefix: AccountId.");
192
+ }
193
+ resolvedHostname = resolvedHostname.replace("{AccountId}", input.AccountId);
194
+ if (!__isValidHostname(resolvedHostname)) {
195
+ throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
196
+ }
197
+ }
198
+ return new __HttpRequest({
199
+ protocol,
200
+ hostname: resolvedHostname,
201
+ port,
202
+ method: "POST",
203
+ headers,
204
+ path: resolvedPath,
205
+ body,
206
+ });
207
+ };
8
208
  export const se_CreateAccessPointCommand = async (input, context) => {
9
209
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
10
210
  const headers = map({}, isSerializableHeaderValue, {
@@ -304,13 +504,14 @@ export const se_CreateStorageLensGroupCommand = async (input, context) => {
304
504
  body,
305
505
  });
306
506
  };
307
- export const se_DeleteAccessPointCommand = async (input, context) => {
507
+ export const se_DeleteAccessGrantCommand = async (input, context) => {
308
508
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
309
509
  const headers = map({}, isSerializableHeaderValue, {
310
510
  "x-amz-account-id": input.AccountId,
311
511
  });
312
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/accesspoint/{Name}";
313
- resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
512
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
513
+ "/v20180820/accessgrantsinstance/grant/{AccessGrantId}";
514
+ resolvedPath = __resolvedPath(resolvedPath, input, "AccessGrantId", () => input.AccessGrantId, "{AccessGrantId}", false);
314
515
  let body;
315
516
  let { hostname: resolvedHostname } = await context.endpoint();
316
517
  if (context.disableHostPrefix !== true) {
@@ -333,14 +534,12 @@ export const se_DeleteAccessPointCommand = async (input, context) => {
333
534
  body,
334
535
  });
335
536
  };
336
- export const se_DeleteAccessPointForObjectLambdaCommand = async (input, context) => {
537
+ export const se_DeleteAccessGrantsInstanceCommand = async (input, context) => {
337
538
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
338
539
  const headers = map({}, isSerializableHeaderValue, {
339
540
  "x-amz-account-id": input.AccountId,
340
541
  });
341
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
342
- "/v20180820/accesspointforobjectlambda/{Name}";
343
- resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
542
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/accessgrantsinstance";
344
543
  let body;
345
544
  let { hostname: resolvedHostname } = await context.endpoint();
346
545
  if (context.disableHostPrefix !== true) {
@@ -363,13 +562,13 @@ export const se_DeleteAccessPointForObjectLambdaCommand = async (input, context)
363
562
  body,
364
563
  });
365
564
  };
366
- export const se_DeleteAccessPointPolicyCommand = async (input, context) => {
565
+ export const se_DeleteAccessGrantsInstanceResourcePolicyCommand = async (input, context) => {
367
566
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
368
567
  const headers = map({}, isSerializableHeaderValue, {
369
568
  "x-amz-account-id": input.AccountId,
370
569
  });
371
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/accesspoint/{Name}/policy";
372
- resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
570
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
571
+ "/v20180820/accessgrantsinstance/resourcepolicy";
373
572
  let body;
374
573
  let { hostname: resolvedHostname } = await context.endpoint();
375
574
  if (context.disableHostPrefix !== true) {
@@ -392,14 +591,14 @@ export const se_DeleteAccessPointPolicyCommand = async (input, context) => {
392
591
  body,
393
592
  });
394
593
  };
395
- export const se_DeleteAccessPointPolicyForObjectLambdaCommand = async (input, context) => {
594
+ export const se_DeleteAccessGrantsLocationCommand = async (input, context) => {
396
595
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
397
596
  const headers = map({}, isSerializableHeaderValue, {
398
597
  "x-amz-account-id": input.AccountId,
399
598
  });
400
599
  let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
401
- "/v20180820/accesspointforobjectlambda/{Name}/policy";
402
- resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
600
+ "/v20180820/accessgrantsinstance/location/{AccessGrantsLocationId}";
601
+ resolvedPath = __resolvedPath(resolvedPath, input, "AccessGrantsLocationId", () => input.AccessGrantsLocationId, "{AccessGrantsLocationId}", false);
403
602
  let body;
404
603
  let { hostname: resolvedHostname } = await context.endpoint();
405
604
  if (context.disableHostPrefix !== true) {
@@ -422,13 +621,13 @@ export const se_DeleteAccessPointPolicyForObjectLambdaCommand = async (input, co
422
621
  body,
423
622
  });
424
623
  };
425
- export const se_DeleteBucketCommand = async (input, context) => {
624
+ export const se_DeleteAccessPointCommand = async (input, context) => {
426
625
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
427
626
  const headers = map({}, isSerializableHeaderValue, {
428
627
  "x-amz-account-id": input.AccountId,
429
628
  });
430
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/bucket/{Bucket}";
431
- resolvedPath = __resolvedPath(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false);
629
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/accesspoint/{Name}";
630
+ resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
432
631
  let body;
433
632
  let { hostname: resolvedHostname } = await context.endpoint();
434
633
  if (context.disableHostPrefix !== true) {
@@ -451,14 +650,14 @@ export const se_DeleteBucketCommand = async (input, context) => {
451
650
  body,
452
651
  });
453
652
  };
454
- export const se_DeleteBucketLifecycleConfigurationCommand = async (input, context) => {
653
+ export const se_DeleteAccessPointForObjectLambdaCommand = async (input, context) => {
455
654
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
456
655
  const headers = map({}, isSerializableHeaderValue, {
457
656
  "x-amz-account-id": input.AccountId,
458
657
  });
459
658
  let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
460
- "/v20180820/bucket/{Bucket}/lifecycleconfiguration";
461
- resolvedPath = __resolvedPath(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false);
659
+ "/v20180820/accesspointforobjectlambda/{Name}";
660
+ resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
462
661
  let body;
463
662
  let { hostname: resolvedHostname } = await context.endpoint();
464
663
  if (context.disableHostPrefix !== true) {
@@ -481,13 +680,13 @@ export const se_DeleteBucketLifecycleConfigurationCommand = async (input, contex
481
680
  body,
482
681
  });
483
682
  };
484
- export const se_DeleteBucketPolicyCommand = async (input, context) => {
683
+ export const se_DeleteAccessPointPolicyCommand = async (input, context) => {
485
684
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
486
685
  const headers = map({}, isSerializableHeaderValue, {
487
686
  "x-amz-account-id": input.AccountId,
488
687
  });
489
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/bucket/{Bucket}/policy";
490
- resolvedPath = __resolvedPath(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false);
688
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/accesspoint/{Name}/policy";
689
+ resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
491
690
  let body;
492
691
  let { hostname: resolvedHostname } = await context.endpoint();
493
692
  if (context.disableHostPrefix !== true) {
@@ -510,13 +709,14 @@ export const se_DeleteBucketPolicyCommand = async (input, context) => {
510
709
  body,
511
710
  });
512
711
  };
513
- export const se_DeleteBucketReplicationCommand = async (input, context) => {
712
+ export const se_DeleteAccessPointPolicyForObjectLambdaCommand = async (input, context) => {
514
713
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
515
714
  const headers = map({}, isSerializableHeaderValue, {
516
715
  "x-amz-account-id": input.AccountId,
517
716
  });
518
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/bucket/{Bucket}/replication";
519
- resolvedPath = __resolvedPath(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false);
717
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
718
+ "/v20180820/accesspointforobjectlambda/{Name}/policy";
719
+ resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
520
720
  let body;
521
721
  let { hostname: resolvedHostname } = await context.endpoint();
522
722
  if (context.disableHostPrefix !== true) {
@@ -539,12 +739,12 @@ export const se_DeleteBucketReplicationCommand = async (input, context) => {
539
739
  body,
540
740
  });
541
741
  };
542
- export const se_DeleteBucketTaggingCommand = async (input, context) => {
742
+ export const se_DeleteBucketCommand = async (input, context) => {
543
743
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
544
744
  const headers = map({}, isSerializableHeaderValue, {
545
745
  "x-amz-account-id": input.AccountId,
546
746
  });
547
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/bucket/{Bucket}/tagging";
747
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/bucket/{Bucket}";
548
748
  resolvedPath = __resolvedPath(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false);
549
749
  let body;
550
750
  let { hostname: resolvedHostname } = await context.endpoint();
@@ -568,13 +768,14 @@ export const se_DeleteBucketTaggingCommand = async (input, context) => {
568
768
  body,
569
769
  });
570
770
  };
571
- export const se_DeleteJobTaggingCommand = async (input, context) => {
771
+ export const se_DeleteBucketLifecycleConfigurationCommand = async (input, context) => {
572
772
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
573
773
  const headers = map({}, isSerializableHeaderValue, {
574
774
  "x-amz-account-id": input.AccountId,
575
775
  });
576
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/jobs/{JobId}/tagging";
577
- resolvedPath = __resolvedPath(resolvedPath, input, "JobId", () => input.JobId, "{JobId}", false);
776
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
777
+ "/v20180820/bucket/{Bucket}/lifecycleconfiguration";
778
+ resolvedPath = __resolvedPath(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false);
578
779
  let body;
579
780
  let { hostname: resolvedHostname } = await context.endpoint();
580
781
  if (context.disableHostPrefix !== true) {
@@ -597,29 +798,14 @@ export const se_DeleteJobTaggingCommand = async (input, context) => {
597
798
  body,
598
799
  });
599
800
  };
600
- export const se_DeleteMultiRegionAccessPointCommand = async (input, context) => {
801
+ export const se_DeleteBucketPolicyCommand = async (input, context) => {
601
802
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
602
803
  const headers = map({}, isSerializableHeaderValue, {
603
- "content-type": "application/xml",
604
804
  "x-amz-account-id": input.AccountId,
605
805
  });
606
- const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/async-requests/mrap/delete";
806
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/bucket/{Bucket}/policy";
807
+ resolvedPath = __resolvedPath(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false);
607
808
  let body;
608
- body = '<?xml version="1.0" encoding="UTF-8"?>';
609
- const bodyNode = new __XmlNode("DeleteMultiRegionAccessPointRequest");
610
- bodyNode.addAttribute("xmlns", "http://awss3control.amazonaws.com/doc/2018-08-20/");
611
- if (input.ClientToken === undefined) {
612
- input.ClientToken = generateIdempotencyToken();
613
- }
614
- if (input.ClientToken !== undefined) {
615
- const node = __XmlNode.of("MultiRegionAccessPointClientToken", input.ClientToken).withName("ClientToken");
616
- bodyNode.addChildNode(node);
617
- }
618
- if (input.Details !== undefined) {
619
- const node = se_DeleteMultiRegionAccessPointInput(input.Details, context).withName("Details");
620
- bodyNode.addChildNode(node);
621
- }
622
- body += bodyNode.toString();
623
809
  let { hostname: resolvedHostname } = await context.endpoint();
624
810
  if (context.disableHostPrefix !== true) {
625
811
  resolvedHostname = "{AccountId}." + resolvedHostname;
@@ -635,19 +821,19 @@ export const se_DeleteMultiRegionAccessPointCommand = async (input, context) =>
635
821
  protocol,
636
822
  hostname: resolvedHostname,
637
823
  port,
638
- method: "POST",
824
+ method: "DELETE",
639
825
  headers,
640
826
  path: resolvedPath,
641
827
  body,
642
828
  });
643
829
  };
644
- export const se_DeletePublicAccessBlockCommand = async (input, context) => {
830
+ export const se_DeleteBucketReplicationCommand = async (input, context) => {
645
831
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
646
832
  const headers = map({}, isSerializableHeaderValue, {
647
833
  "x-amz-account-id": input.AccountId,
648
834
  });
649
- const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
650
- "/v20180820/configuration/publicAccessBlock";
835
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/bucket/{Bucket}/replication";
836
+ resolvedPath = __resolvedPath(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false);
651
837
  let body;
652
838
  let { hostname: resolvedHostname } = await context.endpoint();
653
839
  if (context.disableHostPrefix !== true) {
@@ -670,13 +856,13 @@ export const se_DeletePublicAccessBlockCommand = async (input, context) => {
670
856
  body,
671
857
  });
672
858
  };
673
- export const se_DeleteStorageLensConfigurationCommand = async (input, context) => {
859
+ export const se_DeleteBucketTaggingCommand = async (input, context) => {
674
860
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
675
861
  const headers = map({}, isSerializableHeaderValue, {
676
862
  "x-amz-account-id": input.AccountId,
677
863
  });
678
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/storagelens/{ConfigId}";
679
- resolvedPath = __resolvedPath(resolvedPath, input, "ConfigId", () => input.ConfigId, "{ConfigId}", false);
864
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/bucket/{Bucket}/tagging";
865
+ resolvedPath = __resolvedPath(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false);
680
866
  let body;
681
867
  let { hostname: resolvedHostname } = await context.endpoint();
682
868
  if (context.disableHostPrefix !== true) {
@@ -699,13 +885,13 @@ export const se_DeleteStorageLensConfigurationCommand = async (input, context) =
699
885
  body,
700
886
  });
701
887
  };
702
- export const se_DeleteStorageLensConfigurationTaggingCommand = async (input, context) => {
888
+ export const se_DeleteJobTaggingCommand = async (input, context) => {
703
889
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
704
890
  const headers = map({}, isSerializableHeaderValue, {
705
891
  "x-amz-account-id": input.AccountId,
706
892
  });
707
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/storagelens/{ConfigId}/tagging";
708
- resolvedPath = __resolvedPath(resolvedPath, input, "ConfigId", () => input.ConfigId, "{ConfigId}", false);
893
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/jobs/{JobId}/tagging";
894
+ resolvedPath = __resolvedPath(resolvedPath, input, "JobId", () => input.JobId, "{JobId}", false);
709
895
  let body;
710
896
  let { hostname: resolvedHostname } = await context.endpoint();
711
897
  if (context.disableHostPrefix !== true) {
@@ -728,14 +914,29 @@ export const se_DeleteStorageLensConfigurationTaggingCommand = async (input, con
728
914
  body,
729
915
  });
730
916
  };
731
- export const se_DeleteStorageLensGroupCommand = async (input, context) => {
917
+ export const se_DeleteMultiRegionAccessPointCommand = async (input, context) => {
732
918
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
733
919
  const headers = map({}, isSerializableHeaderValue, {
920
+ "content-type": "application/xml",
734
921
  "x-amz-account-id": input.AccountId,
735
922
  });
736
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/storagelensgroup/{Name}";
737
- resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
923
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/async-requests/mrap/delete";
738
924
  let body;
925
+ body = '<?xml version="1.0" encoding="UTF-8"?>';
926
+ const bodyNode = new __XmlNode("DeleteMultiRegionAccessPointRequest");
927
+ bodyNode.addAttribute("xmlns", "http://awss3control.amazonaws.com/doc/2018-08-20/");
928
+ if (input.ClientToken === undefined) {
929
+ input.ClientToken = generateIdempotencyToken();
930
+ }
931
+ if (input.ClientToken !== undefined) {
932
+ const node = __XmlNode.of("MultiRegionAccessPointClientToken", input.ClientToken).withName("ClientToken");
933
+ bodyNode.addChildNode(node);
934
+ }
935
+ if (input.Details !== undefined) {
936
+ const node = se_DeleteMultiRegionAccessPointInput(input.Details, context).withName("Details");
937
+ bodyNode.addChildNode(node);
938
+ }
939
+ body += bodyNode.toString();
739
940
  let { hostname: resolvedHostname } = await context.endpoint();
740
941
  if (context.disableHostPrefix !== true) {
741
942
  resolvedHostname = "{AccountId}." + resolvedHostname;
@@ -751,19 +952,19 @@ export const se_DeleteStorageLensGroupCommand = async (input, context) => {
751
952
  protocol,
752
953
  hostname: resolvedHostname,
753
954
  port,
754
- method: "DELETE",
955
+ method: "POST",
755
956
  headers,
756
957
  path: resolvedPath,
757
958
  body,
758
959
  });
759
960
  };
760
- export const se_DescribeJobCommand = async (input, context) => {
961
+ export const se_DeletePublicAccessBlockCommand = async (input, context) => {
761
962
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
762
963
  const headers = map({}, isSerializableHeaderValue, {
763
964
  "x-amz-account-id": input.AccountId,
764
965
  });
765
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/jobs/{JobId}";
766
- resolvedPath = __resolvedPath(resolvedPath, input, "JobId", () => input.JobId, "{JobId}", false);
966
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
967
+ "/v20180820/configuration/publicAccessBlock";
767
968
  let body;
768
969
  let { hostname: resolvedHostname } = await context.endpoint();
769
970
  if (context.disableHostPrefix !== true) {
@@ -780,20 +981,19 @@ export const se_DescribeJobCommand = async (input, context) => {
780
981
  protocol,
781
982
  hostname: resolvedHostname,
782
983
  port,
783
- method: "GET",
984
+ method: "DELETE",
784
985
  headers,
785
986
  path: resolvedPath,
786
987
  body,
787
988
  });
788
989
  };
789
- export const se_DescribeMultiRegionAccessPointOperationCommand = async (input, context) => {
990
+ export const se_DeleteStorageLensConfigurationCommand = async (input, context) => {
790
991
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
791
992
  const headers = map({}, isSerializableHeaderValue, {
792
993
  "x-amz-account-id": input.AccountId,
793
994
  });
794
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
795
- "/v20180820/async-requests/mrap/{RequestTokenARN+}";
796
- resolvedPath = __resolvedPath(resolvedPath, input, "RequestTokenARN", () => input.RequestTokenARN, "{RequestTokenARN+}", true);
995
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/storagelens/{ConfigId}";
996
+ resolvedPath = __resolvedPath(resolvedPath, input, "ConfigId", () => input.ConfigId, "{ConfigId}", false);
797
997
  let body;
798
998
  let { hostname: resolvedHostname } = await context.endpoint();
799
999
  if (context.disableHostPrefix !== true) {
@@ -810,19 +1010,19 @@ export const se_DescribeMultiRegionAccessPointOperationCommand = async (input, c
810
1010
  protocol,
811
1011
  hostname: resolvedHostname,
812
1012
  port,
813
- method: "GET",
1013
+ method: "DELETE",
814
1014
  headers,
815
1015
  path: resolvedPath,
816
1016
  body,
817
1017
  });
818
1018
  };
819
- export const se_GetAccessPointCommand = async (input, context) => {
1019
+ export const se_DeleteStorageLensConfigurationTaggingCommand = async (input, context) => {
820
1020
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
821
1021
  const headers = map({}, isSerializableHeaderValue, {
822
1022
  "x-amz-account-id": input.AccountId,
823
1023
  });
824
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/accesspoint/{Name}";
825
- resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
1024
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/storagelens/{ConfigId}/tagging";
1025
+ resolvedPath = __resolvedPath(resolvedPath, input, "ConfigId", () => input.ConfigId, "{ConfigId}", false);
826
1026
  let body;
827
1027
  let { hostname: resolvedHostname } = await context.endpoint();
828
1028
  if (context.disableHostPrefix !== true) {
@@ -839,19 +1039,18 @@ export const se_GetAccessPointCommand = async (input, context) => {
839
1039
  protocol,
840
1040
  hostname: resolvedHostname,
841
1041
  port,
842
- method: "GET",
1042
+ method: "DELETE",
843
1043
  headers,
844
1044
  path: resolvedPath,
845
1045
  body,
846
1046
  });
847
1047
  };
848
- export const se_GetAccessPointConfigurationForObjectLambdaCommand = async (input, context) => {
1048
+ export const se_DeleteStorageLensGroupCommand = async (input, context) => {
849
1049
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
850
1050
  const headers = map({}, isSerializableHeaderValue, {
851
1051
  "x-amz-account-id": input.AccountId,
852
1052
  });
853
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
854
- "/v20180820/accesspointforobjectlambda/{Name}/configuration";
1053
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/storagelensgroup/{Name}";
855
1054
  resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
856
1055
  let body;
857
1056
  let { hostname: resolvedHostname } = await context.endpoint();
@@ -869,20 +1068,19 @@ export const se_GetAccessPointConfigurationForObjectLambdaCommand = async (input
869
1068
  protocol,
870
1069
  hostname: resolvedHostname,
871
1070
  port,
872
- method: "GET",
1071
+ method: "DELETE",
873
1072
  headers,
874
1073
  path: resolvedPath,
875
1074
  body,
876
1075
  });
877
1076
  };
878
- export const se_GetAccessPointForObjectLambdaCommand = async (input, context) => {
1077
+ export const se_DescribeJobCommand = async (input, context) => {
879
1078
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
880
1079
  const headers = map({}, isSerializableHeaderValue, {
881
1080
  "x-amz-account-id": input.AccountId,
882
1081
  });
883
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
884
- "/v20180820/accesspointforobjectlambda/{Name}";
885
- resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
1082
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/jobs/{JobId}";
1083
+ resolvedPath = __resolvedPath(resolvedPath, input, "JobId", () => input.JobId, "{JobId}", false);
886
1084
  let body;
887
1085
  let { hostname: resolvedHostname } = await context.endpoint();
888
1086
  if (context.disableHostPrefix !== true) {
@@ -905,13 +1103,14 @@ export const se_GetAccessPointForObjectLambdaCommand = async (input, context) =>
905
1103
  body,
906
1104
  });
907
1105
  };
908
- export const se_GetAccessPointPolicyCommand = async (input, context) => {
1106
+ export const se_DescribeMultiRegionAccessPointOperationCommand = async (input, context) => {
909
1107
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
910
1108
  const headers = map({}, isSerializableHeaderValue, {
911
1109
  "x-amz-account-id": input.AccountId,
912
1110
  });
913
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/accesspoint/{Name}/policy";
914
- resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
1111
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
1112
+ "/v20180820/async-requests/mrap/{RequestTokenARN+}";
1113
+ resolvedPath = __resolvedPath(resolvedPath, input, "RequestTokenARN", () => input.RequestTokenARN, "{RequestTokenARN+}", true);
915
1114
  let body;
916
1115
  let { hostname: resolvedHostname } = await context.endpoint();
917
1116
  if (context.disableHostPrefix !== true) {
@@ -934,14 +1133,13 @@ export const se_GetAccessPointPolicyCommand = async (input, context) => {
934
1133
  body,
935
1134
  });
936
1135
  };
937
- export const se_GetAccessPointPolicyForObjectLambdaCommand = async (input, context) => {
1136
+ export const se_DissociateAccessGrantsIdentityCenterCommand = async (input, context) => {
938
1137
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
939
1138
  const headers = map({}, isSerializableHeaderValue, {
940
1139
  "x-amz-account-id": input.AccountId,
941
1140
  });
942
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
943
- "/v20180820/accesspointforobjectlambda/{Name}/policy";
944
- resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
1141
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
1142
+ "/v20180820/accessgrantsinstance/identitycenter";
945
1143
  let body;
946
1144
  let { hostname: resolvedHostname } = await context.endpoint();
947
1145
  if (context.disableHostPrefix !== true) {
@@ -958,20 +1156,20 @@ export const se_GetAccessPointPolicyForObjectLambdaCommand = async (input, conte
958
1156
  protocol,
959
1157
  hostname: resolvedHostname,
960
1158
  port,
961
- method: "GET",
1159
+ method: "DELETE",
962
1160
  headers,
963
1161
  path: resolvedPath,
964
1162
  body,
965
1163
  });
966
1164
  };
967
- export const se_GetAccessPointPolicyStatusCommand = async (input, context) => {
1165
+ export const se_GetAccessGrantCommand = async (input, context) => {
968
1166
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
969
1167
  const headers = map({}, isSerializableHeaderValue, {
970
1168
  "x-amz-account-id": input.AccountId,
971
1169
  });
972
1170
  let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
973
- "/v20180820/accesspoint/{Name}/policyStatus";
974
- resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
1171
+ "/v20180820/accessgrantsinstance/grant/{AccessGrantId}";
1172
+ resolvedPath = __resolvedPath(resolvedPath, input, "AccessGrantId", () => input.AccessGrantId, "{AccessGrantId}", false);
975
1173
  let body;
976
1174
  let { hostname: resolvedHostname } = await context.endpoint();
977
1175
  if (context.disableHostPrefix !== true) {
@@ -994,14 +1192,12 @@ export const se_GetAccessPointPolicyStatusCommand = async (input, context) => {
994
1192
  body,
995
1193
  });
996
1194
  };
997
- export const se_GetAccessPointPolicyStatusForObjectLambdaCommand = async (input, context) => {
1195
+ export const se_GetAccessGrantsInstanceCommand = async (input, context) => {
998
1196
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
999
1197
  const headers = map({}, isSerializableHeaderValue, {
1000
1198
  "x-amz-account-id": input.AccountId,
1001
1199
  });
1002
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
1003
- "/v20180820/accesspointforobjectlambda/{Name}/policyStatus";
1004
- resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
1200
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/accessgrantsinstance";
1005
1201
  let body;
1006
1202
  let { hostname: resolvedHostname } = await context.endpoint();
1007
1203
  if (context.disableHostPrefix !== true) {
@@ -1024,13 +1220,15 @@ export const se_GetAccessPointPolicyStatusForObjectLambdaCommand = async (input,
1024
1220
  body,
1025
1221
  });
1026
1222
  };
1027
- export const se_GetBucketCommand = async (input, context) => {
1223
+ export const se_GetAccessGrantsInstanceForPrefixCommand = async (input, context) => {
1028
1224
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
1029
1225
  const headers = map({}, isSerializableHeaderValue, {
1030
1226
  "x-amz-account-id": input.AccountId,
1031
1227
  });
1032
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/bucket/{Bucket}";
1033
- resolvedPath = __resolvedPath(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false);
1228
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/accessgrantsinstance/prefix";
1229
+ const query = map({
1230
+ s3prefix: [, __expectNonNull(input.S3Prefix, `S3Prefix`)],
1231
+ });
1034
1232
  let body;
1035
1233
  let { hostname: resolvedHostname } = await context.endpoint();
1036
1234
  if (context.disableHostPrefix !== true) {
@@ -1050,17 +1248,17 @@ export const se_GetBucketCommand = async (input, context) => {
1050
1248
  method: "GET",
1051
1249
  headers,
1052
1250
  path: resolvedPath,
1251
+ query,
1053
1252
  body,
1054
1253
  });
1055
1254
  };
1056
- export const se_GetBucketLifecycleConfigurationCommand = async (input, context) => {
1255
+ export const se_GetAccessGrantsInstanceResourcePolicyCommand = async (input, context) => {
1057
1256
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
1058
1257
  const headers = map({}, isSerializableHeaderValue, {
1059
1258
  "x-amz-account-id": input.AccountId,
1060
1259
  });
1061
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
1062
- "/v20180820/bucket/{Bucket}/lifecycleconfiguration";
1063
- resolvedPath = __resolvedPath(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false);
1260
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
1261
+ "/v20180820/accessgrantsinstance/resourcepolicy";
1064
1262
  let body;
1065
1263
  let { hostname: resolvedHostname } = await context.endpoint();
1066
1264
  if (context.disableHostPrefix !== true) {
@@ -1083,13 +1281,14 @@ export const se_GetBucketLifecycleConfigurationCommand = async (input, context)
1083
1281
  body,
1084
1282
  });
1085
1283
  };
1086
- export const se_GetBucketPolicyCommand = async (input, context) => {
1284
+ export const se_GetAccessGrantsLocationCommand = async (input, context) => {
1087
1285
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
1088
1286
  const headers = map({}, isSerializableHeaderValue, {
1089
1287
  "x-amz-account-id": input.AccountId,
1090
1288
  });
1091
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/bucket/{Bucket}/policy";
1092
- resolvedPath = __resolvedPath(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false);
1289
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
1290
+ "/v20180820/accessgrantsinstance/location/{AccessGrantsLocationId}";
1291
+ resolvedPath = __resolvedPath(resolvedPath, input, "AccessGrantsLocationId", () => input.AccessGrantsLocationId, "{AccessGrantsLocationId}", false);
1093
1292
  let body;
1094
1293
  let { hostname: resolvedHostname } = await context.endpoint();
1095
1294
  if (context.disableHostPrefix !== true) {
@@ -1112,13 +1311,13 @@ export const se_GetBucketPolicyCommand = async (input, context) => {
1112
1311
  body,
1113
1312
  });
1114
1313
  };
1115
- export const se_GetBucketReplicationCommand = async (input, context) => {
1314
+ export const se_GetAccessPointCommand = async (input, context) => {
1116
1315
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
1117
1316
  const headers = map({}, isSerializableHeaderValue, {
1118
1317
  "x-amz-account-id": input.AccountId,
1119
1318
  });
1120
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/bucket/{Bucket}/replication";
1121
- resolvedPath = __resolvedPath(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false);
1319
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/accesspoint/{Name}";
1320
+ resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
1122
1321
  let body;
1123
1322
  let { hostname: resolvedHostname } = await context.endpoint();
1124
1323
  if (context.disableHostPrefix !== true) {
@@ -1141,13 +1340,14 @@ export const se_GetBucketReplicationCommand = async (input, context) => {
1141
1340
  body,
1142
1341
  });
1143
1342
  };
1144
- export const se_GetBucketTaggingCommand = async (input, context) => {
1343
+ export const se_GetAccessPointConfigurationForObjectLambdaCommand = async (input, context) => {
1145
1344
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
1146
1345
  const headers = map({}, isSerializableHeaderValue, {
1147
1346
  "x-amz-account-id": input.AccountId,
1148
1347
  });
1149
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/bucket/{Bucket}/tagging";
1150
- resolvedPath = __resolvedPath(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false);
1348
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
1349
+ "/v20180820/accesspointforobjectlambda/{Name}/configuration";
1350
+ resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
1151
1351
  let body;
1152
1352
  let { hostname: resolvedHostname } = await context.endpoint();
1153
1353
  if (context.disableHostPrefix !== true) {
@@ -1170,13 +1370,14 @@ export const se_GetBucketTaggingCommand = async (input, context) => {
1170
1370
  body,
1171
1371
  });
1172
1372
  };
1173
- export const se_GetBucketVersioningCommand = async (input, context) => {
1373
+ export const se_GetAccessPointForObjectLambdaCommand = async (input, context) => {
1174
1374
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
1175
1375
  const headers = map({}, isSerializableHeaderValue, {
1176
1376
  "x-amz-account-id": input.AccountId,
1177
1377
  });
1178
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/bucket/{Bucket}/versioning";
1179
- resolvedPath = __resolvedPath(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false);
1378
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
1379
+ "/v20180820/accesspointforobjectlambda/{Name}";
1380
+ resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
1180
1381
  let body;
1181
1382
  let { hostname: resolvedHostname } = await context.endpoint();
1182
1383
  if (context.disableHostPrefix !== true) {
@@ -1199,13 +1400,13 @@ export const se_GetBucketVersioningCommand = async (input, context) => {
1199
1400
  body,
1200
1401
  });
1201
1402
  };
1202
- export const se_GetJobTaggingCommand = async (input, context) => {
1403
+ export const se_GetAccessPointPolicyCommand = async (input, context) => {
1203
1404
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
1204
1405
  const headers = map({}, isSerializableHeaderValue, {
1205
1406
  "x-amz-account-id": input.AccountId,
1206
1407
  });
1207
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/jobs/{JobId}/tagging";
1208
- resolvedPath = __resolvedPath(resolvedPath, input, "JobId", () => input.JobId, "{JobId}", false);
1408
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/accesspoint/{Name}/policy";
1409
+ resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
1209
1410
  let body;
1210
1411
  let { hostname: resolvedHostname } = await context.endpoint();
1211
1412
  if (context.disableHostPrefix !== true) {
@@ -1228,13 +1429,14 @@ export const se_GetJobTaggingCommand = async (input, context) => {
1228
1429
  body,
1229
1430
  });
1230
1431
  };
1231
- export const se_GetMultiRegionAccessPointCommand = async (input, context) => {
1432
+ export const se_GetAccessPointPolicyForObjectLambdaCommand = async (input, context) => {
1232
1433
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
1233
1434
  const headers = map({}, isSerializableHeaderValue, {
1234
1435
  "x-amz-account-id": input.AccountId,
1235
1436
  });
1236
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/mrap/instances/{Name+}";
1237
- resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name+}", true);
1437
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
1438
+ "/v20180820/accesspointforobjectlambda/{Name}/policy";
1439
+ resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
1238
1440
  let body;
1239
1441
  let { hostname: resolvedHostname } = await context.endpoint();
1240
1442
  if (context.disableHostPrefix !== true) {
@@ -1257,13 +1459,14 @@ export const se_GetMultiRegionAccessPointCommand = async (input, context) => {
1257
1459
  body,
1258
1460
  });
1259
1461
  };
1260
- export const se_GetMultiRegionAccessPointPolicyCommand = async (input, context) => {
1462
+ export const se_GetAccessPointPolicyStatusCommand = async (input, context) => {
1261
1463
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
1262
1464
  const headers = map({}, isSerializableHeaderValue, {
1263
1465
  "x-amz-account-id": input.AccountId,
1264
1466
  });
1265
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/mrap/instances/{Name+}/policy";
1266
- resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name+}", true);
1467
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
1468
+ "/v20180820/accesspoint/{Name}/policyStatus";
1469
+ resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
1267
1470
  let body;
1268
1471
  let { hostname: resolvedHostname } = await context.endpoint();
1269
1472
  if (context.disableHostPrefix !== true) {
@@ -1286,14 +1489,14 @@ export const se_GetMultiRegionAccessPointPolicyCommand = async (input, context)
1286
1489
  body,
1287
1490
  });
1288
1491
  };
1289
- export const se_GetMultiRegionAccessPointPolicyStatusCommand = async (input, context) => {
1492
+ export const se_GetAccessPointPolicyStatusForObjectLambdaCommand = async (input, context) => {
1290
1493
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
1291
1494
  const headers = map({}, isSerializableHeaderValue, {
1292
1495
  "x-amz-account-id": input.AccountId,
1293
1496
  });
1294
1497
  let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
1295
- "/v20180820/mrap/instances/{Name+}/policystatus";
1296
- resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name+}", true);
1498
+ "/v20180820/accesspointforobjectlambda/{Name}/policyStatus";
1499
+ resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
1297
1500
  let body;
1298
1501
  let { hostname: resolvedHostname } = await context.endpoint();
1299
1502
  if (context.disableHostPrefix !== true) {
@@ -1316,13 +1519,13 @@ export const se_GetMultiRegionAccessPointPolicyStatusCommand = async (input, con
1316
1519
  body,
1317
1520
  });
1318
1521
  };
1319
- export const se_GetMultiRegionAccessPointRoutesCommand = async (input, context) => {
1522
+ export const se_GetBucketCommand = async (input, context) => {
1320
1523
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
1321
1524
  const headers = map({}, isSerializableHeaderValue, {
1322
1525
  "x-amz-account-id": input.AccountId,
1323
1526
  });
1324
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/mrap/instances/{Mrap+}/routes";
1325
- resolvedPath = __resolvedPath(resolvedPath, input, "Mrap", () => input.Mrap, "{Mrap+}", true);
1527
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/bucket/{Bucket}";
1528
+ resolvedPath = __resolvedPath(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false);
1326
1529
  let body;
1327
1530
  let { hostname: resolvedHostname } = await context.endpoint();
1328
1531
  if (context.disableHostPrefix !== true) {
@@ -1345,13 +1548,14 @@ export const se_GetMultiRegionAccessPointRoutesCommand = async (input, context)
1345
1548
  body,
1346
1549
  });
1347
1550
  };
1348
- export const se_GetPublicAccessBlockCommand = async (input, context) => {
1551
+ export const se_GetBucketLifecycleConfigurationCommand = async (input, context) => {
1349
1552
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
1350
1553
  const headers = map({}, isSerializableHeaderValue, {
1351
1554
  "x-amz-account-id": input.AccountId,
1352
1555
  });
1353
- const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
1354
- "/v20180820/configuration/publicAccessBlock";
1556
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
1557
+ "/v20180820/bucket/{Bucket}/lifecycleconfiguration";
1558
+ resolvedPath = __resolvedPath(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false);
1355
1559
  let body;
1356
1560
  let { hostname: resolvedHostname } = await context.endpoint();
1357
1561
  if (context.disableHostPrefix !== true) {
@@ -1374,13 +1578,13 @@ export const se_GetPublicAccessBlockCommand = async (input, context) => {
1374
1578
  body,
1375
1579
  });
1376
1580
  };
1377
- export const se_GetStorageLensConfigurationCommand = async (input, context) => {
1581
+ export const se_GetBucketPolicyCommand = async (input, context) => {
1378
1582
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
1379
1583
  const headers = map({}, isSerializableHeaderValue, {
1380
1584
  "x-amz-account-id": input.AccountId,
1381
1585
  });
1382
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/storagelens/{ConfigId}";
1383
- resolvedPath = __resolvedPath(resolvedPath, input, "ConfigId", () => input.ConfigId, "{ConfigId}", false);
1586
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/bucket/{Bucket}/policy";
1587
+ resolvedPath = __resolvedPath(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false);
1384
1588
  let body;
1385
1589
  let { hostname: resolvedHostname } = await context.endpoint();
1386
1590
  if (context.disableHostPrefix !== true) {
@@ -1403,13 +1607,13 @@ export const se_GetStorageLensConfigurationCommand = async (input, context) => {
1403
1607
  body,
1404
1608
  });
1405
1609
  };
1406
- export const se_GetStorageLensConfigurationTaggingCommand = async (input, context) => {
1610
+ export const se_GetBucketReplicationCommand = async (input, context) => {
1407
1611
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
1408
1612
  const headers = map({}, isSerializableHeaderValue, {
1409
1613
  "x-amz-account-id": input.AccountId,
1410
1614
  });
1411
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/storagelens/{ConfigId}/tagging";
1412
- resolvedPath = __resolvedPath(resolvedPath, input, "ConfigId", () => input.ConfigId, "{ConfigId}", false);
1615
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/bucket/{Bucket}/replication";
1616
+ resolvedPath = __resolvedPath(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false);
1413
1617
  let body;
1414
1618
  let { hostname: resolvedHostname } = await context.endpoint();
1415
1619
  if (context.disableHostPrefix !== true) {
@@ -1432,13 +1636,13 @@ export const se_GetStorageLensConfigurationTaggingCommand = async (input, contex
1432
1636
  body,
1433
1637
  });
1434
1638
  };
1435
- export const se_GetStorageLensGroupCommand = async (input, context) => {
1639
+ export const se_GetBucketTaggingCommand = async (input, context) => {
1436
1640
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
1437
1641
  const headers = map({}, isSerializableHeaderValue, {
1438
1642
  "x-amz-account-id": input.AccountId,
1439
1643
  });
1440
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/storagelensgroup/{Name}";
1441
- resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
1644
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/bucket/{Bucket}/tagging";
1645
+ resolvedPath = __resolvedPath(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false);
1442
1646
  let body;
1443
1647
  let { hostname: resolvedHostname } = await context.endpoint();
1444
1648
  if (context.disableHostPrefix !== true) {
@@ -1461,17 +1665,13 @@ export const se_GetStorageLensGroupCommand = async (input, context) => {
1461
1665
  body,
1462
1666
  });
1463
1667
  };
1464
- export const se_ListAccessPointsCommand = async (input, context) => {
1668
+ export const se_GetBucketVersioningCommand = async (input, context) => {
1465
1669
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
1466
1670
  const headers = map({}, isSerializableHeaderValue, {
1467
1671
  "x-amz-account-id": input.AccountId,
1468
1672
  });
1469
- const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/accesspoint";
1470
- const query = map({
1471
- bucket: [, input.Bucket],
1472
- nextToken: [, input.NextToken],
1473
- maxResults: [() => input.MaxResults !== void 0, () => input.MaxResults.toString()],
1474
- });
1673
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/bucket/{Bucket}/versioning";
1674
+ resolvedPath = __resolvedPath(resolvedPath, input, "Bucket", () => input.Bucket, "{Bucket}", false);
1475
1675
  let body;
1476
1676
  let { hostname: resolvedHostname } = await context.endpoint();
1477
1677
  if (context.disableHostPrefix !== true) {
@@ -1491,19 +1691,22 @@ export const se_ListAccessPointsCommand = async (input, context) => {
1491
1691
  method: "GET",
1492
1692
  headers,
1493
1693
  path: resolvedPath,
1494
- query,
1495
1694
  body,
1496
1695
  });
1497
1696
  };
1498
- export const se_ListAccessPointsForObjectLambdaCommand = async (input, context) => {
1697
+ export const se_GetDataAccessCommand = async (input, context) => {
1499
1698
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
1500
1699
  const headers = map({}, isSerializableHeaderValue, {
1501
1700
  "x-amz-account-id": input.AccountId,
1502
1701
  });
1503
- const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/accesspointforobjectlambda";
1702
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
1703
+ "/v20180820/accessgrantsinstance/dataaccess";
1504
1704
  const query = map({
1505
- nextToken: [, input.NextToken],
1506
- maxResults: [() => input.MaxResults !== void 0, () => input.MaxResults.toString()],
1705
+ target: [, __expectNonNull(input.Target, `Target`)],
1706
+ permission: [, __expectNonNull(input.Permission, `Permission`)],
1707
+ durationSeconds: [() => input.DurationSeconds !== void 0, () => input.DurationSeconds.toString()],
1708
+ privilege: [, input.Privilege],
1709
+ targetType: [, input.TargetType],
1507
1710
  });
1508
1711
  let body;
1509
1712
  let { hostname: resolvedHostname } = await context.endpoint();
@@ -1528,17 +1731,13 @@ export const se_ListAccessPointsForObjectLambdaCommand = async (input, context)
1528
1731
  body,
1529
1732
  });
1530
1733
  };
1531
- export const se_ListJobsCommand = async (input, context) => {
1734
+ export const se_GetJobTaggingCommand = async (input, context) => {
1532
1735
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
1533
1736
  const headers = map({}, isSerializableHeaderValue, {
1534
1737
  "x-amz-account-id": input.AccountId,
1535
1738
  });
1536
- const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/jobs";
1537
- const query = map({
1538
- jobStatuses: [() => input.JobStatuses !== void 0, () => (input.JobStatuses || []).map((_entry) => _entry)],
1539
- nextToken: [, input.NextToken],
1540
- maxResults: [() => input.MaxResults !== void 0, () => input.MaxResults.toString()],
1541
- });
1739
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/jobs/{JobId}/tagging";
1740
+ resolvedPath = __resolvedPath(resolvedPath, input, "JobId", () => input.JobId, "{JobId}", false);
1542
1741
  let body;
1543
1742
  let { hostname: resolvedHostname } = await context.endpoint();
1544
1743
  if (context.disableHostPrefix !== true) {
@@ -1558,20 +1757,16 @@ export const se_ListJobsCommand = async (input, context) => {
1558
1757
  method: "GET",
1559
1758
  headers,
1560
1759
  path: resolvedPath,
1561
- query,
1562
1760
  body,
1563
1761
  });
1564
1762
  };
1565
- export const se_ListMultiRegionAccessPointsCommand = async (input, context) => {
1763
+ export const se_GetMultiRegionAccessPointCommand = async (input, context) => {
1566
1764
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
1567
1765
  const headers = map({}, isSerializableHeaderValue, {
1568
1766
  "x-amz-account-id": input.AccountId,
1569
1767
  });
1570
- const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/mrap/instances";
1571
- const query = map({
1572
- nextToken: [, input.NextToken],
1573
- maxResults: [() => input.MaxResults !== void 0, () => input.MaxResults.toString()],
1574
- });
1768
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/mrap/instances/{Name+}";
1769
+ resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name+}", true);
1575
1770
  let body;
1576
1771
  let { hostname: resolvedHostname } = await context.endpoint();
1577
1772
  if (context.disableHostPrefix !== true) {
@@ -1591,21 +1786,16 @@ export const se_ListMultiRegionAccessPointsCommand = async (input, context) => {
1591
1786
  method: "GET",
1592
1787
  headers,
1593
1788
  path: resolvedPath,
1594
- query,
1595
1789
  body,
1596
1790
  });
1597
1791
  };
1598
- export const se_ListRegionalBucketsCommand = async (input, context) => {
1792
+ export const se_GetMultiRegionAccessPointPolicyCommand = async (input, context) => {
1599
1793
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
1600
1794
  const headers = map({}, isSerializableHeaderValue, {
1601
1795
  "x-amz-account-id": input.AccountId,
1602
- "x-amz-outpost-id": input.OutpostId,
1603
- });
1604
- const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/bucket";
1605
- const query = map({
1606
- nextToken: [, input.NextToken],
1607
- maxResults: [() => input.MaxResults !== void 0, () => input.MaxResults.toString()],
1608
1796
  });
1797
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/mrap/instances/{Name+}/policy";
1798
+ resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name+}", true);
1609
1799
  let body;
1610
1800
  let { hostname: resolvedHostname } = await context.endpoint();
1611
1801
  if (context.disableHostPrefix !== true) {
@@ -1625,19 +1815,17 @@ export const se_ListRegionalBucketsCommand = async (input, context) => {
1625
1815
  method: "GET",
1626
1816
  headers,
1627
1817
  path: resolvedPath,
1628
- query,
1629
1818
  body,
1630
1819
  });
1631
1820
  };
1632
- export const se_ListStorageLensConfigurationsCommand = async (input, context) => {
1821
+ export const se_GetMultiRegionAccessPointPolicyStatusCommand = async (input, context) => {
1633
1822
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
1634
1823
  const headers = map({}, isSerializableHeaderValue, {
1635
1824
  "x-amz-account-id": input.AccountId,
1636
1825
  });
1637
- const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/storagelens";
1638
- const query = map({
1639
- nextToken: [, input.NextToken],
1640
- });
1826
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
1827
+ "/v20180820/mrap/instances/{Name+}/policystatus";
1828
+ resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name+}", true);
1641
1829
  let body;
1642
1830
  let { hostname: resolvedHostname } = await context.endpoint();
1643
1831
  if (context.disableHostPrefix !== true) {
@@ -1657,19 +1845,16 @@ export const se_ListStorageLensConfigurationsCommand = async (input, context) =>
1657
1845
  method: "GET",
1658
1846
  headers,
1659
1847
  path: resolvedPath,
1660
- query,
1661
1848
  body,
1662
1849
  });
1663
1850
  };
1664
- export const se_ListStorageLensGroupsCommand = async (input, context) => {
1851
+ export const se_GetMultiRegionAccessPointRoutesCommand = async (input, context) => {
1665
1852
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
1666
1853
  const headers = map({}, isSerializableHeaderValue, {
1667
1854
  "x-amz-account-id": input.AccountId,
1668
1855
  });
1669
- const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/storagelensgroup";
1670
- const query = map({
1671
- nextToken: [, input.NextToken],
1672
- });
1856
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/mrap/instances/{Mrap+}/routes";
1857
+ resolvedPath = __resolvedPath(resolvedPath, input, "Mrap", () => input.Mrap, "{Mrap+}", true);
1673
1858
  let body;
1674
1859
  let { hostname: resolvedHostname } = await context.endpoint();
1675
1860
  if (context.disableHostPrefix !== true) {
@@ -1689,17 +1874,16 @@ export const se_ListStorageLensGroupsCommand = async (input, context) => {
1689
1874
  method: "GET",
1690
1875
  headers,
1691
1876
  path: resolvedPath,
1692
- query,
1693
1877
  body,
1694
1878
  });
1695
1879
  };
1696
- export const se_ListTagsForResourceCommand = async (input, context) => {
1880
+ export const se_GetPublicAccessBlockCommand = async (input, context) => {
1697
1881
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
1698
1882
  const headers = map({}, isSerializableHeaderValue, {
1699
1883
  "x-amz-account-id": input.AccountId,
1700
1884
  });
1701
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/tags/{ResourceArn+}";
1702
- resolvedPath = __resolvedPath(resolvedPath, input, "ResourceArn", () => input.ResourceArn, "{ResourceArn+}", true);
1885
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
1886
+ "/v20180820/configuration/publicAccessBlock";
1703
1887
  let body;
1704
1888
  let { hostname: resolvedHostname } = await context.endpoint();
1705
1889
  if (context.disableHostPrefix !== true) {
@@ -1722,15 +1906,510 @@ export const se_ListTagsForResourceCommand = async (input, context) => {
1722
1906
  body,
1723
1907
  });
1724
1908
  };
1725
- export const se_PutAccessPointConfigurationForObjectLambdaCommand = async (input, context) => {
1909
+ export const se_GetStorageLensConfigurationCommand = async (input, context) => {
1726
1910
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
1727
1911
  const headers = map({}, isSerializableHeaderValue, {
1728
- "content-type": "application/xml",
1729
1912
  "x-amz-account-id": input.AccountId,
1730
1913
  });
1731
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
1732
- "/v20180820/accesspointforobjectlambda/{Name}/configuration";
1733
- resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
1914
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/storagelens/{ConfigId}";
1915
+ resolvedPath = __resolvedPath(resolvedPath, input, "ConfigId", () => input.ConfigId, "{ConfigId}", false);
1916
+ let body;
1917
+ let { hostname: resolvedHostname } = await context.endpoint();
1918
+ if (context.disableHostPrefix !== true) {
1919
+ resolvedHostname = "{AccountId}." + resolvedHostname;
1920
+ if (input.AccountId === undefined) {
1921
+ throw new Error("Empty value provided for input host prefix: AccountId.");
1922
+ }
1923
+ resolvedHostname = resolvedHostname.replace("{AccountId}", input.AccountId);
1924
+ if (!__isValidHostname(resolvedHostname)) {
1925
+ throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
1926
+ }
1927
+ }
1928
+ return new __HttpRequest({
1929
+ protocol,
1930
+ hostname: resolvedHostname,
1931
+ port,
1932
+ method: "GET",
1933
+ headers,
1934
+ path: resolvedPath,
1935
+ body,
1936
+ });
1937
+ };
1938
+ export const se_GetStorageLensConfigurationTaggingCommand = async (input, context) => {
1939
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
1940
+ const headers = map({}, isSerializableHeaderValue, {
1941
+ "x-amz-account-id": input.AccountId,
1942
+ });
1943
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/storagelens/{ConfigId}/tagging";
1944
+ resolvedPath = __resolvedPath(resolvedPath, input, "ConfigId", () => input.ConfigId, "{ConfigId}", false);
1945
+ let body;
1946
+ let { hostname: resolvedHostname } = await context.endpoint();
1947
+ if (context.disableHostPrefix !== true) {
1948
+ resolvedHostname = "{AccountId}." + resolvedHostname;
1949
+ if (input.AccountId === undefined) {
1950
+ throw new Error("Empty value provided for input host prefix: AccountId.");
1951
+ }
1952
+ resolvedHostname = resolvedHostname.replace("{AccountId}", input.AccountId);
1953
+ if (!__isValidHostname(resolvedHostname)) {
1954
+ throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
1955
+ }
1956
+ }
1957
+ return new __HttpRequest({
1958
+ protocol,
1959
+ hostname: resolvedHostname,
1960
+ port,
1961
+ method: "GET",
1962
+ headers,
1963
+ path: resolvedPath,
1964
+ body,
1965
+ });
1966
+ };
1967
+ export const se_GetStorageLensGroupCommand = async (input, context) => {
1968
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
1969
+ const headers = map({}, isSerializableHeaderValue, {
1970
+ "x-amz-account-id": input.AccountId,
1971
+ });
1972
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/storagelensgroup/{Name}";
1973
+ resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
1974
+ let body;
1975
+ let { hostname: resolvedHostname } = await context.endpoint();
1976
+ if (context.disableHostPrefix !== true) {
1977
+ resolvedHostname = "{AccountId}." + resolvedHostname;
1978
+ if (input.AccountId === undefined) {
1979
+ throw new Error("Empty value provided for input host prefix: AccountId.");
1980
+ }
1981
+ resolvedHostname = resolvedHostname.replace("{AccountId}", input.AccountId);
1982
+ if (!__isValidHostname(resolvedHostname)) {
1983
+ throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
1984
+ }
1985
+ }
1986
+ return new __HttpRequest({
1987
+ protocol,
1988
+ hostname: resolvedHostname,
1989
+ port,
1990
+ method: "GET",
1991
+ headers,
1992
+ path: resolvedPath,
1993
+ body,
1994
+ });
1995
+ };
1996
+ export const se_ListAccessGrantsCommand = async (input, context) => {
1997
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
1998
+ const headers = map({}, isSerializableHeaderValue, {
1999
+ "x-amz-account-id": input.AccountId,
2000
+ });
2001
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/accessgrantsinstance/grants";
2002
+ const query = map({
2003
+ nextToken: [, input.NextToken],
2004
+ maxResults: [() => input.MaxResults !== void 0, () => input.MaxResults.toString()],
2005
+ granteetype: [, input.GranteeType],
2006
+ granteeidentifier: [, input.GranteeIdentifier],
2007
+ permission: [, input.Permission],
2008
+ grantscope: [, input.GrantScope],
2009
+ application_arn: [, input.ApplicationArn],
2010
+ });
2011
+ let body;
2012
+ let { hostname: resolvedHostname } = await context.endpoint();
2013
+ if (context.disableHostPrefix !== true) {
2014
+ resolvedHostname = "{AccountId}." + resolvedHostname;
2015
+ if (input.AccountId === undefined) {
2016
+ throw new Error("Empty value provided for input host prefix: AccountId.");
2017
+ }
2018
+ resolvedHostname = resolvedHostname.replace("{AccountId}", input.AccountId);
2019
+ if (!__isValidHostname(resolvedHostname)) {
2020
+ throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
2021
+ }
2022
+ }
2023
+ return new __HttpRequest({
2024
+ protocol,
2025
+ hostname: resolvedHostname,
2026
+ port,
2027
+ method: "GET",
2028
+ headers,
2029
+ path: resolvedPath,
2030
+ query,
2031
+ body,
2032
+ });
2033
+ };
2034
+ export const se_ListAccessGrantsInstancesCommand = async (input, context) => {
2035
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
2036
+ const headers = map({}, isSerializableHeaderValue, {
2037
+ "x-amz-account-id": input.AccountId,
2038
+ });
2039
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/accessgrantsinstances";
2040
+ const query = map({
2041
+ nextToken: [, input.NextToken],
2042
+ maxResults: [() => input.MaxResults !== void 0, () => input.MaxResults.toString()],
2043
+ });
2044
+ let body;
2045
+ let { hostname: resolvedHostname } = await context.endpoint();
2046
+ if (context.disableHostPrefix !== true) {
2047
+ resolvedHostname = "{AccountId}." + resolvedHostname;
2048
+ if (input.AccountId === undefined) {
2049
+ throw new Error("Empty value provided for input host prefix: AccountId.");
2050
+ }
2051
+ resolvedHostname = resolvedHostname.replace("{AccountId}", input.AccountId);
2052
+ if (!__isValidHostname(resolvedHostname)) {
2053
+ throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
2054
+ }
2055
+ }
2056
+ return new __HttpRequest({
2057
+ protocol,
2058
+ hostname: resolvedHostname,
2059
+ port,
2060
+ method: "GET",
2061
+ headers,
2062
+ path: resolvedPath,
2063
+ query,
2064
+ body,
2065
+ });
2066
+ };
2067
+ export const se_ListAccessGrantsLocationsCommand = async (input, context) => {
2068
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
2069
+ const headers = map({}, isSerializableHeaderValue, {
2070
+ "x-amz-account-id": input.AccountId,
2071
+ });
2072
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/accessgrantsinstance/locations";
2073
+ const query = map({
2074
+ nextToken: [, input.NextToken],
2075
+ maxResults: [() => input.MaxResults !== void 0, () => input.MaxResults.toString()],
2076
+ locationscope: [, input.LocationScope],
2077
+ });
2078
+ let body;
2079
+ let { hostname: resolvedHostname } = await context.endpoint();
2080
+ if (context.disableHostPrefix !== true) {
2081
+ resolvedHostname = "{AccountId}." + resolvedHostname;
2082
+ if (input.AccountId === undefined) {
2083
+ throw new Error("Empty value provided for input host prefix: AccountId.");
2084
+ }
2085
+ resolvedHostname = resolvedHostname.replace("{AccountId}", input.AccountId);
2086
+ if (!__isValidHostname(resolvedHostname)) {
2087
+ throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
2088
+ }
2089
+ }
2090
+ return new __HttpRequest({
2091
+ protocol,
2092
+ hostname: resolvedHostname,
2093
+ port,
2094
+ method: "GET",
2095
+ headers,
2096
+ path: resolvedPath,
2097
+ query,
2098
+ body,
2099
+ });
2100
+ };
2101
+ export const se_ListAccessPointsCommand = async (input, context) => {
2102
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
2103
+ const headers = map({}, isSerializableHeaderValue, {
2104
+ "x-amz-account-id": input.AccountId,
2105
+ });
2106
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/accesspoint";
2107
+ const query = map({
2108
+ bucket: [, input.Bucket],
2109
+ nextToken: [, input.NextToken],
2110
+ maxResults: [() => input.MaxResults !== void 0, () => input.MaxResults.toString()],
2111
+ });
2112
+ let body;
2113
+ let { hostname: resolvedHostname } = await context.endpoint();
2114
+ if (context.disableHostPrefix !== true) {
2115
+ resolvedHostname = "{AccountId}." + resolvedHostname;
2116
+ if (input.AccountId === undefined) {
2117
+ throw new Error("Empty value provided for input host prefix: AccountId.");
2118
+ }
2119
+ resolvedHostname = resolvedHostname.replace("{AccountId}", input.AccountId);
2120
+ if (!__isValidHostname(resolvedHostname)) {
2121
+ throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
2122
+ }
2123
+ }
2124
+ return new __HttpRequest({
2125
+ protocol,
2126
+ hostname: resolvedHostname,
2127
+ port,
2128
+ method: "GET",
2129
+ headers,
2130
+ path: resolvedPath,
2131
+ query,
2132
+ body,
2133
+ });
2134
+ };
2135
+ export const se_ListAccessPointsForObjectLambdaCommand = async (input, context) => {
2136
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
2137
+ const headers = map({}, isSerializableHeaderValue, {
2138
+ "x-amz-account-id": input.AccountId,
2139
+ });
2140
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/accesspointforobjectlambda";
2141
+ const query = map({
2142
+ nextToken: [, input.NextToken],
2143
+ maxResults: [() => input.MaxResults !== void 0, () => input.MaxResults.toString()],
2144
+ });
2145
+ let body;
2146
+ let { hostname: resolvedHostname } = await context.endpoint();
2147
+ if (context.disableHostPrefix !== true) {
2148
+ resolvedHostname = "{AccountId}." + resolvedHostname;
2149
+ if (input.AccountId === undefined) {
2150
+ throw new Error("Empty value provided for input host prefix: AccountId.");
2151
+ }
2152
+ resolvedHostname = resolvedHostname.replace("{AccountId}", input.AccountId);
2153
+ if (!__isValidHostname(resolvedHostname)) {
2154
+ throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
2155
+ }
2156
+ }
2157
+ return new __HttpRequest({
2158
+ protocol,
2159
+ hostname: resolvedHostname,
2160
+ port,
2161
+ method: "GET",
2162
+ headers,
2163
+ path: resolvedPath,
2164
+ query,
2165
+ body,
2166
+ });
2167
+ };
2168
+ export const se_ListJobsCommand = async (input, context) => {
2169
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
2170
+ const headers = map({}, isSerializableHeaderValue, {
2171
+ "x-amz-account-id": input.AccountId,
2172
+ });
2173
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/jobs";
2174
+ const query = map({
2175
+ jobStatuses: [() => input.JobStatuses !== void 0, () => (input.JobStatuses || []).map((_entry) => _entry)],
2176
+ nextToken: [, input.NextToken],
2177
+ maxResults: [() => input.MaxResults !== void 0, () => input.MaxResults.toString()],
2178
+ });
2179
+ let body;
2180
+ let { hostname: resolvedHostname } = await context.endpoint();
2181
+ if (context.disableHostPrefix !== true) {
2182
+ resolvedHostname = "{AccountId}." + resolvedHostname;
2183
+ if (input.AccountId === undefined) {
2184
+ throw new Error("Empty value provided for input host prefix: AccountId.");
2185
+ }
2186
+ resolvedHostname = resolvedHostname.replace("{AccountId}", input.AccountId);
2187
+ if (!__isValidHostname(resolvedHostname)) {
2188
+ throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
2189
+ }
2190
+ }
2191
+ return new __HttpRequest({
2192
+ protocol,
2193
+ hostname: resolvedHostname,
2194
+ port,
2195
+ method: "GET",
2196
+ headers,
2197
+ path: resolvedPath,
2198
+ query,
2199
+ body,
2200
+ });
2201
+ };
2202
+ export const se_ListMultiRegionAccessPointsCommand = async (input, context) => {
2203
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
2204
+ const headers = map({}, isSerializableHeaderValue, {
2205
+ "x-amz-account-id": input.AccountId,
2206
+ });
2207
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/mrap/instances";
2208
+ const query = map({
2209
+ nextToken: [, input.NextToken],
2210
+ maxResults: [() => input.MaxResults !== void 0, () => input.MaxResults.toString()],
2211
+ });
2212
+ let body;
2213
+ let { hostname: resolvedHostname } = await context.endpoint();
2214
+ if (context.disableHostPrefix !== true) {
2215
+ resolvedHostname = "{AccountId}." + resolvedHostname;
2216
+ if (input.AccountId === undefined) {
2217
+ throw new Error("Empty value provided for input host prefix: AccountId.");
2218
+ }
2219
+ resolvedHostname = resolvedHostname.replace("{AccountId}", input.AccountId);
2220
+ if (!__isValidHostname(resolvedHostname)) {
2221
+ throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
2222
+ }
2223
+ }
2224
+ return new __HttpRequest({
2225
+ protocol,
2226
+ hostname: resolvedHostname,
2227
+ port,
2228
+ method: "GET",
2229
+ headers,
2230
+ path: resolvedPath,
2231
+ query,
2232
+ body,
2233
+ });
2234
+ };
2235
+ export const se_ListRegionalBucketsCommand = async (input, context) => {
2236
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
2237
+ const headers = map({}, isSerializableHeaderValue, {
2238
+ "x-amz-account-id": input.AccountId,
2239
+ "x-amz-outpost-id": input.OutpostId,
2240
+ });
2241
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/bucket";
2242
+ const query = map({
2243
+ nextToken: [, input.NextToken],
2244
+ maxResults: [() => input.MaxResults !== void 0, () => input.MaxResults.toString()],
2245
+ });
2246
+ let body;
2247
+ let { hostname: resolvedHostname } = await context.endpoint();
2248
+ if (context.disableHostPrefix !== true) {
2249
+ resolvedHostname = "{AccountId}." + resolvedHostname;
2250
+ if (input.AccountId === undefined) {
2251
+ throw new Error("Empty value provided for input host prefix: AccountId.");
2252
+ }
2253
+ resolvedHostname = resolvedHostname.replace("{AccountId}", input.AccountId);
2254
+ if (!__isValidHostname(resolvedHostname)) {
2255
+ throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
2256
+ }
2257
+ }
2258
+ return new __HttpRequest({
2259
+ protocol,
2260
+ hostname: resolvedHostname,
2261
+ port,
2262
+ method: "GET",
2263
+ headers,
2264
+ path: resolvedPath,
2265
+ query,
2266
+ body,
2267
+ });
2268
+ };
2269
+ export const se_ListStorageLensConfigurationsCommand = async (input, context) => {
2270
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
2271
+ const headers = map({}, isSerializableHeaderValue, {
2272
+ "x-amz-account-id": input.AccountId,
2273
+ });
2274
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/storagelens";
2275
+ const query = map({
2276
+ nextToken: [, input.NextToken],
2277
+ });
2278
+ let body;
2279
+ let { hostname: resolvedHostname } = await context.endpoint();
2280
+ if (context.disableHostPrefix !== true) {
2281
+ resolvedHostname = "{AccountId}." + resolvedHostname;
2282
+ if (input.AccountId === undefined) {
2283
+ throw new Error("Empty value provided for input host prefix: AccountId.");
2284
+ }
2285
+ resolvedHostname = resolvedHostname.replace("{AccountId}", input.AccountId);
2286
+ if (!__isValidHostname(resolvedHostname)) {
2287
+ throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
2288
+ }
2289
+ }
2290
+ return new __HttpRequest({
2291
+ protocol,
2292
+ hostname: resolvedHostname,
2293
+ port,
2294
+ method: "GET",
2295
+ headers,
2296
+ path: resolvedPath,
2297
+ query,
2298
+ body,
2299
+ });
2300
+ };
2301
+ export const se_ListStorageLensGroupsCommand = async (input, context) => {
2302
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
2303
+ const headers = map({}, isSerializableHeaderValue, {
2304
+ "x-amz-account-id": input.AccountId,
2305
+ });
2306
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/storagelensgroup";
2307
+ const query = map({
2308
+ nextToken: [, input.NextToken],
2309
+ });
2310
+ let body;
2311
+ let { hostname: resolvedHostname } = await context.endpoint();
2312
+ if (context.disableHostPrefix !== true) {
2313
+ resolvedHostname = "{AccountId}." + resolvedHostname;
2314
+ if (input.AccountId === undefined) {
2315
+ throw new Error("Empty value provided for input host prefix: AccountId.");
2316
+ }
2317
+ resolvedHostname = resolvedHostname.replace("{AccountId}", input.AccountId);
2318
+ if (!__isValidHostname(resolvedHostname)) {
2319
+ throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
2320
+ }
2321
+ }
2322
+ return new __HttpRequest({
2323
+ protocol,
2324
+ hostname: resolvedHostname,
2325
+ port,
2326
+ method: "GET",
2327
+ headers,
2328
+ path: resolvedPath,
2329
+ query,
2330
+ body,
2331
+ });
2332
+ };
2333
+ export const se_ListTagsForResourceCommand = async (input, context) => {
2334
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
2335
+ const headers = map({}, isSerializableHeaderValue, {
2336
+ "x-amz-account-id": input.AccountId,
2337
+ });
2338
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/tags/{ResourceArn+}";
2339
+ resolvedPath = __resolvedPath(resolvedPath, input, "ResourceArn", () => input.ResourceArn, "{ResourceArn+}", true);
2340
+ let body;
2341
+ let { hostname: resolvedHostname } = await context.endpoint();
2342
+ if (context.disableHostPrefix !== true) {
2343
+ resolvedHostname = "{AccountId}." + resolvedHostname;
2344
+ if (input.AccountId === undefined) {
2345
+ throw new Error("Empty value provided for input host prefix: AccountId.");
2346
+ }
2347
+ resolvedHostname = resolvedHostname.replace("{AccountId}", input.AccountId);
2348
+ if (!__isValidHostname(resolvedHostname)) {
2349
+ throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
2350
+ }
2351
+ }
2352
+ return new __HttpRequest({
2353
+ protocol,
2354
+ hostname: resolvedHostname,
2355
+ port,
2356
+ method: "GET",
2357
+ headers,
2358
+ path: resolvedPath,
2359
+ body,
2360
+ });
2361
+ };
2362
+ export const se_PutAccessGrantsInstanceResourcePolicyCommand = async (input, context) => {
2363
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
2364
+ const headers = map({}, isSerializableHeaderValue, {
2365
+ "content-type": "application/xml",
2366
+ "x-amz-account-id": input.AccountId,
2367
+ });
2368
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
2369
+ "/v20180820/accessgrantsinstance/resourcepolicy";
2370
+ let body;
2371
+ body = '<?xml version="1.0" encoding="UTF-8"?>';
2372
+ const bodyNode = new __XmlNode("PutAccessGrantsInstanceResourcePolicyRequest");
2373
+ bodyNode.addAttribute("xmlns", "http://awss3control.amazonaws.com/doc/2018-08-20/");
2374
+ if (input.Organization !== undefined) {
2375
+ const node = __XmlNode.of("Organization", input.Organization).withName("Organization");
2376
+ bodyNode.addChildNode(node);
2377
+ }
2378
+ if (input.Policy !== undefined) {
2379
+ const node = __XmlNode.of("PolicyDocument", input.Policy).withName("Policy");
2380
+ bodyNode.addChildNode(node);
2381
+ }
2382
+ body += bodyNode.toString();
2383
+ let { hostname: resolvedHostname } = await context.endpoint();
2384
+ if (context.disableHostPrefix !== true) {
2385
+ resolvedHostname = "{AccountId}." + resolvedHostname;
2386
+ if (input.AccountId === undefined) {
2387
+ throw new Error("Empty value provided for input host prefix: AccountId.");
2388
+ }
2389
+ resolvedHostname = resolvedHostname.replace("{AccountId}", input.AccountId);
2390
+ if (!__isValidHostname(resolvedHostname)) {
2391
+ throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
2392
+ }
2393
+ }
2394
+ return new __HttpRequest({
2395
+ protocol,
2396
+ hostname: resolvedHostname,
2397
+ port,
2398
+ method: "PUT",
2399
+ headers,
2400
+ path: resolvedPath,
2401
+ body,
2402
+ });
2403
+ };
2404
+ export const se_PutAccessPointConfigurationForObjectLambdaCommand = async (input, context) => {
2405
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
2406
+ const headers = map({}, isSerializableHeaderValue, {
2407
+ "content-type": "application/xml",
2408
+ "x-amz-account-id": input.AccountId,
2409
+ });
2410
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
2411
+ "/v20180820/accesspointforobjectlambda/{Name}/configuration";
2412
+ resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
1734
2413
  let body;
1735
2414
  body = '<?xml version="1.0" encoding="UTF-8"?>';
1736
2415
  const bodyNode = new __XmlNode("PutAccessPointConfigurationForObjectLambdaRequest");
@@ -2376,6 +3055,45 @@ export const se_UntagResourceCommand = async (input, context) => {
2376
3055
  body,
2377
3056
  });
2378
3057
  };
3058
+ export const se_UpdateAccessGrantsLocationCommand = async (input, context) => {
3059
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
3060
+ const headers = map({}, isSerializableHeaderValue, {
3061
+ "content-type": "application/xml",
3062
+ "x-amz-account-id": input.AccountId,
3063
+ });
3064
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
3065
+ "/v20180820/accessgrantsinstance/location/{AccessGrantsLocationId}";
3066
+ resolvedPath = __resolvedPath(resolvedPath, input, "AccessGrantsLocationId", () => input.AccessGrantsLocationId, "{AccessGrantsLocationId}", false);
3067
+ let body;
3068
+ body = '<?xml version="1.0" encoding="UTF-8"?>';
3069
+ const bodyNode = new __XmlNode("UpdateAccessGrantsLocationRequest");
3070
+ bodyNode.addAttribute("xmlns", "http://awss3control.amazonaws.com/doc/2018-08-20/");
3071
+ if (input.IAMRoleArn !== undefined) {
3072
+ const node = __XmlNode.of("IAMRoleArn", input.IAMRoleArn).withName("IAMRoleArn");
3073
+ bodyNode.addChildNode(node);
3074
+ }
3075
+ body += bodyNode.toString();
3076
+ let { hostname: resolvedHostname } = await context.endpoint();
3077
+ if (context.disableHostPrefix !== true) {
3078
+ resolvedHostname = "{AccountId}." + resolvedHostname;
3079
+ if (input.AccountId === undefined) {
3080
+ throw new Error("Empty value provided for input host prefix: AccountId.");
3081
+ }
3082
+ resolvedHostname = resolvedHostname.replace("{AccountId}", input.AccountId);
3083
+ if (!__isValidHostname(resolvedHostname)) {
3084
+ throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
3085
+ }
3086
+ }
3087
+ return new __HttpRequest({
3088
+ protocol,
3089
+ hostname: resolvedHostname,
3090
+ port,
3091
+ method: "PUT",
3092
+ headers,
3093
+ path: resolvedPath,
3094
+ body,
3095
+ });
3096
+ };
2379
3097
  export const se_UpdateJobPriorityCommand = async (input, context) => {
2380
3098
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
2381
3099
  const headers = map({}, isSerializableHeaderValue, {
@@ -2449,36 +3167,182 @@ export const se_UpdateStorageLensGroupCommand = async (input, context) => {
2449
3167
  "content-type": "application/xml",
2450
3168
  "x-amz-account-id": input.AccountId,
2451
3169
  });
2452
- let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/storagelensgroup/{Name}";
2453
- resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
2454
- let body;
2455
- body = '<?xml version="1.0" encoding="UTF-8"?>';
2456
- const bodyNode = new __XmlNode("UpdateStorageLensGroupRequest");
2457
- bodyNode.addAttribute("xmlns", "http://awss3control.amazonaws.com/doc/2018-08-20/");
2458
- if (input.StorageLensGroup !== undefined) {
2459
- const node = se_StorageLensGroup(input.StorageLensGroup, context).withName("StorageLensGroup");
2460
- bodyNode.addChildNode(node);
3170
+ let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/v20180820/storagelensgroup/{Name}";
3171
+ resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name, "{Name}", false);
3172
+ let body;
3173
+ body = '<?xml version="1.0" encoding="UTF-8"?>';
3174
+ const bodyNode = new __XmlNode("UpdateStorageLensGroupRequest");
3175
+ bodyNode.addAttribute("xmlns", "http://awss3control.amazonaws.com/doc/2018-08-20/");
3176
+ if (input.StorageLensGroup !== undefined) {
3177
+ const node = se_StorageLensGroup(input.StorageLensGroup, context).withName("StorageLensGroup");
3178
+ bodyNode.addChildNode(node);
3179
+ }
3180
+ body += bodyNode.toString();
3181
+ let { hostname: resolvedHostname } = await context.endpoint();
3182
+ if (context.disableHostPrefix !== true) {
3183
+ resolvedHostname = "{AccountId}." + resolvedHostname;
3184
+ if (input.AccountId === undefined) {
3185
+ throw new Error("Empty value provided for input host prefix: AccountId.");
3186
+ }
3187
+ resolvedHostname = resolvedHostname.replace("{AccountId}", input.AccountId);
3188
+ if (!__isValidHostname(resolvedHostname)) {
3189
+ throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
3190
+ }
3191
+ }
3192
+ return new __HttpRequest({
3193
+ protocol,
3194
+ hostname: resolvedHostname,
3195
+ port,
3196
+ method: "PUT",
3197
+ headers,
3198
+ path: resolvedPath,
3199
+ body,
3200
+ });
3201
+ };
3202
+ export const de_AssociateAccessGrantsIdentityCenterCommand = async (output, context) => {
3203
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
3204
+ return de_AssociateAccessGrantsIdentityCenterCommandError(output, context);
3205
+ }
3206
+ const contents = map({
3207
+ $metadata: deserializeMetadata(output),
3208
+ });
3209
+ await collectBody(output.body, context);
3210
+ return contents;
3211
+ };
3212
+ const de_AssociateAccessGrantsIdentityCenterCommandError = async (output, context) => {
3213
+ const parsedOutput = {
3214
+ ...output,
3215
+ body: await parseErrorBody(output.body, context),
3216
+ };
3217
+ const errorCode = loadRestXmlErrorCode(output, parsedOutput.body);
3218
+ const parsedBody = parsedOutput.body;
3219
+ return throwDefaultError({
3220
+ output,
3221
+ parsedBody: parsedBody.Error,
3222
+ errorCode,
3223
+ });
3224
+ };
3225
+ export const de_CreateAccessGrantCommand = async (output, context) => {
3226
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
3227
+ return de_CreateAccessGrantCommandError(output, context);
3228
+ }
3229
+ const contents = map({
3230
+ $metadata: deserializeMetadata(output),
3231
+ });
3232
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
3233
+ if (data["AccessGrantArn"] !== undefined) {
3234
+ contents.AccessGrantArn = __expectString(data["AccessGrantArn"]);
3235
+ }
3236
+ if (data["AccessGrantId"] !== undefined) {
3237
+ contents.AccessGrantId = __expectString(data["AccessGrantId"]);
3238
+ }
3239
+ if (data["AccessGrantsLocationConfiguration"] !== undefined) {
3240
+ contents.AccessGrantsLocationConfiguration = de_AccessGrantsLocationConfiguration(data["AccessGrantsLocationConfiguration"], context);
3241
+ }
3242
+ if (data["AccessGrantsLocationId"] !== undefined) {
3243
+ contents.AccessGrantsLocationId = __expectString(data["AccessGrantsLocationId"]);
3244
+ }
3245
+ if (data["ApplicationArn"] !== undefined) {
3246
+ contents.ApplicationArn = __expectString(data["ApplicationArn"]);
3247
+ }
3248
+ if (data["CreatedAt"] !== undefined) {
3249
+ contents.CreatedAt = __expectNonNull(__parseRfc3339DateTimeWithOffset(data["CreatedAt"]));
3250
+ }
3251
+ if (data["GrantScope"] !== undefined) {
3252
+ contents.GrantScope = __expectString(data["GrantScope"]);
3253
+ }
3254
+ if (data["Grantee"] !== undefined) {
3255
+ contents.Grantee = de_Grantee(data["Grantee"], context);
3256
+ }
3257
+ if (data["Permission"] !== undefined) {
3258
+ contents.Permission = __expectString(data["Permission"]);
3259
+ }
3260
+ return contents;
3261
+ };
3262
+ const de_CreateAccessGrantCommandError = async (output, context) => {
3263
+ const parsedOutput = {
3264
+ ...output,
3265
+ body: await parseErrorBody(output.body, context),
3266
+ };
3267
+ const errorCode = loadRestXmlErrorCode(output, parsedOutput.body);
3268
+ const parsedBody = parsedOutput.body;
3269
+ return throwDefaultError({
3270
+ output,
3271
+ parsedBody: parsedBody.Error,
3272
+ errorCode,
3273
+ });
3274
+ };
3275
+ export const de_CreateAccessGrantsInstanceCommand = async (output, context) => {
3276
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
3277
+ return de_CreateAccessGrantsInstanceCommandError(output, context);
3278
+ }
3279
+ const contents = map({
3280
+ $metadata: deserializeMetadata(output),
3281
+ });
3282
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
3283
+ if (data["AccessGrantsInstanceArn"] !== undefined) {
3284
+ contents.AccessGrantsInstanceArn = __expectString(data["AccessGrantsInstanceArn"]);
3285
+ }
3286
+ if (data["AccessGrantsInstanceId"] !== undefined) {
3287
+ contents.AccessGrantsInstanceId = __expectString(data["AccessGrantsInstanceId"]);
3288
+ }
3289
+ if (data["CreatedAt"] !== undefined) {
3290
+ contents.CreatedAt = __expectNonNull(__parseRfc3339DateTimeWithOffset(data["CreatedAt"]));
3291
+ }
3292
+ if (data["IdentityCenterArn"] !== undefined) {
3293
+ contents.IdentityCenterArn = __expectString(data["IdentityCenterArn"]);
3294
+ }
3295
+ return contents;
3296
+ };
3297
+ const de_CreateAccessGrantsInstanceCommandError = async (output, context) => {
3298
+ const parsedOutput = {
3299
+ ...output,
3300
+ body: await parseErrorBody(output.body, context),
3301
+ };
3302
+ const errorCode = loadRestXmlErrorCode(output, parsedOutput.body);
3303
+ const parsedBody = parsedOutput.body;
3304
+ return throwDefaultError({
3305
+ output,
3306
+ parsedBody: parsedBody.Error,
3307
+ errorCode,
3308
+ });
3309
+ };
3310
+ export const de_CreateAccessGrantsLocationCommand = async (output, context) => {
3311
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
3312
+ return de_CreateAccessGrantsLocationCommandError(output, context);
2461
3313
  }
2462
- body += bodyNode.toString();
2463
- let { hostname: resolvedHostname } = await context.endpoint();
2464
- if (context.disableHostPrefix !== true) {
2465
- resolvedHostname = "{AccountId}." + resolvedHostname;
2466
- if (input.AccountId === undefined) {
2467
- throw new Error("Empty value provided for input host prefix: AccountId.");
2468
- }
2469
- resolvedHostname = resolvedHostname.replace("{AccountId}", input.AccountId);
2470
- if (!__isValidHostname(resolvedHostname)) {
2471
- throw new Error("ValidationError: prefixed hostname must be hostname compatible.");
2472
- }
3314
+ const contents = map({
3315
+ $metadata: deserializeMetadata(output),
3316
+ });
3317
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
3318
+ if (data["AccessGrantsLocationArn"] !== undefined) {
3319
+ contents.AccessGrantsLocationArn = __expectString(data["AccessGrantsLocationArn"]);
2473
3320
  }
2474
- return new __HttpRequest({
2475
- protocol,
2476
- hostname: resolvedHostname,
2477
- port,
2478
- method: "PUT",
2479
- headers,
2480
- path: resolvedPath,
2481
- body,
3321
+ if (data["AccessGrantsLocationId"] !== undefined) {
3322
+ contents.AccessGrantsLocationId = __expectString(data["AccessGrantsLocationId"]);
3323
+ }
3324
+ if (data["CreatedAt"] !== undefined) {
3325
+ contents.CreatedAt = __expectNonNull(__parseRfc3339DateTimeWithOffset(data["CreatedAt"]));
3326
+ }
3327
+ if (data["IAMRoleArn"] !== undefined) {
3328
+ contents.IAMRoleArn = __expectString(data["IAMRoleArn"]);
3329
+ }
3330
+ if (data["LocationScope"] !== undefined) {
3331
+ contents.LocationScope = __expectString(data["LocationScope"]);
3332
+ }
3333
+ return contents;
3334
+ };
3335
+ const de_CreateAccessGrantsLocationCommandError = async (output, context) => {
3336
+ const parsedOutput = {
3337
+ ...output,
3338
+ body: await parseErrorBody(output.body, context),
3339
+ };
3340
+ const errorCode = loadRestXmlErrorCode(output, parsedOutput.body);
3341
+ const parsedBody = parsedOutput.body;
3342
+ return throwDefaultError({
3343
+ output,
3344
+ parsedBody: parsedBody.Error,
3345
+ errorCode,
2482
3346
  });
2483
3347
  };
2484
3348
  export const de_CreateAccessPointCommand = async (output, context) => {
@@ -2665,6 +3529,98 @@ const de_CreateStorageLensGroupCommandError = async (output, context) => {
2665
3529
  errorCode,
2666
3530
  });
2667
3531
  };
3532
+ export const de_DeleteAccessGrantCommand = async (output, context) => {
3533
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
3534
+ return de_DeleteAccessGrantCommandError(output, context);
3535
+ }
3536
+ const contents = map({
3537
+ $metadata: deserializeMetadata(output),
3538
+ });
3539
+ await collectBody(output.body, context);
3540
+ return contents;
3541
+ };
3542
+ const de_DeleteAccessGrantCommandError = async (output, context) => {
3543
+ const parsedOutput = {
3544
+ ...output,
3545
+ body: await parseErrorBody(output.body, context),
3546
+ };
3547
+ const errorCode = loadRestXmlErrorCode(output, parsedOutput.body);
3548
+ const parsedBody = parsedOutput.body;
3549
+ return throwDefaultError({
3550
+ output,
3551
+ parsedBody: parsedBody.Error,
3552
+ errorCode,
3553
+ });
3554
+ };
3555
+ export const de_DeleteAccessGrantsInstanceCommand = async (output, context) => {
3556
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
3557
+ return de_DeleteAccessGrantsInstanceCommandError(output, context);
3558
+ }
3559
+ const contents = map({
3560
+ $metadata: deserializeMetadata(output),
3561
+ });
3562
+ await collectBody(output.body, context);
3563
+ return contents;
3564
+ };
3565
+ const de_DeleteAccessGrantsInstanceCommandError = async (output, context) => {
3566
+ const parsedOutput = {
3567
+ ...output,
3568
+ body: await parseErrorBody(output.body, context),
3569
+ };
3570
+ const errorCode = loadRestXmlErrorCode(output, parsedOutput.body);
3571
+ const parsedBody = parsedOutput.body;
3572
+ return throwDefaultError({
3573
+ output,
3574
+ parsedBody: parsedBody.Error,
3575
+ errorCode,
3576
+ });
3577
+ };
3578
+ export const de_DeleteAccessGrantsInstanceResourcePolicyCommand = async (output, context) => {
3579
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
3580
+ return de_DeleteAccessGrantsInstanceResourcePolicyCommandError(output, context);
3581
+ }
3582
+ const contents = map({
3583
+ $metadata: deserializeMetadata(output),
3584
+ });
3585
+ await collectBody(output.body, context);
3586
+ return contents;
3587
+ };
3588
+ const de_DeleteAccessGrantsInstanceResourcePolicyCommandError = async (output, context) => {
3589
+ const parsedOutput = {
3590
+ ...output,
3591
+ body: await parseErrorBody(output.body, context),
3592
+ };
3593
+ const errorCode = loadRestXmlErrorCode(output, parsedOutput.body);
3594
+ const parsedBody = parsedOutput.body;
3595
+ return throwDefaultError({
3596
+ output,
3597
+ parsedBody: parsedBody.Error,
3598
+ errorCode,
3599
+ });
3600
+ };
3601
+ export const de_DeleteAccessGrantsLocationCommand = async (output, context) => {
3602
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
3603
+ return de_DeleteAccessGrantsLocationCommandError(output, context);
3604
+ }
3605
+ const contents = map({
3606
+ $metadata: deserializeMetadata(output),
3607
+ });
3608
+ await collectBody(output.body, context);
3609
+ return contents;
3610
+ };
3611
+ const de_DeleteAccessGrantsLocationCommandError = async (output, context) => {
3612
+ const parsedOutput = {
3613
+ ...output,
3614
+ body: await parseErrorBody(output.body, context),
3615
+ };
3616
+ const errorCode = loadRestXmlErrorCode(output, parsedOutput.body);
3617
+ const parsedBody = parsedOutput.body;
3618
+ return throwDefaultError({
3619
+ output,
3620
+ parsedBody: parsedBody.Error,
3621
+ errorCode,
3622
+ });
3623
+ };
2668
3624
  export const de_DeleteAccessPointCommand = async (output, context) => {
2669
3625
  if (output.statusCode !== 200 && output.statusCode >= 300) {
2670
3626
  return de_DeleteAccessPointCommandError(output, context);
@@ -3066,20 +4022,227 @@ const de_DescribeJobCommandError = async (output, context) => {
3066
4022
  });
3067
4023
  }
3068
4024
  };
3069
- export const de_DescribeMultiRegionAccessPointOperationCommand = async (output, context) => {
4025
+ export const de_DescribeMultiRegionAccessPointOperationCommand = async (output, context) => {
4026
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
4027
+ return de_DescribeMultiRegionAccessPointOperationCommandError(output, context);
4028
+ }
4029
+ const contents = map({
4030
+ $metadata: deserializeMetadata(output),
4031
+ });
4032
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
4033
+ if (data["AsyncOperation"] !== undefined) {
4034
+ contents.AsyncOperation = de_AsyncOperation(data["AsyncOperation"], context);
4035
+ }
4036
+ return contents;
4037
+ };
4038
+ const de_DescribeMultiRegionAccessPointOperationCommandError = async (output, context) => {
4039
+ const parsedOutput = {
4040
+ ...output,
4041
+ body: await parseErrorBody(output.body, context),
4042
+ };
4043
+ const errorCode = loadRestXmlErrorCode(output, parsedOutput.body);
4044
+ const parsedBody = parsedOutput.body;
4045
+ return throwDefaultError({
4046
+ output,
4047
+ parsedBody: parsedBody.Error,
4048
+ errorCode,
4049
+ });
4050
+ };
4051
+ export const de_DissociateAccessGrantsIdentityCenterCommand = async (output, context) => {
4052
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
4053
+ return de_DissociateAccessGrantsIdentityCenterCommandError(output, context);
4054
+ }
4055
+ const contents = map({
4056
+ $metadata: deserializeMetadata(output),
4057
+ });
4058
+ await collectBody(output.body, context);
4059
+ return contents;
4060
+ };
4061
+ const de_DissociateAccessGrantsIdentityCenterCommandError = async (output, context) => {
4062
+ const parsedOutput = {
4063
+ ...output,
4064
+ body: await parseErrorBody(output.body, context),
4065
+ };
4066
+ const errorCode = loadRestXmlErrorCode(output, parsedOutput.body);
4067
+ const parsedBody = parsedOutput.body;
4068
+ return throwDefaultError({
4069
+ output,
4070
+ parsedBody: parsedBody.Error,
4071
+ errorCode,
4072
+ });
4073
+ };
4074
+ export const de_GetAccessGrantCommand = async (output, context) => {
4075
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
4076
+ return de_GetAccessGrantCommandError(output, context);
4077
+ }
4078
+ const contents = map({
4079
+ $metadata: deserializeMetadata(output),
4080
+ });
4081
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
4082
+ if (data["AccessGrantArn"] !== undefined) {
4083
+ contents.AccessGrantArn = __expectString(data["AccessGrantArn"]);
4084
+ }
4085
+ if (data["AccessGrantId"] !== undefined) {
4086
+ contents.AccessGrantId = __expectString(data["AccessGrantId"]);
4087
+ }
4088
+ if (data["AccessGrantsLocationConfiguration"] !== undefined) {
4089
+ contents.AccessGrantsLocationConfiguration = de_AccessGrantsLocationConfiguration(data["AccessGrantsLocationConfiguration"], context);
4090
+ }
4091
+ if (data["AccessGrantsLocationId"] !== undefined) {
4092
+ contents.AccessGrantsLocationId = __expectString(data["AccessGrantsLocationId"]);
4093
+ }
4094
+ if (data["ApplicationArn"] !== undefined) {
4095
+ contents.ApplicationArn = __expectString(data["ApplicationArn"]);
4096
+ }
4097
+ if (data["CreatedAt"] !== undefined) {
4098
+ contents.CreatedAt = __expectNonNull(__parseRfc3339DateTimeWithOffset(data["CreatedAt"]));
4099
+ }
4100
+ if (data["GrantScope"] !== undefined) {
4101
+ contents.GrantScope = __expectString(data["GrantScope"]);
4102
+ }
4103
+ if (data["Grantee"] !== undefined) {
4104
+ contents.Grantee = de_Grantee(data["Grantee"], context);
4105
+ }
4106
+ if (data["Permission"] !== undefined) {
4107
+ contents.Permission = __expectString(data["Permission"]);
4108
+ }
4109
+ return contents;
4110
+ };
4111
+ const de_GetAccessGrantCommandError = async (output, context) => {
4112
+ const parsedOutput = {
4113
+ ...output,
4114
+ body: await parseErrorBody(output.body, context),
4115
+ };
4116
+ const errorCode = loadRestXmlErrorCode(output, parsedOutput.body);
4117
+ const parsedBody = parsedOutput.body;
4118
+ return throwDefaultError({
4119
+ output,
4120
+ parsedBody: parsedBody.Error,
4121
+ errorCode,
4122
+ });
4123
+ };
4124
+ export const de_GetAccessGrantsInstanceCommand = async (output, context) => {
4125
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
4126
+ return de_GetAccessGrantsInstanceCommandError(output, context);
4127
+ }
4128
+ const contents = map({
4129
+ $metadata: deserializeMetadata(output),
4130
+ });
4131
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
4132
+ if (data["AccessGrantsInstanceArn"] !== undefined) {
4133
+ contents.AccessGrantsInstanceArn = __expectString(data["AccessGrantsInstanceArn"]);
4134
+ }
4135
+ if (data["AccessGrantsInstanceId"] !== undefined) {
4136
+ contents.AccessGrantsInstanceId = __expectString(data["AccessGrantsInstanceId"]);
4137
+ }
4138
+ if (data["CreatedAt"] !== undefined) {
4139
+ contents.CreatedAt = __expectNonNull(__parseRfc3339DateTimeWithOffset(data["CreatedAt"]));
4140
+ }
4141
+ if (data["IdentityCenterArn"] !== undefined) {
4142
+ contents.IdentityCenterArn = __expectString(data["IdentityCenterArn"]);
4143
+ }
4144
+ return contents;
4145
+ };
4146
+ const de_GetAccessGrantsInstanceCommandError = async (output, context) => {
4147
+ const parsedOutput = {
4148
+ ...output,
4149
+ body: await parseErrorBody(output.body, context),
4150
+ };
4151
+ const errorCode = loadRestXmlErrorCode(output, parsedOutput.body);
4152
+ const parsedBody = parsedOutput.body;
4153
+ return throwDefaultError({
4154
+ output,
4155
+ parsedBody: parsedBody.Error,
4156
+ errorCode,
4157
+ });
4158
+ };
4159
+ export const de_GetAccessGrantsInstanceForPrefixCommand = async (output, context) => {
4160
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
4161
+ return de_GetAccessGrantsInstanceForPrefixCommandError(output, context);
4162
+ }
4163
+ const contents = map({
4164
+ $metadata: deserializeMetadata(output),
4165
+ });
4166
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
4167
+ if (data["AccessGrantsInstanceArn"] !== undefined) {
4168
+ contents.AccessGrantsInstanceArn = __expectString(data["AccessGrantsInstanceArn"]);
4169
+ }
4170
+ if (data["AccessGrantsInstanceId"] !== undefined) {
4171
+ contents.AccessGrantsInstanceId = __expectString(data["AccessGrantsInstanceId"]);
4172
+ }
4173
+ return contents;
4174
+ };
4175
+ const de_GetAccessGrantsInstanceForPrefixCommandError = async (output, context) => {
4176
+ const parsedOutput = {
4177
+ ...output,
4178
+ body: await parseErrorBody(output.body, context),
4179
+ };
4180
+ const errorCode = loadRestXmlErrorCode(output, parsedOutput.body);
4181
+ const parsedBody = parsedOutput.body;
4182
+ return throwDefaultError({
4183
+ output,
4184
+ parsedBody: parsedBody.Error,
4185
+ errorCode,
4186
+ });
4187
+ };
4188
+ export const de_GetAccessGrantsInstanceResourcePolicyCommand = async (output, context) => {
4189
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
4190
+ return de_GetAccessGrantsInstanceResourcePolicyCommandError(output, context);
4191
+ }
4192
+ const contents = map({
4193
+ $metadata: deserializeMetadata(output),
4194
+ });
4195
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
4196
+ if (data["CreatedAt"] !== undefined) {
4197
+ contents.CreatedAt = __expectNonNull(__parseRfc3339DateTimeWithOffset(data["CreatedAt"]));
4198
+ }
4199
+ if (data["Organization"] !== undefined) {
4200
+ contents.Organization = __expectString(data["Organization"]);
4201
+ }
4202
+ if (data["Policy"] !== undefined) {
4203
+ contents.Policy = __expectString(data["Policy"]);
4204
+ }
4205
+ return contents;
4206
+ };
4207
+ const de_GetAccessGrantsInstanceResourcePolicyCommandError = async (output, context) => {
4208
+ const parsedOutput = {
4209
+ ...output,
4210
+ body: await parseErrorBody(output.body, context),
4211
+ };
4212
+ const errorCode = loadRestXmlErrorCode(output, parsedOutput.body);
4213
+ const parsedBody = parsedOutput.body;
4214
+ return throwDefaultError({
4215
+ output,
4216
+ parsedBody: parsedBody.Error,
4217
+ errorCode,
4218
+ });
4219
+ };
4220
+ export const de_GetAccessGrantsLocationCommand = async (output, context) => {
3070
4221
  if (output.statusCode !== 200 && output.statusCode >= 300) {
3071
- return de_DescribeMultiRegionAccessPointOperationCommandError(output, context);
4222
+ return de_GetAccessGrantsLocationCommandError(output, context);
3072
4223
  }
3073
4224
  const contents = map({
3074
4225
  $metadata: deserializeMetadata(output),
3075
4226
  });
3076
4227
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
3077
- if (data["AsyncOperation"] !== undefined) {
3078
- contents.AsyncOperation = de_AsyncOperation(data["AsyncOperation"], context);
4228
+ if (data["AccessGrantsLocationArn"] !== undefined) {
4229
+ contents.AccessGrantsLocationArn = __expectString(data["AccessGrantsLocationArn"]);
4230
+ }
4231
+ if (data["AccessGrantsLocationId"] !== undefined) {
4232
+ contents.AccessGrantsLocationId = __expectString(data["AccessGrantsLocationId"]);
4233
+ }
4234
+ if (data["CreatedAt"] !== undefined) {
4235
+ contents.CreatedAt = __expectNonNull(__parseRfc3339DateTimeWithOffset(data["CreatedAt"]));
4236
+ }
4237
+ if (data["IAMRoleArn"] !== undefined) {
4238
+ contents.IAMRoleArn = __expectString(data["IAMRoleArn"]);
4239
+ }
4240
+ if (data["LocationScope"] !== undefined) {
4241
+ contents.LocationScope = __expectString(data["LocationScope"]);
3079
4242
  }
3080
4243
  return contents;
3081
4244
  };
3082
- const de_DescribeMultiRegionAccessPointOperationCommandError = async (output, context) => {
4245
+ const de_GetAccessGrantsLocationCommandError = async (output, context) => {
3083
4246
  const parsedOutput = {
3084
4247
  ...output,
3085
4248
  body: await parseErrorBody(output.body, context),
@@ -3484,6 +4647,35 @@ const de_GetBucketVersioningCommandError = async (output, context) => {
3484
4647
  errorCode,
3485
4648
  });
3486
4649
  };
4650
+ export const de_GetDataAccessCommand = async (output, context) => {
4651
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
4652
+ return de_GetDataAccessCommandError(output, context);
4653
+ }
4654
+ const contents = map({
4655
+ $metadata: deserializeMetadata(output),
4656
+ });
4657
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
4658
+ if (data["Credentials"] !== undefined) {
4659
+ contents.Credentials = de_Credentials(data["Credentials"], context);
4660
+ }
4661
+ if (data["MatchedGrantTarget"] !== undefined) {
4662
+ contents.MatchedGrantTarget = __expectString(data["MatchedGrantTarget"]);
4663
+ }
4664
+ return contents;
4665
+ };
4666
+ const de_GetDataAccessCommandError = async (output, context) => {
4667
+ const parsedOutput = {
4668
+ ...output,
4669
+ body: await parseErrorBody(output.body, context),
4670
+ };
4671
+ const errorCode = loadRestXmlErrorCode(output, parsedOutput.body);
4672
+ const parsedBody = parsedOutput.body;
4673
+ return throwDefaultError({
4674
+ output,
4675
+ parsedBody: parsedBody.Error,
4676
+ errorCode,
4677
+ });
4678
+ };
3487
4679
  export const de_GetJobTaggingCommand = async (output, context) => {
3488
4680
  if (output.statusCode !== 200 && output.statusCode >= 300) {
3489
4681
  return de_GetJobTaggingCommandError(output, context);
@@ -3742,6 +4934,104 @@ const de_GetStorageLensGroupCommandError = async (output, context) => {
3742
4934
  errorCode,
3743
4935
  });
3744
4936
  };
4937
+ export const de_ListAccessGrantsCommand = async (output, context) => {
4938
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
4939
+ return de_ListAccessGrantsCommandError(output, context);
4940
+ }
4941
+ const contents = map({
4942
+ $metadata: deserializeMetadata(output),
4943
+ });
4944
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
4945
+ if (data.AccessGrantsList === "") {
4946
+ contents.AccessGrantsList = [];
4947
+ }
4948
+ else if (data["AccessGrantsList"] !== undefined && data["AccessGrantsList"]["AccessGrant"] !== undefined) {
4949
+ contents.AccessGrantsList = de_AccessGrantsList(__getArrayIfSingleItem(data["AccessGrantsList"]["AccessGrant"]), context);
4950
+ }
4951
+ if (data["NextToken"] !== undefined) {
4952
+ contents.NextToken = __expectString(data["NextToken"]);
4953
+ }
4954
+ return contents;
4955
+ };
4956
+ const de_ListAccessGrantsCommandError = async (output, context) => {
4957
+ const parsedOutput = {
4958
+ ...output,
4959
+ body: await parseErrorBody(output.body, context),
4960
+ };
4961
+ const errorCode = loadRestXmlErrorCode(output, parsedOutput.body);
4962
+ const parsedBody = parsedOutput.body;
4963
+ return throwDefaultError({
4964
+ output,
4965
+ parsedBody: parsedBody.Error,
4966
+ errorCode,
4967
+ });
4968
+ };
4969
+ export const de_ListAccessGrantsInstancesCommand = async (output, context) => {
4970
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
4971
+ return de_ListAccessGrantsInstancesCommandError(output, context);
4972
+ }
4973
+ const contents = map({
4974
+ $metadata: deserializeMetadata(output),
4975
+ });
4976
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
4977
+ if (data.AccessGrantsInstancesList === "") {
4978
+ contents.AccessGrantsInstancesList = [];
4979
+ }
4980
+ else if (data["AccessGrantsInstancesList"] !== undefined &&
4981
+ data["AccessGrantsInstancesList"]["AccessGrantsInstance"] !== undefined) {
4982
+ contents.AccessGrantsInstancesList = de_AccessGrantsInstancesList(__getArrayIfSingleItem(data["AccessGrantsInstancesList"]["AccessGrantsInstance"]), context);
4983
+ }
4984
+ if (data["NextToken"] !== undefined) {
4985
+ contents.NextToken = __expectString(data["NextToken"]);
4986
+ }
4987
+ return contents;
4988
+ };
4989
+ const de_ListAccessGrantsInstancesCommandError = async (output, context) => {
4990
+ const parsedOutput = {
4991
+ ...output,
4992
+ body: await parseErrorBody(output.body, context),
4993
+ };
4994
+ const errorCode = loadRestXmlErrorCode(output, parsedOutput.body);
4995
+ const parsedBody = parsedOutput.body;
4996
+ return throwDefaultError({
4997
+ output,
4998
+ parsedBody: parsedBody.Error,
4999
+ errorCode,
5000
+ });
5001
+ };
5002
+ export const de_ListAccessGrantsLocationsCommand = async (output, context) => {
5003
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
5004
+ return de_ListAccessGrantsLocationsCommandError(output, context);
5005
+ }
5006
+ const contents = map({
5007
+ $metadata: deserializeMetadata(output),
5008
+ });
5009
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
5010
+ if (data.AccessGrantsLocationsList === "") {
5011
+ contents.AccessGrantsLocationsList = [];
5012
+ }
5013
+ else if (data["AccessGrantsLocationsList"] !== undefined &&
5014
+ data["AccessGrantsLocationsList"]["AccessGrantsLocation"] !== undefined) {
5015
+ contents.AccessGrantsLocationsList = de_AccessGrantsLocationsList(__getArrayIfSingleItem(data["AccessGrantsLocationsList"]["AccessGrantsLocation"]), context);
5016
+ }
5017
+ if (data["NextToken"] !== undefined) {
5018
+ contents.NextToken = __expectString(data["NextToken"]);
5019
+ }
5020
+ return contents;
5021
+ };
5022
+ const de_ListAccessGrantsLocationsCommandError = async (output, context) => {
5023
+ const parsedOutput = {
5024
+ ...output,
5025
+ body: await parseErrorBody(output.body, context),
5026
+ };
5027
+ const errorCode = loadRestXmlErrorCode(output, parsedOutput.body);
5028
+ const parsedBody = parsedOutput.body;
5029
+ return throwDefaultError({
5030
+ output,
5031
+ parsedBody: parsedBody.Error,
5032
+ errorCode,
5033
+ });
5034
+ };
3745
5035
  export const de_ListAccessPointsCommand = async (output, context) => {
3746
5036
  if (output.statusCode !== 200 && output.statusCode >= 300) {
3747
5037
  return de_ListAccessPointsCommandError(output, context);
@@ -4008,6 +5298,38 @@ const de_ListTagsForResourceCommandError = async (output, context) => {
4008
5298
  errorCode,
4009
5299
  });
4010
5300
  };
5301
+ export const de_PutAccessGrantsInstanceResourcePolicyCommand = async (output, context) => {
5302
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
5303
+ return de_PutAccessGrantsInstanceResourcePolicyCommandError(output, context);
5304
+ }
5305
+ const contents = map({
5306
+ $metadata: deserializeMetadata(output),
5307
+ });
5308
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
5309
+ if (data["CreatedAt"] !== undefined) {
5310
+ contents.CreatedAt = __expectNonNull(__parseRfc3339DateTimeWithOffset(data["CreatedAt"]));
5311
+ }
5312
+ if (data["Organization"] !== undefined) {
5313
+ contents.Organization = __expectString(data["Organization"]);
5314
+ }
5315
+ if (data["Policy"] !== undefined) {
5316
+ contents.Policy = __expectString(data["Policy"]);
5317
+ }
5318
+ return contents;
5319
+ };
5320
+ const de_PutAccessGrantsInstanceResourcePolicyCommandError = async (output, context) => {
5321
+ const parsedOutput = {
5322
+ ...output,
5323
+ body: await parseErrorBody(output.body, context),
5324
+ };
5325
+ const errorCode = loadRestXmlErrorCode(output, parsedOutput.body);
5326
+ const parsedBody = parsedOutput.body;
5327
+ return throwDefaultError({
5328
+ output,
5329
+ parsedBody: parsedBody.Error,
5330
+ errorCode,
5331
+ });
5332
+ };
4011
5333
  export const de_PutAccessPointConfigurationForObjectLambdaCommand = async (output, context) => {
4012
5334
  if (output.statusCode !== 200 && output.statusCode >= 300) {
4013
5335
  return de_PutAccessPointConfigurationForObjectLambdaCommandError(output, context);
@@ -4394,6 +5716,44 @@ const de_UntagResourceCommandError = async (output, context) => {
4394
5716
  errorCode,
4395
5717
  });
4396
5718
  };
5719
+ export const de_UpdateAccessGrantsLocationCommand = async (output, context) => {
5720
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
5721
+ return de_UpdateAccessGrantsLocationCommandError(output, context);
5722
+ }
5723
+ const contents = map({
5724
+ $metadata: deserializeMetadata(output),
5725
+ });
5726
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
5727
+ if (data["AccessGrantsLocationArn"] !== undefined) {
5728
+ contents.AccessGrantsLocationArn = __expectString(data["AccessGrantsLocationArn"]);
5729
+ }
5730
+ if (data["AccessGrantsLocationId"] !== undefined) {
5731
+ contents.AccessGrantsLocationId = __expectString(data["AccessGrantsLocationId"]);
5732
+ }
5733
+ if (data["CreatedAt"] !== undefined) {
5734
+ contents.CreatedAt = __expectNonNull(__parseRfc3339DateTimeWithOffset(data["CreatedAt"]));
5735
+ }
5736
+ if (data["IAMRoleArn"] !== undefined) {
5737
+ contents.IAMRoleArn = __expectString(data["IAMRoleArn"]);
5738
+ }
5739
+ if (data["LocationScope"] !== undefined) {
5740
+ contents.LocationScope = __expectString(data["LocationScope"]);
5741
+ }
5742
+ return contents;
5743
+ };
5744
+ const de_UpdateAccessGrantsLocationCommandError = async (output, context) => {
5745
+ const parsedOutput = {
5746
+ ...output,
5747
+ body: await parseErrorBody(output.body, context),
5748
+ };
5749
+ const errorCode = loadRestXmlErrorCode(output, parsedOutput.body);
5750
+ const parsedBody = parsedOutput.body;
5751
+ return throwDefaultError({
5752
+ output,
5753
+ parsedBody: parsedBody.Error,
5754
+ errorCode,
5755
+ });
5756
+ };
4397
5757
  export const de_UpdateJobPriorityCommand = async (output, context) => {
4398
5758
  if (output.statusCode !== 200 && output.statusCode >= 300) {
4399
5759
  return de_UpdateJobPriorityCommandError(output, context);
@@ -4666,6 +6026,14 @@ const se_AccessControlTranslation = (input, context) => {
4666
6026
  }
4667
6027
  return bodyNode;
4668
6028
  };
6029
+ const se_AccessGrantsLocationConfiguration = (input, context) => {
6030
+ const bodyNode = new __XmlNode("AccessGrantsLocationConfiguration");
6031
+ if (input.S3SubPrefix != null) {
6032
+ const node = __XmlNode.of("S3Prefix", input.S3SubPrefix).withName("S3SubPrefix");
6033
+ bodyNode.addChildNode(node);
6034
+ }
6035
+ return bodyNode;
6036
+ };
4669
6037
  const se_AccountLevel = (input, context) => {
4670
6038
  const bodyNode = new __XmlNode("AccountLevel");
4671
6039
  if (input.ActivityMetrics != null) {
@@ -4902,6 +6270,18 @@ const se_GeneratedManifestEncryption = (input, context) => {
4902
6270
  }
4903
6271
  return bodyNode;
4904
6272
  };
6273
+ const se_Grantee = (input, context) => {
6274
+ const bodyNode = new __XmlNode("Grantee");
6275
+ if (input.GranteeType != null) {
6276
+ const node = __XmlNode.of("GranteeType", input.GranteeType).withName("GranteeType");
6277
+ bodyNode.addChildNode(node);
6278
+ }
6279
+ if (input.GranteeIdentifier != null) {
6280
+ const node = __XmlNode.of("GranteeIdentifier", input.GranteeIdentifier).withName("GranteeIdentifier");
6281
+ bodyNode.addChildNode(node);
6282
+ }
6283
+ return bodyNode;
6284
+ };
4905
6285
  const se_Include = (input, context) => {
4906
6286
  const bodyNode = new __XmlNode("Include");
4907
6287
  if (input.Buckets != null) {
@@ -6551,6 +7931,34 @@ const de_AccessControlTranslation = (output, context) => {
6551
7931
  }
6552
7932
  return contents;
6553
7933
  };
7934
+ const de_AccessGrantsInstancesList = (output, context) => {
7935
+ return (output || [])
7936
+ .filter((e) => e != null)
7937
+ .map((entry) => {
7938
+ return de_ListAccessGrantsInstanceEntry(entry, context);
7939
+ });
7940
+ };
7941
+ const de_AccessGrantsList = (output, context) => {
7942
+ return (output || [])
7943
+ .filter((e) => e != null)
7944
+ .map((entry) => {
7945
+ return de_ListAccessGrantEntry(entry, context);
7946
+ });
7947
+ };
7948
+ const de_AccessGrantsLocationConfiguration = (output, context) => {
7949
+ const contents = {};
7950
+ if (output["S3SubPrefix"] !== undefined) {
7951
+ contents.S3SubPrefix = __expectString(output["S3SubPrefix"]);
7952
+ }
7953
+ return contents;
7954
+ };
7955
+ const de_AccessGrantsLocationsList = (output, context) => {
7956
+ return (output || [])
7957
+ .filter((e) => e != null)
7958
+ .map((entry) => {
7959
+ return de_ListAccessGrantsLocationsEntry(entry, context);
7960
+ });
7961
+ };
6554
7962
  const de_AccessPoint = (output, context) => {
6555
7963
  const contents = {};
6556
7964
  if (output["Name"] !== undefined) {
@@ -6746,6 +8154,22 @@ const de_CreateMultiRegionAccessPointInput = (output, context) => {
6746
8154
  }
6747
8155
  return contents;
6748
8156
  };
8157
+ const de_Credentials = (output, context) => {
8158
+ const contents = {};
8159
+ if (output["AccessKeyId"] !== undefined) {
8160
+ contents.AccessKeyId = __expectString(output["AccessKeyId"]);
8161
+ }
8162
+ if (output["SecretAccessKey"] !== undefined) {
8163
+ contents.SecretAccessKey = __expectString(output["SecretAccessKey"]);
8164
+ }
8165
+ if (output["SessionToken"] !== undefined) {
8166
+ contents.SessionToken = __expectString(output["SessionToken"]);
8167
+ }
8168
+ if (output["Expiration"] !== undefined) {
8169
+ contents.Expiration = __expectNonNull(__parseRfc3339DateTimeWithOffset(output["Expiration"]));
8170
+ }
8171
+ return contents;
8172
+ };
6749
8173
  const de_DeleteMarkerReplication = (output, context) => {
6750
8174
  const contents = {};
6751
8175
  if (output["Status"] !== undefined) {
@@ -6848,6 +8272,16 @@ const de_GeneratedManifestEncryption = (output, context) => {
6848
8272
  }
6849
8273
  return contents;
6850
8274
  };
8275
+ const de_Grantee = (output, context) => {
8276
+ const contents = {};
8277
+ if (output["GranteeType"] !== undefined) {
8278
+ contents.GranteeType = __expectString(output["GranteeType"]);
8279
+ }
8280
+ if (output["GranteeIdentifier"] !== undefined) {
8281
+ contents.GranteeIdentifier = __expectString(output["GranteeIdentifier"]);
8282
+ }
8283
+ return contents;
8284
+ };
6851
8285
  const de_Include = (output, context) => {
6852
8286
  const contents = {};
6853
8287
  if (output.Buckets === "") {
@@ -7263,6 +8697,72 @@ const de_LifecycleRules = (output, context) => {
7263
8697
  return de_LifecycleRule(entry, context);
7264
8698
  });
7265
8699
  };
8700
+ const de_ListAccessGrantEntry = (output, context) => {
8701
+ const contents = {};
8702
+ if (output["CreatedAt"] !== undefined) {
8703
+ contents.CreatedAt = __expectNonNull(__parseRfc3339DateTimeWithOffset(output["CreatedAt"]));
8704
+ }
8705
+ if (output["AccessGrantId"] !== undefined) {
8706
+ contents.AccessGrantId = __expectString(output["AccessGrantId"]);
8707
+ }
8708
+ if (output["AccessGrantArn"] !== undefined) {
8709
+ contents.AccessGrantArn = __expectString(output["AccessGrantArn"]);
8710
+ }
8711
+ if (output["Grantee"] !== undefined) {
8712
+ contents.Grantee = de_Grantee(output["Grantee"], context);
8713
+ }
8714
+ if (output["Permission"] !== undefined) {
8715
+ contents.Permission = __expectString(output["Permission"]);
8716
+ }
8717
+ if (output["AccessGrantsLocationId"] !== undefined) {
8718
+ contents.AccessGrantsLocationId = __expectString(output["AccessGrantsLocationId"]);
8719
+ }
8720
+ if (output["AccessGrantsLocationConfiguration"] !== undefined) {
8721
+ contents.AccessGrantsLocationConfiguration = de_AccessGrantsLocationConfiguration(output["AccessGrantsLocationConfiguration"], context);
8722
+ }
8723
+ if (output["GrantScope"] !== undefined) {
8724
+ contents.GrantScope = __expectString(output["GrantScope"]);
8725
+ }
8726
+ if (output["ApplicationArn"] !== undefined) {
8727
+ contents.ApplicationArn = __expectString(output["ApplicationArn"]);
8728
+ }
8729
+ return contents;
8730
+ };
8731
+ const de_ListAccessGrantsInstanceEntry = (output, context) => {
8732
+ const contents = {};
8733
+ if (output["AccessGrantsInstanceId"] !== undefined) {
8734
+ contents.AccessGrantsInstanceId = __expectString(output["AccessGrantsInstanceId"]);
8735
+ }
8736
+ if (output["AccessGrantsInstanceArn"] !== undefined) {
8737
+ contents.AccessGrantsInstanceArn = __expectString(output["AccessGrantsInstanceArn"]);
8738
+ }
8739
+ if (output["CreatedAt"] !== undefined) {
8740
+ contents.CreatedAt = __expectNonNull(__parseRfc3339DateTimeWithOffset(output["CreatedAt"]));
8741
+ }
8742
+ if (output["IdentityCenterArn"] !== undefined) {
8743
+ contents.IdentityCenterArn = __expectString(output["IdentityCenterArn"]);
8744
+ }
8745
+ return contents;
8746
+ };
8747
+ const de_ListAccessGrantsLocationsEntry = (output, context) => {
8748
+ const contents = {};
8749
+ if (output["CreatedAt"] !== undefined) {
8750
+ contents.CreatedAt = __expectNonNull(__parseRfc3339DateTimeWithOffset(output["CreatedAt"]));
8751
+ }
8752
+ if (output["AccessGrantsLocationId"] !== undefined) {
8753
+ contents.AccessGrantsLocationId = __expectString(output["AccessGrantsLocationId"]);
8754
+ }
8755
+ if (output["AccessGrantsLocationArn"] !== undefined) {
8756
+ contents.AccessGrantsLocationArn = __expectString(output["AccessGrantsLocationArn"]);
8757
+ }
8758
+ if (output["LocationScope"] !== undefined) {
8759
+ contents.LocationScope = __expectString(output["LocationScope"]);
8760
+ }
8761
+ if (output["IAMRoleArn"] !== undefined) {
8762
+ contents.IAMRoleArn = __expectString(output["IAMRoleArn"]);
8763
+ }
8764
+ return contents;
8765
+ };
7266
8766
  const de_ListStorageLensConfigurationEntry = (output, context) => {
7267
8767
  const contents = {};
7268
8768
  if (output["Id"] !== undefined) {