@aws-sdk/client-s3-control 3.188.0 → 3.192.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 (270) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist-cjs/S3ControlClient.js +12 -9
  3. package/dist-cjs/commands/CreateAccessPointCommand.js +13 -0
  4. package/dist-cjs/commands/CreateAccessPointForObjectLambdaCommand.js +12 -0
  5. package/dist-cjs/commands/CreateBucketCommand.js +13 -0
  6. package/dist-cjs/commands/CreateJobCommand.js +12 -0
  7. package/dist-cjs/commands/CreateMultiRegionAccessPointCommand.js +12 -0
  8. package/dist-cjs/commands/DeleteAccessPointCommand.js +13 -0
  9. package/dist-cjs/commands/DeleteAccessPointForObjectLambdaCommand.js +12 -0
  10. package/dist-cjs/commands/DeleteAccessPointPolicyCommand.js +13 -0
  11. package/dist-cjs/commands/DeleteAccessPointPolicyForObjectLambdaCommand.js +12 -0
  12. package/dist-cjs/commands/DeleteBucketCommand.js +13 -0
  13. package/dist-cjs/commands/DeleteBucketLifecycleConfigurationCommand.js +13 -0
  14. package/dist-cjs/commands/DeleteBucketPolicyCommand.js +13 -0
  15. package/dist-cjs/commands/DeleteBucketTaggingCommand.js +13 -0
  16. package/dist-cjs/commands/DeleteJobTaggingCommand.js +12 -0
  17. package/dist-cjs/commands/DeleteMultiRegionAccessPointCommand.js +12 -0
  18. package/dist-cjs/commands/DeletePublicAccessBlockCommand.js +12 -0
  19. package/dist-cjs/commands/DeleteStorageLensConfigurationCommand.js +12 -0
  20. package/dist-cjs/commands/DeleteStorageLensConfigurationTaggingCommand.js +12 -0
  21. package/dist-cjs/commands/DescribeJobCommand.js +12 -0
  22. package/dist-cjs/commands/DescribeMultiRegionAccessPointOperationCommand.js +12 -0
  23. package/dist-cjs/commands/GetAccessPointCommand.js +13 -0
  24. package/dist-cjs/commands/GetAccessPointConfigurationForObjectLambdaCommand.js +12 -0
  25. package/dist-cjs/commands/GetAccessPointForObjectLambdaCommand.js +12 -0
  26. package/dist-cjs/commands/GetAccessPointPolicyCommand.js +13 -0
  27. package/dist-cjs/commands/GetAccessPointPolicyForObjectLambdaCommand.js +12 -0
  28. package/dist-cjs/commands/GetAccessPointPolicyStatusCommand.js +13 -0
  29. package/dist-cjs/commands/GetAccessPointPolicyStatusForObjectLambdaCommand.js +12 -0
  30. package/dist-cjs/commands/GetBucketCommand.js +13 -0
  31. package/dist-cjs/commands/GetBucketLifecycleConfigurationCommand.js +13 -0
  32. package/dist-cjs/commands/GetBucketPolicyCommand.js +13 -0
  33. package/dist-cjs/commands/GetBucketTaggingCommand.js +13 -0
  34. package/dist-cjs/commands/GetBucketVersioningCommand.js +11 -0
  35. package/dist-cjs/commands/GetJobTaggingCommand.js +12 -0
  36. package/dist-cjs/commands/GetMultiRegionAccessPointCommand.js +12 -0
  37. package/dist-cjs/commands/GetMultiRegionAccessPointPolicyCommand.js +12 -0
  38. package/dist-cjs/commands/GetMultiRegionAccessPointPolicyStatusCommand.js +12 -0
  39. package/dist-cjs/commands/GetPublicAccessBlockCommand.js +12 -0
  40. package/dist-cjs/commands/GetStorageLensConfigurationCommand.js +12 -0
  41. package/dist-cjs/commands/GetStorageLensConfigurationTaggingCommand.js +12 -0
  42. package/dist-cjs/commands/ListAccessPointsCommand.js +13 -0
  43. package/dist-cjs/commands/ListAccessPointsForObjectLambdaCommand.js +12 -0
  44. package/dist-cjs/commands/ListJobsCommand.js +12 -0
  45. package/dist-cjs/commands/ListMultiRegionAccessPointsCommand.js +12 -0
  46. package/dist-cjs/commands/ListRegionalBucketsCommand.js +13 -0
  47. package/dist-cjs/commands/ListStorageLensConfigurationsCommand.js +12 -0
  48. package/dist-cjs/commands/PutAccessPointConfigurationForObjectLambdaCommand.js +12 -0
  49. package/dist-cjs/commands/PutAccessPointPolicyCommand.js +13 -0
  50. package/dist-cjs/commands/PutAccessPointPolicyForObjectLambdaCommand.js +12 -0
  51. package/dist-cjs/commands/PutBucketLifecycleConfigurationCommand.js +13 -0
  52. package/dist-cjs/commands/PutBucketPolicyCommand.js +13 -0
  53. package/dist-cjs/commands/PutBucketTaggingCommand.js +13 -0
  54. package/dist-cjs/commands/PutBucketVersioningCommand.js +11 -0
  55. package/dist-cjs/commands/PutJobTaggingCommand.js +12 -0
  56. package/dist-cjs/commands/PutMultiRegionAccessPointPolicyCommand.js +12 -0
  57. package/dist-cjs/commands/PutPublicAccessBlockCommand.js +12 -0
  58. package/dist-cjs/commands/PutStorageLensConfigurationCommand.js +12 -0
  59. package/dist-cjs/commands/PutStorageLensConfigurationTaggingCommand.js +12 -0
  60. package/dist-cjs/commands/UpdateJobPriorityCommand.js +12 -0
  61. package/dist-cjs/commands/UpdateJobStatusCommand.js +12 -0
  62. package/dist-cjs/endpoint/EndpointParameters.js +13 -0
  63. package/dist-cjs/endpoint/endpointResolver.js +12 -0
  64. package/dist-cjs/endpoint/ruleset.js +2354 -0
  65. package/dist-cjs/protocols/Aws_restXml.js +12 -15
  66. package/dist-cjs/runtimeConfig.shared.js +3 -3
  67. package/dist-es/S3ControlClient.js +13 -10
  68. package/dist-es/commands/CreateAccessPointCommand.js +13 -0
  69. package/dist-es/commands/CreateAccessPointForObjectLambdaCommand.js +12 -0
  70. package/dist-es/commands/CreateBucketCommand.js +13 -0
  71. package/dist-es/commands/CreateJobCommand.js +12 -0
  72. package/dist-es/commands/CreateMultiRegionAccessPointCommand.js +12 -0
  73. package/dist-es/commands/DeleteAccessPointCommand.js +13 -0
  74. package/dist-es/commands/DeleteAccessPointForObjectLambdaCommand.js +12 -0
  75. package/dist-es/commands/DeleteAccessPointPolicyCommand.js +13 -0
  76. package/dist-es/commands/DeleteAccessPointPolicyForObjectLambdaCommand.js +12 -0
  77. package/dist-es/commands/DeleteBucketCommand.js +13 -0
  78. package/dist-es/commands/DeleteBucketLifecycleConfigurationCommand.js +13 -0
  79. package/dist-es/commands/DeleteBucketPolicyCommand.js +13 -0
  80. package/dist-es/commands/DeleteBucketTaggingCommand.js +13 -0
  81. package/dist-es/commands/DeleteJobTaggingCommand.js +12 -0
  82. package/dist-es/commands/DeleteMultiRegionAccessPointCommand.js +12 -0
  83. package/dist-es/commands/DeletePublicAccessBlockCommand.js +12 -0
  84. package/dist-es/commands/DeleteStorageLensConfigurationCommand.js +12 -0
  85. package/dist-es/commands/DeleteStorageLensConfigurationTaggingCommand.js +12 -0
  86. package/dist-es/commands/DescribeJobCommand.js +12 -0
  87. package/dist-es/commands/DescribeMultiRegionAccessPointOperationCommand.js +12 -0
  88. package/dist-es/commands/GetAccessPointCommand.js +13 -0
  89. package/dist-es/commands/GetAccessPointConfigurationForObjectLambdaCommand.js +12 -0
  90. package/dist-es/commands/GetAccessPointForObjectLambdaCommand.js +12 -0
  91. package/dist-es/commands/GetAccessPointPolicyCommand.js +13 -0
  92. package/dist-es/commands/GetAccessPointPolicyForObjectLambdaCommand.js +12 -0
  93. package/dist-es/commands/GetAccessPointPolicyStatusCommand.js +13 -0
  94. package/dist-es/commands/GetAccessPointPolicyStatusForObjectLambdaCommand.js +12 -0
  95. package/dist-es/commands/GetBucketCommand.js +13 -0
  96. package/dist-es/commands/GetBucketLifecycleConfigurationCommand.js +13 -0
  97. package/dist-es/commands/GetBucketPolicyCommand.js +13 -0
  98. package/dist-es/commands/GetBucketTaggingCommand.js +13 -0
  99. package/dist-es/commands/GetBucketVersioningCommand.js +11 -0
  100. package/dist-es/commands/GetJobTaggingCommand.js +12 -0
  101. package/dist-es/commands/GetMultiRegionAccessPointCommand.js +12 -0
  102. package/dist-es/commands/GetMultiRegionAccessPointPolicyCommand.js +12 -0
  103. package/dist-es/commands/GetMultiRegionAccessPointPolicyStatusCommand.js +12 -0
  104. package/dist-es/commands/GetPublicAccessBlockCommand.js +12 -0
  105. package/dist-es/commands/GetStorageLensConfigurationCommand.js +12 -0
  106. package/dist-es/commands/GetStorageLensConfigurationTaggingCommand.js +12 -0
  107. package/dist-es/commands/ListAccessPointsCommand.js +13 -0
  108. package/dist-es/commands/ListAccessPointsForObjectLambdaCommand.js +12 -0
  109. package/dist-es/commands/ListJobsCommand.js +12 -0
  110. package/dist-es/commands/ListMultiRegionAccessPointsCommand.js +12 -0
  111. package/dist-es/commands/ListRegionalBucketsCommand.js +13 -0
  112. package/dist-es/commands/ListStorageLensConfigurationsCommand.js +12 -0
  113. package/dist-es/commands/PutAccessPointConfigurationForObjectLambdaCommand.js +12 -0
  114. package/dist-es/commands/PutAccessPointPolicyCommand.js +13 -0
  115. package/dist-es/commands/PutAccessPointPolicyForObjectLambdaCommand.js +12 -0
  116. package/dist-es/commands/PutBucketLifecycleConfigurationCommand.js +13 -0
  117. package/dist-es/commands/PutBucketPolicyCommand.js +13 -0
  118. package/dist-es/commands/PutBucketTaggingCommand.js +13 -0
  119. package/dist-es/commands/PutBucketVersioningCommand.js +11 -0
  120. package/dist-es/commands/PutJobTaggingCommand.js +12 -0
  121. package/dist-es/commands/PutMultiRegionAccessPointPolicyCommand.js +12 -0
  122. package/dist-es/commands/PutPublicAccessBlockCommand.js +12 -0
  123. package/dist-es/commands/PutStorageLensConfigurationCommand.js +12 -0
  124. package/dist-es/commands/PutStorageLensConfigurationTaggingCommand.js +12 -0
  125. package/dist-es/commands/UpdateJobPriorityCommand.js +12 -0
  126. package/dist-es/commands/UpdateJobStatusCommand.js +12 -0
  127. package/dist-es/endpoint/EndpointParameters.js +8 -0
  128. package/dist-es/endpoint/endpointResolver.js +8 -0
  129. package/dist-es/endpoint/ruleset.js +2351 -0
  130. package/dist-es/protocols/Aws_restXml.js +12 -15
  131. package/dist-es/runtimeConfig.shared.js +2 -2
  132. package/dist-types/S3ControlClient.d.ts +6 -9
  133. package/dist-types/commands/CreateAccessPointCommand.d.ts +2 -0
  134. package/dist-types/commands/CreateAccessPointForObjectLambdaCommand.d.ts +2 -0
  135. package/dist-types/commands/CreateBucketCommand.d.ts +2 -0
  136. package/dist-types/commands/CreateJobCommand.d.ts +2 -0
  137. package/dist-types/commands/CreateMultiRegionAccessPointCommand.d.ts +2 -0
  138. package/dist-types/commands/DeleteAccessPointCommand.d.ts +2 -0
  139. package/dist-types/commands/DeleteAccessPointForObjectLambdaCommand.d.ts +2 -0
  140. package/dist-types/commands/DeleteAccessPointPolicyCommand.d.ts +2 -0
  141. package/dist-types/commands/DeleteAccessPointPolicyForObjectLambdaCommand.d.ts +2 -0
  142. package/dist-types/commands/DeleteBucketCommand.d.ts +2 -0
  143. package/dist-types/commands/DeleteBucketLifecycleConfigurationCommand.d.ts +2 -0
  144. package/dist-types/commands/DeleteBucketPolicyCommand.d.ts +2 -0
  145. package/dist-types/commands/DeleteBucketTaggingCommand.d.ts +2 -0
  146. package/dist-types/commands/DeleteJobTaggingCommand.d.ts +2 -0
  147. package/dist-types/commands/DeleteMultiRegionAccessPointCommand.d.ts +2 -0
  148. package/dist-types/commands/DeletePublicAccessBlockCommand.d.ts +2 -0
  149. package/dist-types/commands/DeleteStorageLensConfigurationCommand.d.ts +2 -0
  150. package/dist-types/commands/DeleteStorageLensConfigurationTaggingCommand.d.ts +2 -0
  151. package/dist-types/commands/DescribeJobCommand.d.ts +2 -0
  152. package/dist-types/commands/DescribeMultiRegionAccessPointOperationCommand.d.ts +2 -0
  153. package/dist-types/commands/GetAccessPointCommand.d.ts +2 -0
  154. package/dist-types/commands/GetAccessPointConfigurationForObjectLambdaCommand.d.ts +2 -0
  155. package/dist-types/commands/GetAccessPointForObjectLambdaCommand.d.ts +2 -0
  156. package/dist-types/commands/GetAccessPointPolicyCommand.d.ts +2 -0
  157. package/dist-types/commands/GetAccessPointPolicyForObjectLambdaCommand.d.ts +2 -0
  158. package/dist-types/commands/GetAccessPointPolicyStatusCommand.d.ts +2 -0
  159. package/dist-types/commands/GetAccessPointPolicyStatusForObjectLambdaCommand.d.ts +2 -0
  160. package/dist-types/commands/GetBucketCommand.d.ts +2 -0
  161. package/dist-types/commands/GetBucketLifecycleConfigurationCommand.d.ts +2 -0
  162. package/dist-types/commands/GetBucketPolicyCommand.d.ts +2 -0
  163. package/dist-types/commands/GetBucketTaggingCommand.d.ts +2 -0
  164. package/dist-types/commands/GetBucketVersioningCommand.d.ts +2 -0
  165. package/dist-types/commands/GetJobTaggingCommand.d.ts +2 -0
  166. package/dist-types/commands/GetMultiRegionAccessPointCommand.d.ts +2 -0
  167. package/dist-types/commands/GetMultiRegionAccessPointPolicyCommand.d.ts +2 -0
  168. package/dist-types/commands/GetMultiRegionAccessPointPolicyStatusCommand.d.ts +2 -0
  169. package/dist-types/commands/GetPublicAccessBlockCommand.d.ts +2 -0
  170. package/dist-types/commands/GetStorageLensConfigurationCommand.d.ts +2 -0
  171. package/dist-types/commands/GetStorageLensConfigurationTaggingCommand.d.ts +2 -0
  172. package/dist-types/commands/ListAccessPointsCommand.d.ts +2 -0
  173. package/dist-types/commands/ListAccessPointsForObjectLambdaCommand.d.ts +2 -0
  174. package/dist-types/commands/ListJobsCommand.d.ts +2 -0
  175. package/dist-types/commands/ListMultiRegionAccessPointsCommand.d.ts +2 -0
  176. package/dist-types/commands/ListRegionalBucketsCommand.d.ts +2 -0
  177. package/dist-types/commands/ListStorageLensConfigurationsCommand.d.ts +2 -0
  178. package/dist-types/commands/PutAccessPointConfigurationForObjectLambdaCommand.d.ts +2 -0
  179. package/dist-types/commands/PutAccessPointPolicyCommand.d.ts +2 -0
  180. package/dist-types/commands/PutAccessPointPolicyForObjectLambdaCommand.d.ts +2 -0
  181. package/dist-types/commands/PutBucketLifecycleConfigurationCommand.d.ts +2 -0
  182. package/dist-types/commands/PutBucketPolicyCommand.d.ts +2 -0
  183. package/dist-types/commands/PutBucketTaggingCommand.d.ts +2 -0
  184. package/dist-types/commands/PutBucketVersioningCommand.d.ts +2 -0
  185. package/dist-types/commands/PutJobTaggingCommand.d.ts +2 -0
  186. package/dist-types/commands/PutMultiRegionAccessPointPolicyCommand.d.ts +2 -0
  187. package/dist-types/commands/PutPublicAccessBlockCommand.d.ts +2 -0
  188. package/dist-types/commands/PutStorageLensConfigurationCommand.d.ts +2 -0
  189. package/dist-types/commands/PutStorageLensConfigurationTaggingCommand.d.ts +2 -0
  190. package/dist-types/commands/UpdateJobPriorityCommand.d.ts +2 -0
  191. package/dist-types/commands/UpdateJobStatusCommand.d.ts +2 -0
  192. package/dist-types/endpoint/EndpointParameters.d.ts +26 -0
  193. package/dist-types/endpoint/endpointResolver.d.ts +5 -0
  194. package/dist-types/endpoint/ruleset.d.ts +2 -0
  195. package/dist-types/runtimeConfig.browser.d.ts +4 -2
  196. package/dist-types/runtimeConfig.d.ts +4 -2
  197. package/dist-types/runtimeConfig.native.d.ts +4 -2
  198. package/dist-types/runtimeConfig.shared.d.ts +3 -1
  199. package/dist-types/ts3.4/S3ControlClient.d.ts +15 -8
  200. package/dist-types/ts3.4/commands/CreateAccessPointCommand.d.ts +2 -0
  201. package/dist-types/ts3.4/commands/CreateAccessPointForObjectLambdaCommand.d.ts +2 -0
  202. package/dist-types/ts3.4/commands/CreateBucketCommand.d.ts +2 -0
  203. package/dist-types/ts3.4/commands/CreateJobCommand.d.ts +2 -0
  204. package/dist-types/ts3.4/commands/CreateMultiRegionAccessPointCommand.d.ts +2 -0
  205. package/dist-types/ts3.4/commands/DeleteAccessPointCommand.d.ts +2 -0
  206. package/dist-types/ts3.4/commands/DeleteAccessPointForObjectLambdaCommand.d.ts +2 -0
  207. package/dist-types/ts3.4/commands/DeleteAccessPointPolicyCommand.d.ts +2 -0
  208. package/dist-types/ts3.4/commands/DeleteAccessPointPolicyForObjectLambdaCommand.d.ts +2 -0
  209. package/dist-types/ts3.4/commands/DeleteBucketCommand.d.ts +2 -0
  210. package/dist-types/ts3.4/commands/DeleteBucketLifecycleConfigurationCommand.d.ts +2 -0
  211. package/dist-types/ts3.4/commands/DeleteBucketPolicyCommand.d.ts +2 -0
  212. package/dist-types/ts3.4/commands/DeleteBucketTaggingCommand.d.ts +2 -0
  213. package/dist-types/ts3.4/commands/DeleteJobTaggingCommand.d.ts +2 -0
  214. package/dist-types/ts3.4/commands/DeleteMultiRegionAccessPointCommand.d.ts +2 -0
  215. package/dist-types/ts3.4/commands/DeletePublicAccessBlockCommand.d.ts +2 -0
  216. package/dist-types/ts3.4/commands/DeleteStorageLensConfigurationCommand.d.ts +2 -0
  217. package/dist-types/ts3.4/commands/DeleteStorageLensConfigurationTaggingCommand.d.ts +2 -0
  218. package/dist-types/ts3.4/commands/DescribeJobCommand.d.ts +2 -0
  219. package/dist-types/ts3.4/commands/DescribeMultiRegionAccessPointOperationCommand.d.ts +2 -0
  220. package/dist-types/ts3.4/commands/GetAccessPointCommand.d.ts +2 -0
  221. package/dist-types/ts3.4/commands/GetAccessPointConfigurationForObjectLambdaCommand.d.ts +2 -0
  222. package/dist-types/ts3.4/commands/GetAccessPointForObjectLambdaCommand.d.ts +2 -0
  223. package/dist-types/ts3.4/commands/GetAccessPointPolicyCommand.d.ts +2 -0
  224. package/dist-types/ts3.4/commands/GetAccessPointPolicyForObjectLambdaCommand.d.ts +2 -0
  225. package/dist-types/ts3.4/commands/GetAccessPointPolicyStatusCommand.d.ts +2 -0
  226. package/dist-types/ts3.4/commands/GetAccessPointPolicyStatusForObjectLambdaCommand.d.ts +2 -0
  227. package/dist-types/ts3.4/commands/GetBucketCommand.d.ts +2 -0
  228. package/dist-types/ts3.4/commands/GetBucketLifecycleConfigurationCommand.d.ts +2 -0
  229. package/dist-types/ts3.4/commands/GetBucketPolicyCommand.d.ts +2 -0
  230. package/dist-types/ts3.4/commands/GetBucketTaggingCommand.d.ts +2 -0
  231. package/dist-types/ts3.4/commands/GetBucketVersioningCommand.d.ts +2 -0
  232. package/dist-types/ts3.4/commands/GetJobTaggingCommand.d.ts +2 -0
  233. package/dist-types/ts3.4/commands/GetMultiRegionAccessPointCommand.d.ts +2 -0
  234. package/dist-types/ts3.4/commands/GetMultiRegionAccessPointPolicyCommand.d.ts +2 -0
  235. package/dist-types/ts3.4/commands/GetMultiRegionAccessPointPolicyStatusCommand.d.ts +2 -0
  236. package/dist-types/ts3.4/commands/GetPublicAccessBlockCommand.d.ts +2 -0
  237. package/dist-types/ts3.4/commands/GetStorageLensConfigurationCommand.d.ts +2 -0
  238. package/dist-types/ts3.4/commands/GetStorageLensConfigurationTaggingCommand.d.ts +2 -0
  239. package/dist-types/ts3.4/commands/ListAccessPointsCommand.d.ts +2 -0
  240. package/dist-types/ts3.4/commands/ListAccessPointsForObjectLambdaCommand.d.ts +2 -0
  241. package/dist-types/ts3.4/commands/ListJobsCommand.d.ts +2 -0
  242. package/dist-types/ts3.4/commands/ListMultiRegionAccessPointsCommand.d.ts +2 -0
  243. package/dist-types/ts3.4/commands/ListRegionalBucketsCommand.d.ts +2 -0
  244. package/dist-types/ts3.4/commands/ListStorageLensConfigurationsCommand.d.ts +2 -0
  245. package/dist-types/ts3.4/commands/PutAccessPointConfigurationForObjectLambdaCommand.d.ts +2 -0
  246. package/dist-types/ts3.4/commands/PutAccessPointPolicyCommand.d.ts +2 -0
  247. package/dist-types/ts3.4/commands/PutAccessPointPolicyForObjectLambdaCommand.d.ts +2 -0
  248. package/dist-types/ts3.4/commands/PutBucketLifecycleConfigurationCommand.d.ts +2 -0
  249. package/dist-types/ts3.4/commands/PutBucketPolicyCommand.d.ts +2 -0
  250. package/dist-types/ts3.4/commands/PutBucketTaggingCommand.d.ts +2 -0
  251. package/dist-types/ts3.4/commands/PutBucketVersioningCommand.d.ts +2 -0
  252. package/dist-types/ts3.4/commands/PutJobTaggingCommand.d.ts +2 -0
  253. package/dist-types/ts3.4/commands/PutMultiRegionAccessPointPolicyCommand.d.ts +2 -0
  254. package/dist-types/ts3.4/commands/PutPublicAccessBlockCommand.d.ts +2 -0
  255. package/dist-types/ts3.4/commands/PutStorageLensConfigurationCommand.d.ts +2 -0
  256. package/dist-types/ts3.4/commands/PutStorageLensConfigurationTaggingCommand.d.ts +2 -0
  257. package/dist-types/ts3.4/commands/UpdateJobPriorityCommand.d.ts +2 -0
  258. package/dist-types/ts3.4/commands/UpdateJobStatusCommand.d.ts +2 -0
  259. package/dist-types/ts3.4/endpoint/EndpointParameters.d.ts +33 -0
  260. package/dist-types/ts3.4/endpoint/endpointResolver.d.ts +8 -0
  261. package/dist-types/ts3.4/endpoint/ruleset.d.ts +2 -0
  262. package/dist-types/ts3.4/runtimeConfig.browser.d.ts +14 -4
  263. package/dist-types/ts3.4/runtimeConfig.d.ts +14 -4
  264. package/dist-types/ts3.4/runtimeConfig.native.d.ts +14 -3
  265. package/dist-types/ts3.4/runtimeConfig.shared.d.ts +6 -1
  266. package/package.json +32 -31
  267. package/dist-cjs/endpoints.js +0 -467
  268. package/dist-es/endpoints.js +0 -463
  269. package/dist-types/endpoints.d.ts +0 -2
  270. package/dist-types/ts3.4/endpoints.d.ts +0 -2
@@ -0,0 +1,2354 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ruleSet = void 0;
4
+ exports.ruleSet = {
5
+ version: "1.0",
6
+ parameters: {
7
+ Region: {
8
+ builtIn: "AWS::Region",
9
+ required: false,
10
+ documentation: "The AWS region used to dispatch the request.",
11
+ type: "String",
12
+ },
13
+ UseFIPS: {
14
+ builtIn: "AWS::UseFIPS",
15
+ required: true,
16
+ default: false,
17
+ documentation: "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.",
18
+ type: "Boolean",
19
+ },
20
+ UseDualStack: {
21
+ builtIn: "AWS::UseDualStack",
22
+ required: true,
23
+ default: false,
24
+ documentation: "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.",
25
+ type: "Boolean",
26
+ },
27
+ Endpoint: {
28
+ builtIn: "SDK::Endpoint",
29
+ required: false,
30
+ documentation: "Override the endpoint used to send this request",
31
+ type: "String",
32
+ },
33
+ AccountId: {
34
+ required: false,
35
+ documentation: "The Account ID used to send the request. This is an optional parameter that will be set automatically for operations that require it.",
36
+ type: "String",
37
+ },
38
+ RequiresAccountId: {
39
+ required: false,
40
+ documentation: "Internal parameter for operations that require account id host prefix.",
41
+ type: "Boolean",
42
+ },
43
+ OutpostId: {
44
+ required: false,
45
+ documentation: "The Outpost ID. Some operations have an optional OutpostId which should be used in endpoint construction.",
46
+ type: "String",
47
+ },
48
+ Bucket: {
49
+ required: false,
50
+ documentation: "The S3 bucket used to send the request. This is an optional parameter that will be set automatically for operations that are scoped to an S3 bucket.",
51
+ type: "String",
52
+ },
53
+ AccessPointName: {
54
+ required: false,
55
+ documentation: "The S3 AccessPointName used to send the request. This is an optional parameter that will be set automatically for operations that are scoped to an S3 AccessPoint.",
56
+ type: "String",
57
+ },
58
+ UseArnRegion: {
59
+ builtIn: "AWS::S3Control::UseArnRegion",
60
+ required: false,
61
+ documentation: "When an Access Point ARN is provided and this flag is enabled, the SDK MUST use the ARN's region when constructing the endpoint instead of the client's configured region.",
62
+ type: "Boolean",
63
+ },
64
+ },
65
+ rules: [
66
+ {
67
+ conditions: [],
68
+ type: "tree",
69
+ rules: [
70
+ {
71
+ conditions: [
72
+ {
73
+ fn: "isSet",
74
+ argv: [
75
+ {
76
+ ref: "Region",
77
+ },
78
+ ],
79
+ },
80
+ ],
81
+ type: "tree",
82
+ rules: [
83
+ {
84
+ conditions: [],
85
+ type: "tree",
86
+ rules: [
87
+ {
88
+ conditions: [
89
+ {
90
+ fn: "isSet",
91
+ argv: [
92
+ {
93
+ ref: "OutpostId",
94
+ },
95
+ ],
96
+ },
97
+ ],
98
+ type: "tree",
99
+ rules: [
100
+ {
101
+ conditions: [
102
+ {
103
+ fn: "aws.partition",
104
+ argv: [
105
+ {
106
+ ref: "Region",
107
+ },
108
+ ],
109
+ assign: "partitionResult",
110
+ },
111
+ ],
112
+ type: "tree",
113
+ rules: [
114
+ {
115
+ conditions: [],
116
+ type: "tree",
117
+ rules: [
118
+ {
119
+ conditions: [
120
+ {
121
+ fn: "booleanEquals",
122
+ argv: [
123
+ {
124
+ ref: "UseFIPS",
125
+ },
126
+ true,
127
+ ],
128
+ },
129
+ {
130
+ fn: "stringEquals",
131
+ argv: [
132
+ {
133
+ fn: "getAttr",
134
+ argv: [
135
+ {
136
+ ref: "partitionResult",
137
+ },
138
+ "name",
139
+ ],
140
+ },
141
+ "aws-cn",
142
+ ],
143
+ },
144
+ ],
145
+ error: "Partition does not support FIPS",
146
+ type: "error",
147
+ },
148
+ {
149
+ conditions: [],
150
+ type: "tree",
151
+ rules: [
152
+ {
153
+ conditions: [
154
+ {
155
+ fn: "isSet",
156
+ argv: [
157
+ {
158
+ ref: "RequiresAccountId",
159
+ },
160
+ ],
161
+ },
162
+ {
163
+ fn: "booleanEquals",
164
+ argv: [
165
+ {
166
+ ref: "RequiresAccountId",
167
+ },
168
+ true,
169
+ ],
170
+ },
171
+ {
172
+ fn: "not",
173
+ argv: [
174
+ {
175
+ fn: "isSet",
176
+ argv: [
177
+ {
178
+ ref: "AccountId",
179
+ },
180
+ ],
181
+ },
182
+ ],
183
+ },
184
+ ],
185
+ error: "AccountId is required but not set",
186
+ type: "error",
187
+ },
188
+ {
189
+ conditions: [],
190
+ type: "tree",
191
+ rules: [
192
+ {
193
+ conditions: [
194
+ {
195
+ fn: "isSet",
196
+ argv: [
197
+ {
198
+ ref: "AccountId",
199
+ },
200
+ ],
201
+ },
202
+ {
203
+ fn: "not",
204
+ argv: [
205
+ {
206
+ fn: "isValidHostLabel",
207
+ argv: [
208
+ {
209
+ ref: "AccountId",
210
+ },
211
+ false,
212
+ ],
213
+ },
214
+ ],
215
+ },
216
+ ],
217
+ error: "AccountId must only contain a-z, A-Z, 0-9 and `-`.",
218
+ type: "error",
219
+ },
220
+ {
221
+ conditions: [],
222
+ type: "tree",
223
+ rules: [
224
+ {
225
+ conditions: [
226
+ {
227
+ fn: "not",
228
+ argv: [
229
+ {
230
+ fn: "isValidHostLabel",
231
+ argv: [
232
+ {
233
+ ref: "OutpostId",
234
+ },
235
+ false,
236
+ ],
237
+ },
238
+ ],
239
+ },
240
+ ],
241
+ error: "OutpostId must only contain a-z, A-Z, 0-9 and `-`.",
242
+ type: "error",
243
+ },
244
+ {
245
+ conditions: [],
246
+ type: "tree",
247
+ rules: [
248
+ {
249
+ conditions: [
250
+ {
251
+ fn: "isValidHostLabel",
252
+ argv: [
253
+ {
254
+ ref: "Region",
255
+ },
256
+ true,
257
+ ],
258
+ },
259
+ ],
260
+ type: "tree",
261
+ rules: [
262
+ {
263
+ conditions: [],
264
+ type: "tree",
265
+ rules: [
266
+ {
267
+ conditions: [
268
+ {
269
+ fn: "booleanEquals",
270
+ argv: [
271
+ {
272
+ ref: "UseDualStack",
273
+ },
274
+ true,
275
+ ],
276
+ },
277
+ ],
278
+ error: "Invalid configuration: Outposts do not support dual-stack",
279
+ type: "error",
280
+ },
281
+ {
282
+ conditions: [],
283
+ type: "tree",
284
+ rules: [
285
+ {
286
+ conditions: [
287
+ {
288
+ fn: "isSet",
289
+ argv: [
290
+ {
291
+ ref: "Endpoint",
292
+ },
293
+ ],
294
+ },
295
+ {
296
+ fn: "parseURL",
297
+ argv: [
298
+ {
299
+ ref: "Endpoint",
300
+ },
301
+ ],
302
+ assign: "url",
303
+ },
304
+ ],
305
+ endpoint: {
306
+ url: "{url#scheme}://{url#authority}{url#path}",
307
+ properties: {
308
+ authSchemes: [
309
+ {
310
+ name: "sigv4",
311
+ signingRegion: "{Region}",
312
+ disableDoubleEncoding: true,
313
+ signingName: "s3-outposts",
314
+ },
315
+ ],
316
+ },
317
+ headers: {},
318
+ },
319
+ type: "endpoint",
320
+ },
321
+ {
322
+ conditions: [
323
+ {
324
+ fn: "booleanEquals",
325
+ argv: [
326
+ {
327
+ ref: "UseFIPS",
328
+ },
329
+ true,
330
+ ],
331
+ },
332
+ ],
333
+ endpoint: {
334
+ url: "https://s3-outposts-fips.{Region}.{partitionResult#dnsSuffix}",
335
+ properties: {
336
+ authSchemes: [
337
+ {
338
+ name: "sigv4",
339
+ signingRegion: "{Region}",
340
+ disableDoubleEncoding: true,
341
+ signingName: "s3-outposts",
342
+ },
343
+ ],
344
+ },
345
+ headers: {},
346
+ },
347
+ type: "endpoint",
348
+ },
349
+ {
350
+ conditions: [],
351
+ endpoint: {
352
+ url: "https://s3-outposts.{Region}.{partitionResult#dnsSuffix}",
353
+ properties: {
354
+ authSchemes: [
355
+ {
356
+ name: "sigv4",
357
+ signingRegion: "{Region}",
358
+ disableDoubleEncoding: true,
359
+ signingName: "s3-outposts",
360
+ },
361
+ ],
362
+ },
363
+ headers: {},
364
+ },
365
+ type: "endpoint",
366
+ },
367
+ ],
368
+ },
369
+ ],
370
+ },
371
+ ],
372
+ },
373
+ {
374
+ conditions: [],
375
+ error: "Invalid region: region was not a valid DNS name.",
376
+ type: "error",
377
+ },
378
+ ],
379
+ },
380
+ ],
381
+ },
382
+ ],
383
+ },
384
+ ],
385
+ },
386
+ ],
387
+ },
388
+ ],
389
+ },
390
+ {
391
+ conditions: [],
392
+ error: "A valid partition could not be determined",
393
+ type: "error",
394
+ },
395
+ ],
396
+ },
397
+ {
398
+ conditions: [
399
+ {
400
+ fn: "isSet",
401
+ argv: [
402
+ {
403
+ ref: "AccessPointName",
404
+ },
405
+ ],
406
+ },
407
+ {
408
+ fn: "aws.parseArn",
409
+ argv: [
410
+ {
411
+ ref: "AccessPointName",
412
+ },
413
+ ],
414
+ assign: "accessPointArn",
415
+ },
416
+ ],
417
+ type: "tree",
418
+ rules: [
419
+ {
420
+ conditions: [
421
+ {
422
+ fn: "getAttr",
423
+ argv: [
424
+ {
425
+ ref: "accessPointArn",
426
+ },
427
+ "resourceId[0]",
428
+ ],
429
+ assign: "arnType",
430
+ },
431
+ {
432
+ fn: "not",
433
+ argv: [
434
+ {
435
+ fn: "stringEquals",
436
+ argv: [
437
+ {
438
+ ref: "arnType",
439
+ },
440
+ "",
441
+ ],
442
+ },
443
+ ],
444
+ },
445
+ ],
446
+ type: "tree",
447
+ rules: [
448
+ {
449
+ conditions: [
450
+ {
451
+ fn: "stringEquals",
452
+ argv: [
453
+ {
454
+ fn: "getAttr",
455
+ argv: [
456
+ {
457
+ ref: "accessPointArn",
458
+ },
459
+ "service",
460
+ ],
461
+ },
462
+ "s3-outposts",
463
+ ],
464
+ },
465
+ ],
466
+ type: "tree",
467
+ rules: [
468
+ {
469
+ conditions: [
470
+ {
471
+ fn: "booleanEquals",
472
+ argv: [
473
+ {
474
+ ref: "UseDualStack",
475
+ },
476
+ true,
477
+ ],
478
+ },
479
+ ],
480
+ error: "Invalid configuration: Outpost Access Points do not support dual-stack",
481
+ type: "error",
482
+ },
483
+ {
484
+ conditions: [],
485
+ type: "tree",
486
+ rules: [
487
+ {
488
+ conditions: [
489
+ {
490
+ fn: "getAttr",
491
+ argv: [
492
+ {
493
+ ref: "accessPointArn",
494
+ },
495
+ "resourceId[1]",
496
+ ],
497
+ assign: "outpostId",
498
+ },
499
+ ],
500
+ type: "tree",
501
+ rules: [
502
+ {
503
+ conditions: [],
504
+ type: "tree",
505
+ rules: [
506
+ {
507
+ conditions: [
508
+ {
509
+ fn: "isValidHostLabel",
510
+ argv: [
511
+ {
512
+ ref: "outpostId",
513
+ },
514
+ false,
515
+ ],
516
+ },
517
+ ],
518
+ type: "tree",
519
+ rules: [
520
+ {
521
+ conditions: [],
522
+ type: "tree",
523
+ rules: [
524
+ {
525
+ conditions: [
526
+ {
527
+ fn: "isSet",
528
+ argv: [
529
+ {
530
+ ref: "UseArnRegion",
531
+ },
532
+ ],
533
+ },
534
+ {
535
+ fn: "booleanEquals",
536
+ argv: [
537
+ {
538
+ ref: "UseArnRegion",
539
+ },
540
+ false,
541
+ ],
542
+ },
543
+ {
544
+ fn: "not",
545
+ argv: [
546
+ {
547
+ fn: "stringEquals",
548
+ argv: [
549
+ {
550
+ fn: "getAttr",
551
+ argv: [
552
+ {
553
+ ref: "accessPointArn",
554
+ },
555
+ "region",
556
+ ],
557
+ },
558
+ "{Region}",
559
+ ],
560
+ },
561
+ ],
562
+ },
563
+ ],
564
+ error: "Invalid configuration: region from ARN `{accessPointArn#region}` does not match client region `{Region}` and UseArnRegion is `false`",
565
+ type: "error",
566
+ },
567
+ {
568
+ conditions: [],
569
+ type: "tree",
570
+ rules: [
571
+ {
572
+ conditions: [
573
+ {
574
+ fn: "aws.partition",
575
+ argv: [
576
+ {
577
+ ref: "Region",
578
+ },
579
+ ],
580
+ assign: "partitionResult",
581
+ },
582
+ ],
583
+ type: "tree",
584
+ rules: [
585
+ {
586
+ conditions: [],
587
+ type: "tree",
588
+ rules: [
589
+ {
590
+ conditions: [
591
+ {
592
+ fn: "aws.partition",
593
+ argv: [
594
+ {
595
+ fn: "getAttr",
596
+ argv: [
597
+ {
598
+ ref: "accessPointArn",
599
+ },
600
+ "region",
601
+ ],
602
+ },
603
+ ],
604
+ assign: "arnPartition",
605
+ },
606
+ ],
607
+ type: "tree",
608
+ rules: [
609
+ {
610
+ conditions: [],
611
+ type: "tree",
612
+ rules: [
613
+ {
614
+ conditions: [
615
+ {
616
+ fn: "stringEquals",
617
+ argv: [
618
+ {
619
+ fn: "getAttr",
620
+ argv: [
621
+ {
622
+ ref: "arnPartition",
623
+ },
624
+ "name",
625
+ ],
626
+ },
627
+ {
628
+ fn: "getAttr",
629
+ argv: [
630
+ {
631
+ ref: "partitionResult",
632
+ },
633
+ "name",
634
+ ],
635
+ },
636
+ ],
637
+ },
638
+ ],
639
+ type: "tree",
640
+ rules: [
641
+ {
642
+ conditions: [],
643
+ type: "tree",
644
+ rules: [
645
+ {
646
+ conditions: [
647
+ {
648
+ fn: "isValidHostLabel",
649
+ argv: [
650
+ {
651
+ fn: "getAttr",
652
+ argv: [
653
+ {
654
+ ref: "accessPointArn",
655
+ },
656
+ "region",
657
+ ],
658
+ },
659
+ true,
660
+ ],
661
+ },
662
+ ],
663
+ type: "tree",
664
+ rules: [
665
+ {
666
+ conditions: [],
667
+ type: "tree",
668
+ rules: [
669
+ {
670
+ conditions: [
671
+ {
672
+ fn: "not",
673
+ argv: [
674
+ {
675
+ fn: "stringEquals",
676
+ argv: [
677
+ {
678
+ fn: "getAttr",
679
+ argv: [
680
+ {
681
+ ref: "accessPointArn",
682
+ },
683
+ "accountId",
684
+ ],
685
+ },
686
+ "",
687
+ ],
688
+ },
689
+ ],
690
+ },
691
+ ],
692
+ type: "tree",
693
+ rules: [
694
+ {
695
+ conditions: [],
696
+ type: "tree",
697
+ rules: [
698
+ {
699
+ conditions: [
700
+ {
701
+ fn: "isValidHostLabel",
702
+ argv: [
703
+ {
704
+ fn: "getAttr",
705
+ argv: [
706
+ {
707
+ ref: "accessPointArn",
708
+ },
709
+ "accountId",
710
+ ],
711
+ },
712
+ false,
713
+ ],
714
+ },
715
+ ],
716
+ type: "tree",
717
+ rules: [
718
+ {
719
+ conditions: [],
720
+ type: "tree",
721
+ rules: [
722
+ {
723
+ conditions: [
724
+ {
725
+ fn: "isSet",
726
+ argv: [
727
+ {
728
+ ref: "AccountId",
729
+ },
730
+ ],
731
+ },
732
+ {
733
+ fn: "not",
734
+ argv: [
735
+ {
736
+ fn: "stringEquals",
737
+ argv: [
738
+ {
739
+ ref: "AccountId",
740
+ },
741
+ "{accessPointArn#accountId}",
742
+ ],
743
+ },
744
+ ],
745
+ },
746
+ ],
747
+ error: "Invalid ARN: the accountId specified in the ARN (`{accessPointArn#accountId}`) does not match the parameter (`{AccountId}`)",
748
+ type: "error",
749
+ },
750
+ {
751
+ conditions: [],
752
+ type: "tree",
753
+ rules: [
754
+ {
755
+ conditions: [
756
+ {
757
+ fn: "getAttr",
758
+ argv: [
759
+ {
760
+ ref: "accessPointArn",
761
+ },
762
+ "resourceId[2]",
763
+ ],
764
+ assign: "outpostType",
765
+ },
766
+ ],
767
+ type: "tree",
768
+ rules: [
769
+ {
770
+ conditions: [],
771
+ type: "tree",
772
+ rules: [
773
+ {
774
+ conditions: [
775
+ {
776
+ fn: "getAttr",
777
+ argv: [
778
+ {
779
+ ref: "accessPointArn",
780
+ },
781
+ "resourceId[3]",
782
+ ],
783
+ assign: "accessPointName",
784
+ },
785
+ ],
786
+ type: "tree",
787
+ rules: [
788
+ {
789
+ conditions: [],
790
+ type: "tree",
791
+ rules: [
792
+ {
793
+ conditions: [
794
+ {
795
+ fn: "stringEquals",
796
+ argv: [
797
+ {
798
+ ref: "outpostType",
799
+ },
800
+ "accesspoint",
801
+ ],
802
+ },
803
+ ],
804
+ type: "tree",
805
+ rules: [
806
+ {
807
+ conditions: [],
808
+ type: "tree",
809
+ rules: [
810
+ {
811
+ conditions: [
812
+ {
813
+ fn: "booleanEquals",
814
+ argv: [
815
+ {
816
+ ref: "UseFIPS",
817
+ },
818
+ true,
819
+ ],
820
+ },
821
+ ],
822
+ endpoint: {
823
+ url: "https://s3-outposts-fips.{accessPointArn#region}.{arnPartition#dnsSuffix}",
824
+ properties: {
825
+ authSchemes: [
826
+ {
827
+ name: "sigv4",
828
+ signingRegion: "{accessPointArn#region}",
829
+ disableDoubleEncoding: true,
830
+ signingName: "s3-outposts",
831
+ },
832
+ ],
833
+ },
834
+ headers: {
835
+ "x-amz-account-id": [
836
+ "{accessPointArn#accountId}",
837
+ ],
838
+ "x-amz-outpost-id": [
839
+ "{outpostId}",
840
+ ],
841
+ },
842
+ },
843
+ type: "endpoint",
844
+ },
845
+ {
846
+ conditions: [
847
+ {
848
+ fn: "isSet",
849
+ argv: [
850
+ {
851
+ ref: "Endpoint",
852
+ },
853
+ ],
854
+ },
855
+ {
856
+ fn: "parseURL",
857
+ argv: [
858
+ {
859
+ ref: "Endpoint",
860
+ },
861
+ ],
862
+ assign: "url",
863
+ },
864
+ ],
865
+ endpoint: {
866
+ url: "{url#scheme}://{url#authority}{url#path}",
867
+ properties: {
868
+ authSchemes: [
869
+ {
870
+ name: "sigv4",
871
+ signingRegion: "{accessPointArn#region}",
872
+ disableDoubleEncoding: true,
873
+ signingName: "s3-outposts",
874
+ },
875
+ ],
876
+ },
877
+ headers: {
878
+ "x-amz-account-id": [
879
+ "{accessPointArn#accountId}",
880
+ ],
881
+ "x-amz-outpost-id": [
882
+ "{outpostId}",
883
+ ],
884
+ },
885
+ },
886
+ type: "endpoint",
887
+ },
888
+ {
889
+ conditions: [],
890
+ endpoint: {
891
+ url: "https://s3-outposts.{accessPointArn#region}.{arnPartition#dnsSuffix}",
892
+ properties: {
893
+ authSchemes: [
894
+ {
895
+ name: "sigv4",
896
+ signingRegion: "{accessPointArn#region}",
897
+ disableDoubleEncoding: true,
898
+ signingName: "s3-outposts",
899
+ },
900
+ ],
901
+ },
902
+ headers: {
903
+ "x-amz-account-id": [
904
+ "{accessPointArn#accountId}",
905
+ ],
906
+ "x-amz-outpost-id": [
907
+ "{outpostId}",
908
+ ],
909
+ },
910
+ },
911
+ type: "endpoint",
912
+ },
913
+ ],
914
+ },
915
+ ],
916
+ },
917
+ {
918
+ conditions: [],
919
+ error: "Expected an outpost type `accesspoint`, found `{outpostType}`",
920
+ type: "error",
921
+ },
922
+ ],
923
+ },
924
+ ],
925
+ },
926
+ {
927
+ conditions: [],
928
+ error: "Invalid ARN: expected an access point name",
929
+ type: "error",
930
+ },
931
+ ],
932
+ },
933
+ ],
934
+ },
935
+ {
936
+ conditions: [],
937
+ error: "Invalid ARN: Expected a 4-component resource",
938
+ type: "error",
939
+ },
940
+ ],
941
+ },
942
+ ],
943
+ },
944
+ ],
945
+ },
946
+ {
947
+ conditions: [],
948
+ error: "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `{accessPointArn#accountId}`",
949
+ type: "error",
950
+ },
951
+ ],
952
+ },
953
+ ],
954
+ },
955
+ {
956
+ conditions: [],
957
+ error: "Invalid ARN: missing account ID",
958
+ type: "error",
959
+ },
960
+ ],
961
+ },
962
+ ],
963
+ },
964
+ {
965
+ conditions: [],
966
+ error: "Invalid region in ARN: `{accessPointArn#region}` (invalid DNS name)",
967
+ type: "error",
968
+ },
969
+ ],
970
+ },
971
+ ],
972
+ },
973
+ {
974
+ conditions: [],
975
+ error: "Client was configured for partition `{partitionResult#name}` but ARN has `{arnPartition#name}`",
976
+ type: "error",
977
+ },
978
+ ],
979
+ },
980
+ ],
981
+ },
982
+ {
983
+ conditions: [],
984
+ error: "Could not load partition for ARN region `{accessPointArn#region}`",
985
+ type: "error",
986
+ },
987
+ ],
988
+ },
989
+ ],
990
+ },
991
+ {
992
+ conditions: [],
993
+ error: "A valid partition could not be determined",
994
+ type: "error",
995
+ },
996
+ ],
997
+ },
998
+ ],
999
+ },
1000
+ ],
1001
+ },
1002
+ {
1003
+ conditions: [],
1004
+ error: "Invalid ARN: The outpost Id must only contain a-z, A-Z, 0-9 and `-`., found: `{outpostId}`",
1005
+ type: "error",
1006
+ },
1007
+ ],
1008
+ },
1009
+ ],
1010
+ },
1011
+ {
1012
+ conditions: [],
1013
+ error: "Invalid ARN: The Outpost Id was not set",
1014
+ type: "error",
1015
+ },
1016
+ ],
1017
+ },
1018
+ ],
1019
+ },
1020
+ ],
1021
+ },
1022
+ {
1023
+ conditions: [],
1024
+ error: "Invalid ARN: No ARN type specified",
1025
+ type: "error",
1026
+ },
1027
+ ],
1028
+ },
1029
+ {
1030
+ conditions: [
1031
+ {
1032
+ fn: "isSet",
1033
+ argv: [
1034
+ {
1035
+ ref: "Bucket",
1036
+ },
1037
+ ],
1038
+ },
1039
+ {
1040
+ fn: "aws.parseArn",
1041
+ argv: [
1042
+ {
1043
+ ref: "Bucket",
1044
+ },
1045
+ ],
1046
+ assign: "bucketArn",
1047
+ },
1048
+ ],
1049
+ type: "tree",
1050
+ rules: [
1051
+ {
1052
+ conditions: [
1053
+ {
1054
+ fn: "getAttr",
1055
+ argv: [
1056
+ {
1057
+ ref: "bucketArn",
1058
+ },
1059
+ "resourceId[0]",
1060
+ ],
1061
+ assign: "arnType",
1062
+ },
1063
+ {
1064
+ fn: "not",
1065
+ argv: [
1066
+ {
1067
+ fn: "stringEquals",
1068
+ argv: [
1069
+ {
1070
+ ref: "arnType",
1071
+ },
1072
+ "",
1073
+ ],
1074
+ },
1075
+ ],
1076
+ },
1077
+ ],
1078
+ type: "tree",
1079
+ rules: [
1080
+ {
1081
+ conditions: [
1082
+ {
1083
+ fn: "stringEquals",
1084
+ argv: [
1085
+ {
1086
+ fn: "getAttr",
1087
+ argv: [
1088
+ {
1089
+ ref: "bucketArn",
1090
+ },
1091
+ "service",
1092
+ ],
1093
+ },
1094
+ "s3-outposts",
1095
+ ],
1096
+ },
1097
+ ],
1098
+ type: "tree",
1099
+ rules: [
1100
+ {
1101
+ conditions: [
1102
+ {
1103
+ fn: "booleanEquals",
1104
+ argv: [
1105
+ {
1106
+ ref: "UseDualStack",
1107
+ },
1108
+ true,
1109
+ ],
1110
+ },
1111
+ ],
1112
+ error: "Invalid configuration: Outpost buckets do not support dual-stack",
1113
+ type: "error",
1114
+ },
1115
+ {
1116
+ conditions: [],
1117
+ type: "tree",
1118
+ rules: [
1119
+ {
1120
+ conditions: [
1121
+ {
1122
+ fn: "getAttr",
1123
+ argv: [
1124
+ {
1125
+ ref: "bucketArn",
1126
+ },
1127
+ "resourceId[1]",
1128
+ ],
1129
+ assign: "outpostId",
1130
+ },
1131
+ ],
1132
+ type: "tree",
1133
+ rules: [
1134
+ {
1135
+ conditions: [],
1136
+ type: "tree",
1137
+ rules: [
1138
+ {
1139
+ conditions: [
1140
+ {
1141
+ fn: "isValidHostLabel",
1142
+ argv: [
1143
+ {
1144
+ ref: "outpostId",
1145
+ },
1146
+ false,
1147
+ ],
1148
+ },
1149
+ ],
1150
+ type: "tree",
1151
+ rules: [
1152
+ {
1153
+ conditions: [],
1154
+ type: "tree",
1155
+ rules: [
1156
+ {
1157
+ conditions: [
1158
+ {
1159
+ fn: "isSet",
1160
+ argv: [
1161
+ {
1162
+ ref: "UseArnRegion",
1163
+ },
1164
+ ],
1165
+ },
1166
+ {
1167
+ fn: "booleanEquals",
1168
+ argv: [
1169
+ {
1170
+ ref: "UseArnRegion",
1171
+ },
1172
+ false,
1173
+ ],
1174
+ },
1175
+ {
1176
+ fn: "not",
1177
+ argv: [
1178
+ {
1179
+ fn: "stringEquals",
1180
+ argv: [
1181
+ {
1182
+ fn: "getAttr",
1183
+ argv: [
1184
+ {
1185
+ ref: "bucketArn",
1186
+ },
1187
+ "region",
1188
+ ],
1189
+ },
1190
+ "{Region}",
1191
+ ],
1192
+ },
1193
+ ],
1194
+ },
1195
+ ],
1196
+ error: "Invalid configuration: region from ARN `{bucketArn#region}` does not match client region `{Region}` and UseArnRegion is `false`",
1197
+ type: "error",
1198
+ },
1199
+ {
1200
+ conditions: [],
1201
+ type: "tree",
1202
+ rules: [
1203
+ {
1204
+ conditions: [
1205
+ {
1206
+ fn: "aws.partition",
1207
+ argv: [
1208
+ {
1209
+ fn: "getAttr",
1210
+ argv: [
1211
+ {
1212
+ ref: "bucketArn",
1213
+ },
1214
+ "region",
1215
+ ],
1216
+ },
1217
+ ],
1218
+ assign: "arnPartition",
1219
+ },
1220
+ ],
1221
+ type: "tree",
1222
+ rules: [
1223
+ {
1224
+ conditions: [],
1225
+ type: "tree",
1226
+ rules: [
1227
+ {
1228
+ conditions: [
1229
+ {
1230
+ fn: "aws.partition",
1231
+ argv: [
1232
+ {
1233
+ ref: "Region",
1234
+ },
1235
+ ],
1236
+ assign: "partitionResult",
1237
+ },
1238
+ ],
1239
+ type: "tree",
1240
+ rules: [
1241
+ {
1242
+ conditions: [],
1243
+ type: "tree",
1244
+ rules: [
1245
+ {
1246
+ conditions: [
1247
+ {
1248
+ fn: "stringEquals",
1249
+ argv: [
1250
+ {
1251
+ fn: "getAttr",
1252
+ argv: [
1253
+ {
1254
+ ref: "arnPartition",
1255
+ },
1256
+ "name",
1257
+ ],
1258
+ },
1259
+ {
1260
+ fn: "getAttr",
1261
+ argv: [
1262
+ {
1263
+ ref: "partitionResult",
1264
+ },
1265
+ "name",
1266
+ ],
1267
+ },
1268
+ ],
1269
+ },
1270
+ ],
1271
+ type: "tree",
1272
+ rules: [
1273
+ {
1274
+ conditions: [],
1275
+ type: "tree",
1276
+ rules: [
1277
+ {
1278
+ conditions: [
1279
+ {
1280
+ fn: "isValidHostLabel",
1281
+ argv: [
1282
+ {
1283
+ fn: "getAttr",
1284
+ argv: [
1285
+ {
1286
+ ref: "bucketArn",
1287
+ },
1288
+ "region",
1289
+ ],
1290
+ },
1291
+ true,
1292
+ ],
1293
+ },
1294
+ ],
1295
+ type: "tree",
1296
+ rules: [
1297
+ {
1298
+ conditions: [],
1299
+ type: "tree",
1300
+ rules: [
1301
+ {
1302
+ conditions: [
1303
+ {
1304
+ fn: "not",
1305
+ argv: [
1306
+ {
1307
+ fn: "stringEquals",
1308
+ argv: [
1309
+ {
1310
+ fn: "getAttr",
1311
+ argv: [
1312
+ {
1313
+ ref: "bucketArn",
1314
+ },
1315
+ "accountId",
1316
+ ],
1317
+ },
1318
+ "",
1319
+ ],
1320
+ },
1321
+ ],
1322
+ },
1323
+ ],
1324
+ type: "tree",
1325
+ rules: [
1326
+ {
1327
+ conditions: [],
1328
+ type: "tree",
1329
+ rules: [
1330
+ {
1331
+ conditions: [
1332
+ {
1333
+ fn: "isValidHostLabel",
1334
+ argv: [
1335
+ {
1336
+ fn: "getAttr",
1337
+ argv: [
1338
+ {
1339
+ ref: "bucketArn",
1340
+ },
1341
+ "accountId",
1342
+ ],
1343
+ },
1344
+ false,
1345
+ ],
1346
+ },
1347
+ ],
1348
+ type: "tree",
1349
+ rules: [
1350
+ {
1351
+ conditions: [],
1352
+ type: "tree",
1353
+ rules: [
1354
+ {
1355
+ conditions: [
1356
+ {
1357
+ fn: "isSet",
1358
+ argv: [
1359
+ {
1360
+ ref: "AccountId",
1361
+ },
1362
+ ],
1363
+ },
1364
+ {
1365
+ fn: "not",
1366
+ argv: [
1367
+ {
1368
+ fn: "stringEquals",
1369
+ argv: [
1370
+ {
1371
+ ref: "AccountId",
1372
+ },
1373
+ "{bucketArn#accountId}",
1374
+ ],
1375
+ },
1376
+ ],
1377
+ },
1378
+ ],
1379
+ error: "Invalid ARN: the accountId specified in the ARN (`{bucketArn#accountId}`) does not match the parameter (`{AccountId}`)",
1380
+ type: "error",
1381
+ },
1382
+ {
1383
+ conditions: [],
1384
+ type: "tree",
1385
+ rules: [
1386
+ {
1387
+ conditions: [
1388
+ {
1389
+ fn: "getAttr",
1390
+ argv: [
1391
+ {
1392
+ ref: "bucketArn",
1393
+ },
1394
+ "resourceId[2]",
1395
+ ],
1396
+ assign: "outpostType",
1397
+ },
1398
+ ],
1399
+ type: "tree",
1400
+ rules: [
1401
+ {
1402
+ conditions: [],
1403
+ type: "tree",
1404
+ rules: [
1405
+ {
1406
+ conditions: [
1407
+ {
1408
+ fn: "getAttr",
1409
+ argv: [
1410
+ {
1411
+ ref: "bucketArn",
1412
+ },
1413
+ "resourceId[3]",
1414
+ ],
1415
+ assign: "bucketName",
1416
+ },
1417
+ ],
1418
+ type: "tree",
1419
+ rules: [
1420
+ {
1421
+ conditions: [],
1422
+ type: "tree",
1423
+ rules: [
1424
+ {
1425
+ conditions: [
1426
+ {
1427
+ fn: "stringEquals",
1428
+ argv: [
1429
+ {
1430
+ ref: "outpostType",
1431
+ },
1432
+ "bucket",
1433
+ ],
1434
+ },
1435
+ ],
1436
+ type: "tree",
1437
+ rules: [
1438
+ {
1439
+ conditions: [],
1440
+ type: "tree",
1441
+ rules: [
1442
+ {
1443
+ conditions: [
1444
+ {
1445
+ fn: "booleanEquals",
1446
+ argv: [
1447
+ {
1448
+ ref: "UseFIPS",
1449
+ },
1450
+ true,
1451
+ ],
1452
+ },
1453
+ ],
1454
+ endpoint: {
1455
+ url: "https://s3-outposts-fips.{bucketArn#region}.{arnPartition#dnsSuffix}",
1456
+ properties: {
1457
+ authSchemes: [
1458
+ {
1459
+ name: "sigv4",
1460
+ signingRegion: "{bucketArn#region}",
1461
+ disableDoubleEncoding: true,
1462
+ signingName: "s3-outposts",
1463
+ },
1464
+ ],
1465
+ },
1466
+ headers: {
1467
+ "x-amz-account-id": [
1468
+ "{bucketArn#accountId}",
1469
+ ],
1470
+ "x-amz-outpost-id": [
1471
+ "{outpostId}",
1472
+ ],
1473
+ },
1474
+ },
1475
+ type: "endpoint",
1476
+ },
1477
+ {
1478
+ conditions: [
1479
+ {
1480
+ fn: "isSet",
1481
+ argv: [
1482
+ {
1483
+ ref: "Endpoint",
1484
+ },
1485
+ ],
1486
+ },
1487
+ {
1488
+ fn: "parseURL",
1489
+ argv: [
1490
+ {
1491
+ ref: "Endpoint",
1492
+ },
1493
+ ],
1494
+ assign: "url",
1495
+ },
1496
+ ],
1497
+ endpoint: {
1498
+ url: "{url#scheme}://{url#authority}{url#path}",
1499
+ properties: {
1500
+ authSchemes: [
1501
+ {
1502
+ name: "sigv4",
1503
+ signingRegion: "{bucketArn#region}",
1504
+ disableDoubleEncoding: true,
1505
+ signingName: "s3-outposts",
1506
+ },
1507
+ ],
1508
+ },
1509
+ headers: {
1510
+ "x-amz-account-id": [
1511
+ "{bucketArn#accountId}",
1512
+ ],
1513
+ "x-amz-outpost-id": [
1514
+ "{outpostId}",
1515
+ ],
1516
+ },
1517
+ },
1518
+ type: "endpoint",
1519
+ },
1520
+ {
1521
+ conditions: [],
1522
+ endpoint: {
1523
+ url: "https://s3-outposts.{bucketArn#region}.{arnPartition#dnsSuffix}",
1524
+ properties: {
1525
+ authSchemes: [
1526
+ {
1527
+ name: "sigv4",
1528
+ signingRegion: "{bucketArn#region}",
1529
+ disableDoubleEncoding: true,
1530
+ signingName: "s3-outposts",
1531
+ },
1532
+ ],
1533
+ },
1534
+ headers: {
1535
+ "x-amz-account-id": [
1536
+ "{bucketArn#accountId}",
1537
+ ],
1538
+ "x-amz-outpost-id": [
1539
+ "{outpostId}",
1540
+ ],
1541
+ },
1542
+ },
1543
+ type: "endpoint",
1544
+ },
1545
+ ],
1546
+ },
1547
+ ],
1548
+ },
1549
+ {
1550
+ conditions: [],
1551
+ error: "Invalid ARN: Expected an outpost type `bucket`, found `{outpostType}`",
1552
+ type: "error",
1553
+ },
1554
+ ],
1555
+ },
1556
+ ],
1557
+ },
1558
+ {
1559
+ conditions: [],
1560
+ error: "Invalid ARN: expected a bucket name",
1561
+ type: "error",
1562
+ },
1563
+ ],
1564
+ },
1565
+ ],
1566
+ },
1567
+ {
1568
+ conditions: [],
1569
+ error: "Invalid ARN: Expected a 4-component resource",
1570
+ type: "error",
1571
+ },
1572
+ ],
1573
+ },
1574
+ ],
1575
+ },
1576
+ ],
1577
+ },
1578
+ {
1579
+ conditions: [],
1580
+ error: "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `{bucketArn#accountId}`",
1581
+ type: "error",
1582
+ },
1583
+ ],
1584
+ },
1585
+ ],
1586
+ },
1587
+ {
1588
+ conditions: [],
1589
+ error: "Invalid ARN: missing account ID",
1590
+ type: "error",
1591
+ },
1592
+ ],
1593
+ },
1594
+ ],
1595
+ },
1596
+ {
1597
+ conditions: [],
1598
+ error: "Invalid region in ARN: `{bucketArn#region}` (invalid DNS name)",
1599
+ type: "error",
1600
+ },
1601
+ ],
1602
+ },
1603
+ ],
1604
+ },
1605
+ {
1606
+ conditions: [],
1607
+ error: "Client was configured for partition `{partitionResult#name}` but ARN has `{arnPartition#name}`",
1608
+ type: "error",
1609
+ },
1610
+ ],
1611
+ },
1612
+ ],
1613
+ },
1614
+ {
1615
+ conditions: [],
1616
+ error: "A valid partition could not be determined",
1617
+ type: "error",
1618
+ },
1619
+ ],
1620
+ },
1621
+ ],
1622
+ },
1623
+ {
1624
+ conditions: [],
1625
+ error: "Could not load partition for ARN region `{bucketArn#region}`",
1626
+ type: "error",
1627
+ },
1628
+ ],
1629
+ },
1630
+ ],
1631
+ },
1632
+ ],
1633
+ },
1634
+ {
1635
+ conditions: [],
1636
+ error: "Invalid ARN: The outpost Id must only contain a-z, A-Z, 0-9 and `-`., found: `{outpostId}`",
1637
+ type: "error",
1638
+ },
1639
+ ],
1640
+ },
1641
+ ],
1642
+ },
1643
+ {
1644
+ conditions: [],
1645
+ error: "Invalid ARN: The Outpost Id was not set",
1646
+ type: "error",
1647
+ },
1648
+ ],
1649
+ },
1650
+ ],
1651
+ },
1652
+ ],
1653
+ },
1654
+ {
1655
+ conditions: [],
1656
+ error: "Invalid ARN: No ARN type specified",
1657
+ type: "error",
1658
+ },
1659
+ ],
1660
+ },
1661
+ {
1662
+ conditions: [],
1663
+ type: "tree",
1664
+ rules: [
1665
+ {
1666
+ conditions: [
1667
+ {
1668
+ fn: "aws.partition",
1669
+ argv: [
1670
+ {
1671
+ ref: "Region",
1672
+ },
1673
+ ],
1674
+ assign: "partitionResult",
1675
+ },
1676
+ ],
1677
+ type: "tree",
1678
+ rules: [
1679
+ {
1680
+ conditions: [],
1681
+ type: "tree",
1682
+ rules: [
1683
+ {
1684
+ conditions: [
1685
+ {
1686
+ fn: "isValidHostLabel",
1687
+ argv: [
1688
+ {
1689
+ ref: "Region",
1690
+ },
1691
+ true,
1692
+ ],
1693
+ },
1694
+ ],
1695
+ type: "tree",
1696
+ rules: [
1697
+ {
1698
+ conditions: [],
1699
+ type: "tree",
1700
+ rules: [
1701
+ {
1702
+ conditions: [
1703
+ {
1704
+ fn: "booleanEquals",
1705
+ argv: [
1706
+ {
1707
+ ref: "UseFIPS",
1708
+ },
1709
+ true,
1710
+ ],
1711
+ },
1712
+ {
1713
+ fn: "stringEquals",
1714
+ argv: [
1715
+ {
1716
+ fn: "getAttr",
1717
+ argv: [
1718
+ {
1719
+ ref: "partitionResult",
1720
+ },
1721
+ "name",
1722
+ ],
1723
+ },
1724
+ "aws-cn",
1725
+ ],
1726
+ },
1727
+ ],
1728
+ error: "Partition does not support FIPS",
1729
+ type: "error",
1730
+ },
1731
+ {
1732
+ conditions: [],
1733
+ type: "tree",
1734
+ rules: [
1735
+ {
1736
+ conditions: [
1737
+ {
1738
+ fn: "isSet",
1739
+ argv: [
1740
+ {
1741
+ ref: "RequiresAccountId",
1742
+ },
1743
+ ],
1744
+ },
1745
+ {
1746
+ fn: "booleanEquals",
1747
+ argv: [
1748
+ {
1749
+ ref: "RequiresAccountId",
1750
+ },
1751
+ true,
1752
+ ],
1753
+ },
1754
+ {
1755
+ fn: "not",
1756
+ argv: [
1757
+ {
1758
+ fn: "isSet",
1759
+ argv: [
1760
+ {
1761
+ ref: "AccountId",
1762
+ },
1763
+ ],
1764
+ },
1765
+ ],
1766
+ },
1767
+ ],
1768
+ error: "AccountId is required but not set",
1769
+ type: "error",
1770
+ },
1771
+ {
1772
+ conditions: [],
1773
+ type: "tree",
1774
+ rules: [
1775
+ {
1776
+ conditions: [
1777
+ {
1778
+ fn: "isSet",
1779
+ argv: [
1780
+ {
1781
+ ref: "AccountId",
1782
+ },
1783
+ ],
1784
+ },
1785
+ {
1786
+ fn: "not",
1787
+ argv: [
1788
+ {
1789
+ fn: "isValidHostLabel",
1790
+ argv: [
1791
+ {
1792
+ ref: "AccountId",
1793
+ },
1794
+ false,
1795
+ ],
1796
+ },
1797
+ ],
1798
+ },
1799
+ ],
1800
+ error: "AccountId must only contain a-z, A-Z, 0-9 and `-`.",
1801
+ type: "error",
1802
+ },
1803
+ {
1804
+ conditions: [],
1805
+ type: "tree",
1806
+ rules: [
1807
+ {
1808
+ conditions: [
1809
+ {
1810
+ fn: "isSet",
1811
+ argv: [
1812
+ {
1813
+ ref: "Endpoint",
1814
+ },
1815
+ ],
1816
+ },
1817
+ {
1818
+ fn: "parseURL",
1819
+ argv: [
1820
+ {
1821
+ ref: "Endpoint",
1822
+ },
1823
+ ],
1824
+ assign: "url",
1825
+ },
1826
+ ],
1827
+ type: "tree",
1828
+ rules: [
1829
+ {
1830
+ conditions: [
1831
+ {
1832
+ fn: "booleanEquals",
1833
+ argv: [
1834
+ {
1835
+ ref: "UseDualStack",
1836
+ },
1837
+ true,
1838
+ ],
1839
+ },
1840
+ ],
1841
+ error: "Invalid Configuration: Dualstack and custom endpoint are not supported",
1842
+ type: "error",
1843
+ },
1844
+ {
1845
+ conditions: [],
1846
+ type: "tree",
1847
+ rules: [
1848
+ {
1849
+ conditions: [
1850
+ {
1851
+ fn: "isSet",
1852
+ argv: [
1853
+ {
1854
+ ref: "RequiresAccountId",
1855
+ },
1856
+ ],
1857
+ },
1858
+ {
1859
+ fn: "booleanEquals",
1860
+ argv: [
1861
+ {
1862
+ ref: "RequiresAccountId",
1863
+ },
1864
+ true,
1865
+ ],
1866
+ },
1867
+ {
1868
+ fn: "isSet",
1869
+ argv: [
1870
+ {
1871
+ ref: "AccountId",
1872
+ },
1873
+ ],
1874
+ },
1875
+ ],
1876
+ endpoint: {
1877
+ url: "{url#scheme}://{AccountId}.{url#authority}{url#path}",
1878
+ properties: {
1879
+ authSchemes: [
1880
+ {
1881
+ name: "sigv4",
1882
+ signingRegion: "{Region}",
1883
+ disableDoubleEncoding: true,
1884
+ signingName: "s3",
1885
+ },
1886
+ ],
1887
+ },
1888
+ headers: {},
1889
+ },
1890
+ type: "endpoint",
1891
+ },
1892
+ {
1893
+ conditions: [],
1894
+ endpoint: {
1895
+ url: "{url#scheme}://{url#authority}{url#path}",
1896
+ properties: {
1897
+ authSchemes: [
1898
+ {
1899
+ name: "sigv4",
1900
+ signingRegion: "{Region}",
1901
+ disableDoubleEncoding: true,
1902
+ signingName: "s3",
1903
+ },
1904
+ ],
1905
+ },
1906
+ headers: {},
1907
+ },
1908
+ type: "endpoint",
1909
+ },
1910
+ ],
1911
+ },
1912
+ ],
1913
+ },
1914
+ {
1915
+ conditions: [],
1916
+ type: "tree",
1917
+ rules: [
1918
+ {
1919
+ conditions: [
1920
+ {
1921
+ fn: "booleanEquals",
1922
+ argv: [
1923
+ {
1924
+ ref: "UseFIPS",
1925
+ },
1926
+ true,
1927
+ ],
1928
+ },
1929
+ {
1930
+ fn: "booleanEquals",
1931
+ argv: [
1932
+ {
1933
+ ref: "UseDualStack",
1934
+ },
1935
+ true,
1936
+ ],
1937
+ },
1938
+ {
1939
+ fn: "isSet",
1940
+ argv: [
1941
+ {
1942
+ ref: "RequiresAccountId",
1943
+ },
1944
+ ],
1945
+ },
1946
+ {
1947
+ fn: "booleanEquals",
1948
+ argv: [
1949
+ {
1950
+ ref: "RequiresAccountId",
1951
+ },
1952
+ true,
1953
+ ],
1954
+ },
1955
+ {
1956
+ fn: "isSet",
1957
+ argv: [
1958
+ {
1959
+ ref: "AccountId",
1960
+ },
1961
+ ],
1962
+ },
1963
+ ],
1964
+ endpoint: {
1965
+ url: "https://{AccountId}.s3-control-fips.dualstack.{Region}.{partitionResult#dnsSuffix}",
1966
+ properties: {
1967
+ authSchemes: [
1968
+ {
1969
+ name: "sigv4",
1970
+ signingRegion: "{Region}",
1971
+ disableDoubleEncoding: true,
1972
+ signingName: "s3",
1973
+ },
1974
+ ],
1975
+ },
1976
+ headers: {},
1977
+ },
1978
+ type: "endpoint",
1979
+ },
1980
+ {
1981
+ conditions: [
1982
+ {
1983
+ fn: "booleanEquals",
1984
+ argv: [
1985
+ {
1986
+ ref: "UseFIPS",
1987
+ },
1988
+ true,
1989
+ ],
1990
+ },
1991
+ {
1992
+ fn: "booleanEquals",
1993
+ argv: [
1994
+ {
1995
+ ref: "UseDualStack",
1996
+ },
1997
+ true,
1998
+ ],
1999
+ },
2000
+ ],
2001
+ endpoint: {
2002
+ url: "https://s3-control-fips.dualstack.{Region}.{partitionResult#dnsSuffix}",
2003
+ properties: {
2004
+ authSchemes: [
2005
+ {
2006
+ name: "sigv4",
2007
+ signingRegion: "{Region}",
2008
+ disableDoubleEncoding: true,
2009
+ signingName: "s3",
2010
+ },
2011
+ ],
2012
+ },
2013
+ headers: {},
2014
+ },
2015
+ type: "endpoint",
2016
+ },
2017
+ {
2018
+ conditions: [
2019
+ {
2020
+ fn: "booleanEquals",
2021
+ argv: [
2022
+ {
2023
+ ref: "UseFIPS",
2024
+ },
2025
+ true,
2026
+ ],
2027
+ },
2028
+ {
2029
+ fn: "booleanEquals",
2030
+ argv: [
2031
+ {
2032
+ ref: "UseDualStack",
2033
+ },
2034
+ false,
2035
+ ],
2036
+ },
2037
+ {
2038
+ fn: "isSet",
2039
+ argv: [
2040
+ {
2041
+ ref: "RequiresAccountId",
2042
+ },
2043
+ ],
2044
+ },
2045
+ {
2046
+ fn: "booleanEquals",
2047
+ argv: [
2048
+ {
2049
+ ref: "RequiresAccountId",
2050
+ },
2051
+ true,
2052
+ ],
2053
+ },
2054
+ {
2055
+ fn: "isSet",
2056
+ argv: [
2057
+ {
2058
+ ref: "AccountId",
2059
+ },
2060
+ ],
2061
+ },
2062
+ ],
2063
+ endpoint: {
2064
+ url: "https://{AccountId}.s3-control-fips.{Region}.{partitionResult#dnsSuffix}",
2065
+ properties: {
2066
+ authSchemes: [
2067
+ {
2068
+ name: "sigv4",
2069
+ signingRegion: "{Region}",
2070
+ disableDoubleEncoding: true,
2071
+ signingName: "s3",
2072
+ },
2073
+ ],
2074
+ },
2075
+ headers: {},
2076
+ },
2077
+ type: "endpoint",
2078
+ },
2079
+ {
2080
+ conditions: [
2081
+ {
2082
+ fn: "booleanEquals",
2083
+ argv: [
2084
+ {
2085
+ ref: "UseFIPS",
2086
+ },
2087
+ true,
2088
+ ],
2089
+ },
2090
+ {
2091
+ fn: "booleanEquals",
2092
+ argv: [
2093
+ {
2094
+ ref: "UseDualStack",
2095
+ },
2096
+ false,
2097
+ ],
2098
+ },
2099
+ ],
2100
+ endpoint: {
2101
+ url: "https://s3-control-fips.{Region}.{partitionResult#dnsSuffix}",
2102
+ properties: {
2103
+ authSchemes: [
2104
+ {
2105
+ name: "sigv4",
2106
+ signingRegion: "{Region}",
2107
+ disableDoubleEncoding: true,
2108
+ signingName: "s3",
2109
+ },
2110
+ ],
2111
+ },
2112
+ headers: {},
2113
+ },
2114
+ type: "endpoint",
2115
+ },
2116
+ {
2117
+ conditions: [
2118
+ {
2119
+ fn: "booleanEquals",
2120
+ argv: [
2121
+ {
2122
+ ref: "UseFIPS",
2123
+ },
2124
+ false,
2125
+ ],
2126
+ },
2127
+ {
2128
+ fn: "booleanEquals",
2129
+ argv: [
2130
+ {
2131
+ ref: "UseDualStack",
2132
+ },
2133
+ true,
2134
+ ],
2135
+ },
2136
+ {
2137
+ fn: "isSet",
2138
+ argv: [
2139
+ {
2140
+ ref: "RequiresAccountId",
2141
+ },
2142
+ ],
2143
+ },
2144
+ {
2145
+ fn: "booleanEquals",
2146
+ argv: [
2147
+ {
2148
+ ref: "RequiresAccountId",
2149
+ },
2150
+ true,
2151
+ ],
2152
+ },
2153
+ {
2154
+ fn: "isSet",
2155
+ argv: [
2156
+ {
2157
+ ref: "AccountId",
2158
+ },
2159
+ ],
2160
+ },
2161
+ ],
2162
+ endpoint: {
2163
+ url: "https://{AccountId}.s3-control.dualstack.{Region}.{partitionResult#dnsSuffix}",
2164
+ properties: {
2165
+ authSchemes: [
2166
+ {
2167
+ name: "sigv4",
2168
+ signingRegion: "{Region}",
2169
+ disableDoubleEncoding: true,
2170
+ signingName: "s3",
2171
+ },
2172
+ ],
2173
+ },
2174
+ headers: {},
2175
+ },
2176
+ type: "endpoint",
2177
+ },
2178
+ {
2179
+ conditions: [
2180
+ {
2181
+ fn: "booleanEquals",
2182
+ argv: [
2183
+ {
2184
+ ref: "UseFIPS",
2185
+ },
2186
+ false,
2187
+ ],
2188
+ },
2189
+ {
2190
+ fn: "booleanEquals",
2191
+ argv: [
2192
+ {
2193
+ ref: "UseDualStack",
2194
+ },
2195
+ true,
2196
+ ],
2197
+ },
2198
+ ],
2199
+ endpoint: {
2200
+ url: "https://s3-control.dualstack.{Region}.{partitionResult#dnsSuffix}",
2201
+ properties: {
2202
+ authSchemes: [
2203
+ {
2204
+ name: "sigv4",
2205
+ signingRegion: "{Region}",
2206
+ disableDoubleEncoding: true,
2207
+ signingName: "s3",
2208
+ },
2209
+ ],
2210
+ },
2211
+ headers: {},
2212
+ },
2213
+ type: "endpoint",
2214
+ },
2215
+ {
2216
+ conditions: [
2217
+ {
2218
+ fn: "booleanEquals",
2219
+ argv: [
2220
+ {
2221
+ ref: "UseFIPS",
2222
+ },
2223
+ false,
2224
+ ],
2225
+ },
2226
+ {
2227
+ fn: "booleanEquals",
2228
+ argv: [
2229
+ {
2230
+ ref: "UseDualStack",
2231
+ },
2232
+ false,
2233
+ ],
2234
+ },
2235
+ {
2236
+ fn: "isSet",
2237
+ argv: [
2238
+ {
2239
+ ref: "RequiresAccountId",
2240
+ },
2241
+ ],
2242
+ },
2243
+ {
2244
+ fn: "booleanEquals",
2245
+ argv: [
2246
+ {
2247
+ ref: "RequiresAccountId",
2248
+ },
2249
+ true,
2250
+ ],
2251
+ },
2252
+ {
2253
+ fn: "isSet",
2254
+ argv: [
2255
+ {
2256
+ ref: "AccountId",
2257
+ },
2258
+ ],
2259
+ },
2260
+ ],
2261
+ endpoint: {
2262
+ url: "https://{AccountId}.s3-control.{Region}.{partitionResult#dnsSuffix}",
2263
+ properties: {
2264
+ authSchemes: [
2265
+ {
2266
+ name: "sigv4",
2267
+ signingRegion: "{Region}",
2268
+ disableDoubleEncoding: true,
2269
+ signingName: "s3",
2270
+ },
2271
+ ],
2272
+ },
2273
+ headers: {},
2274
+ },
2275
+ type: "endpoint",
2276
+ },
2277
+ {
2278
+ conditions: [
2279
+ {
2280
+ fn: "booleanEquals",
2281
+ argv: [
2282
+ {
2283
+ ref: "UseFIPS",
2284
+ },
2285
+ false,
2286
+ ],
2287
+ },
2288
+ {
2289
+ fn: "booleanEquals",
2290
+ argv: [
2291
+ {
2292
+ ref: "UseDualStack",
2293
+ },
2294
+ false,
2295
+ ],
2296
+ },
2297
+ ],
2298
+ endpoint: {
2299
+ url: "https://s3-control.{Region}.{partitionResult#dnsSuffix}",
2300
+ properties: {
2301
+ authSchemes: [
2302
+ {
2303
+ name: "sigv4",
2304
+ signingRegion: "{Region}",
2305
+ disableDoubleEncoding: true,
2306
+ signingName: "s3",
2307
+ },
2308
+ ],
2309
+ },
2310
+ headers: {},
2311
+ },
2312
+ type: "endpoint",
2313
+ },
2314
+ ],
2315
+ },
2316
+ ],
2317
+ },
2318
+ ],
2319
+ },
2320
+ ],
2321
+ },
2322
+ ],
2323
+ },
2324
+ ],
2325
+ },
2326
+ {
2327
+ conditions: [],
2328
+ error: "Invalid region: region was not a valid DNS name.",
2329
+ type: "error",
2330
+ },
2331
+ ],
2332
+ },
2333
+ ],
2334
+ },
2335
+ {
2336
+ conditions: [],
2337
+ error: "A valid partition could not be determined",
2338
+ type: "error",
2339
+ },
2340
+ ],
2341
+ },
2342
+ ],
2343
+ },
2344
+ ],
2345
+ },
2346
+ {
2347
+ conditions: [],
2348
+ error: "Region must be set",
2349
+ type: "error",
2350
+ },
2351
+ ],
2352
+ },
2353
+ ],
2354
+ };