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