@aws-sdk/core 3.974.9 → 3.974.11

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 (157) hide show
  1. package/dist-cjs/index.js +4 -6
  2. package/dist-cjs/submodules/client/index.browser.js +595 -0
  3. package/dist-cjs/submodules/client/index.js +715 -0
  4. package/dist-cjs/submodules/client/index.native.js +588 -0
  5. package/dist-es/index.js +3 -3
  6. package/dist-es/submodules/client/index.browser.js +36 -0
  7. package/dist-es/submodules/client/index.js +26 -4
  8. package/dist-es/submodules/client/index.native.js +37 -0
  9. package/dist-es/submodules/client/middleware-host-header/hostHeaderMiddleware.js +33 -0
  10. package/dist-es/submodules/client/middleware-logger/loggerMiddleware.js +42 -0
  11. package/dist-es/submodules/client/middleware-recursion-detection/configuration.js +7 -0
  12. package/dist-es/submodules/client/middleware-recursion-detection/getRecursionDetectionPlugin.browser.js +3 -0
  13. package/dist-es/submodules/client/middleware-recursion-detection/getRecursionDetectionPlugin.js +7 -0
  14. package/dist-es/submodules/client/middleware-recursion-detection/recursionDetectionMiddleware.browser.js +1 -0
  15. package/dist-es/submodules/client/middleware-recursion-detection/recursionDetectionMiddleware.js +29 -0
  16. package/dist-es/submodules/client/middleware-recursion-detection/recursionDetectionMiddleware.native.js +1 -0
  17. package/dist-es/submodules/client/middleware-user-agent/check-features.js +49 -0
  18. package/dist-es/submodules/client/middleware-user-agent/configurations.js +28 -0
  19. package/dist-es/submodules/client/middleware-user-agent/constants.js +7 -0
  20. package/dist-es/submodules/client/middleware-user-agent/encode-features.js +18 -0
  21. package/dist-es/submodules/client/middleware-user-agent/user-agent-middleware.js +82 -0
  22. package/dist-es/submodules/client/region-config-resolver/awsRegionConfig.js +2 -0
  23. package/dist-es/submodules/client/region-config-resolver/extensions.js +15 -0
  24. package/dist-es/submodules/client/region-config-resolver/stsRegionDefaultResolver.browser.js +3 -0
  25. package/dist-es/submodules/client/region-config-resolver/stsRegionDefaultResolver.js +15 -0
  26. package/dist-es/submodules/client/region-config-resolver/stsRegionDefaultResolver.native.js +3 -0
  27. package/dist-es/submodules/client/util-endpoints/aws.js +10 -0
  28. package/dist-es/submodules/client/util-endpoints/lib/aws/isVirtualHostableS3Bucket.js +25 -0
  29. package/dist-es/submodules/client/util-endpoints/lib/aws/parseArn.js +18 -0
  30. package/dist-es/submodules/client/util-endpoints/lib/aws/partition.js +41 -0
  31. package/dist-es/submodules/client/util-endpoints/lib/aws/partitions.js +1 -0
  32. package/dist-es/submodules/client/util-endpoints/lib/isIpAddress.js +1 -0
  33. package/dist-es/submodules/client/util-endpoints/resolveDefaultAwsRegionalEndpointsConfig.js +21 -0
  34. package/dist-es/submodules/client/util-endpoints/resolveEndpoint.js +1 -0
  35. package/dist-es/submodules/client/util-endpoints/types/EndpointError.js +1 -0
  36. package/dist-es/submodules/client/util-endpoints/types/EndpointRuleObject.js +1 -0
  37. package/dist-es/submodules/client/util-endpoints/types/ErrorRuleObject.js +1 -0
  38. package/dist-es/submodules/client/util-endpoints/types/RuleSetObject.js +1 -0
  39. package/dist-es/submodules/client/util-endpoints/types/TreeRuleObject.js +1 -0
  40. package/dist-es/submodules/client/util-endpoints/types/shared.js +1 -0
  41. package/dist-es/submodules/client/util-user-agent-browser/configurations.js +1 -0
  42. package/dist-es/submodules/client/util-user-agent-browser/createUserAgentStringParsingProvider.js +20 -0
  43. package/dist-es/submodules/client/util-user-agent-browser/defaultUserAgent.browser.js +1 -0
  44. package/dist-es/submodules/client/util-user-agent-browser/defaultUserAgent.js +53 -0
  45. package/dist-es/submodules/client/util-user-agent-browser/defaultUserAgent.native.js +18 -0
  46. package/dist-es/submodules/client/util-user-agent-node/crt-availability.js +3 -0
  47. package/dist-es/submodules/client/util-user-agent-node/defaultUserAgent.js +36 -0
  48. package/dist-es/submodules/client/util-user-agent-node/getNodeModulesParentDirs.js +15 -0
  49. package/dist-es/submodules/client/util-user-agent-node/getRuntimeUserAgentPair.js +10 -0
  50. package/dist-es/submodules/client/util-user-agent-node/getSanitizedDevTypeScriptVersion.js +14 -0
  51. package/dist-es/submodules/client/util-user-agent-node/getSanitizedTypeScriptVersion.js +9 -0
  52. package/dist-es/submodules/client/util-user-agent-node/getTypeScriptUserAgentPair.js +75 -0
  53. package/dist-es/submodules/client/util-user-agent-node/is-crt-available.js +7 -0
  54. package/dist-es/submodules/client/util-user-agent-node/nodeAppIdConfigOptions.js +9 -0
  55. package/dist-types/api-extractor-type-index.d.ts +3 -2
  56. package/dist-types/index.d.ts +12 -14
  57. package/dist-types/submodules/client/index.browser.d.ts +47 -0
  58. package/dist-types/submodules/client/index.d.ts +38 -4
  59. package/dist-types/submodules/client/index.native.d.ts +48 -0
  60. package/dist-types/submodules/client/middleware-host-header/hostHeaderMiddleware.d.ts +35 -0
  61. package/dist-types/submodules/client/middleware-logger/loggerMiddleware.d.ts +4 -0
  62. package/dist-types/submodules/client/middleware-recursion-detection/configuration.d.ts +5 -0
  63. package/dist-types/submodules/client/middleware-recursion-detection/getRecursionDetectionPlugin.browser.d.ts +5 -0
  64. package/dist-types/submodules/client/middleware-recursion-detection/getRecursionDetectionPlugin.d.ts +5 -0
  65. package/dist-types/submodules/client/middleware-recursion-detection/recursionDetectionMiddleware.browser.d.ts +6 -0
  66. package/dist-types/submodules/client/middleware-recursion-detection/recursionDetectionMiddleware.d.ts +6 -0
  67. package/dist-types/submodules/client/middleware-recursion-detection/recursionDetectionMiddleware.native.d.ts +6 -0
  68. package/dist-types/submodules/client/middleware-user-agent/check-features.d.ts +20 -0
  69. package/dist-types/submodules/client/middleware-user-agent/configurations.d.ts +44 -0
  70. package/dist-types/submodules/client/middleware-user-agent/constants.d.ts +7 -0
  71. package/dist-types/submodules/client/middleware-user-agent/encode-features.d.ts +5 -0
  72. package/dist-types/submodules/client/middleware-user-agent/user-agent-middleware.d.ts +18 -0
  73. package/dist-types/submodules/client/region-config-resolver/awsRegionConfig.d.ts +15 -0
  74. package/dist-types/submodules/client/region-config-resolver/extensions.d.ts +16 -0
  75. package/dist-types/submodules/client/region-config-resolver/stsRegionDefaultResolver.browser.d.ts +4 -0
  76. package/dist-types/submodules/client/region-config-resolver/stsRegionDefaultResolver.d.ts +14 -0
  77. package/dist-types/submodules/client/region-config-resolver/stsRegionDefaultResolver.native.d.ts +4 -0
  78. package/dist-types/submodules/client/util-endpoints/aws.d.ts +2 -0
  79. package/dist-types/submodules/client/util-endpoints/lib/aws/isVirtualHostableS3Bucket.d.ts +5 -0
  80. package/dist-types/submodules/client/util-endpoints/lib/aws/parseArn.d.ts +7 -0
  81. package/dist-types/submodules/client/util-endpoints/lib/aws/partition.d.ts +38 -0
  82. package/dist-types/submodules/client/util-endpoints/lib/aws/partitions.d.ts +638 -0
  83. package/dist-types/submodules/client/util-endpoints/lib/isIpAddress.d.ts +1 -0
  84. package/dist-types/submodules/client/util-endpoints/resolveDefaultAwsRegionalEndpointsConfig.d.ts +56 -0
  85. package/dist-types/submodules/client/util-endpoints/resolveEndpoint.d.ts +1 -0
  86. package/dist-types/submodules/client/util-endpoints/types/EndpointError.d.ts +1 -0
  87. package/dist-types/submodules/client/util-endpoints/types/EndpointRuleObject.d.ts +1 -0
  88. package/dist-types/submodules/client/util-endpoints/types/ErrorRuleObject.d.ts +1 -0
  89. package/dist-types/submodules/client/util-endpoints/types/RuleSetObject.d.ts +1 -0
  90. package/dist-types/submodules/client/util-endpoints/types/TreeRuleObject.d.ts +1 -0
  91. package/dist-types/submodules/client/util-endpoints/types/shared.d.ts +1 -0
  92. package/dist-types/submodules/client/util-user-agent-browser/configurations.d.ts +7 -0
  93. package/dist-types/submodules/client/util-user-agent-browser/createUserAgentStringParsingProvider.d.ts +14 -0
  94. package/dist-types/submodules/client/util-user-agent-browser/defaultUserAgent.browser.d.ts +1 -0
  95. package/dist-types/submodules/client/util-user-agent-browser/defaultUserAgent.d.ts +27 -0
  96. package/dist-types/submodules/client/util-user-agent-browser/defaultUserAgent.native.d.ts +18 -0
  97. package/dist-types/submodules/client/util-user-agent-node/crt-availability.d.ts +8 -0
  98. package/dist-types/submodules/client/util-user-agent-node/defaultUserAgent.d.ts +28 -0
  99. package/dist-types/submodules/client/util-user-agent-node/getNodeModulesParentDirs.d.ts +10 -0
  100. package/dist-types/submodules/client/util-user-agent-node/getRuntimeUserAgentPair.d.ts +6 -0
  101. package/dist-types/submodules/client/util-user-agent-node/getSanitizedDevTypeScriptVersion.d.ts +8 -0
  102. package/dist-types/submodules/client/util-user-agent-node/getSanitizedTypeScriptVersion.d.ts +8 -0
  103. package/dist-types/submodules/client/util-user-agent-node/getTypeScriptUserAgentPair.d.ts +6 -0
  104. package/dist-types/submodules/client/util-user-agent-node/is-crt-available.d.ts +5 -0
  105. package/dist-types/submodules/client/util-user-agent-node/nodeAppIdConfigOptions.d.ts +13 -0
  106. package/dist-types/ts3.4/api-extractor-type-index.d.ts +0 -2
  107. package/dist-types/ts3.4/index.d.ts +65 -3
  108. package/dist-types/ts3.4/submodules/client/index.browser.d.ts +116 -0
  109. package/dist-types/ts3.4/submodules/client/index.d.ts +123 -4
  110. package/dist-types/ts3.4/submodules/client/index.native.d.ts +116 -0
  111. package/dist-types/ts3.4/submodules/client/middleware-host-header/hostHeaderMiddleware.d.ts +29 -0
  112. package/dist-types/ts3.4/submodules/client/middleware-logger/loggerMiddleware.d.ts +17 -0
  113. package/dist-types/ts3.4/submodules/client/middleware-recursion-detection/configuration.d.ts +3 -0
  114. package/dist-types/ts3.4/submodules/client/middleware-recursion-detection/getRecursionDetectionPlugin.browser.d.ts +4 -0
  115. package/dist-types/ts3.4/submodules/client/middleware-recursion-detection/getRecursionDetectionPlugin.d.ts +4 -0
  116. package/dist-types/ts3.4/submodules/client/middleware-recursion-detection/recursionDetectionMiddleware.browser.d.ts +5 -0
  117. package/dist-types/ts3.4/submodules/client/middleware-recursion-detection/recursionDetectionMiddleware.d.ts +5 -0
  118. package/dist-types/ts3.4/submodules/client/middleware-recursion-detection/recursionDetectionMiddleware.native.d.ts +5 -0
  119. package/dist-types/ts3.4/submodules/client/middleware-user-agent/check-features.d.ts +20 -0
  120. package/dist-types/ts3.4/submodules/client/middleware-user-agent/configurations.d.ts +21 -0
  121. package/dist-types/ts3.4/submodules/client/middleware-user-agent/constants.d.ts +7 -0
  122. package/dist-types/ts3.4/submodules/client/middleware-user-agent/encode-features.d.ts +2 -0
  123. package/dist-types/ts3.4/submodules/client/middleware-user-agent/user-agent-middleware.d.ts +21 -0
  124. package/dist-types/ts3.4/submodules/client/region-config-resolver/awsRegionConfig.d.ts +8 -0
  125. package/dist-types/ts3.4/submodules/client/region-config-resolver/extensions.d.ts +14 -0
  126. package/dist-types/ts3.4/submodules/client/region-config-resolver/stsRegionDefaultResolver.browser.d.ts +1 -0
  127. package/dist-types/ts3.4/submodules/client/region-config-resolver/stsRegionDefaultResolver.d.ts +7 -0
  128. package/dist-types/ts3.4/submodules/client/region-config-resolver/stsRegionDefaultResolver.native.d.ts +1 -0
  129. package/dist-types/ts3.4/submodules/client/util-endpoints/aws.d.ts +2 -0
  130. package/dist-types/ts3.4/submodules/client/util-endpoints/lib/aws/isVirtualHostableS3Bucket.d.ts +4 -0
  131. package/dist-types/ts3.4/submodules/client/util-endpoints/lib/aws/parseArn.d.ts +2 -0
  132. package/dist-types/ts3.4/submodules/client/util-endpoints/lib/aws/partition.d.ts +28 -0
  133. package/dist-types/ts3.4/submodules/client/util-endpoints/lib/aws/partitions.d.ts +647 -0
  134. package/dist-types/ts3.4/submodules/client/util-endpoints/lib/isIpAddress.d.ts +1 -0
  135. package/dist-types/ts3.4/submodules/client/util-endpoints/resolveDefaultAwsRegionalEndpointsConfig.d.ts +35 -0
  136. package/dist-types/ts3.4/submodules/client/util-endpoints/resolveEndpoint.d.ts +1 -0
  137. package/dist-types/ts3.4/submodules/client/util-endpoints/types/EndpointError.d.ts +1 -0
  138. package/dist-types/ts3.4/submodules/client/util-endpoints/types/EndpointRuleObject.d.ts +6 -0
  139. package/dist-types/ts3.4/submodules/client/util-endpoints/types/ErrorRuleObject.d.ts +1 -0
  140. package/dist-types/ts3.4/submodules/client/util-endpoints/types/RuleSetObject.d.ts +5 -0
  141. package/dist-types/ts3.4/submodules/client/util-endpoints/types/TreeRuleObject.d.ts +1 -0
  142. package/dist-types/ts3.4/submodules/client/util-endpoints/types/shared.d.ts +12 -0
  143. package/dist-types/ts3.4/submodules/client/util-user-agent-browser/configurations.d.ts +4 -0
  144. package/dist-types/ts3.4/submodules/client/util-user-agent-browser/createUserAgentStringParsingProvider.d.ts +9 -0
  145. package/dist-types/ts3.4/submodules/client/util-user-agent-browser/defaultUserAgent.browser.d.ts +1 -0
  146. package/dist-types/ts3.4/submodules/client/util-user-agent-browser/defaultUserAgent.d.ts +22 -0
  147. package/dist-types/ts3.4/submodules/client/util-user-agent-browser/defaultUserAgent.native.d.ts +17 -0
  148. package/dist-types/ts3.4/submodules/client/util-user-agent-node/crt-availability.d.ts +3 -0
  149. package/dist-types/ts3.4/submodules/client/util-user-agent-node/defaultUserAgent.d.ts +21 -0
  150. package/dist-types/ts3.4/submodules/client/util-user-agent-node/getNodeModulesParentDirs.d.ts +1 -0
  151. package/dist-types/ts3.4/submodules/client/util-user-agent-node/getRuntimeUserAgentPair.d.ts +2 -0
  152. package/dist-types/ts3.4/submodules/client/util-user-agent-node/getSanitizedDevTypeScriptVersion.d.ts +3 -0
  153. package/dist-types/ts3.4/submodules/client/util-user-agent-node/getSanitizedTypeScriptVersion.d.ts +3 -0
  154. package/dist-types/ts3.4/submodules/client/util-user-agent-node/getTypeScriptUserAgentPair.d.ts +4 -0
  155. package/dist-types/ts3.4/submodules/client/util-user-agent-node/is-crt-available.d.ts +2 -0
  156. package/dist-types/ts3.4/submodules/client/util-user-agent-node/nodeAppIdConfigOptions.d.ts +6 -0
  157. package/package.json +27 -8
@@ -0,0 +1,53 @@
1
+ export { createUserAgentStringParsingProvider } from "./createUserAgentStringParsingProvider";
2
+ export const createDefaultUserAgentProvider = ({ serviceId, clientVersion }) => async (config) => {
3
+ const navigator = typeof window !== "undefined" ? window.navigator : undefined;
4
+ const uaString = navigator?.userAgent ?? "";
5
+ const osName = navigator?.userAgentData?.platform ?? fallback.os(uaString) ?? "other";
6
+ const osVersion = undefined;
7
+ const brands = navigator?.userAgentData?.brands ?? [];
8
+ const brand = brands[brands.length - 1];
9
+ const browserName = brand?.brand ?? fallback.browser(uaString) ?? "unknown";
10
+ const browserVersion = brand?.version ?? "unknown";
11
+ const sections = [
12
+ ["aws-sdk-js", clientVersion],
13
+ ["ua", "2.1"],
14
+ [`os/${osName}`, osVersion],
15
+ ["lang/js"],
16
+ ["md/browser", `${browserName}_${browserVersion}`],
17
+ ];
18
+ if (serviceId) {
19
+ sections.push([`api/${serviceId}`, clientVersion]);
20
+ }
21
+ const appId = await config?.userAgentAppId?.();
22
+ if (appId) {
23
+ sections.push([`app/${appId}`]);
24
+ }
25
+ return sections;
26
+ };
27
+ export const fallback = {
28
+ os(ua) {
29
+ if (/iPhone|iPad|iPod/.test(ua))
30
+ return "iOS";
31
+ if (/Macintosh|Mac OS X/.test(ua))
32
+ return "macOS";
33
+ if (/Windows NT/.test(ua))
34
+ return "Windows";
35
+ if (/Android/.test(ua))
36
+ return "Android";
37
+ if (/Linux/.test(ua))
38
+ return "Linux";
39
+ return undefined;
40
+ },
41
+ browser(ua) {
42
+ if (/EdgiOS|EdgA|Edg\//.test(ua))
43
+ return "Microsoft Edge";
44
+ if (/Firefox\//.test(ua))
45
+ return "Firefox";
46
+ if (/Chrome\//.test(ua))
47
+ return "Chrome";
48
+ if (/Safari\//.test(ua))
49
+ return "Safari";
50
+ return undefined;
51
+ },
52
+ };
53
+ export const defaultUserAgent = createDefaultUserAgentProvider;
@@ -0,0 +1,18 @@
1
+ export const createDefaultUserAgentProvider = ({ serviceId, clientVersion }) => async (config) => {
2
+ const sections = [
3
+ ["aws-sdk-js", clientVersion],
4
+ ["ua", "2.1"],
5
+ ["os/other"],
6
+ ["lang/js"],
7
+ ["md/rn"],
8
+ ];
9
+ if (serviceId) {
10
+ sections.push([`api/${serviceId}`, clientVersion]);
11
+ }
12
+ const appId = await config?.userAgentAppId?.();
13
+ if (appId) {
14
+ sections.push([`app/${appId}`]);
15
+ }
16
+ return sections;
17
+ };
18
+ export const defaultUserAgent = createDefaultUserAgentProvider;
@@ -0,0 +1,3 @@
1
+ export const crtAvailability = {
2
+ isCrtAvailable: false,
3
+ };
@@ -0,0 +1,36 @@
1
+ import { platform, release } from "node:os";
2
+ import { env } from "node:process";
3
+ import { getRuntimeUserAgentPair } from "./getRuntimeUserAgentPair";
4
+ import { getTypeScriptUserAgentPair } from "./getTypeScriptUserAgentPair";
5
+ import { isCrtAvailable } from "./is-crt-available";
6
+ export { crtAvailability } from "./crt-availability";
7
+ export const createDefaultUserAgentProvider = ({ serviceId, clientVersion }) => {
8
+ const runtimeUserAgentPair = getRuntimeUserAgentPair();
9
+ return async (config) => {
10
+ const sections = [
11
+ ["aws-sdk-js", clientVersion],
12
+ ["ua", "2.1"],
13
+ [`os/${platform()}`, release()],
14
+ ["lang/js"],
15
+ runtimeUserAgentPair,
16
+ ];
17
+ const typescriptUserAgentPair = await getTypeScriptUserAgentPair();
18
+ if (typescriptUserAgentPair) {
19
+ sections.push(typescriptUserAgentPair);
20
+ }
21
+ const crtAvailable = isCrtAvailable();
22
+ if (crtAvailable) {
23
+ sections.push(crtAvailable);
24
+ }
25
+ if (serviceId) {
26
+ sections.push([`api/${serviceId}`, clientVersion]);
27
+ }
28
+ if (env.AWS_EXECUTION_ENV) {
29
+ sections.push([`exec-env/${env.AWS_EXECUTION_ENV}`]);
30
+ }
31
+ const appId = await config?.userAgentAppId?.();
32
+ const resolvedUserAgent = appId ? [...sections, [`app/${appId}`]] : [...sections];
33
+ return resolvedUserAgent;
34
+ };
35
+ };
36
+ export const defaultUserAgent = createDefaultUserAgentProvider;
@@ -0,0 +1,15 @@
1
+ import { normalize, sep } from "node:path";
2
+ export const getNodeModulesParentDirs = (dirname) => {
3
+ const cwd = process.cwd();
4
+ if (!dirname) {
5
+ return [cwd];
6
+ }
7
+ const normalizedPath = normalize(dirname);
8
+ const parts = normalizedPath.split(sep);
9
+ const nodeModulesIndex = parts.indexOf("node_modules");
10
+ const parentDir = nodeModulesIndex !== -1 ? parts.slice(0, nodeModulesIndex).join(sep) : normalizedPath;
11
+ if (cwd === parentDir) {
12
+ return [cwd];
13
+ }
14
+ return [parentDir, cwd];
15
+ };
@@ -0,0 +1,10 @@
1
+ import { versions } from "node:process";
2
+ export const getRuntimeUserAgentPair = () => {
3
+ const runtimesToCheck = ["deno", "bun", "llrt"];
4
+ for (const runtime of runtimesToCheck) {
5
+ if (versions[runtime]) {
6
+ return [`md/${runtime}`, versions[runtime]];
7
+ }
8
+ }
9
+ return ["md/nodejs", versions.node];
10
+ };
@@ -0,0 +1,14 @@
1
+ import { getSanitizedTypeScriptVersion } from "./getSanitizedTypeScriptVersion";
2
+ const ALLOWED_PREFIXES = ["^", "~", ">=", "<=", ">", "<"];
3
+ const ALLOWED_DIST_TAGS = ["latest", "beta", "dev", "rc", "insiders", "next"];
4
+ export const getSanitizedDevTypeScriptVersion = (version = "") => {
5
+ if (ALLOWED_DIST_TAGS.includes(version)) {
6
+ return version;
7
+ }
8
+ const prefix = ALLOWED_PREFIXES.find((p) => version.startsWith(p)) ?? "";
9
+ const sanitizedTypeScriptVersion = getSanitizedTypeScriptVersion(version.slice(prefix.length));
10
+ if (!sanitizedTypeScriptVersion) {
11
+ return undefined;
12
+ }
13
+ return `${prefix}${sanitizedTypeScriptVersion}`;
14
+ };
@@ -0,0 +1,9 @@
1
+ const SEMVER_REGEX = /^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+[0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*)?$/;
2
+ export const getSanitizedTypeScriptVersion = (version = "") => {
3
+ const match = version.match(SEMVER_REGEX);
4
+ if (!match) {
5
+ return undefined;
6
+ }
7
+ const [major, minor, patch, prerelease] = [match[1], match[2], match[3], match[4]];
8
+ return prerelease ? `${major}.${minor}.${patch}-${prerelease}` : `${major}.${minor}.${patch}`;
9
+ };
@@ -0,0 +1,75 @@
1
+ import { booleanSelector, SelectorType } from "@smithy/core/config";
2
+ import { readFile } from "node:fs/promises";
3
+ import { join } from "node:path";
4
+ import { getNodeModulesParentDirs } from "./getNodeModulesParentDirs";
5
+ import { getSanitizedDevTypeScriptVersion } from "./getSanitizedDevTypeScriptVersion";
6
+ import { getSanitizedTypeScriptVersion } from "./getSanitizedTypeScriptVersion";
7
+ let tscVersion;
8
+ const TS_PACKAGE_JSON = join("node_modules", "typescript", "package.json");
9
+ export const getTypeScriptUserAgentPair = async () => {
10
+ if (tscVersion === null) {
11
+ return undefined;
12
+ }
13
+ else if (typeof tscVersion === "string") {
14
+ return ["md/tsc", tscVersion];
15
+ }
16
+ let isTypeScriptDetectionDisabled = false;
17
+ try {
18
+ isTypeScriptDetectionDisabled =
19
+ booleanSelector(process.env, "AWS_SDK_JS_TYPESCRIPT_DETECTION_DISABLED", SelectorType.ENV) || false;
20
+ }
21
+ catch { }
22
+ if (isTypeScriptDetectionDisabled) {
23
+ tscVersion = null;
24
+ return undefined;
25
+ }
26
+ const dirname = typeof __dirname !== "undefined" ? __dirname : undefined;
27
+ const nodeModulesParentDirs = getNodeModulesParentDirs(dirname);
28
+ let versionFromApp;
29
+ for (const nodeModulesParentDir of nodeModulesParentDirs) {
30
+ try {
31
+ const appPackageJsonPath = join(nodeModulesParentDir, "package.json");
32
+ const packageJson = await readFile(appPackageJsonPath, "utf-8");
33
+ const { dependencies, devDependencies } = JSON.parse(packageJson);
34
+ const version = devDependencies?.typescript ?? dependencies?.typescript;
35
+ if (typeof version !== "string") {
36
+ continue;
37
+ }
38
+ versionFromApp = version;
39
+ break;
40
+ }
41
+ catch {
42
+ }
43
+ }
44
+ if (!versionFromApp) {
45
+ tscVersion = null;
46
+ return undefined;
47
+ }
48
+ let versionFromNodeModules;
49
+ for (const nodeModulesParentDir of nodeModulesParentDirs) {
50
+ try {
51
+ const tsPackageJsonPath = join(nodeModulesParentDir, TS_PACKAGE_JSON);
52
+ const packageJson = await readFile(tsPackageJsonPath, "utf-8");
53
+ const { version } = JSON.parse(packageJson);
54
+ const sanitizedVersion = getSanitizedTypeScriptVersion(version);
55
+ if (typeof sanitizedVersion !== "string") {
56
+ continue;
57
+ }
58
+ versionFromNodeModules = sanitizedVersion;
59
+ break;
60
+ }
61
+ catch {
62
+ }
63
+ }
64
+ if (versionFromNodeModules) {
65
+ tscVersion = versionFromNodeModules;
66
+ return ["md/tsc", tscVersion];
67
+ }
68
+ const sanitizedVersion = getSanitizedDevTypeScriptVersion(versionFromApp);
69
+ if (typeof sanitizedVersion !== "string") {
70
+ tscVersion = null;
71
+ return undefined;
72
+ }
73
+ tscVersion = `dev_${sanitizedVersion}`;
74
+ return ["md/tsc", tscVersion];
75
+ };
@@ -0,0 +1,7 @@
1
+ import { crtAvailability } from "./crt-availability";
2
+ export const isCrtAvailable = () => {
3
+ if (crtAvailability.isCrtAvailable) {
4
+ return ["md/crt-avail"];
5
+ }
6
+ return null;
7
+ };
@@ -0,0 +1,9 @@
1
+ import { DEFAULT_UA_APP_ID } from "../middleware-user-agent/configurations";
2
+ export const UA_APP_ID_ENV_NAME = "AWS_SDK_UA_APP_ID";
3
+ export const UA_APP_ID_INI_NAME = "sdk_ua_app_id";
4
+ const UA_APP_ID_INI_NAME_DEPRECATED = "sdk-ua-app-id";
5
+ export const NODE_APP_ID_CONFIG_OPTIONS = {
6
+ environmentVariableSelector: (env) => env[UA_APP_ID_ENV_NAME],
7
+ configFileSelector: (profile) => profile[UA_APP_ID_INI_NAME] ?? profile[UA_APP_ID_INI_NAME_DEPRECATED],
8
+ default: DEFAULT_UA_APP_ID,
9
+ };
@@ -1,6 +1,7 @@
1
- export * from "./index";
2
1
  export * from "./submodules/account-id-endpoint/index";
3
2
  export * from "./submodules/client/index";
4
3
  export * from "./submodules/httpAuthSchemes/index";
5
4
  export * from "./submodules/protocols/index";
6
- export * from "./submodules/util/index";
5
+ /**
6
+ * no need to export this.
7
+ */
@@ -1,23 +1,21 @@
1
1
  /**
2
- * Submodules annotated with "Legacy" are from prior to the submodule system.
2
+ * Exports here are from before the submodule system.
3
3
  * They are exported from the package's root index to preserve backwards compatibility.
4
4
  *
5
5
  * New development should go in a proper submodule and not be exported from the root index.
6
6
  * There is an eslint rule banning imports from `@aws-sdk/core` without a submodule e.g. `@aws-sdk/core/protocols`.
7
+ *
8
+ * CAUTION: Do not use export * here. Explicit named exports lock down the public API surface
9
+ * so that additions to submodules do not accidentally become part of the legacy root export.
10
+ *
11
+ * No additional exports are allowed.
7
12
  */
13
+ export { emitWarningIfUnsupportedVersion, getLongPollPlugin, setCredentialFeature, setFeature, setTokenFeature, state, } from "./submodules/client/index";
14
+ export { AwsSdkSigV4ASigner, AwsSdkSigV4Signer, AwsSdkSigV4Signer as AWSSDKSigV4Signer, getBearerTokenEnvKey, NODE_AUTH_SCHEME_PREFERENCE_OPTIONS, NODE_SIGV4A_CONFIG_OPTIONS, resolveAwsSdkSigV4AConfig, resolveAwsSdkSigV4Config, resolveAwsSdkSigV4Config as resolveAWSSDKSigV4Config, validateSigningProperties, } from "./submodules/httpAuthSchemes/index";
15
+ export type { AwsSdkSigV4AAuthInputConfig, AwsSdkSigV4AAuthResolvedConfig, AwsSdkSigV4AAuthResolvedConfig as AwsSdkSigV4APreviouslyResolved, AwsSdkSigV4AuthInputConfig, AwsSdkSigV4AuthInputConfig as AWSSDKSigV4AuthInputConfig, AwsSdkSigV4AuthResolvedConfig, AwsSdkSigV4AuthResolvedConfig as AWSSDKSigV4AuthResolvedConfig, AwsSdkSigV4Memoized, AwsSdkSigV4AuthResolvedConfig as AwsSdkSigV4PreviouslyResolved, AwsSdkSigV4AuthResolvedConfig as AWSSDKSigV4PreviouslyResolved, } from "./submodules/httpAuthSchemes/index";
16
+ export { _toBool, _toNum, _toStr, awsExpectUnion, AwsEc2QueryProtocol, AwsJson1_0Protocol, AwsJson1_1Protocol, AwsJsonRpcProtocol, AwsQueryProtocol, AwsRestJsonProtocol, AwsRestXmlProtocol, AwsSmithyRpcV2CborProtocol, JsonCodec, JsonShapeDeserializer, JsonShapeSerializer, loadJsonRpcErrorCode, loadRestJsonErrorCode, loadRestXmlErrorCode, parseJsonBody, parseJsonErrorBody, parseXmlBody, parseXmlErrorBody, QueryShapeSerializer, XmlCodec, XmlShapeDeserializer, XmlShapeSerializer, } from "./submodules/protocols/index";
17
+ export type { JsonSettings, QuerySerializerSettings, XmlSettings } from "./submodules/protocols/index";
8
18
  /**
9
- * Legacy submodule.
10
- */
11
- export * from "./submodules/client/index";
12
- /**
13
- * Legacy submodule.
14
- */
15
- export * from "./submodules/httpAuthSchemes/index";
16
- /**
17
- * Legacy submodule.
18
- */
19
- export * from "./submodules/protocols/index";
20
- /**
21
- * Warning: do not export any additional submodules from the root of this package. See readme.md for
19
+ * WARNING: do not export any additional submodules from the root of this package. See readme.md for
22
20
  * guide on developing submodules.
23
21
  */
@@ -0,0 +1,47 @@
1
+ export declare const emitWarningIfUnsupportedVersion: symbol;
2
+ export declare const state: symbol;
3
+ export { getLongPollPlugin } from "./longPollMiddleware";
4
+ export { setCredentialFeature } from "./setCredentialFeature";
5
+ export { setFeature } from "./setFeature";
6
+ export { setTokenFeature } from "./setTokenFeature";
7
+ export { hostHeaderMiddleware, hostHeaderMiddlewareOptions, getHostHeaderPlugin, resolveHostHeaderConfig, } from "./middleware-host-header/hostHeaderMiddleware";
8
+ export type { HostHeaderInputConfig, HostHeaderResolvedConfig } from "./middleware-host-header/hostHeaderMiddleware";
9
+ export { loggerMiddleware, loggerMiddlewareOptions, getLoggerPlugin } from "./middleware-logger/loggerMiddleware";
10
+ export { recursionDetectionMiddlewareOptions } from "./middleware-recursion-detection/configuration";
11
+ export { getRecursionDetectionPlugin } from "./middleware-recursion-detection/getRecursionDetectionPlugin.browser";
12
+ export { recursionDetectionMiddleware } from "./middleware-recursion-detection/recursionDetectionMiddleware.browser";
13
+ export { DEFAULT_UA_APP_ID, resolveUserAgentConfig } from "./middleware-user-agent/configurations";
14
+ export type { UserAgentInputConfig, UserAgentResolvedConfig } from "./middleware-user-agent/configurations";
15
+ export { userAgentMiddleware, getUserAgentMiddlewareOptions, getUserAgentPlugin, } from "./middleware-user-agent/user-agent-middleware";
16
+ export { createDefaultUserAgentProvider, defaultUserAgent, fallback } from "./util-user-agent-browser/defaultUserAgent";
17
+ export declare const crtAvailability: symbol;
18
+ export type { DefaultUserAgentOptions, PreviouslyResolved } from "./util-user-agent-node/defaultUserAgent";
19
+ export declare const NODE_APP_ID_CONFIG_OPTIONS: symbol;
20
+ export declare const UA_APP_ID_ENV_NAME: symbol;
21
+ export declare const UA_APP_ID_INI_NAME: symbol;
22
+ export { createUserAgentStringParsingProvider } from "./util-user-agent-browser/createUserAgentStringParsingProvider";
23
+ export { awsEndpointFunctions } from "./util-endpoints/aws";
24
+ export { resolveEndpoint } from "./util-endpoints/resolveEndpoint";
25
+ export { resolveDefaultAwsRegionalEndpointsConfig, toEndpointV1, } from "./util-endpoints/resolveDefaultAwsRegionalEndpointsConfig";
26
+ export type { DefaultAwsRegionalEndpointsInputConfig, DefaultAwsRegionalEndpointsResolvedConfig, } from "./util-endpoints/resolveDefaultAwsRegionalEndpointsConfig";
27
+ export { isIpAddress } from "./util-endpoints/lib/isIpAddress";
28
+ export { isVirtualHostableS3Bucket } from "./util-endpoints/lib/aws/isVirtualHostableS3Bucket";
29
+ export { parseArn } from "./util-endpoints/lib/aws/parseArn";
30
+ export { partition, setPartitionInfo, useDefaultPartitionInfo, getUserAgentPrefix, } from "./util-endpoints/lib/aws/partition";
31
+ export type { PartitionsInfo } from "./util-endpoints/lib/aws/partition";
32
+ export { EndpointError } from "./util-endpoints/types/EndpointError";
33
+ export { EndpointObjectProperties, EndpointObjectHeaders, EndpointObject, EndpointRuleObject, } from "./util-endpoints/types/EndpointRuleObject";
34
+ export { ErrorRuleObject } from "./util-endpoints/types/ErrorRuleObject";
35
+ export { RuleSetRules, TreeRuleObject } from "./util-endpoints/types/TreeRuleObject";
36
+ export { DeprecatedObject, ParameterObject, RuleSetObject } from "./util-endpoints/types/RuleSetObject";
37
+ export { ReferenceObject, FunctionObject, FunctionArgv, FunctionReturn, ConditionObject, Expression, EndpointParams, EndpointResolverOptions, ReferenceRecord, EvaluateOptions, } from "./util-endpoints/types/shared";
38
+ export declare const REGION_ENV_NAME: symbol;
39
+ export declare const REGION_INI_NAME: symbol;
40
+ export declare const NODE_REGION_CONFIG_OPTIONS: symbol;
41
+ export declare const NODE_REGION_CONFIG_FILE_OPTIONS: symbol;
42
+ export { resolveRegionConfig } from "./region-config-resolver/awsRegionConfig";
43
+ export type { RegionInputConfig, RegionResolvedConfig } from "./region-config-resolver/awsRegionConfig";
44
+ export { stsRegionDefaultResolver } from "./region-config-resolver/stsRegionDefaultResolver.browser";
45
+ export declare const stsRegionWarning: symbol;
46
+ export { getAwsRegionExtensionConfiguration, resolveAwsRegionExtensionConfiguration, } from "./region-config-resolver/extensions";
47
+ export type { RegionExtensionRuntimeConfigType } from "./region-config-resolver/extensions";
@@ -1,5 +1,39 @@
1
- export * from "./emitWarningIfUnsupportedVersion";
1
+ export { emitWarningIfUnsupportedVersion, state } from "./emitWarningIfUnsupportedVersion";
2
2
  export { getLongPollPlugin } from "./longPollMiddleware";
3
- export * from "./setCredentialFeature";
4
- export * from "./setFeature";
5
- export * from "./setTokenFeature";
3
+ export { setCredentialFeature } from "./setCredentialFeature";
4
+ export { setFeature } from "./setFeature";
5
+ export { setTokenFeature } from "./setTokenFeature";
6
+ export { hostHeaderMiddleware, hostHeaderMiddlewareOptions, getHostHeaderPlugin, resolveHostHeaderConfig, } from "./middleware-host-header/hostHeaderMiddleware";
7
+ export type { HostHeaderInputConfig, HostHeaderResolvedConfig } from "./middleware-host-header/hostHeaderMiddleware";
8
+ export { loggerMiddleware, loggerMiddlewareOptions, getLoggerPlugin } from "./middleware-logger/loggerMiddleware";
9
+ export { recursionDetectionMiddlewareOptions } from "./middleware-recursion-detection/configuration";
10
+ export { getRecursionDetectionPlugin } from "./middleware-recursion-detection/getRecursionDetectionPlugin";
11
+ export { recursionDetectionMiddleware } from "./middleware-recursion-detection/recursionDetectionMiddleware";
12
+ export { DEFAULT_UA_APP_ID, resolveUserAgentConfig } from "./middleware-user-agent/configurations";
13
+ export type { UserAgentInputConfig, UserAgentResolvedConfig } from "./middleware-user-agent/configurations";
14
+ export { userAgentMiddleware, getUserAgentMiddlewareOptions, getUserAgentPlugin, } from "./middleware-user-agent/user-agent-middleware";
15
+ export { createDefaultUserAgentProvider, defaultUserAgent, crtAvailability, } from "./util-user-agent-node/defaultUserAgent";
16
+ export type { DefaultUserAgentOptions, PreviouslyResolved } from "./util-user-agent-node/defaultUserAgent";
17
+ export { NODE_APP_ID_CONFIG_OPTIONS, UA_APP_ID_ENV_NAME, UA_APP_ID_INI_NAME, } from "./util-user-agent-node/nodeAppIdConfigOptions";
18
+ export { fallback } from "./util-user-agent-browser/defaultUserAgent";
19
+ export { createUserAgentStringParsingProvider } from "./util-user-agent-browser/createUserAgentStringParsingProvider";
20
+ export { awsEndpointFunctions } from "./util-endpoints/aws";
21
+ export { resolveEndpoint } from "./util-endpoints/resolveEndpoint";
22
+ export { resolveDefaultAwsRegionalEndpointsConfig, toEndpointV1, } from "./util-endpoints/resolveDefaultAwsRegionalEndpointsConfig";
23
+ export type { DefaultAwsRegionalEndpointsInputConfig, DefaultAwsRegionalEndpointsResolvedConfig, } from "./util-endpoints/resolveDefaultAwsRegionalEndpointsConfig";
24
+ export { isIpAddress } from "./util-endpoints/lib/isIpAddress";
25
+ export { isVirtualHostableS3Bucket } from "./util-endpoints/lib/aws/isVirtualHostableS3Bucket";
26
+ export { parseArn } from "./util-endpoints/lib/aws/parseArn";
27
+ export { partition, setPartitionInfo, useDefaultPartitionInfo, getUserAgentPrefix, } from "./util-endpoints/lib/aws/partition";
28
+ export type { PartitionsInfo } from "./util-endpoints/lib/aws/partition";
29
+ export { EndpointError } from "./util-endpoints/types/EndpointError";
30
+ export { EndpointObjectProperties, EndpointObjectHeaders, EndpointObject, EndpointRuleObject, } from "./util-endpoints/types/EndpointRuleObject";
31
+ export { ErrorRuleObject } from "./util-endpoints/types/ErrorRuleObject";
32
+ export { RuleSetRules, TreeRuleObject } from "./util-endpoints/types/TreeRuleObject";
33
+ export { DeprecatedObject, ParameterObject, RuleSetObject } from "./util-endpoints/types/RuleSetObject";
34
+ export { ReferenceObject, FunctionObject, FunctionArgv, FunctionReturn, ConditionObject, Expression, EndpointParams, EndpointResolverOptions, ReferenceRecord, EvaluateOptions, } from "./util-endpoints/types/shared";
35
+ export { REGION_ENV_NAME, REGION_INI_NAME, NODE_REGION_CONFIG_OPTIONS, NODE_REGION_CONFIG_FILE_OPTIONS, resolveRegionConfig, } from "./region-config-resolver/awsRegionConfig";
36
+ export type { RegionInputConfig, RegionResolvedConfig } from "./region-config-resolver/awsRegionConfig";
37
+ export { stsRegionDefaultResolver, warning as stsRegionWarning, } from "./region-config-resolver/stsRegionDefaultResolver";
38
+ export { getAwsRegionExtensionConfiguration, resolveAwsRegionExtensionConfiguration, } from "./region-config-resolver/extensions";
39
+ export type { RegionExtensionRuntimeConfigType } from "./region-config-resolver/extensions";
@@ -0,0 +1,48 @@
1
+ export declare const emitWarningIfUnsupportedVersion: symbol;
2
+ export declare const state: symbol;
3
+ export { getLongPollPlugin } from "./longPollMiddleware";
4
+ export { setCredentialFeature } from "./setCredentialFeature";
5
+ export { setFeature } from "./setFeature";
6
+ export { setTokenFeature } from "./setTokenFeature";
7
+ export { hostHeaderMiddleware, hostHeaderMiddlewareOptions, getHostHeaderPlugin, resolveHostHeaderConfig, } from "./middleware-host-header/hostHeaderMiddleware";
8
+ export type { HostHeaderInputConfig, HostHeaderResolvedConfig } from "./middleware-host-header/hostHeaderMiddleware";
9
+ export { loggerMiddleware, loggerMiddlewareOptions, getLoggerPlugin } from "./middleware-logger/loggerMiddleware";
10
+ export { recursionDetectionMiddlewareOptions } from "./middleware-recursion-detection/configuration";
11
+ export { getRecursionDetectionPlugin } from "./middleware-recursion-detection/getRecursionDetectionPlugin.browser";
12
+ export { recursionDetectionMiddleware } from "./middleware-recursion-detection/recursionDetectionMiddleware.native";
13
+ export { DEFAULT_UA_APP_ID, resolveUserAgentConfig } from "./middleware-user-agent/configurations";
14
+ export type { UserAgentInputConfig, UserAgentResolvedConfig } from "./middleware-user-agent/configurations";
15
+ export { userAgentMiddleware, getUserAgentMiddlewareOptions, getUserAgentPlugin, } from "./middleware-user-agent/user-agent-middleware";
16
+ export { createDefaultUserAgentProvider, defaultUserAgent } from "./util-user-agent-browser/defaultUserAgent.native";
17
+ export declare const crtAvailability: symbol;
18
+ export type { DefaultUserAgentOptions, PreviouslyResolved } from "./util-user-agent-node/defaultUserAgent";
19
+ export declare const NODE_APP_ID_CONFIG_OPTIONS: symbol;
20
+ export declare const UA_APP_ID_ENV_NAME: symbol;
21
+ export declare const UA_APP_ID_INI_NAME: symbol;
22
+ export { fallback } from "./util-user-agent-browser/defaultUserAgent";
23
+ export { createUserAgentStringParsingProvider } from "./util-user-agent-browser/createUserAgentStringParsingProvider";
24
+ export { awsEndpointFunctions } from "./util-endpoints/aws";
25
+ export { resolveEndpoint } from "./util-endpoints/resolveEndpoint";
26
+ export { resolveDefaultAwsRegionalEndpointsConfig, toEndpointV1, } from "./util-endpoints/resolveDefaultAwsRegionalEndpointsConfig";
27
+ export type { DefaultAwsRegionalEndpointsInputConfig, DefaultAwsRegionalEndpointsResolvedConfig, } from "./util-endpoints/resolveDefaultAwsRegionalEndpointsConfig";
28
+ export { isIpAddress } from "./util-endpoints/lib/isIpAddress";
29
+ export { isVirtualHostableS3Bucket } from "./util-endpoints/lib/aws/isVirtualHostableS3Bucket";
30
+ export { parseArn } from "./util-endpoints/lib/aws/parseArn";
31
+ export { partition, setPartitionInfo, useDefaultPartitionInfo, getUserAgentPrefix, } from "./util-endpoints/lib/aws/partition";
32
+ export type { PartitionsInfo } from "./util-endpoints/lib/aws/partition";
33
+ export { EndpointError } from "./util-endpoints/types/EndpointError";
34
+ export { EndpointObjectProperties, EndpointObjectHeaders, EndpointObject, EndpointRuleObject, } from "./util-endpoints/types/EndpointRuleObject";
35
+ export { ErrorRuleObject } from "./util-endpoints/types/ErrorRuleObject";
36
+ export { RuleSetRules, TreeRuleObject } from "./util-endpoints/types/TreeRuleObject";
37
+ export { DeprecatedObject, ParameterObject, RuleSetObject } from "./util-endpoints/types/RuleSetObject";
38
+ export { ReferenceObject, FunctionObject, FunctionArgv, FunctionReturn, ConditionObject, Expression, EndpointParams, EndpointResolverOptions, ReferenceRecord, EvaluateOptions, } from "./util-endpoints/types/shared";
39
+ export declare const REGION_ENV_NAME: symbol;
40
+ export declare const REGION_INI_NAME: symbol;
41
+ export declare const NODE_REGION_CONFIG_OPTIONS: symbol;
42
+ export declare const NODE_REGION_CONFIG_FILE_OPTIONS: symbol;
43
+ export { resolveRegionConfig } from "./region-config-resolver/awsRegionConfig";
44
+ export type { RegionInputConfig, RegionResolvedConfig } from "./region-config-resolver/awsRegionConfig";
45
+ export { stsRegionDefaultResolver } from "./region-config-resolver/stsRegionDefaultResolver.native";
46
+ export declare const stsRegionWarning: symbol;
47
+ export { getAwsRegionExtensionConfiguration, resolveAwsRegionExtensionConfiguration, } from "./region-config-resolver/extensions";
48
+ export type { RegionExtensionRuntimeConfigType } from "./region-config-resolver/extensions";
@@ -0,0 +1,35 @@
1
+ import type { AbsoluteLocation, BuildHandlerOptions, BuildMiddleware, Pluggable, RequestHandler } from "@smithy/types";
2
+ /**
3
+ * @public
4
+ */
5
+ export interface HostHeaderInputConfig {
6
+ }
7
+ interface PreviouslyResolved {
8
+ requestHandler: RequestHandler<any, any>;
9
+ }
10
+ /**
11
+ * @internal
12
+ */
13
+ export interface HostHeaderResolvedConfig {
14
+ /**
15
+ * The HTTP handler to use. Fetch in browser and Https in Nodejs.
16
+ */
17
+ requestHandler: RequestHandler<any, any>;
18
+ }
19
+ /**
20
+ * @internal
21
+ */
22
+ export declare function resolveHostHeaderConfig<T>(input: T & PreviouslyResolved & HostHeaderInputConfig): T & HostHeaderResolvedConfig;
23
+ /**
24
+ * @internal
25
+ */
26
+ export declare const hostHeaderMiddleware: <Input extends object, Output extends object>(options: HostHeaderResolvedConfig) => BuildMiddleware<Input, Output>;
27
+ /**
28
+ * @internal
29
+ */
30
+ export declare const hostHeaderMiddlewareOptions: BuildHandlerOptions & AbsoluteLocation;
31
+ /**
32
+ * @internal
33
+ */
34
+ export declare const getHostHeaderPlugin: (options: HostHeaderResolvedConfig) => Pluggable<any, any>;
35
+ export {};
@@ -0,0 +1,4 @@
1
+ import type { AbsoluteLocation, HandlerExecutionContext, InitializeHandler, InitializeHandlerOptions, MetadataBearer, Pluggable } from "@smithy/types";
2
+ export declare const loggerMiddleware: () => <Output extends MetadataBearer = MetadataBearer>(next: InitializeHandler<any, Output>, context: HandlerExecutionContext) => InitializeHandler<any, Output>;
3
+ export declare const loggerMiddlewareOptions: InitializeHandlerOptions & AbsoluteLocation;
4
+ export declare const getLoggerPlugin: (options: any) => Pluggable<any, any>;
@@ -0,0 +1,5 @@
1
+ import type { AbsoluteLocation, BuildHandlerOptions } from "@smithy/types";
2
+ /**
3
+ * @internal
4
+ */
5
+ export declare const recursionDetectionMiddlewareOptions: BuildHandlerOptions & AbsoluteLocation;
@@ -0,0 +1,5 @@
1
+ import type { Pluggable } from "@smithy/types";
2
+ /**
3
+ * @internal
4
+ */
5
+ export declare const getRecursionDetectionPlugin: (options: any) => Pluggable<any, any>;
@@ -0,0 +1,5 @@
1
+ import type { Pluggable } from "@smithy/types";
2
+ /**
3
+ * @internal
4
+ */
5
+ export declare const getRecursionDetectionPlugin: (options: any) => Pluggable<any, any>;
@@ -0,0 +1,6 @@
1
+ import type { BuildMiddleware } from "@smithy/types";
2
+ /**
3
+ * No-op middleware for runtimes outside of Node.js
4
+ * @internal
5
+ */
6
+ export declare const recursionDetectionMiddleware: () => BuildMiddleware<any, any>;
@@ -0,0 +1,6 @@
1
+ import type { BuildMiddleware } from "@smithy/types";
2
+ /**
3
+ * Inject to trace ID to request header to detect recursion invocation in Lambda.
4
+ * @internal
5
+ */
6
+ export declare const recursionDetectionMiddleware: () => BuildMiddleware<any, any>;
@@ -0,0 +1,6 @@
1
+ import type { BuildMiddleware } from "@smithy/types";
2
+ /**
3
+ * No-op middleware for runtimes outside of Node.js
4
+ * @internal
5
+ */
6
+ export declare const recursionDetectionMiddleware: () => BuildMiddleware<any, any>;
@@ -0,0 +1,20 @@
1
+ import type { AccountIdEndpointMode } from "@aws-sdk/core/account-id-endpoint";
2
+ import type { AwsHandlerExecutionContext } from "@aws-sdk/types";
3
+ import type { AwsCredentialIdentityProvider, BuildHandlerArguments, Provider } from "@smithy/types";
4
+ /**
5
+ * @internal
6
+ */
7
+ type PreviouslyResolved = Partial<{
8
+ credentials?: AwsCredentialIdentityProvider;
9
+ accountIdEndpointMode?: Provider<AccountIdEndpointMode>;
10
+ retryStrategy?: Provider<{
11
+ mode?: string;
12
+ }>;
13
+ }>;
14
+ /**
15
+ * @internal
16
+ * Check for features that don't have a middleware activation site but
17
+ * may be detected on the context, client config, or request.
18
+ */
19
+ export declare function checkFeatures(context: AwsHandlerExecutionContext, config: PreviouslyResolved, args: BuildHandlerArguments<any>): Promise<void>;
20
+ export {};
@@ -0,0 +1,44 @@
1
+ import type { Logger, Provider, UserAgent } from "@smithy/types";
2
+ /**
3
+ * @internal
4
+ */
5
+ export declare const DEFAULT_UA_APP_ID: undefined;
6
+ /**
7
+ * @public
8
+ */
9
+ export interface UserAgentInputConfig {
10
+ /**
11
+ * The custom user agent header that would be appended to default one
12
+ */
13
+ customUserAgent?: string | UserAgent;
14
+ /**
15
+ * The application ID used to identify the application.
16
+ */
17
+ userAgentAppId?: string | undefined | Provider<string | undefined>;
18
+ }
19
+ interface PreviouslyResolved {
20
+ defaultUserAgentProvider: Provider<UserAgent>;
21
+ runtime: string;
22
+ logger?: Logger;
23
+ }
24
+ export interface UserAgentResolvedConfig {
25
+ /**
26
+ * The provider populating default tracking information to be sent with `user-agent`, `x-amz-user-agent` header.
27
+ * @internal
28
+ */
29
+ defaultUserAgentProvider: Provider<UserAgent>;
30
+ /**
31
+ * The custom user agent header that would be appended to default one
32
+ */
33
+ customUserAgent?: UserAgent;
34
+ /**
35
+ * The runtime environment
36
+ */
37
+ runtime: string;
38
+ /**
39
+ * Resolved value for input config {config.userAgentAppId}
40
+ */
41
+ userAgentAppId: Provider<string | undefined>;
42
+ }
43
+ export declare function resolveUserAgentConfig<T>(input: T & PreviouslyResolved & UserAgentInputConfig): T & UserAgentResolvedConfig;
44
+ export {};
@@ -0,0 +1,7 @@
1
+ export declare const USER_AGENT = "user-agent";
2
+ export declare const X_AMZ_USER_AGENT = "x-amz-user-agent";
3
+ export declare const SPACE = " ";
4
+ export declare const UA_NAME_SEPARATOR = "/";
5
+ export declare const UA_NAME_ESCAPE_REGEX: RegExp;
6
+ export declare const UA_VALUE_ESCAPE_REGEX: RegExp;
7
+ export declare const UA_ESCAPE_CHAR = "-";
@@ -0,0 +1,5 @@
1
+ import type { AwsSdkFeatures } from "@aws-sdk/types";
2
+ /**
3
+ * @internal
4
+ */
5
+ export declare function encodeFeatures(features: AwsSdkFeatures): string;