@aws-sdk/middleware-sdk-s3 3.972.46 → 3.972.47

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 (143) hide show
  1. package/dist-cjs/index.browser.js +34 -0
  2. package/dist-cjs/index.js +57 -53
  3. package/dist-cjs/submodules/s3/index.browser.js +1028 -0
  4. package/dist-cjs/submodules/s3/index.js +1042 -0
  5. package/dist-cjs/submodules/s3-control/index.js +215 -0
  6. package/dist-es/index.browser.js +1 -0
  7. package/dist-es/index.js +1 -9
  8. package/dist-es/submodules/s3/NodeDisableMultiregionAccessPointConfigOptions.js +8 -0
  9. package/dist-es/submodules/s3/NodeUseArnRegionConfigOptions.js +8 -0
  10. package/dist-es/submodules/s3/index.browser.js +30 -0
  11. package/dist-es/submodules/s3/index.js +25 -0
  12. package/dist-es/submodules/s3/middleware-bucket-endpoint/bucketEndpointMiddleware.js +81 -0
  13. package/dist-es/submodules/s3/middleware-bucket-endpoint/bucketHostname.js +106 -0
  14. package/dist-es/submodules/s3/middleware-bucket-endpoint/bucketHostnameUtils.js +111 -0
  15. package/dist-es/submodules/s3/middleware-bucket-endpoint/configurations.js +12 -0
  16. package/dist-es/submodules/s3/middleware-expect-continue/middleware-expect-continue.js +41 -0
  17. package/dist-es/submodules/s3/middleware-location-constraint/configuration.js +3 -0
  18. package/dist-es/submodules/s3/middleware-location-constraint/middleware-location-constraint.js +24 -0
  19. package/dist-es/{s3Configuration.js → submodules/s3/middleware-s3-configuration/s3Configuration.js} +1 -1
  20. package/dist-es/submodules/s3/middleware-ssec/middleware-ssec.js +66 -0
  21. package/dist-es/{throw-200-exceptions.js → submodules/s3/middleware-throw-200-exceptions/throw-200-exceptions.js} +1 -1
  22. package/dist-es/{validate-bucket-name.js → submodules/s3/middleware-validate-bucket-name/validate-bucket-name.js} +1 -1
  23. package/dist-es/submodules/s3-control/configurations.js +7 -0
  24. package/dist-es/submodules/s3-control/constants.js +5 -0
  25. package/dist-es/submodules/s3-control/index.js +7 -0
  26. package/dist-es/submodules/s3-control/middleware-host-prefix-deduplication/hostPrefixDeduplicationMiddleware.js +17 -0
  27. package/dist-es/submodules/s3-control/middleware-process-arnables/getOutpostEndpoint.js +18 -0
  28. package/dist-es/submodules/s3-control/middleware-process-arnables/getProcessArnablesPlugin.js +8 -0
  29. package/dist-es/submodules/s3-control/middleware-process-arnables/parse-outpost-arnables.js +94 -0
  30. package/dist-es/submodules/s3-control/middleware-process-arnables/update-arnables-request.js +31 -0
  31. package/dist-es/submodules/s3-control/middleware-redirect-from-postid/redirect-from-postid.js +26 -0
  32. package/dist-types/index.browser.d.ts +2 -0
  33. package/dist-types/index.d.ts +2 -9
  34. package/dist-types/submodules/s3/NodeDisableMultiregionAccessPointConfigOptions.d.ts +4 -0
  35. package/dist-types/submodules/s3/NodeUseArnRegionConfigOptions.d.ts +9 -0
  36. package/dist-types/submodules/s3/index.browser.d.ts +36 -0
  37. package/dist-types/submodules/s3/index.d.ts +32 -0
  38. package/dist-types/submodules/s3/middleware-bucket-endpoint/bucketEndpointMiddleware.d.ts +17 -0
  39. package/dist-types/submodules/s3/middleware-bucket-endpoint/bucketHostname.d.ts +16 -0
  40. package/dist-types/submodules/s3/middleware-bucket-endpoint/bucketHostnameUtils.d.ts +174 -0
  41. package/dist-types/submodules/s3/middleware-bucket-endpoint/configurations.d.ts +95 -0
  42. package/dist-types/submodules/s3/middleware-expect-continue/middleware-expect-continue.d.ts +12 -0
  43. package/dist-types/submodules/s3/middleware-location-constraint/configuration.d.ts +17 -0
  44. package/dist-types/submodules/s3/middleware-location-constraint/middleware-location-constraint.d.ts +10 -0
  45. package/dist-types/{s3Configuration.d.ts → submodules/s3/middleware-s3-configuration/s3Configuration.d.ts} +1 -1
  46. package/dist-types/submodules/s3/middleware-ssec/middleware-ssec.d.ts +12 -0
  47. package/dist-types/{validate-bucket-name.d.ts → submodules/s3/middleware-validate-bucket-name/validate-bucket-name.d.ts} +1 -1
  48. package/dist-types/submodules/s3-control/configurations.d.ts +47 -0
  49. package/dist-types/submodules/s3-control/constants.d.ts +5 -0
  50. package/dist-types/submodules/s3-control/index.d.ts +9 -0
  51. package/dist-types/submodules/s3-control/middleware-host-prefix-deduplication/hostPrefixDeduplicationMiddleware.d.ts +17 -0
  52. package/dist-types/submodules/s3-control/middleware-process-arnables/getOutpostEndpoint.d.ts +6 -0
  53. package/dist-types/submodules/s3-control/middleware-process-arnables/getProcessArnablesPlugin.d.ts +3 -0
  54. package/dist-types/submodules/s3-control/middleware-process-arnables/parse-outpost-arnables.d.ts +27 -0
  55. package/dist-types/submodules/s3-control/middleware-process-arnables/update-arnables-request.d.ts +19 -0
  56. package/dist-types/submodules/s3-control/middleware-redirect-from-postid/redirect-from-postid.d.ts +17 -0
  57. package/dist-types/ts3.4/index.browser.d.ts +39 -0
  58. package/dist-types/ts3.4/index.d.ts +39 -9
  59. package/dist-types/ts3.4/submodules/s3/NodeDisableMultiregionAccessPointConfigOptions.d.ts +6 -0
  60. package/dist-types/ts3.4/submodules/s3/NodeUseArnRegionConfigOptions.d.ts +6 -0
  61. package/dist-types/ts3.4/submodules/s3/index.browser.d.ts +103 -0
  62. package/dist-types/ts3.4/submodules/s3/index.d.ts +107 -0
  63. package/dist-types/ts3.4/submodules/s3/middleware-bucket-endpoint/bucketEndpointMiddleware.d.ts +13 -0
  64. package/dist-types/ts3.4/submodules/s3/middleware-bucket-endpoint/bucketHostname.d.ts +10 -0
  65. package/dist-types/ts3.4/submodules/s3/middleware-bucket-endpoint/bucketHostnameUtils.d.ts +80 -0
  66. package/dist-types/ts3.4/submodules/s3/middleware-bucket-endpoint/configurations.d.ts +31 -0
  67. package/dist-types/ts3.4/submodules/s3/middleware-expect-continue/middleware-expect-continue.d.ts +22 -0
  68. package/dist-types/ts3.4/submodules/s3/middleware-location-constraint/configuration.d.ts +12 -0
  69. package/dist-types/ts3.4/submodules/s3/middleware-location-constraint/middleware-location-constraint.d.ts +13 -0
  70. package/dist-types/ts3.4/{s3Configuration.d.ts → submodules/s3/middleware-s3-configuration/s3Configuration.d.ts} +1 -1
  71. package/dist-types/ts3.4/submodules/s3/middleware-ssec/middleware-ssec.d.ts +27 -0
  72. package/dist-types/ts3.4/{validate-bucket-name.d.ts → submodules/s3/middleware-validate-bucket-name/validate-bucket-name.d.ts} +1 -1
  73. package/dist-types/ts3.4/submodules/s3-control/configurations.d.ts +23 -0
  74. package/dist-types/ts3.4/submodules/s3-control/constants.d.ts +5 -0
  75. package/dist-types/ts3.4/submodules/s3-control/index.d.ts +26 -0
  76. package/dist-types/ts3.4/submodules/s3-control/middleware-host-prefix-deduplication/hostPrefixDeduplicationMiddleware.d.ts +13 -0
  77. package/dist-types/ts3.4/submodules/s3-control/middleware-process-arnables/getOutpostEndpoint.d.ts +13 -0
  78. package/dist-types/ts3.4/submodules/s3-control/middleware-process-arnables/getProcessArnablesPlugin.d.ts +5 -0
  79. package/dist-types/ts3.4/submodules/s3-control/middleware-process-arnables/parse-outpost-arnables.d.ts +12 -0
  80. package/dist-types/ts3.4/submodules/s3-control/middleware-process-arnables/update-arnables-request.d.ts +13 -0
  81. package/dist-types/ts3.4/submodules/s3-control/middleware-redirect-from-postid/redirect-from-postid.d.ts +22 -0
  82. package/package.json +50 -4
  83. package/dist-cjs/toStream.browser.js +0 -11
  84. package/dist-cjs/toStream.js +0 -7
  85. package/dist-es/s3-express/index.js +0 -7
  86. package/dist-types/s3-express/index.d.ts +0 -9
  87. package/dist-types/ts3.4/s3-express/index.d.ts +0 -17
  88. /package/dist-es/{check-content-length-header.js → submodules/s3/middleware-check-content-length-header/check-content-length-header.js} +0 -0
  89. /package/dist-es/{bucket-endpoint-middleware.js → submodules/s3/middleware-region-redirect/bucket-endpoint-middleware.js} +0 -0
  90. /package/dist-es/{region-redirect-endpoint-middleware.js → submodules/s3/middleware-region-redirect/region-redirect-endpoint-middleware.js} +0 -0
  91. /package/dist-es/{region-redirect-middleware.js → submodules/s3/middleware-region-redirect/region-redirect-middleware.js} +0 -0
  92. /package/dist-es/{s3-expires-middleware.js → submodules/s3/middleware-s3-expires/s3-expires-middleware.js} +0 -0
  93. /package/dist-es/{s3-express → submodules/s3/middleware-s3-express}/classes/S3ExpressIdentityCache.js +0 -0
  94. /package/dist-es/{s3-express → submodules/s3/middleware-s3-express}/classes/S3ExpressIdentityCacheEntry.js +0 -0
  95. /package/dist-es/{s3-express → submodules/s3/middleware-s3-express}/classes/S3ExpressIdentityProviderImpl.js +0 -0
  96. /package/dist-es/{s3-express → submodules/s3/middleware-s3-express}/classes/SignatureV4S3Express.js +0 -0
  97. /package/dist-es/{s3-express → submodules/s3/middleware-s3-express}/constants.js +0 -0
  98. /package/dist-es/{s3-express → submodules/s3/middleware-s3-express}/functions/s3ExpressHttpSigningMiddleware.js +0 -0
  99. /package/dist-es/{s3-express → submodules/s3/middleware-s3-express}/functions/s3ExpressMiddleware.js +0 -0
  100. /package/dist-es/{s3-express → submodules/s3/middleware-s3-express}/functions/signS3Express.js +0 -0
  101. /package/dist-es/{s3-express → submodules/s3/middleware-s3-express}/interfaces/S3ExpressIdentity.js +0 -0
  102. /package/dist-es/{s3-express → submodules/s3/middleware-s3-express}/interfaces/S3ExpressIdentityProvider.js +0 -0
  103. /package/dist-es/{protocol → submodules/s3/protocol}/S3RestXmlProtocol.js +0 -0
  104. /package/dist-es/{toStream.browser.js → submodules/s3/to-stream/toStream.browser.js} +0 -0
  105. /package/dist-es/{toStream.js → submodules/s3/to-stream/toStream.js} +0 -0
  106. /package/dist-types/{check-content-length-header.d.ts → submodules/s3/middleware-check-content-length-header/check-content-length-header.d.ts} +0 -0
  107. /package/dist-types/{bucket-endpoint-middleware.d.ts → submodules/s3/middleware-region-redirect/bucket-endpoint-middleware.d.ts} +0 -0
  108. /package/dist-types/{region-redirect-endpoint-middleware.d.ts → submodules/s3/middleware-region-redirect/region-redirect-endpoint-middleware.d.ts} +0 -0
  109. /package/dist-types/{region-redirect-middleware.d.ts → submodules/s3/middleware-region-redirect/region-redirect-middleware.d.ts} +0 -0
  110. /package/dist-types/{s3-expires-middleware.d.ts → submodules/s3/middleware-s3-expires/s3-expires-middleware.d.ts} +0 -0
  111. /package/dist-types/{s3-express → submodules/s3/middleware-s3-express}/classes/S3ExpressIdentityCache.d.ts +0 -0
  112. /package/dist-types/{s3-express → submodules/s3/middleware-s3-express}/classes/S3ExpressIdentityCacheEntry.d.ts +0 -0
  113. /package/dist-types/{s3-express → submodules/s3/middleware-s3-express}/classes/S3ExpressIdentityProviderImpl.d.ts +0 -0
  114. /package/dist-types/{s3-express → submodules/s3/middleware-s3-express}/classes/SignatureV4S3Express.d.ts +0 -0
  115. /package/dist-types/{s3-express → submodules/s3/middleware-s3-express}/constants.d.ts +0 -0
  116. /package/dist-types/{s3-express → submodules/s3/middleware-s3-express}/functions/s3ExpressHttpSigningMiddleware.d.ts +0 -0
  117. /package/dist-types/{s3-express → submodules/s3/middleware-s3-express}/functions/s3ExpressMiddleware.d.ts +0 -0
  118. /package/dist-types/{s3-express → submodules/s3/middleware-s3-express}/functions/signS3Express.d.ts +0 -0
  119. /package/dist-types/{s3-express → submodules/s3/middleware-s3-express}/interfaces/S3ExpressIdentity.d.ts +0 -0
  120. /package/dist-types/{s3-express → submodules/s3/middleware-s3-express}/interfaces/S3ExpressIdentityProvider.d.ts +0 -0
  121. /package/dist-types/{throw-200-exceptions.d.ts → submodules/s3/middleware-throw-200-exceptions/throw-200-exceptions.d.ts} +0 -0
  122. /package/dist-types/{protocol → submodules/s3/protocol}/S3RestXmlProtocol.d.ts +0 -0
  123. /package/dist-types/{toStream.browser.d.ts → submodules/s3/to-stream/toStream.browser.d.ts} +0 -0
  124. /package/dist-types/{toStream.d.ts → submodules/s3/to-stream/toStream.d.ts} +0 -0
  125. /package/dist-types/ts3.4/{check-content-length-header.d.ts → submodules/s3/middleware-check-content-length-header/check-content-length-header.d.ts} +0 -0
  126. /package/dist-types/ts3.4/{bucket-endpoint-middleware.d.ts → submodules/s3/middleware-region-redirect/bucket-endpoint-middleware.d.ts} +0 -0
  127. /package/dist-types/ts3.4/{region-redirect-endpoint-middleware.d.ts → submodules/s3/middleware-region-redirect/region-redirect-endpoint-middleware.d.ts} +0 -0
  128. /package/dist-types/ts3.4/{region-redirect-middleware.d.ts → submodules/s3/middleware-region-redirect/region-redirect-middleware.d.ts} +0 -0
  129. /package/dist-types/ts3.4/{s3-expires-middleware.d.ts → submodules/s3/middleware-s3-expires/s3-expires-middleware.d.ts} +0 -0
  130. /package/dist-types/ts3.4/{s3-express → submodules/s3/middleware-s3-express}/classes/S3ExpressIdentityCache.d.ts +0 -0
  131. /package/dist-types/ts3.4/{s3-express → submodules/s3/middleware-s3-express}/classes/S3ExpressIdentityCacheEntry.d.ts +0 -0
  132. /package/dist-types/ts3.4/{s3-express → submodules/s3/middleware-s3-express}/classes/S3ExpressIdentityProviderImpl.d.ts +0 -0
  133. /package/dist-types/ts3.4/{s3-express → submodules/s3/middleware-s3-express}/classes/SignatureV4S3Express.d.ts +0 -0
  134. /package/dist-types/ts3.4/{s3-express → submodules/s3/middleware-s3-express}/constants.d.ts +0 -0
  135. /package/dist-types/ts3.4/{s3-express → submodules/s3/middleware-s3-express}/functions/s3ExpressHttpSigningMiddleware.d.ts +0 -0
  136. /package/dist-types/ts3.4/{s3-express → submodules/s3/middleware-s3-express}/functions/s3ExpressMiddleware.d.ts +0 -0
  137. /package/dist-types/ts3.4/{s3-express → submodules/s3/middleware-s3-express}/functions/signS3Express.d.ts +0 -0
  138. /package/dist-types/ts3.4/{s3-express → submodules/s3/middleware-s3-express}/interfaces/S3ExpressIdentity.d.ts +0 -0
  139. /package/dist-types/ts3.4/{s3-express → submodules/s3/middleware-s3-express}/interfaces/S3ExpressIdentityProvider.d.ts +0 -0
  140. /package/dist-types/ts3.4/{throw-200-exceptions.d.ts → submodules/s3/middleware-throw-200-exceptions/throw-200-exceptions.d.ts} +0 -0
  141. /package/dist-types/ts3.4/{protocol → submodules/s3/protocol}/S3RestXmlProtocol.d.ts +0 -0
  142. /package/dist-types/ts3.4/{toStream.browser.d.ts → submodules/s3/to-stream/toStream.browser.d.ts} +0 -0
  143. /package/dist-types/ts3.4/{toStream.d.ts → submodules/s3/to-stream/toStream.d.ts} +0 -0
@@ -0,0 +1,174 @@
1
+ import type { ARN } from "@aws-sdk/core/util";
2
+ /**
3
+ * @deprecated unused as of EndpointsV2.
4
+ */
5
+ export declare const DOT_PATTERN: RegExp;
6
+ /**
7
+ * @deprecated unused as of EndpointsV2.
8
+ */
9
+ export declare const S3_HOSTNAME_PATTERN: RegExp;
10
+ /**
11
+ * @deprecated unused as of EndpointsV2.
12
+ * @internal
13
+ */
14
+ export interface AccessPointArn extends ARN {
15
+ accessPointName: string;
16
+ }
17
+ /**
18
+ * @deprecated unused as of EndpointsV2.
19
+ * @internal
20
+ */
21
+ export interface BucketHostnameParams {
22
+ isCustomEndpoint?: boolean;
23
+ baseHostname: string;
24
+ bucketName: string;
25
+ clientRegion: string;
26
+ accelerateEndpoint?: boolean;
27
+ dualstackEndpoint?: boolean;
28
+ fipsEndpoint?: boolean;
29
+ pathStyleEndpoint?: boolean;
30
+ tlsCompatible?: boolean;
31
+ }
32
+ /**
33
+ * @deprecated unused as of EndpointsV2.
34
+ * @internal
35
+ */
36
+ export interface ArnHostnameParams extends Omit<BucketHostnameParams, "bucketName"> {
37
+ bucketName: ARN;
38
+ clientSigningRegion?: string;
39
+ clientPartition?: string;
40
+ useArnRegion?: boolean;
41
+ disableMultiregionAccessPoints?: boolean;
42
+ }
43
+ /**
44
+ * @deprecated unused as of EndpointsV2.
45
+ * @internal
46
+ */
47
+ export declare const isBucketNameOptions: (options: BucketHostnameParams | ArnHostnameParams) => options is BucketHostnameParams;
48
+ /**
49
+ * Determines whether a given string is DNS compliant per the rules outlined by
50
+ * S3. Length, capitaization, and leading dot restrictions are enforced by the
51
+ * DOMAIN_PATTERN regular expression.
52
+ * @internal
53
+ *
54
+ * @see https://docs.aws.amazon.com/AmazonS3/latest/dev/BucketRestrictions.html
55
+ *
56
+ * @deprecated unused as of EndpointsV2.
57
+ */
58
+ export declare const isDnsCompatibleBucketName: (bucketName: string) => boolean;
59
+ /**
60
+ * @deprecated unused as of EndpointsV2.
61
+ * @internal
62
+ */
63
+ export declare const getSuffix: (hostname: string) => [string, string];
64
+ /**
65
+ * Infer region and hostname suffix from a complete hostname
66
+ * @internal
67
+ * @param hostname - Hostname
68
+ * @returns [Region, Hostname suffix]
69
+ *
70
+ * @deprecated unused as of EndpointsV2.
71
+ */
72
+ export declare const getSuffixForArnEndpoint: (hostname: string) => [string, string];
73
+ /**
74
+ * @deprecated unused as of EndpointsV2.
75
+ * @internal
76
+ */
77
+ export declare const validateArnEndpointOptions: (options: {
78
+ accelerateEndpoint?: boolean;
79
+ tlsCompatible?: boolean;
80
+ pathStyleEndpoint?: boolean;
81
+ }) => void;
82
+ /**
83
+ * @deprecated unused as of EndpointsV2.
84
+ * @internal
85
+ */
86
+ export declare const validateService: (service: string) => void;
87
+ /**
88
+ * @deprecated unused as of EndpointsV2.
89
+ * @internal
90
+ */
91
+ export declare const validateS3Service: (service: string) => void;
92
+ /**
93
+ * @internal
94
+ */
95
+ export declare const validateOutpostService: (service: string) => void;
96
+ /**
97
+ * Validate partition inferred from ARN is the same to `options.clientPartition`.
98
+ * @internal
99
+ */
100
+ export declare const validatePartition: (partition: string, options: {
101
+ clientPartition: string;
102
+ }) => void;
103
+ /**
104
+ * (Previous to deprecation)
105
+ * validate region value inferred from ARN. If `options.useArnRegion` is set, it validates the region is not a FIPS
106
+ * region. If `options.useArnRegion` is unset, it validates the region is equal to `options.clientRegion` or
107
+ * `options.clientSigningRegion`.
108
+ *
109
+ * @internal
110
+ *
111
+ * @deprecated validation is deferred to the endpoint ruleset.
112
+ */
113
+ export declare const validateRegion: (region: string, options: {
114
+ useArnRegion?: boolean;
115
+ allowFipsRegion?: boolean;
116
+ clientRegion: string;
117
+ clientSigningRegion: string;
118
+ useFipsEndpoint: boolean;
119
+ }) => void;
120
+ /**
121
+ * @deprecated unused as of EndpointsV2.
122
+ */
123
+ export declare const validateRegionalClient: (region: string) => void;
124
+ /**
125
+ * Validate an account ID
126
+ * @internal
127
+ */
128
+ export declare const validateAccountId: (accountId: string) => void;
129
+ /**
130
+ * Validate a host label according to https://tools.ietf.org/html/rfc3986#section-3.2.2
131
+ * @internal
132
+ * @deprecated unused as of EndpointsV2.
133
+ */
134
+ export declare const validateDNSHostLabel: (label: string, options?: {
135
+ tlsCompatible?: boolean;
136
+ }) => void;
137
+ /**
138
+ * @deprecated unused as of EndpointsV2.
139
+ */
140
+ export declare const validateCustomEndpoint: (options: {
141
+ isCustomEndpoint?: boolean;
142
+ dualstackEndpoint?: boolean;
143
+ accelerateEndpoint?: boolean;
144
+ }) => void;
145
+ /**
146
+ * Validate and parse an Access Point ARN or Outposts ARN
147
+ * @internal
148
+ *
149
+ * @param resource - The resource section of an ARN
150
+ * @returns Access Point Name and optional Outpost ID.
151
+ */
152
+ export declare const getArnResources: (resource: string) => {
153
+ accesspointName: string;
154
+ outpostId?: string;
155
+ };
156
+ /**
157
+ * (Prior to deprecation) Throw if dual stack configuration is set to true.
158
+ * @internal
159
+ *
160
+ * @deprecated validation deferred to endpoints ruleset.
161
+ */
162
+ export declare const validateNoDualstack: (dualstackEndpoint?: boolean) => void;
163
+ /**
164
+ * Validate fips endpoint is not set up.
165
+ * @internal
166
+ * @deprecated unused as of EndpointsV2.
167
+ */
168
+ export declare const validateNoFIPS: (useFipsEndpoint?: boolean) => void;
169
+ /**
170
+ * Validate the multi-region access point alias.
171
+ * @internal
172
+ * @deprecated unused as of EndpointsV2.
173
+ */
174
+ export declare const validateMrapAlias: (name: string) => void;
@@ -0,0 +1,95 @@
1
+ import type { Provider, RegionInfoProvider } from "@smithy/types";
2
+ /**
3
+ * @deprecated unused as of EndpointsV2.
4
+ */
5
+ export interface BucketEndpointInputConfig {
6
+ /**
7
+ * Whether to use the bucket name as the endpoint for this request. The bucket
8
+ * name must be a domain name with a CNAME record alias to an appropriate virtual
9
+ * hosted-style S3 hostname, e.g. a bucket of `images.johnsmith.net` and a DNS
10
+ * record of:
11
+ *
12
+ * ```
13
+ * images.johnsmith.net CNAME images.johnsmith.net.s3.amazonaws.com.
14
+ * ```
15
+ *
16
+ * @see https://docs.aws.amazon.com/AmazonS3/latest/userguide/VirtualHosting.html#VirtualHostingCustomURLs
17
+ */
18
+ bucketEndpoint?: boolean;
19
+ /**
20
+ * Whether to force path style URLs for S3 objects (e.g., https://s3.amazonaws.com/<bucketName>/<key> instead of https://<bucketName>.s3.amazonaws.com/<key>
21
+ */
22
+ forcePathStyle?: boolean;
23
+ /**
24
+ * Whether to use the S3 Transfer Acceleration endpoint by default
25
+ */
26
+ useAccelerateEndpoint?: boolean;
27
+ /**
28
+ * Whether to override the request region with the region inferred from requested resource's ARN. Defaults to false
29
+ */
30
+ useArnRegion?: boolean | Provider<boolean>;
31
+ /**
32
+ * Whether to prevent SDK from making cross-region request when supplied bucket is a multi-region access point ARN.
33
+ * Defaults to false
34
+ */
35
+ disableMultiregionAccessPoints?: boolean | Provider<boolean>;
36
+ }
37
+ /**
38
+ * @deprecated unused as of EndpointsV2.
39
+ */
40
+ interface PreviouslyResolved {
41
+ isCustomEndpoint?: boolean;
42
+ region: Provider<string>;
43
+ regionInfoProvider: RegionInfoProvider;
44
+ useFipsEndpoint: Provider<boolean>;
45
+ useDualstackEndpoint: Provider<boolean>;
46
+ }
47
+ /**
48
+ * @deprecated unused as of EndpointsV2.
49
+ */
50
+ export interface BucketEndpointResolvedConfig {
51
+ /**
52
+ * Whether the endpoint is specified by caller.
53
+ * @internal
54
+ */
55
+ isCustomEndpoint?: boolean;
56
+ /**
57
+ * Resolved value for input config {@link BucketEndpointInputConfig.bucketEndpoint}
58
+ */
59
+ bucketEndpoint: boolean;
60
+ /**
61
+ * Resolved value for input config {@link BucketEndpointInputConfig.forcePathStyle}
62
+ */
63
+ forcePathStyle: boolean;
64
+ /**
65
+ * Resolved value for input config {@link BucketEndpointInputConfig.useAccelerateEndpoint}
66
+ */
67
+ useAccelerateEndpoint: boolean;
68
+ /**
69
+ * Enables FIPS compatible endpoints.
70
+ */
71
+ useFipsEndpoint: Provider<boolean>;
72
+ /**
73
+ * Enables IPv6/IPv4 dualstack endpoint.
74
+ */
75
+ useDualstackEndpoint: Provider<boolean>;
76
+ /**
77
+ * Resolved value for input config {@link BucketEndpointInputConfig.useArnRegion}
78
+ */
79
+ useArnRegion: Provider<boolean | undefined>;
80
+ /**
81
+ * Resolved value for input config {@link RegionInputConfig.region}
82
+ */
83
+ region: Provider<string>;
84
+ /**
85
+ * Fetch related hostname, signing name or signing region with given region.
86
+ * @internal
87
+ */
88
+ regionInfoProvider: RegionInfoProvider;
89
+ disableMultiregionAccessPoints: Provider<boolean>;
90
+ }
91
+ /**
92
+ * @deprecated unused as of EndpointsV2.
93
+ */
94
+ export declare function resolveBucketEndpointConfig<T>(input: T & PreviouslyResolved & BucketEndpointInputConfig): T & BucketEndpointResolvedConfig;
95
+ export {};
@@ -0,0 +1,12 @@
1
+ import type { HttpHandler } from "@smithy/core/protocols";
2
+ import type { BodyLengthCalculator, BuildHandlerOptions, BuildMiddleware, Pluggable, RequestHandler } from "@smithy/types";
3
+ interface PreviouslyResolved {
4
+ runtime: string;
5
+ requestHandler?: RequestHandler<any, any, any> | HttpHandler<any>;
6
+ bodyLengthChecker?: BodyLengthCalculator;
7
+ expectContinueHeader?: boolean | number;
8
+ }
9
+ export declare function addExpectContinueMiddleware(options: PreviouslyResolved): BuildMiddleware<any, any>;
10
+ export declare const addExpectContinueMiddlewareOptions: BuildHandlerOptions;
11
+ export declare const getAddExpectContinuePlugin: (options: PreviouslyResolved) => Pluggable<any, any>;
12
+ export {};
@@ -0,0 +1,17 @@
1
+ import type { Provider } from "@smithy/types";
2
+ /**
3
+ * @public
4
+ */
5
+ export interface LocationConstraintInputConfig {
6
+ }
7
+ interface PreviouslyResolved {
8
+ region: Provider<string>;
9
+ }
10
+ export interface LocationConstraintResolvedConfig {
11
+ /**
12
+ * Resolved value for input config {@link RegionInputConfig.region}
13
+ */
14
+ region: Provider<string>;
15
+ }
16
+ export declare function resolveLocationConstraintConfig<T>(input: T & LocationConstraintInputConfig & PreviouslyResolved): T & LocationConstraintResolvedConfig;
17
+ export {};
@@ -0,0 +1,10 @@
1
+ import type { InitializeHandlerOptions, InitializeMiddleware, Pluggable } from "@smithy/types";
2
+ import type { LocationConstraintResolvedConfig } from "./configuration";
3
+ /**
4
+ * This middleware modifies the input on S3 CreateBucket requests. If the LocationConstraint has not been set, this
5
+ * middleware will set a LocationConstraint to match the configured region. The CreateBucketConfiguration will be
6
+ * removed entirely on requests to the us-east-1 region.
7
+ */
8
+ export declare function locationConstraintMiddleware(options: LocationConstraintResolvedConfig): InitializeMiddleware<any, any>;
9
+ export declare const locationConstraintMiddlewareOptions: InitializeHandlerOptions;
10
+ export declare const getLocationConstraintPlugin: (config: LocationConstraintResolvedConfig) => Pluggable<any, any>;
@@ -1,5 +1,5 @@
1
1
  import type { Client, Command } from "@smithy/types";
2
- import type { S3ExpressIdentityProvider } from "./s3-express";
2
+ import type { S3ExpressIdentityProvider } from "../middleware-s3-express/interfaces/S3ExpressIdentityProvider";
3
3
  /**
4
4
  * All endpoint parameters with built-in bindings of AWS::S3::*
5
5
  * @public
@@ -0,0 +1,12 @@
1
+ import type { ChecksumConstructor, Decoder, Encoder, HashConstructor, InitializeHandlerOptions, InitializeMiddleware, Pluggable } from "@smithy/types";
2
+ interface PreviouslyResolved {
3
+ base64Encoder: Encoder;
4
+ md5: ChecksumConstructor | HashConstructor;
5
+ utf8Decoder: Decoder;
6
+ base64Decoder: Decoder;
7
+ }
8
+ export declare function ssecMiddleware(options: PreviouslyResolved): InitializeMiddleware<any, any>;
9
+ export declare const ssecMiddlewareOptions: InitializeHandlerOptions;
10
+ export declare const getSsecPlugin: (config: PreviouslyResolved) => Pluggable<any, any>;
11
+ export declare function isValidBase64EncodedSSECustomerKey(str: string, options: PreviouslyResolved): boolean;
12
+ export {};
@@ -1,5 +1,5 @@
1
1
  import type { InitializeHandlerOptions, InitializeMiddleware, Pluggable } from "@smithy/types";
2
- import type { S3ResolvedConfig } from "./s3Configuration";
2
+ import type { S3ResolvedConfig } from "../middleware-s3-configuration/s3Configuration";
3
3
  /**
4
4
  * @internal
5
5
  */
@@ -0,0 +1,47 @@
1
+ import type { Provider, RegionInfoProvider } from "@smithy/types";
2
+ export { NODE_USE_ARN_REGION_CONFIG_OPTIONS } from "@aws-sdk/middleware-sdk-s3/s3";
3
+ /**
4
+ * @public
5
+ */
6
+ export interface S3ControlInputConfig {
7
+ /**
8
+ * Whether to override the request region with the region inferred from requested resource's ARN. Defaults to false
9
+ */
10
+ useArnRegion?: boolean | undefined | Provider<boolean | undefined>;
11
+ }
12
+ interface PreviouslyResolved {
13
+ isCustomEndpoint?: boolean;
14
+ region: Provider<string>;
15
+ regionInfoProvider?: RegionInfoProvider;
16
+ useFipsEndpoint: Provider<boolean>;
17
+ useDualstackEndpoint: Provider<boolean>;
18
+ }
19
+ export interface S3ControlResolvedConfig {
20
+ /**
21
+ * Whether the endpoint is specified by caller.
22
+ * @internal
23
+ */
24
+ isCustomEndpoint?: boolean;
25
+ /**
26
+ * Enables FIPS compatible endpoints.
27
+ */
28
+ useFipsEndpoint: Provider<boolean>;
29
+ /**
30
+ * Enables IPv6/IPv4 dualstack endpoint.
31
+ */
32
+ useDualstackEndpoint: Provider<boolean>;
33
+ /**
34
+ * Resolved value for input config {@link S3ControlInputConfig.useArnRegion}
35
+ */
36
+ useArnRegion: Provider<boolean | undefined>;
37
+ /**
38
+ * Resolved value for input config {@link RegionInputConfig.region}
39
+ */
40
+ region: Provider<string>;
41
+ /**
42
+ * Fetch related hostname, signing name or signing region with given region.
43
+ * @internal
44
+ */
45
+ regionInfoProvider?: RegionInfoProvider;
46
+ }
47
+ export declare function resolveS3ControlConfig<T>(input: T & PreviouslyResolved & S3ControlInputConfig): T & S3ControlResolvedConfig;
@@ -0,0 +1,5 @@
1
+ export declare const CONTEXT_OUTPOST_ID = "outpost_id";
2
+ export declare const CONTEXT_ACCOUNT_ID = "account_id";
3
+ export declare const CONTEXT_ARN_REGION = "outpost_arn_region";
4
+ export declare const CONTEXT_SIGNING_SERVICE = "signing_service";
5
+ export declare const CONTEXT_SIGNING_REGION = "signing_region";
@@ -0,0 +1,9 @@
1
+ export type { S3ControlInputConfig, S3ControlResolvedConfig } from "./configurations";
2
+ export { resolveS3ControlConfig } from "./configurations";
3
+ export { getProcessArnablesPlugin } from "./middleware-process-arnables/getProcessArnablesPlugin";
4
+ export { parseOutpostArnablesMiddleaware, parseOutpostArnablesMiddleawareOptions, } from "./middleware-process-arnables/parse-outpost-arnables";
5
+ export { updateArnablesRequestMiddleware, updateArnablesRequestMiddlewareOptions, } from "./middleware-process-arnables/update-arnables-request";
6
+ export { getOutpostEndpoint } from "./middleware-process-arnables/getOutpostEndpoint";
7
+ export { hostPrefixDeduplicationMiddleware, hostPrefixDeduplicationMiddlewareOptions, getHostPrefixDeduplicationPlugin, } from "./middleware-host-prefix-deduplication/hostPrefixDeduplicationMiddleware";
8
+ export type { RedirectFromPostIdMiddlewareConfig } from "./middleware-redirect-from-postid/redirect-from-postid";
9
+ export { redirectFromPostIdMiddleware, redirectFromPostIdMiddlewareOptions, getRedirectFromPostIdPlugin, } from "./middleware-redirect-from-postid/redirect-from-postid";
@@ -0,0 +1,17 @@
1
+ import type { Pluggable, RelativeMiddlewareOptions, SerializeMiddleware } from "@smithy/types";
2
+ /**
3
+ * @internal
4
+ * @deprecated - the middleware is no longer necessary since hostPrefix was
5
+ * removed by S3Control codegen customization's model preprocessing.
6
+ */
7
+ export declare const hostPrefixDeduplicationMiddleware: () => SerializeMiddleware<any, any>;
8
+ /**
9
+ * @internal
10
+ * @deprecated
11
+ */
12
+ export declare const hostPrefixDeduplicationMiddlewareOptions: RelativeMiddlewareOptions;
13
+ /**
14
+ * @internal
15
+ * @deprecated
16
+ */
17
+ export declare const getHostPrefixDeduplicationPlugin: <T>(config: T) => Pluggable<any, any>;
@@ -0,0 +1,6 @@
1
+ export interface GetOutpostEndpointOptions {
2
+ isCustomEndpoint?: boolean;
3
+ regionOverride?: string;
4
+ useFipsEndpoint: boolean;
5
+ }
6
+ export declare const getOutpostEndpoint: (hostname: string, { isCustomEndpoint, regionOverride, useFipsEndpoint }: GetOutpostEndpointOptions) => string;
@@ -0,0 +1,3 @@
1
+ import type { Pluggable } from "@smithy/types";
2
+ import type { S3ControlResolvedConfig } from "../configurations";
3
+ export declare const getProcessArnablesPlugin: (options: S3ControlResolvedConfig) => Pluggable<any, any>;
@@ -0,0 +1,27 @@
1
+ import type { RelativeMiddlewareOptions, SerializeMiddleware } from "@smithy/types";
2
+ import type { S3ControlResolvedConfig } from "../configurations";
3
+ /**
4
+ * @internal
5
+ */
6
+ type ArnableInput = {
7
+ Name?: string;
8
+ Bucket?: string;
9
+ AccountId?: string;
10
+ };
11
+ /**
12
+ * Validate input `Name` or `Bucket` parameter is acceptable ARN format. If so, modify the input ARN to inferred
13
+ * resource identifier, notify later middleware to redirect request to Outpost endpoint, signing service and signing
14
+ * region.
15
+ * @internal
16
+ */
17
+ export declare const parseOutpostArnablesMiddleaware: (options: S3ControlResolvedConfig) => SerializeMiddleware<ArnableInput, any>;
18
+ /**
19
+ * This middleware must go after endpoint resolution and before serialization.
20
+ * The transform applied to the input.Bucket or input.Name ARN must not have occurred
21
+ * by the time endpoint resolution happens, but must have completed by the time serialization
22
+ * happens.
23
+ *
24
+ * @internal
25
+ */
26
+ export declare const parseOutpostArnablesMiddleawareOptions: RelativeMiddlewareOptions;
27
+ export {};
@@ -0,0 +1,19 @@
1
+ import type { Provider, RelativeMiddlewareOptions, SerializeMiddleware } from "@smithy/types";
2
+ /**
3
+ * @internal
4
+ */
5
+ export interface UpdateArnablesRequestMiddlewareConfig {
6
+ isCustomEndpoint?: boolean;
7
+ useFipsEndpoint: Provider<boolean>;
8
+ }
9
+ /**
10
+ * After outpost request is constructed, redirect request to outpost endpoint and set `x-amz-account-id` and
11
+ * `x-amz-outpost-id` headers.
12
+ *
13
+ * @internal
14
+ */
15
+ export declare const updateArnablesRequestMiddleware: (config: UpdateArnablesRequestMiddlewareConfig) => SerializeMiddleware<any, any>;
16
+ /**
17
+ * @internal
18
+ */
19
+ export declare const updateArnablesRequestMiddlewareOptions: RelativeMiddlewareOptions;
@@ -0,0 +1,17 @@
1
+ import type { BuildHandlerOptions, BuildMiddleware, Pluggable, Provider } from "@smithy/types";
2
+ import type { S3ControlResolvedConfig } from "../configurations";
3
+ type InputType = {
4
+ OutpostId?: string;
5
+ };
6
+ export interface RedirectFromPostIdMiddlewareConfig {
7
+ isCustomEndpoint?: boolean;
8
+ useFipsEndpoint: Provider<boolean>;
9
+ }
10
+ /**
11
+ * If OutpostId is set, redirect hostname to Outpost one, and change signing service to `s3-outposts`.
12
+ * Applied to S3Control.CreateBucket and S3Control.ListRegionalBuckets
13
+ */
14
+ export declare const redirectFromPostIdMiddleware: (config: RedirectFromPostIdMiddlewareConfig) => BuildMiddleware<InputType, any>;
15
+ export declare const redirectFromPostIdMiddlewareOptions: BuildHandlerOptions;
16
+ export declare const getRedirectFromPostIdPlugin: (options: S3ControlResolvedConfig) => Pluggable<any, any>;
17
+ export {};
@@ -0,0 +1,39 @@
1
+ export {
2
+ checkContentLengthHeader,
3
+ checkContentLengthHeaderMiddlewareOptions,
4
+ getCheckContentLengthHeaderPlugin,
5
+ regionRedirectEndpointMiddleware,
6
+ regionRedirectEndpointMiddlewareOptions,
7
+ regionRedirectMiddleware,
8
+ regionRedirectMiddlewareOptions,
9
+ getRegionRedirectMiddlewarePlugin,
10
+ resolveS3Config,
11
+ s3ExpiresMiddleware,
12
+ s3ExpiresMiddlewareOptions,
13
+ getS3ExpiresMiddlewarePlugin,
14
+ S3ExpressIdentityCache,
15
+ S3ExpressIdentityCacheEntry,
16
+ S3ExpressIdentityProviderImpl,
17
+ SignatureV4S3Express,
18
+ NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_OPTIONS,
19
+ getS3ExpressPlugin,
20
+ s3ExpressMiddleware,
21
+ s3ExpressMiddlewareOptions,
22
+ getS3ExpressHttpSigningPlugin,
23
+ s3ExpressHttpSigningMiddleware,
24
+ s3ExpressHttpSigningMiddlewareOptions,
25
+ throw200ExceptionsMiddleware,
26
+ throw200ExceptionsMiddlewareOptions,
27
+ getThrow200ExceptionsPlugin,
28
+ validateBucketNameMiddleware,
29
+ validateBucketNameMiddlewareOptions,
30
+ getValidateBucketNamePlugin,
31
+ S3RestXmlProtocol,
32
+ } from "./submodules/s3/index.browser";
33
+ export {
34
+ PreviouslyResolved,
35
+ S3InputConfig,
36
+ S3ResolvedConfig,
37
+ S3ExpressIdentity,
38
+ S3ExpressIdentityProvider,
39
+ } from "./submodules/s3/index.browser";
@@ -1,9 +1,39 @@
1
- export * from "./check-content-length-header";
2
- export * from "./region-redirect-endpoint-middleware";
3
- export * from "./region-redirect-middleware";
4
- export * from "./s3-expires-middleware";
5
- export * from "./s3-express/index";
6
- export * from "./s3Configuration";
7
- export * from "./throw-200-exceptions";
8
- export * from "./validate-bucket-name";
9
- export { S3RestXmlProtocol } from "./protocol/S3RestXmlProtocol";
1
+ export {
2
+ checkContentLengthHeader,
3
+ checkContentLengthHeaderMiddlewareOptions,
4
+ getCheckContentLengthHeaderPlugin,
5
+ regionRedirectEndpointMiddleware,
6
+ regionRedirectEndpointMiddlewareOptions,
7
+ regionRedirectMiddleware,
8
+ regionRedirectMiddlewareOptions,
9
+ getRegionRedirectMiddlewarePlugin,
10
+ resolveS3Config,
11
+ s3ExpiresMiddleware,
12
+ s3ExpiresMiddlewareOptions,
13
+ getS3ExpiresMiddlewarePlugin,
14
+ S3ExpressIdentityCache,
15
+ S3ExpressIdentityCacheEntry,
16
+ S3ExpressIdentityProviderImpl,
17
+ SignatureV4S3Express,
18
+ NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_OPTIONS,
19
+ getS3ExpressPlugin,
20
+ s3ExpressMiddleware,
21
+ s3ExpressMiddlewareOptions,
22
+ getS3ExpressHttpSigningPlugin,
23
+ s3ExpressHttpSigningMiddleware,
24
+ s3ExpressHttpSigningMiddlewareOptions,
25
+ throw200ExceptionsMiddleware,
26
+ throw200ExceptionsMiddlewareOptions,
27
+ getThrow200ExceptionsPlugin,
28
+ validateBucketNameMiddleware,
29
+ validateBucketNameMiddlewareOptions,
30
+ getValidateBucketNamePlugin,
31
+ S3RestXmlProtocol,
32
+ } from "./submodules/s3/index";
33
+ export {
34
+ PreviouslyResolved,
35
+ S3InputConfig,
36
+ S3ResolvedConfig,
37
+ S3ExpressIdentity,
38
+ S3ExpressIdentityProvider,
39
+ } from "./submodules/s3/index";
@@ -0,0 +1,6 @@
1
+ import { LoadedConfigSelectors } from "@smithy/core/config";
2
+ export declare const NODE_DISABLE_MULTIREGION_ACCESS_POINT_ENV_NAME =
3
+ "AWS_S3_DISABLE_MULTIREGION_ACCESS_POINTS";
4
+ export declare const NODE_DISABLE_MULTIREGION_ACCESS_POINT_INI_NAME =
5
+ "s3_disable_multiregion_access_points";
6
+ export declare const NODE_DISABLE_MULTIREGION_ACCESS_POINT_CONFIG_OPTIONS: LoadedConfigSelectors<boolean>;
@@ -0,0 +1,6 @@
1
+ import { LoadedConfigSelectors } from "@smithy/core/config";
2
+ export declare const NODE_USE_ARN_REGION_ENV_NAME = "AWS_S3_USE_ARN_REGION";
3
+ export declare const NODE_USE_ARN_REGION_INI_NAME = "s3_use_arn_region";
4
+ export declare const NODE_USE_ARN_REGION_CONFIG_OPTIONS: LoadedConfigSelectors<
5
+ boolean | undefined
6
+ >;