diff --git a/clients/client-accessanalyzer/src/AccessAnalyzerClient.ts b/clients/client-accessanalyzer/src/AccessAnalyzerClient.ts index 36975bc48f50b..79a53161f4830 100644 --- a/clients/client-accessanalyzer/src/AccessAnalyzerClient.ts +++ b/clients/client-accessanalyzer/src/AccessAnalyzerClient.ts @@ -245,6 +245,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-accessanalyzer/src/endpoints.ts b/clients/client-accessanalyzer/src/endpoints.ts index 487beabc6c6ad..0e6190851fe70 100644 --- a/clients/client-accessanalyzer/src/endpoints.ts +++ b/clients/client-accessanalyzer/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-ca-central-1": { @@ -87,7 +87,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "access-analyzer", diff --git a/clients/client-accessanalyzer/src/runtimeConfig.browser.ts b/clients/client-accessanalyzer/src/runtimeConfig.browser.ts index 520e198ca4aea..d518edbbddfff 100644 --- a/clients/client-accessanalyzer/src/runtimeConfig.browser.ts +++ b/clients/client-accessanalyzer/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: AccessAnalyzerClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-accessanalyzer/src/runtimeConfig.ts b/clients/client-accessanalyzer/src/runtimeConfig.ts index 5bd046aaa70d1..b496cb62535c0 100644 --- a/clients/client-accessanalyzer/src/runtimeConfig.ts +++ b/clients/client-accessanalyzer/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: AccessAnalyzerClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-account/src/AccountClient.ts b/clients/client-account/src/AccountClient.ts index 29bb05885049f..154baaa2bc427 100644 --- a/clients/client-account/src/AccountClient.ts +++ b/clients/client-account/src/AccountClient.ts @@ -155,6 +155,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-account/src/endpoints.ts b/clients/client-account/src/endpoints.ts index 4b678778fc7b7..c93574f9b789b 100644 --- a/clients/client-account/src/endpoints.ts +++ b/clients/client-account/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "aws-cn-global": { @@ -63,7 +63,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "account", diff --git a/clients/client-account/src/runtimeConfig.browser.ts b/clients/client-account/src/runtimeConfig.browser.ts index 685ffeb176931..2d0eb68fcd760 100644 --- a/clients/client-account/src/runtimeConfig.browser.ts +++ b/clients/client-account/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: AccountClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-account/src/runtimeConfig.ts b/clients/client-account/src/runtimeConfig.ts index 01170102c0547..a2e7f54e55730 100644 --- a/clients/client-account/src/runtimeConfig.ts +++ b/clients/client-account/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: AccountClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-acm-pca/src/ACMPCAClient.ts b/clients/client-acm-pca/src/ACMPCAClient.ts index 54794828b1e7b..0145896bfafa3 100644 --- a/clients/client-acm-pca/src/ACMPCAClient.ts +++ b/clients/client-acm-pca/src/ACMPCAClient.ts @@ -245,6 +245,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-acm-pca/src/endpoints.ts b/clients/client-acm-pca/src/endpoints.ts index 81f5c1676c1ee..6b8d92b747006 100644 --- a/clients/client-acm-pca/src/endpoints.ts +++ b/clients/client-acm-pca/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-ca-central-1": { @@ -87,7 +87,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "acm-pca", diff --git a/clients/client-acm-pca/src/runtimeConfig.browser.ts b/clients/client-acm-pca/src/runtimeConfig.browser.ts index 9d68d81d1f88e..005529787e9b6 100644 --- a/clients/client-acm-pca/src/runtimeConfig.browser.ts +++ b/clients/client-acm-pca/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ACMPCAClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-acm-pca/src/runtimeConfig.ts b/clients/client-acm-pca/src/runtimeConfig.ts index 7093e9a7247b6..bafa81ccd7bc8 100644 --- a/clients/client-acm-pca/src/runtimeConfig.ts +++ b/clients/client-acm-pca/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ACMPCAClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-acm/src/ACMClient.ts b/clients/client-acm/src/ACMClient.ts index 1362e26237345..a3bbead5202c2 100644 --- a/clients/client-acm/src/ACMClient.ts +++ b/clients/client-acm/src/ACMClient.ts @@ -206,6 +206,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-acm/src/endpoints.ts b/clients/client-acm/src/endpoints.ts index 81cb8b1f0ec84..db4fdce82be03 100644 --- a/clients/client-acm/src/endpoints.ts +++ b/clients/client-acm/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "ca-central-1-fips": { @@ -87,7 +87,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "acm", diff --git a/clients/client-acm/src/runtimeConfig.browser.ts b/clients/client-acm/src/runtimeConfig.browser.ts index be0ae36723377..2017144d369c5 100644 --- a/clients/client-acm/src/runtimeConfig.browser.ts +++ b/clients/client-acm/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ACMClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-acm/src/runtimeConfig.ts b/clients/client-acm/src/runtimeConfig.ts index 56837bccf6455..dfadda2039ab9 100644 --- a/clients/client-acm/src/runtimeConfig.ts +++ b/clients/client-acm/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ACMClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-alexa-for-business/src/AlexaForBusinessClient.ts b/clients/client-alexa-for-business/src/AlexaForBusinessClient.ts index e3ed3cdd1d1c8..f500905d33812 100644 --- a/clients/client-alexa-for-business/src/AlexaForBusinessClient.ts +++ b/clients/client-alexa-for-business/src/AlexaForBusinessClient.ts @@ -533,6 +533,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-alexa-for-business/src/endpoints.ts b/clients/client-alexa-for-business/src/endpoints.ts index dfb03b3501f82..312316dc95e95 100644 --- a/clients/client-alexa-for-business/src/endpoints.ts +++ b/clients/client-alexa-for-business/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "a4b", diff --git a/clients/client-alexa-for-business/src/runtimeConfig.browser.ts b/clients/client-alexa-for-business/src/runtimeConfig.browser.ts index e258fae76aa25..f562d287da5f5 100644 --- a/clients/client-alexa-for-business/src/runtimeConfig.browser.ts +++ b/clients/client-alexa-for-business/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: AlexaForBusinessClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-alexa-for-business/src/runtimeConfig.ts b/clients/client-alexa-for-business/src/runtimeConfig.ts index e7ecf121b04a7..009c9ea7f120e 100644 --- a/clients/client-alexa-for-business/src/runtimeConfig.ts +++ b/clients/client-alexa-for-business/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: AlexaForBusinessClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-amp/src/AmpClient.ts b/clients/client-amp/src/AmpClient.ts index db7baf48880f7..17a980bb64ba3 100644 --- a/clients/client-amp/src/AmpClient.ts +++ b/clients/client-amp/src/AmpClient.ts @@ -221,6 +221,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-amp/src/endpoints.ts b/clients/client-amp/src/endpoints.ts index 7a114a225547a..bed7fdb856814 100644 --- a/clients/client-amp/src/endpoints.ts +++ b/clients/client-amp/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "aps", diff --git a/clients/client-amp/src/runtimeConfig.browser.ts b/clients/client-amp/src/runtimeConfig.browser.ts index 2a761d1c4b524..ebfb8002051f9 100644 --- a/clients/client-amp/src/runtimeConfig.browser.ts +++ b/clients/client-amp/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: AmpClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-amp/src/runtimeConfig.ts b/clients/client-amp/src/runtimeConfig.ts index bf81c833c473b..f6b42dc751795 100644 --- a/clients/client-amp/src/runtimeConfig.ts +++ b/clients/client-amp/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: AmpClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-amplify/src/AmplifyClient.ts b/clients/client-amplify/src/AmplifyClient.ts index d665c679c9cad..29c24e7cc7458 100644 --- a/clients/client-amplify/src/AmplifyClient.ts +++ b/clients/client-amplify/src/AmplifyClient.ts @@ -278,6 +278,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-amplify/src/endpoints.ts b/clients/client-amplify/src/endpoints.ts index 5401279d67f4b..f79e5caa8ea47 100644 --- a/clients/client-amplify/src/endpoints.ts +++ b/clients/client-amplify/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "amplify", diff --git a/clients/client-amplify/src/runtimeConfig.browser.ts b/clients/client-amplify/src/runtimeConfig.browser.ts index 2233408ae847a..838061ce6a426 100644 --- a/clients/client-amplify/src/runtimeConfig.browser.ts +++ b/clients/client-amplify/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: AmplifyClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-amplify/src/runtimeConfig.ts b/clients/client-amplify/src/runtimeConfig.ts index fa694b3c40436..789cdbea15582 100644 --- a/clients/client-amplify/src/runtimeConfig.ts +++ b/clients/client-amplify/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: AmplifyClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-amplifybackend/src/AmplifyBackendClient.ts b/clients/client-amplifybackend/src/AmplifyBackendClient.ts index b4ef0d0bf603e..cbaa545581599 100644 --- a/clients/client-amplifybackend/src/AmplifyBackendClient.ts +++ b/clients/client-amplifybackend/src/AmplifyBackendClient.ts @@ -227,6 +227,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-amplifybackend/src/endpoints.ts b/clients/client-amplifybackend/src/endpoints.ts index 471b1c49372be..5cbe440e1420c 100644 --- a/clients/client-amplifybackend/src/endpoints.ts +++ b/clients/client-amplifybackend/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "amplifybackend", diff --git a/clients/client-amplifybackend/src/runtimeConfig.browser.ts b/clients/client-amplifybackend/src/runtimeConfig.browser.ts index 18352498d100a..6b41937f1d9ae 100644 --- a/clients/client-amplifybackend/src/runtimeConfig.browser.ts +++ b/clients/client-amplifybackend/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: AmplifyBackendClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-amplifybackend/src/runtimeConfig.ts b/clients/client-amplifybackend/src/runtimeConfig.ts index a37665e485a0d..6c0fdc96782f2 100644 --- a/clients/client-amplifybackend/src/runtimeConfig.ts +++ b/clients/client-amplifybackend/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: AmplifyBackendClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-api-gateway/src/APIGatewayClient.ts b/clients/client-api-gateway/src/APIGatewayClient.ts index 900c1ec435389..a37cb94f7ca58 100644 --- a/clients/client-api-gateway/src/APIGatewayClient.ts +++ b/clients/client-api-gateway/src/APIGatewayClient.ts @@ -606,6 +606,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-api-gateway/src/endpoints.ts b/clients/client-api-gateway/src/endpoints.ts index 82c8d93f071d0..d3b2a173eb4a3 100644 --- a/clients/client-api-gateway/src/endpoints.ts +++ b/clients/client-api-gateway/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "apigateway", diff --git a/clients/client-api-gateway/src/runtimeConfig.browser.ts b/clients/client-api-gateway/src/runtimeConfig.browser.ts index 488660b38f84b..a6a3f0630e5a4 100644 --- a/clients/client-api-gateway/src/runtimeConfig.browser.ts +++ b/clients/client-api-gateway/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: APIGatewayClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-api-gateway/src/runtimeConfig.ts b/clients/client-api-gateway/src/runtimeConfig.ts index 53a03a6f552b7..5177a0449c57b 100644 --- a/clients/client-api-gateway/src/runtimeConfig.ts +++ b/clients/client-api-gateway/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: APIGatewayClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-apigatewaymanagementapi/src/ApiGatewayManagementApiClient.ts b/clients/client-apigatewaymanagementapi/src/ApiGatewayManagementApiClient.ts index 3bbdbf2803efc..48b7a286a872a 100644 --- a/clients/client-apigatewaymanagementapi/src/ApiGatewayManagementApiClient.ts +++ b/clients/client-apigatewaymanagementapi/src/ApiGatewayManagementApiClient.ts @@ -143,6 +143,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-apigatewaymanagementapi/src/endpoints.ts b/clients/client-apigatewaymanagementapi/src/endpoints.ts index 5ce5cb67cf347..2a1bee1c6fa6c 100644 --- a/clients/client-apigatewaymanagementapi/src/endpoints.ts +++ b/clients/client-apigatewaymanagementapi/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "execute-api", diff --git a/clients/client-apigatewaymanagementapi/src/runtimeConfig.browser.ts b/clients/client-apigatewaymanagementapi/src/runtimeConfig.browser.ts index 4d8f7920a8020..6dc6fa5a8b709 100644 --- a/clients/client-apigatewaymanagementapi/src/runtimeConfig.browser.ts +++ b/clients/client-apigatewaymanagementapi/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ApiGatewayManagementApiClientConfig) => retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-apigatewaymanagementapi/src/runtimeConfig.ts b/clients/client-apigatewaymanagementapi/src/runtimeConfig.ts index 67a6cd62799a0..ec30596c60866 100644 --- a/clients/client-apigatewaymanagementapi/src/runtimeConfig.ts +++ b/clients/client-apigatewaymanagementapi/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ApiGatewayManagementApiClientConfig) => retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-apigatewayv2/src/ApiGatewayV2Client.ts b/clients/client-apigatewayv2/src/ApiGatewayV2Client.ts index 4a30b82c2f416..3c9f448368c97 100644 --- a/clients/client-apigatewayv2/src/ApiGatewayV2Client.ts +++ b/clients/client-apigatewayv2/src/ApiGatewayV2Client.ts @@ -392,6 +392,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-apigatewayv2/src/endpoints.ts b/clients/client-apigatewayv2/src/endpoints.ts index 82c8d93f071d0..d3b2a173eb4a3 100644 --- a/clients/client-apigatewayv2/src/endpoints.ts +++ b/clients/client-apigatewayv2/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "apigateway", diff --git a/clients/client-apigatewayv2/src/runtimeConfig.browser.ts b/clients/client-apigatewayv2/src/runtimeConfig.browser.ts index 1685be6afcf9c..a67e55c95a19b 100644 --- a/clients/client-apigatewayv2/src/runtimeConfig.browser.ts +++ b/clients/client-apigatewayv2/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ApiGatewayV2ClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-apigatewayv2/src/runtimeConfig.ts b/clients/client-apigatewayv2/src/runtimeConfig.ts index 11b4c08268560..04e60e51428ba 100644 --- a/clients/client-apigatewayv2/src/runtimeConfig.ts +++ b/clients/client-apigatewayv2/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ApiGatewayV2ClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-app-mesh/src/AppMeshClient.ts b/clients/client-app-mesh/src/AppMeshClient.ts index e4453fbfaf8ce..0e7e854847469 100644 --- a/clients/client-app-mesh/src/AppMeshClient.ts +++ b/clients/client-app-mesh/src/AppMeshClient.ts @@ -302,6 +302,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-app-mesh/src/endpoints.ts b/clients/client-app-mesh/src/endpoints.ts index e224066247b51..db0abc8e83520 100644 --- a/clients/client-app-mesh/src/endpoints.ts +++ b/clients/client-app-mesh/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "appmesh", diff --git a/clients/client-app-mesh/src/runtimeConfig.browser.ts b/clients/client-app-mesh/src/runtimeConfig.browser.ts index 4bdff5208dd90..903fceccb3a8d 100644 --- a/clients/client-app-mesh/src/runtimeConfig.browser.ts +++ b/clients/client-app-mesh/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: AppMeshClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-app-mesh/src/runtimeConfig.ts b/clients/client-app-mesh/src/runtimeConfig.ts index a94f077ba0e57..dfd0428b892e7 100644 --- a/clients/client-app-mesh/src/runtimeConfig.ts +++ b/clients/client-app-mesh/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: AppMeshClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-appconfig/src/AppConfigClient.ts b/clients/client-appconfig/src/AppConfigClient.ts index d811b3dd7cd16..2e5adb51fd3f3 100644 --- a/clients/client-appconfig/src/AppConfigClient.ts +++ b/clients/client-appconfig/src/AppConfigClient.ts @@ -284,6 +284,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-appconfig/src/endpoints.ts b/clients/client-appconfig/src/endpoints.ts index 88c9e789a61ce..6826ebf5d1d51 100644 --- a/clients/client-appconfig/src/endpoints.ts +++ b/clients/client-appconfig/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "appconfig", diff --git a/clients/client-appconfig/src/runtimeConfig.browser.ts b/clients/client-appconfig/src/runtimeConfig.browser.ts index d4f3d29adf9a5..f7f4c7c843044 100644 --- a/clients/client-appconfig/src/runtimeConfig.browser.ts +++ b/clients/client-appconfig/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: AppConfigClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-appconfig/src/runtimeConfig.ts b/clients/client-appconfig/src/runtimeConfig.ts index 4acca9ccf541d..c8d69aee6e79b 100644 --- a/clients/client-appconfig/src/runtimeConfig.ts +++ b/clients/client-appconfig/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: AppConfigClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-appflow/src/AppflowClient.ts b/clients/client-appflow/src/AppflowClient.ts index 6cc053f2fdf76..c6657fa6154f5 100644 --- a/clients/client-appflow/src/AppflowClient.ts +++ b/clients/client-appflow/src/AppflowClient.ts @@ -215,6 +215,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-appflow/src/endpoints.ts b/clients/client-appflow/src/endpoints.ts index 1e67a005ae12f..c683cd88bb8d8 100644 --- a/clients/client-appflow/src/endpoints.ts +++ b/clients/client-appflow/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "appflow", diff --git a/clients/client-appflow/src/runtimeConfig.browser.ts b/clients/client-appflow/src/runtimeConfig.browser.ts index 80fc2e4d5a645..03419574e44b5 100644 --- a/clients/client-appflow/src/runtimeConfig.browser.ts +++ b/clients/client-appflow/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: AppflowClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-appflow/src/runtimeConfig.ts b/clients/client-appflow/src/runtimeConfig.ts index 2f8980c7346dd..0119239b562a0 100644 --- a/clients/client-appflow/src/runtimeConfig.ts +++ b/clients/client-appflow/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: AppflowClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-appintegrations/src/AppIntegrationsClient.ts b/clients/client-appintegrations/src/AppIntegrationsClient.ts index 3944f078c269b..813d737ccc4ec 100644 --- a/clients/client-appintegrations/src/AppIntegrationsClient.ts +++ b/clients/client-appintegrations/src/AppIntegrationsClient.ts @@ -218,6 +218,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-appintegrations/src/endpoints.ts b/clients/client-appintegrations/src/endpoints.ts index 011537b5e9499..8f62762616958 100644 --- a/clients/client-appintegrations/src/endpoints.ts +++ b/clients/client-appintegrations/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "app-integrations", diff --git a/clients/client-appintegrations/src/runtimeConfig.browser.ts b/clients/client-appintegrations/src/runtimeConfig.browser.ts index d96cbe313a16e..63a3536037d3c 100644 --- a/clients/client-appintegrations/src/runtimeConfig.browser.ts +++ b/clients/client-appintegrations/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: AppIntegrationsClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-appintegrations/src/runtimeConfig.ts b/clients/client-appintegrations/src/runtimeConfig.ts index cd217b493ed40..ddbae2dde210e 100644 --- a/clients/client-appintegrations/src/runtimeConfig.ts +++ b/clients/client-appintegrations/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: AppIntegrationsClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-application-auto-scaling/src/ApplicationAutoScalingClient.ts b/clients/client-application-auto-scaling/src/ApplicationAutoScalingClient.ts index 3dbc921238a15..13c698aeb0ab5 100644 --- a/clients/client-application-auto-scaling/src/ApplicationAutoScalingClient.ts +++ b/clients/client-application-auto-scaling/src/ApplicationAutoScalingClient.ts @@ -191,6 +191,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-application-auto-scaling/src/endpoints.ts b/clients/client-application-auto-scaling/src/endpoints.ts index 63dbcaeceb556..48f574d26417c 100644 --- a/clients/client-application-auto-scaling/src/endpoints.ts +++ b/clients/client-application-auto-scaling/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "application-autoscaling", diff --git a/clients/client-application-auto-scaling/src/runtimeConfig.browser.ts b/clients/client-application-auto-scaling/src/runtimeConfig.browser.ts index ea4698566ae17..46608db240f4d 100644 --- a/clients/client-application-auto-scaling/src/runtimeConfig.browser.ts +++ b/clients/client-application-auto-scaling/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ApplicationAutoScalingClientConfig) => retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-application-auto-scaling/src/runtimeConfig.ts b/clients/client-application-auto-scaling/src/runtimeConfig.ts index fe1feb4ccb2b2..2296900e8d5ac 100644 --- a/clients/client-application-auto-scaling/src/runtimeConfig.ts +++ b/clients/client-application-auto-scaling/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ApplicationAutoScalingClientConfig) => retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-application-discovery-service/src/ApplicationDiscoveryServiceClient.ts b/clients/client-application-discovery-service/src/ApplicationDiscoveryServiceClient.ts index 23a60bf9bd54c..98afd44a04df2 100644 --- a/clients/client-application-discovery-service/src/ApplicationDiscoveryServiceClient.ts +++ b/clients/client-application-discovery-service/src/ApplicationDiscoveryServiceClient.ts @@ -257,6 +257,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-application-discovery-service/src/endpoints.ts b/clients/client-application-discovery-service/src/endpoints.ts index dc271502929e5..25377a553723a 100644 --- a/clients/client-application-discovery-service/src/endpoints.ts +++ b/clients/client-application-discovery-service/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "discovery", diff --git a/clients/client-application-discovery-service/src/runtimeConfig.browser.ts b/clients/client-application-discovery-service/src/runtimeConfig.browser.ts index 06313d5b8a41d..23c31806a9691 100644 --- a/clients/client-application-discovery-service/src/runtimeConfig.browser.ts +++ b/clients/client-application-discovery-service/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ApplicationDiscoveryServiceClientConfig retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-application-discovery-service/src/runtimeConfig.ts b/clients/client-application-discovery-service/src/runtimeConfig.ts index a57d0c7aaccc0..5f1229c3ed5e5 100644 --- a/clients/client-application-discovery-service/src/runtimeConfig.ts +++ b/clients/client-application-discovery-service/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ApplicationDiscoveryServiceClientConfig retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-application-insights/src/ApplicationInsightsClient.ts b/clients/client-application-insights/src/ApplicationInsightsClient.ts index bb1b47826758c..52c9115e1348a 100644 --- a/clients/client-application-insights/src/ApplicationInsightsClient.ts +++ b/clients/client-application-insights/src/ApplicationInsightsClient.ts @@ -242,6 +242,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-application-insights/src/endpoints.ts b/clients/client-application-insights/src/endpoints.ts index dae12612bd6e6..172b4909ce429 100644 --- a/clients/client-application-insights/src/endpoints.ts +++ b/clients/client-application-insights/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "us-gov-east-1": { @@ -62,7 +62,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "applicationinsights", diff --git a/clients/client-application-insights/src/runtimeConfig.browser.ts b/clients/client-application-insights/src/runtimeConfig.browser.ts index a4fde9a9f6d87..80de27da567e1 100644 --- a/clients/client-application-insights/src/runtimeConfig.browser.ts +++ b/clients/client-application-insights/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ApplicationInsightsClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-application-insights/src/runtimeConfig.ts b/clients/client-application-insights/src/runtimeConfig.ts index bc57db443b5f7..3b0086f0496d5 100644 --- a/clients/client-application-insights/src/runtimeConfig.ts +++ b/clients/client-application-insights/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ApplicationInsightsClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-applicationcostprofiler/src/ApplicationCostProfilerClient.ts b/clients/client-applicationcostprofiler/src/ApplicationCostProfilerClient.ts index 21c6e47308ce1..889c5d5ebd3ef 100644 --- a/clients/client-applicationcostprofiler/src/ApplicationCostProfilerClient.ts +++ b/clients/client-applicationcostprofiler/src/ApplicationCostProfilerClient.ts @@ -173,6 +173,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-applicationcostprofiler/src/endpoints.ts b/clients/client-applicationcostprofiler/src/endpoints.ts index 3f05a7f56078c..e6d1f1d99102b 100644 --- a/clients/client-applicationcostprofiler/src/endpoints.ts +++ b/clients/client-applicationcostprofiler/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "application-cost-profiler", diff --git a/clients/client-applicationcostprofiler/src/runtimeConfig.browser.ts b/clients/client-applicationcostprofiler/src/runtimeConfig.browser.ts index 2d944fa7c10c1..be36fe3dea200 100644 --- a/clients/client-applicationcostprofiler/src/runtimeConfig.browser.ts +++ b/clients/client-applicationcostprofiler/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ApplicationCostProfilerClientConfig) => retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-applicationcostprofiler/src/runtimeConfig.ts b/clients/client-applicationcostprofiler/src/runtimeConfig.ts index ff55b1691b648..2c46404768e9a 100644 --- a/clients/client-applicationcostprofiler/src/runtimeConfig.ts +++ b/clients/client-applicationcostprofiler/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ApplicationCostProfilerClientConfig) => retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-apprunner/src/AppRunnerClient.ts b/clients/client-apprunner/src/AppRunnerClient.ts index 6705387f001ec..4bb0e9ca93127 100644 --- a/clients/client-apprunner/src/AppRunnerClient.ts +++ b/clients/client-apprunner/src/AppRunnerClient.ts @@ -227,6 +227,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-apprunner/src/endpoints.ts b/clients/client-apprunner/src/endpoints.ts index ced654b65aa6f..ad80ac1888b7b 100644 --- a/clients/client-apprunner/src/endpoints.ts +++ b/clients/client-apprunner/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "apprunner", diff --git a/clients/client-apprunner/src/runtimeConfig.browser.ts b/clients/client-apprunner/src/runtimeConfig.browser.ts index c7081a75b62ab..7753a45fdbb1f 100644 --- a/clients/client-apprunner/src/runtimeConfig.browser.ts +++ b/clients/client-apprunner/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: AppRunnerClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-apprunner/src/runtimeConfig.ts b/clients/client-apprunner/src/runtimeConfig.ts index 799061f35b5f8..4ef35ffcce906 100644 --- a/clients/client-apprunner/src/runtimeConfig.ts +++ b/clients/client-apprunner/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: AppRunnerClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-appstream/src/AppStreamClient.ts b/clients/client-appstream/src/AppStreamClient.ts index 7ae6fc9b71ecc..92de685b61e2c 100644 --- a/clients/client-appstream/src/AppStreamClient.ts +++ b/clients/client-appstream/src/AppStreamClient.ts @@ -335,6 +335,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-appstream/src/endpoints.ts b/clients/client-appstream/src/endpoints.ts index a007ac13ad8f6..c715246df1a39 100644 --- a/clients/client-appstream/src/endpoints.ts +++ b/clients/client-appstream/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { fips: { @@ -59,7 +59,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "appstream", diff --git a/clients/client-appstream/src/runtimeConfig.browser.ts b/clients/client-appstream/src/runtimeConfig.browser.ts index 4de2215fcb862..804d679a70a1d 100644 --- a/clients/client-appstream/src/runtimeConfig.browser.ts +++ b/clients/client-appstream/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: AppStreamClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-appstream/src/runtimeConfig.ts b/clients/client-appstream/src/runtimeConfig.ts index c625d3ee4c569..f28be44af1df3 100644 --- a/clients/client-appstream/src/runtimeConfig.ts +++ b/clients/client-appstream/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: AppStreamClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-appsync/src/AppSyncClient.ts b/clients/client-appsync/src/AppSyncClient.ts index 8fe2f56c066a3..bc5824483eec5 100644 --- a/clients/client-appsync/src/AppSyncClient.ts +++ b/clients/client-appsync/src/AppSyncClient.ts @@ -275,6 +275,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-appsync/src/endpoints.ts b/clients/client-appsync/src/endpoints.ts index dbf7426ab32b5..71fec4dc1b5d6 100644 --- a/clients/client-appsync/src/endpoints.ts +++ b/clients/client-appsync/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "appsync", diff --git a/clients/client-appsync/src/runtimeConfig.browser.ts b/clients/client-appsync/src/runtimeConfig.browser.ts index a139236711d97..3aa1ada180a73 100644 --- a/clients/client-appsync/src/runtimeConfig.browser.ts +++ b/clients/client-appsync/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: AppSyncClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-appsync/src/runtimeConfig.ts b/clients/client-appsync/src/runtimeConfig.ts index ad56c0fd46446..08369d2378909 100644 --- a/clients/client-appsync/src/runtimeConfig.ts +++ b/clients/client-appsync/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: AppSyncClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-athena/src/AthenaClient.ts b/clients/client-athena/src/AthenaClient.ts index 80ab8118e580b..2004f96c3ffd0 100644 --- a/clients/client-athena/src/AthenaClient.ts +++ b/clients/client-athena/src/AthenaClient.ts @@ -266,6 +266,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-athena/src/endpoints.ts b/clients/client-athena/src/endpoints.ts index ba6c118a6f84f..c05f4dfe1a716 100644 --- a/clients/client-athena/src/endpoints.ts +++ b/clients/client-athena/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "athena", diff --git a/clients/client-athena/src/runtimeConfig.browser.ts b/clients/client-athena/src/runtimeConfig.browser.ts index f9b8fdfbfcc9f..ca3e794dac973 100644 --- a/clients/client-athena/src/runtimeConfig.browser.ts +++ b/clients/client-athena/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: AthenaClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-athena/src/runtimeConfig.ts b/clients/client-athena/src/runtimeConfig.ts index e02cbb03aa539..3b82b1d815d84 100644 --- a/clients/client-athena/src/runtimeConfig.ts +++ b/clients/client-athena/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: AthenaClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-auditmanager/src/AuditManagerClient.ts b/clients/client-auditmanager/src/AuditManagerClient.ts index 4042010d5f24d..1cd8f39b30645 100644 --- a/clients/client-auditmanager/src/AuditManagerClient.ts +++ b/clients/client-auditmanager/src/AuditManagerClient.ts @@ -398,6 +398,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-auditmanager/src/endpoints.ts b/clients/client-auditmanager/src/endpoints.ts index 1b4719e37930c..7eb0ff43eb402 100644 --- a/clients/client-auditmanager/src/endpoints.ts +++ b/clients/client-auditmanager/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "auditmanager", diff --git a/clients/client-auditmanager/src/runtimeConfig.browser.ts b/clients/client-auditmanager/src/runtimeConfig.browser.ts index a4aab5f720068..93fdbe5cdd934 100644 --- a/clients/client-auditmanager/src/runtimeConfig.browser.ts +++ b/clients/client-auditmanager/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: AuditManagerClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-auditmanager/src/runtimeConfig.ts b/clients/client-auditmanager/src/runtimeConfig.ts index fe190504d28a6..7a5e7c56b18af 100644 --- a/clients/client-auditmanager/src/runtimeConfig.ts +++ b/clients/client-auditmanager/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: AuditManagerClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-auto-scaling-plans/src/AutoScalingPlansClient.ts b/clients/client-auto-scaling-plans/src/AutoScalingPlansClient.ts index d8a66cb3c29f3..61ecab8d8bc04 100644 --- a/clients/client-auto-scaling-plans/src/AutoScalingPlansClient.ts +++ b/clients/client-auto-scaling-plans/src/AutoScalingPlansClient.ts @@ -164,6 +164,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-auto-scaling-plans/src/endpoints.ts b/clients/client-auto-scaling-plans/src/endpoints.ts index 1b5d623df7d4f..212e18b7035bb 100644 --- a/clients/client-auto-scaling-plans/src/endpoints.ts +++ b/clients/client-auto-scaling-plans/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "autoscaling-plans", diff --git a/clients/client-auto-scaling-plans/src/runtimeConfig.browser.ts b/clients/client-auto-scaling-plans/src/runtimeConfig.browser.ts index 2f9208e5ba788..0081306693524 100644 --- a/clients/client-auto-scaling-plans/src/runtimeConfig.browser.ts +++ b/clients/client-auto-scaling-plans/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: AutoScalingPlansClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-auto-scaling-plans/src/runtimeConfig.ts b/clients/client-auto-scaling-plans/src/runtimeConfig.ts index 32c57c69e5cd4..00232380bba9c 100644 --- a/clients/client-auto-scaling-plans/src/runtimeConfig.ts +++ b/clients/client-auto-scaling-plans/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: AutoScalingPlansClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-auto-scaling/src/AutoScalingClient.ts b/clients/client-auto-scaling/src/AutoScalingClient.ts index b8fadfda239ec..1261b684af72e 100644 --- a/clients/client-auto-scaling/src/AutoScalingClient.ts +++ b/clients/client-auto-scaling/src/AutoScalingClient.ts @@ -446,6 +446,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-auto-scaling/src/endpoints.ts b/clients/client-auto-scaling/src/endpoints.ts index 8e9e423caa4df..a504848103d29 100644 --- a/clients/client-auto-scaling/src/endpoints.ts +++ b/clients/client-auto-scaling/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "autoscaling", diff --git a/clients/client-auto-scaling/src/runtimeConfig.browser.ts b/clients/client-auto-scaling/src/runtimeConfig.browser.ts index 5afe377243ae4..850a4c0f9ea1b 100644 --- a/clients/client-auto-scaling/src/runtimeConfig.browser.ts +++ b/clients/client-auto-scaling/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: AutoScalingClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-auto-scaling/src/runtimeConfig.ts b/clients/client-auto-scaling/src/runtimeConfig.ts index 16d604877c4fe..700d0e5b4ee7e 100644 --- a/clients/client-auto-scaling/src/runtimeConfig.ts +++ b/clients/client-auto-scaling/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: AutoScalingClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-backup/src/BackupClient.ts b/clients/client-backup/src/BackupClient.ts index 245728db3f361..743f65cffbdf6 100644 --- a/clients/client-backup/src/BackupClient.ts +++ b/clients/client-backup/src/BackupClient.ts @@ -428,6 +428,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-backup/src/endpoints.ts b/clients/client-backup/src/endpoints.ts index 8ecf3d5c948f8..4d8b1dd11c16e 100644 --- a/clients/client-backup/src/endpoints.ts +++ b/clients/client-backup/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "backup", diff --git a/clients/client-backup/src/runtimeConfig.browser.ts b/clients/client-backup/src/runtimeConfig.browser.ts index 214e372c9e86d..461a751acf404 100644 --- a/clients/client-backup/src/runtimeConfig.browser.ts +++ b/clients/client-backup/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: BackupClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-backup/src/runtimeConfig.ts b/clients/client-backup/src/runtimeConfig.ts index a70402002246a..445a9e11b0ecf 100644 --- a/clients/client-backup/src/runtimeConfig.ts +++ b/clients/client-backup/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: BackupClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-batch/src/BatchClient.ts b/clients/client-batch/src/BatchClient.ts index 2e1e0fab7901c..840600681ba96 100644 --- a/clients/client-batch/src/BatchClient.ts +++ b/clients/client-batch/src/BatchClient.ts @@ -218,6 +218,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-batch/src/endpoints.ts b/clients/client-batch/src/endpoints.ts index df4fe3075392d..3f3811b624c7b 100644 --- a/clients/client-batch/src/endpoints.ts +++ b/clients/client-batch/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "batch", diff --git a/clients/client-batch/src/runtimeConfig.browser.ts b/clients/client-batch/src/runtimeConfig.browser.ts index 5aeb30dfe87ee..ebab4971f910f 100644 --- a/clients/client-batch/src/runtimeConfig.browser.ts +++ b/clients/client-batch/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: BatchClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-batch/src/runtimeConfig.ts b/clients/client-batch/src/runtimeConfig.ts index a9af405d49bab..d52879264ea29 100644 --- a/clients/client-batch/src/runtimeConfig.ts +++ b/clients/client-batch/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: BatchClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-braket/src/BraketClient.ts b/clients/client-braket/src/BraketClient.ts index c8f975b8cdedc..a8548cd0ad8fc 100644 --- a/clients/client-braket/src/BraketClient.ts +++ b/clients/client-braket/src/BraketClient.ts @@ -167,6 +167,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-braket/src/endpoints.ts b/clients/client-braket/src/endpoints.ts index fd20212cb8ba2..bae22003b956f 100644 --- a/clients/client-braket/src/endpoints.ts +++ b/clients/client-braket/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "braket", diff --git a/clients/client-braket/src/runtimeConfig.browser.ts b/clients/client-braket/src/runtimeConfig.browser.ts index b9792bc59b458..9876a0103f7cb 100644 --- a/clients/client-braket/src/runtimeConfig.browser.ts +++ b/clients/client-braket/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: BraketClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-braket/src/runtimeConfig.ts b/clients/client-braket/src/runtimeConfig.ts index ffd6d1d48a252..10944080781cc 100644 --- a/clients/client-braket/src/runtimeConfig.ts +++ b/clients/client-braket/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: BraketClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-budgets/src/BudgetsClient.ts b/clients/client-budgets/src/BudgetsClient.ts index 8756ba1dcac65..19bb0db8ea334 100644 --- a/clients/client-budgets/src/BudgetsClient.ts +++ b/clients/client-budgets/src/BudgetsClient.ts @@ -227,6 +227,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-budgets/src/endpoints.ts b/clients/client-budgets/src/endpoints.ts index f748d847f413a..610ad8cd3fc66 100644 --- a/clients/client-budgets/src/endpoints.ts +++ b/clients/client-budgets/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "aws-cn-global": { @@ -63,7 +63,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "budgets", diff --git a/clients/client-budgets/src/runtimeConfig.browser.ts b/clients/client-budgets/src/runtimeConfig.browser.ts index bda1cb317ca9a..ea4b33095a5fe 100644 --- a/clients/client-budgets/src/runtimeConfig.browser.ts +++ b/clients/client-budgets/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: BudgetsClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-budgets/src/runtimeConfig.ts b/clients/client-budgets/src/runtimeConfig.ts index d80ef86244d6c..23cc9dab26591 100644 --- a/clients/client-budgets/src/runtimeConfig.ts +++ b/clients/client-budgets/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: BudgetsClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-chime-sdk-identity/src/ChimeSDKIdentityClient.ts b/clients/client-chime-sdk-identity/src/ChimeSDKIdentityClient.ts index 1c365f4864e40..786d2d1d25adf 100644 --- a/clients/client-chime-sdk-identity/src/ChimeSDKIdentityClient.ts +++ b/clients/client-chime-sdk-identity/src/ChimeSDKIdentityClient.ts @@ -263,6 +263,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-chime-sdk-identity/src/endpoints.ts b/clients/client-chime-sdk-identity/src/endpoints.ts index b1c573a0c81ad..b988a789d6692 100644 --- a/clients/client-chime-sdk-identity/src/endpoints.ts +++ b/clients/client-chime-sdk-identity/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "us-east-1-fips": { @@ -59,7 +59,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "chime", diff --git a/clients/client-chime-sdk-identity/src/runtimeConfig.browser.ts b/clients/client-chime-sdk-identity/src/runtimeConfig.browser.ts index 936a97ac954a8..7c1e130d2670d 100644 --- a/clients/client-chime-sdk-identity/src/runtimeConfig.browser.ts +++ b/clients/client-chime-sdk-identity/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ChimeSDKIdentityClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-chime-sdk-identity/src/runtimeConfig.ts b/clients/client-chime-sdk-identity/src/runtimeConfig.ts index e5ece91f8e102..c28c4cda331b1 100644 --- a/clients/client-chime-sdk-identity/src/runtimeConfig.ts +++ b/clients/client-chime-sdk-identity/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ChimeSDKIdentityClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-chime-sdk-messaging/src/ChimeSDKMessagingClient.ts b/clients/client-chime-sdk-messaging/src/ChimeSDKMessagingClient.ts index 545cd41952109..4825eefb92907 100644 --- a/clients/client-chime-sdk-messaging/src/ChimeSDKMessagingClient.ts +++ b/clients/client-chime-sdk-messaging/src/ChimeSDKMessagingClient.ts @@ -356,6 +356,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-chime-sdk-messaging/src/endpoints.ts b/clients/client-chime-sdk-messaging/src/endpoints.ts index 3839d57fc9a59..09fbedb601685 100644 --- a/clients/client-chime-sdk-messaging/src/endpoints.ts +++ b/clients/client-chime-sdk-messaging/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "us-east-1-fips": { @@ -59,7 +59,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "chime", diff --git a/clients/client-chime-sdk-messaging/src/runtimeConfig.browser.ts b/clients/client-chime-sdk-messaging/src/runtimeConfig.browser.ts index 83af902702914..50b1bcce5eefe 100644 --- a/clients/client-chime-sdk-messaging/src/runtimeConfig.browser.ts +++ b/clients/client-chime-sdk-messaging/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ChimeSDKMessagingClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-chime-sdk-messaging/src/runtimeConfig.ts b/clients/client-chime-sdk-messaging/src/runtimeConfig.ts index b1c229b38c722..61f4895f014b0 100644 --- a/clients/client-chime-sdk-messaging/src/runtimeConfig.ts +++ b/clients/client-chime-sdk-messaging/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ChimeSDKMessagingClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-chime/src/ChimeClient.ts b/clients/client-chime/src/ChimeClient.ts index d62c6a709d71e..3693bb7efaf27 100644 --- a/clients/client-chime/src/ChimeClient.ts +++ b/clients/client-chime/src/ChimeClient.ts @@ -1049,6 +1049,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-chime/src/endpoints.ts b/clients/client-chime/src/endpoints.ts index 45f3323d7486f..fe61b8b138fc4 100644 --- a/clients/client-chime/src/endpoints.ts +++ b/clients/client-chime/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "aws-global": { @@ -59,7 +59,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "chime", diff --git a/clients/client-chime/src/runtimeConfig.browser.ts b/clients/client-chime/src/runtimeConfig.browser.ts index a3cab2e39cd09..32e1a367f4aee 100644 --- a/clients/client-chime/src/runtimeConfig.browser.ts +++ b/clients/client-chime/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ChimeClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-chime/src/runtimeConfig.ts b/clients/client-chime/src/runtimeConfig.ts index d0449c0e02447..a26361732edcc 100644 --- a/clients/client-chime/src/runtimeConfig.ts +++ b/clients/client-chime/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ChimeClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cloud9/src/Cloud9Client.ts b/clients/client-cloud9/src/Cloud9Client.ts index b948e988c9a56..1a212cb6087f1 100644 --- a/clients/client-cloud9/src/Cloud9Client.ts +++ b/clients/client-cloud9/src/Cloud9Client.ts @@ -200,6 +200,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-cloud9/src/endpoints.ts b/clients/client-cloud9/src/endpoints.ts index 51b4e581ebdd1..d7be702947969 100644 --- a/clients/client-cloud9/src/endpoints.ts +++ b/clients/client-cloud9/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "cloud9", diff --git a/clients/client-cloud9/src/runtimeConfig.browser.ts b/clients/client-cloud9/src/runtimeConfig.browser.ts index 8753f98b42595..7fdb5da0bbcf8 100644 --- a/clients/client-cloud9/src/runtimeConfig.browser.ts +++ b/clients/client-cloud9/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: Cloud9ClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cloud9/src/runtimeConfig.ts b/clients/client-cloud9/src/runtimeConfig.ts index 993f196e24d06..ca539a2c33973 100644 --- a/clients/client-cloud9/src/runtimeConfig.ts +++ b/clients/client-cloud9/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: Cloud9ClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cloudcontrol/src/CloudControlClient.ts b/clients/client-cloudcontrol/src/CloudControlClient.ts index 9d5be36d13bdf..8b0949af15849 100644 --- a/clients/client-cloudcontrol/src/CloudControlClient.ts +++ b/clients/client-cloudcontrol/src/CloudControlClient.ts @@ -170,6 +170,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-cloudcontrol/src/endpoints.ts b/clients/client-cloudcontrol/src/endpoints.ts index bae4496c14a3b..cd2b61b42c122 100644 --- a/clients/client-cloudcontrol/src/endpoints.ts +++ b/clients/client-cloudcontrol/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-ca-central-1": { @@ -87,7 +87,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "cloudcontrolapi", diff --git a/clients/client-cloudcontrol/src/runtimeConfig.browser.ts b/clients/client-cloudcontrol/src/runtimeConfig.browser.ts index 1dc7d8af21fc0..f5a5b81c86905 100644 --- a/clients/client-cloudcontrol/src/runtimeConfig.browser.ts +++ b/clients/client-cloudcontrol/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: CloudControlClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cloudcontrol/src/runtimeConfig.ts b/clients/client-cloudcontrol/src/runtimeConfig.ts index 78fcc2b2c04a7..604d749910330 100644 --- a/clients/client-cloudcontrol/src/runtimeConfig.ts +++ b/clients/client-cloudcontrol/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: CloudControlClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-clouddirectory/src/CloudDirectoryClient.ts b/clients/client-clouddirectory/src/CloudDirectoryClient.ts index ce39d5dc65cd3..4fd8bf928bcba 100644 --- a/clients/client-clouddirectory/src/CloudDirectoryClient.ts +++ b/clients/client-clouddirectory/src/CloudDirectoryClient.ts @@ -413,6 +413,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-clouddirectory/src/endpoints.ts b/clients/client-clouddirectory/src/endpoints.ts index 5a264c1c593a2..b2c14497a0109 100644 --- a/clients/client-clouddirectory/src/endpoints.ts +++ b/clients/client-clouddirectory/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "clouddirectory", diff --git a/clients/client-clouddirectory/src/runtimeConfig.browser.ts b/clients/client-clouddirectory/src/runtimeConfig.browser.ts index c60a0de81f815..233b98a1d345c 100644 --- a/clients/client-clouddirectory/src/runtimeConfig.browser.ts +++ b/clients/client-clouddirectory/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: CloudDirectoryClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-clouddirectory/src/runtimeConfig.ts b/clients/client-clouddirectory/src/runtimeConfig.ts index dcf92d33ba6b4..3bfc2a75c7122 100644 --- a/clients/client-clouddirectory/src/runtimeConfig.ts +++ b/clients/client-clouddirectory/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: CloudDirectoryClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cloudformation/src/CloudFormationClient.ts b/clients/client-cloudformation/src/CloudFormationClient.ts index 2b2f389201693..3b2d7af4c5d32 100644 --- a/clients/client-cloudformation/src/CloudFormationClient.ts +++ b/clients/client-cloudformation/src/CloudFormationClient.ts @@ -410,6 +410,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-cloudformation/src/endpoints.ts b/clients/client-cloudformation/src/endpoints.ts index 385fcde6c7216..8c4235eb43577 100644 --- a/clients/client-cloudformation/src/endpoints.ts +++ b/clients/client-cloudformation/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "us-east-1-fips": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "cloudformation", diff --git a/clients/client-cloudformation/src/runtimeConfig.browser.ts b/clients/client-cloudformation/src/runtimeConfig.browser.ts index 64ba0bf5a86dc..14214e88ec9f7 100644 --- a/clients/client-cloudformation/src/runtimeConfig.browser.ts +++ b/clients/client-cloudformation/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: CloudFormationClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cloudformation/src/runtimeConfig.ts b/clients/client-cloudformation/src/runtimeConfig.ts index 8810c6dcf0996..cfb8936f014a6 100644 --- a/clients/client-cloudformation/src/runtimeConfig.ts +++ b/clients/client-cloudformation/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: CloudFormationClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cloudfront/src/CloudFrontClient.ts b/clients/client-cloudfront/src/CloudFrontClient.ts index 401d79b62050e..10e4cb9ceb9a8 100644 --- a/clients/client-cloudfront/src/CloudFrontClient.ts +++ b/clients/client-cloudfront/src/CloudFrontClient.ts @@ -539,6 +539,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-cloudfront/src/endpoints.ts b/clients/client-cloudfront/src/endpoints.ts index fd46a6a36272c..3e80d1c414620 100644 --- a/clients/client-cloudfront/src/endpoints.ts +++ b/clients/client-cloudfront/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "aws-cn-global": { @@ -63,7 +63,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "cloudfront", diff --git a/clients/client-cloudfront/src/runtimeConfig.browser.ts b/clients/client-cloudfront/src/runtimeConfig.browser.ts index 3e5ccc8c9f2f2..bf6380db8aec0 100644 --- a/clients/client-cloudfront/src/runtimeConfig.browser.ts +++ b/clients/client-cloudfront/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: CloudFrontClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cloudfront/src/runtimeConfig.ts b/clients/client-cloudfront/src/runtimeConfig.ts index 41cb7b85b056c..772d23e3b4bdb 100644 --- a/clients/client-cloudfront/src/runtimeConfig.ts +++ b/clients/client-cloudfront/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: CloudFrontClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cloudhsm-v2/src/CloudHSMV2Client.ts b/clients/client-cloudhsm-v2/src/CloudHSMV2Client.ts index 169c5dca6e73f..55f22a9399546 100644 --- a/clients/client-cloudhsm-v2/src/CloudHSMV2Client.ts +++ b/clients/client-cloudhsm-v2/src/CloudHSMV2Client.ts @@ -185,6 +185,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-cloudhsm-v2/src/endpoints.ts b/clients/client-cloudhsm-v2/src/endpoints.ts index a1488a16a2b3d..2aa5db953e78f 100644 --- a/clients/client-cloudhsm-v2/src/endpoints.ts +++ b/clients/client-cloudhsm-v2/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "cloudhsm", diff --git a/clients/client-cloudhsm-v2/src/runtimeConfig.browser.ts b/clients/client-cloudhsm-v2/src/runtimeConfig.browser.ts index 948393312acb6..d5fd63954d9a7 100644 --- a/clients/client-cloudhsm-v2/src/runtimeConfig.browser.ts +++ b/clients/client-cloudhsm-v2/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: CloudHSMV2ClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cloudhsm-v2/src/runtimeConfig.ts b/clients/client-cloudhsm-v2/src/runtimeConfig.ts index c087265f0d7f0..fd000a329e4e0 100644 --- a/clients/client-cloudhsm-v2/src/runtimeConfig.ts +++ b/clients/client-cloudhsm-v2/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: CloudHSMV2ClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cloudhsm/src/CloudHSMClient.ts b/clients/client-cloudhsm/src/CloudHSMClient.ts index 67ce0dae615c7..0a12406c9ff26 100644 --- a/clients/client-cloudhsm/src/CloudHSMClient.ts +++ b/clients/client-cloudhsm/src/CloudHSMClient.ts @@ -203,6 +203,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-cloudhsm/src/endpoints.ts b/clients/client-cloudhsm/src/endpoints.ts index 7214a86d32a1f..baf20b34f9197 100644 --- a/clients/client-cloudhsm/src/endpoints.ts +++ b/clients/client-cloudhsm/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "cloudhsm", diff --git a/clients/client-cloudhsm/src/runtimeConfig.browser.ts b/clients/client-cloudhsm/src/runtimeConfig.browser.ts index 8fbdab0270a5e..b327be74bf9b1 100644 --- a/clients/client-cloudhsm/src/runtimeConfig.browser.ts +++ b/clients/client-cloudhsm/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: CloudHSMClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cloudhsm/src/runtimeConfig.ts b/clients/client-cloudhsm/src/runtimeConfig.ts index da5e0a6e5ab45..e555fc1c330ca 100644 --- a/clients/client-cloudhsm/src/runtimeConfig.ts +++ b/clients/client-cloudhsm/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: CloudHSMClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cloudsearch-domain/src/CloudSearchDomainClient.ts b/clients/client-cloudsearch-domain/src/CloudSearchDomainClient.ts index 5d679db6b78ba..5b422a26c1f96 100644 --- a/clients/client-cloudsearch-domain/src/CloudSearchDomainClient.ts +++ b/clients/client-cloudsearch-domain/src/CloudSearchDomainClient.ts @@ -140,6 +140,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-cloudsearch-domain/src/endpoints.ts b/clients/client-cloudsearch-domain/src/endpoints.ts index 73751fa1f8c86..a5fafa221b2f1 100644 --- a/clients/client-cloudsearch-domain/src/endpoints.ts +++ b/clients/client-cloudsearch-domain/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "cloudsearch", diff --git a/clients/client-cloudsearch-domain/src/runtimeConfig.browser.ts b/clients/client-cloudsearch-domain/src/runtimeConfig.browser.ts index 3e3ff501919ab..4a52d47549285 100644 --- a/clients/client-cloudsearch-domain/src/runtimeConfig.browser.ts +++ b/clients/client-cloudsearch-domain/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: CloudSearchDomainClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cloudsearch-domain/src/runtimeConfig.ts b/clients/client-cloudsearch-domain/src/runtimeConfig.ts index 1213969319909..9b29ee3be6e3a 100644 --- a/clients/client-cloudsearch-domain/src/runtimeConfig.ts +++ b/clients/client-cloudsearch-domain/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: CloudSearchDomainClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cloudsearch/src/CloudSearchClient.ts b/clients/client-cloudsearch/src/CloudSearchClient.ts index fe0c5451a0445..38ad819a27d71 100644 --- a/clients/client-cloudsearch/src/CloudSearchClient.ts +++ b/clients/client-cloudsearch/src/CloudSearchClient.ts @@ -254,6 +254,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-cloudsearch/src/endpoints.ts b/clients/client-cloudsearch/src/endpoints.ts index a1fa705303d78..0334106b9e813 100644 --- a/clients/client-cloudsearch/src/endpoints.ts +++ b/clients/client-cloudsearch/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "cloudsearch", diff --git a/clients/client-cloudsearch/src/runtimeConfig.browser.ts b/clients/client-cloudsearch/src/runtimeConfig.browser.ts index 24aeeff76a7d4..16f586ca74b62 100644 --- a/clients/client-cloudsearch/src/runtimeConfig.browser.ts +++ b/clients/client-cloudsearch/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: CloudSearchClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cloudsearch/src/runtimeConfig.ts b/clients/client-cloudsearch/src/runtimeConfig.ts index 28ef1dd25489e..1bc2ce9861121 100644 --- a/clients/client-cloudsearch/src/runtimeConfig.ts +++ b/clients/client-cloudsearch/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: CloudSearchClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cloudtrail/src/CloudTrailClient.ts b/clients/client-cloudtrail/src/CloudTrailClient.ts index a254fc618f66b..b6aeadcddebc9 100644 --- a/clients/client-cloudtrail/src/CloudTrailClient.ts +++ b/clients/client-cloudtrail/src/CloudTrailClient.ts @@ -197,6 +197,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-cloudtrail/src/endpoints.ts b/clients/client-cloudtrail/src/endpoints.ts index f964f1ecccc4e..89e8bc2c7454b 100644 --- a/clients/client-cloudtrail/src/endpoints.ts +++ b/clients/client-cloudtrail/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "cloudtrail", diff --git a/clients/client-cloudtrail/src/runtimeConfig.browser.ts b/clients/client-cloudtrail/src/runtimeConfig.browser.ts index 526b3c536947a..4c027f21c5554 100644 --- a/clients/client-cloudtrail/src/runtimeConfig.browser.ts +++ b/clients/client-cloudtrail/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: CloudTrailClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cloudtrail/src/runtimeConfig.ts b/clients/client-cloudtrail/src/runtimeConfig.ts index 9b389126658e7..4ecfda14ec8e0 100644 --- a/clients/client-cloudtrail/src/runtimeConfig.ts +++ b/clients/client-cloudtrail/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: CloudTrailClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cloudwatch-events/src/CloudWatchEventsClient.ts b/clients/client-cloudwatch-events/src/CloudWatchEventsClient.ts index 2cc8560bea4e4..022a031c33171 100644 --- a/clients/client-cloudwatch-events/src/CloudWatchEventsClient.ts +++ b/clients/client-cloudwatch-events/src/CloudWatchEventsClient.ts @@ -338,6 +338,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-cloudwatch-events/src/endpoints.ts b/clients/client-cloudwatch-events/src/endpoints.ts index 65fcfebb54ac7..29477f977b97f 100644 --- a/clients/client-cloudwatch-events/src/endpoints.ts +++ b/clients/client-cloudwatch-events/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "events", diff --git a/clients/client-cloudwatch-events/src/runtimeConfig.browser.ts b/clients/client-cloudwatch-events/src/runtimeConfig.browser.ts index aefcf0af8eb98..1b9ee6b9af68e 100644 --- a/clients/client-cloudwatch-events/src/runtimeConfig.browser.ts +++ b/clients/client-cloudwatch-events/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: CloudWatchEventsClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cloudwatch-events/src/runtimeConfig.ts b/clients/client-cloudwatch-events/src/runtimeConfig.ts index 57901de85bb94..306ef0f939075 100644 --- a/clients/client-cloudwatch-events/src/runtimeConfig.ts +++ b/clients/client-cloudwatch-events/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: CloudWatchEventsClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cloudwatch-logs/src/CloudWatchLogsClient.ts b/clients/client-cloudwatch-logs/src/CloudWatchLogsClient.ts index e90b371e94c2c..0427357e8e92e 100644 --- a/clients/client-cloudwatch-logs/src/CloudWatchLogsClient.ts +++ b/clients/client-cloudwatch-logs/src/CloudWatchLogsClient.ts @@ -299,6 +299,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-cloudwatch-logs/src/endpoints.ts b/clients/client-cloudwatch-logs/src/endpoints.ts index 653d5653ff005..2d69eae2ba21f 100644 --- a/clients/client-cloudwatch-logs/src/endpoints.ts +++ b/clients/client-cloudwatch-logs/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "logs", diff --git a/clients/client-cloudwatch-logs/src/runtimeConfig.browser.ts b/clients/client-cloudwatch-logs/src/runtimeConfig.browser.ts index 5eeb07fd37a3e..c6efb3fc46966 100644 --- a/clients/client-cloudwatch-logs/src/runtimeConfig.browser.ts +++ b/clients/client-cloudwatch-logs/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: CloudWatchLogsClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cloudwatch-logs/src/runtimeConfig.ts b/clients/client-cloudwatch-logs/src/runtimeConfig.ts index b69cfa244af6a..e74384d8ac8e8 100644 --- a/clients/client-cloudwatch-logs/src/runtimeConfig.ts +++ b/clients/client-cloudwatch-logs/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: CloudWatchLogsClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cloudwatch/src/CloudWatchClient.ts b/clients/client-cloudwatch/src/CloudWatchClient.ts index 77f96e111a8f0..8c308635328a4 100644 --- a/clients/client-cloudwatch/src/CloudWatchClient.ts +++ b/clients/client-cloudwatch/src/CloudWatchClient.ts @@ -278,6 +278,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-cloudwatch/src/endpoints.ts b/clients/client-cloudwatch/src/endpoints.ts index e307896369c06..c5fff4e129721 100644 --- a/clients/client-cloudwatch/src/endpoints.ts +++ b/clients/client-cloudwatch/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "monitoring", diff --git a/clients/client-cloudwatch/src/runtimeConfig.browser.ts b/clients/client-cloudwatch/src/runtimeConfig.browser.ts index 2c7c02e5b3571..4edae20aa411f 100644 --- a/clients/client-cloudwatch/src/runtimeConfig.browser.ts +++ b/clients/client-cloudwatch/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: CloudWatchClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cloudwatch/src/runtimeConfig.ts b/clients/client-cloudwatch/src/runtimeConfig.ts index 0679078674bf5..223f46e59db89 100644 --- a/clients/client-cloudwatch/src/runtimeConfig.ts +++ b/clients/client-cloudwatch/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: CloudWatchClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-codeartifact/src/CodeartifactClient.ts b/clients/client-codeartifact/src/CodeartifactClient.ts index 64d2481da5eca..7148ae53967de 100644 --- a/clients/client-codeartifact/src/CodeartifactClient.ts +++ b/clients/client-codeartifact/src/CodeartifactClient.ts @@ -305,6 +305,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-codeartifact/src/endpoints.ts b/clients/client-codeartifact/src/endpoints.ts index 8c318047d02c2..24f6fc4d7490c 100644 --- a/clients/client-codeartifact/src/endpoints.ts +++ b/clients/client-codeartifact/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "codeartifact", diff --git a/clients/client-codeartifact/src/runtimeConfig.browser.ts b/clients/client-codeartifact/src/runtimeConfig.browser.ts index fc524a4569a6f..c87df4b2e597e 100644 --- a/clients/client-codeartifact/src/runtimeConfig.browser.ts +++ b/clients/client-codeartifact/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: CodeartifactClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-codeartifact/src/runtimeConfig.ts b/clients/client-codeartifact/src/runtimeConfig.ts index 65ee96e2fa701..25eea7cd07ae6 100644 --- a/clients/client-codeartifact/src/runtimeConfig.ts +++ b/clients/client-codeartifact/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: CodeartifactClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-codebuild/src/CodeBuildClient.ts b/clients/client-codebuild/src/CodeBuildClient.ts index 2f86846f1db3e..9af24f09c17a7 100644 --- a/clients/client-codebuild/src/CodeBuildClient.ts +++ b/clients/client-codebuild/src/CodeBuildClient.ts @@ -317,6 +317,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-codebuild/src/endpoints.ts b/clients/client-codebuild/src/endpoints.ts index d51bfdb8368a9..9f6ce950bc557 100644 --- a/clients/client-codebuild/src/endpoints.ts +++ b/clients/client-codebuild/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "us-east-1-fips": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "codebuild", diff --git a/clients/client-codebuild/src/runtimeConfig.browser.ts b/clients/client-codebuild/src/runtimeConfig.browser.ts index 9f35e13e1341f..83d9b0a62f73a 100644 --- a/clients/client-codebuild/src/runtimeConfig.browser.ts +++ b/clients/client-codebuild/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: CodeBuildClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-codebuild/src/runtimeConfig.ts b/clients/client-codebuild/src/runtimeConfig.ts index f4c6597b6b867..91291b7602a54 100644 --- a/clients/client-codebuild/src/runtimeConfig.ts +++ b/clients/client-codebuild/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: CodeBuildClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-codecommit/src/CodeCommitClient.ts b/clients/client-codecommit/src/CodeCommitClient.ts index e29639596cf37..9fdd69b68fba3 100644 --- a/clients/client-codecommit/src/CodeCommitClient.ts +++ b/clients/client-codecommit/src/CodeCommitClient.ts @@ -512,6 +512,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-codecommit/src/endpoints.ts b/clients/client-codecommit/src/endpoints.ts index 1e5555c568d8f..512a1173e42b5 100644 --- a/clients/client-codecommit/src/endpoints.ts +++ b/clients/client-codecommit/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { fips: { @@ -59,7 +59,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "codecommit", diff --git a/clients/client-codecommit/src/runtimeConfig.browser.ts b/clients/client-codecommit/src/runtimeConfig.browser.ts index 20707df488562..aabd7d859f632 100644 --- a/clients/client-codecommit/src/runtimeConfig.browser.ts +++ b/clients/client-codecommit/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: CodeCommitClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-codecommit/src/runtimeConfig.ts b/clients/client-codecommit/src/runtimeConfig.ts index 1386ebe1a339e..1da7d7e247add 100644 --- a/clients/client-codecommit/src/runtimeConfig.ts +++ b/clients/client-codecommit/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: CodeCommitClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-codedeploy/src/CodeDeployClient.ts b/clients/client-codedeploy/src/CodeDeployClient.ts index 48b64f211244e..ebe465cdd06f8 100644 --- a/clients/client-codedeploy/src/CodeDeployClient.ts +++ b/clients/client-codedeploy/src/CodeDeployClient.ts @@ -380,6 +380,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-codedeploy/src/endpoints.ts b/clients/client-codedeploy/src/endpoints.ts index 698cb082ffa44..0a8606aad6a50 100644 --- a/clients/client-codedeploy/src/endpoints.ts +++ b/clients/client-codedeploy/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "us-east-1-fips": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "codedeploy", diff --git a/clients/client-codedeploy/src/runtimeConfig.browser.ts b/clients/client-codedeploy/src/runtimeConfig.browser.ts index 90e8bf92b7b2c..3c237d4fa7b18 100644 --- a/clients/client-codedeploy/src/runtimeConfig.browser.ts +++ b/clients/client-codedeploy/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: CodeDeployClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-codedeploy/src/runtimeConfig.ts b/clients/client-codedeploy/src/runtimeConfig.ts index 3b2ab1e9c8ac8..aa8c74f9d90d5 100644 --- a/clients/client-codedeploy/src/runtimeConfig.ts +++ b/clients/client-codedeploy/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: CodeDeployClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-codeguru-reviewer/src/CodeGuruReviewerClient.ts b/clients/client-codeguru-reviewer/src/CodeGuruReviewerClient.ts index 50ee480e5b263..5fad0b57cf04a 100644 --- a/clients/client-codeguru-reviewer/src/CodeGuruReviewerClient.ts +++ b/clients/client-codeguru-reviewer/src/CodeGuruReviewerClient.ts @@ -206,6 +206,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-codeguru-reviewer/src/endpoints.ts b/clients/client-codeguru-reviewer/src/endpoints.ts index e15c0206b753e..c0f6b3feb5cdf 100644 --- a/clients/client-codeguru-reviewer/src/endpoints.ts +++ b/clients/client-codeguru-reviewer/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "codeguru-reviewer", diff --git a/clients/client-codeguru-reviewer/src/runtimeConfig.browser.ts b/clients/client-codeguru-reviewer/src/runtimeConfig.browser.ts index c1174a06a8cfd..18cb737a06281 100644 --- a/clients/client-codeguru-reviewer/src/runtimeConfig.browser.ts +++ b/clients/client-codeguru-reviewer/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: CodeGuruReviewerClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-codeguru-reviewer/src/runtimeConfig.ts b/clients/client-codeguru-reviewer/src/runtimeConfig.ts index 02d547fd8c7fd..c1bc216b98603 100644 --- a/clients/client-codeguru-reviewer/src/runtimeConfig.ts +++ b/clients/client-codeguru-reviewer/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: CodeGuruReviewerClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-codeguruprofiler/src/CodeGuruProfilerClient.ts b/clients/client-codeguruprofiler/src/CodeGuruProfilerClient.ts index 7166b8c8953e2..48390f0960a6e 100644 --- a/clients/client-codeguruprofiler/src/CodeGuruProfilerClient.ts +++ b/clients/client-codeguruprofiler/src/CodeGuruProfilerClient.ts @@ -242,6 +242,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-codeguruprofiler/src/endpoints.ts b/clients/client-codeguruprofiler/src/endpoints.ts index cbb92922fac49..55a48f7722496 100644 --- a/clients/client-codeguruprofiler/src/endpoints.ts +++ b/clients/client-codeguruprofiler/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "codeguru-profiler", diff --git a/clients/client-codeguruprofiler/src/runtimeConfig.browser.ts b/clients/client-codeguruprofiler/src/runtimeConfig.browser.ts index 75ce0d2216937..4d0f04e48e956 100644 --- a/clients/client-codeguruprofiler/src/runtimeConfig.browser.ts +++ b/clients/client-codeguruprofiler/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: CodeGuruProfilerClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-codeguruprofiler/src/runtimeConfig.ts b/clients/client-codeguruprofiler/src/runtimeConfig.ts index a4bb96b4adc52..505a2bf915b3a 100644 --- a/clients/client-codeguruprofiler/src/runtimeConfig.ts +++ b/clients/client-codeguruprofiler/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: CodeGuruProfilerClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-codepipeline/src/CodePipelineClient.ts b/clients/client-codepipeline/src/CodePipelineClient.ts index d3284f428df6e..e2f8604d76ad2 100644 --- a/clients/client-codepipeline/src/CodePipelineClient.ts +++ b/clients/client-codepipeline/src/CodePipelineClient.ts @@ -314,6 +314,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-codepipeline/src/endpoints.ts b/clients/client-codepipeline/src/endpoints.ts index 22d6329761bca..a7d3f5b62e13c 100644 --- a/clients/client-codepipeline/src/endpoints.ts +++ b/clients/client-codepipeline/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-ca-central-1": { @@ -83,7 +83,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "codepipeline", diff --git a/clients/client-codepipeline/src/runtimeConfig.browser.ts b/clients/client-codepipeline/src/runtimeConfig.browser.ts index 09c9020a863fb..98133e0e6f75d 100644 --- a/clients/client-codepipeline/src/runtimeConfig.browser.ts +++ b/clients/client-codepipeline/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: CodePipelineClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-codepipeline/src/runtimeConfig.ts b/clients/client-codepipeline/src/runtimeConfig.ts index 66749737f7283..6a2acaf5e5d91 100644 --- a/clients/client-codepipeline/src/runtimeConfig.ts +++ b/clients/client-codepipeline/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: CodePipelineClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-codestar-connections/src/CodeStarConnectionsClient.ts b/clients/client-codestar-connections/src/CodeStarConnectionsClient.ts index 8d65b59f1370e..c65f549ed2204 100644 --- a/clients/client-codestar-connections/src/CodeStarConnectionsClient.ts +++ b/clients/client-codestar-connections/src/CodeStarConnectionsClient.ts @@ -176,6 +176,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-codestar-connections/src/endpoints.ts b/clients/client-codestar-connections/src/endpoints.ts index bae97a6db70da..83e5333c7c5ae 100644 --- a/clients/client-codestar-connections/src/endpoints.ts +++ b/clients/client-codestar-connections/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "codestar-connections", diff --git a/clients/client-codestar-connections/src/runtimeConfig.browser.ts b/clients/client-codestar-connections/src/runtimeConfig.browser.ts index 5e7a14ec501ee..72d4085ac6856 100644 --- a/clients/client-codestar-connections/src/runtimeConfig.browser.ts +++ b/clients/client-codestar-connections/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: CodeStarConnectionsClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-codestar-connections/src/runtimeConfig.ts b/clients/client-codestar-connections/src/runtimeConfig.ts index 518d09b93ea93..c63e862631523 100644 --- a/clients/client-codestar-connections/src/runtimeConfig.ts +++ b/clients/client-codestar-connections/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: CodeStarConnectionsClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-codestar-notifications/src/CodestarNotificationsClient.ts b/clients/client-codestar-notifications/src/CodestarNotificationsClient.ts index 65a5ea13b5226..93ffa684dfb64 100644 --- a/clients/client-codestar-notifications/src/CodestarNotificationsClient.ts +++ b/clients/client-codestar-notifications/src/CodestarNotificationsClient.ts @@ -194,6 +194,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-codestar-notifications/src/endpoints.ts b/clients/client-codestar-notifications/src/endpoints.ts index ed39cdb4b8d39..5a8db830c7a80 100644 --- a/clients/client-codestar-notifications/src/endpoints.ts +++ b/clients/client-codestar-notifications/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "codestar-notifications", diff --git a/clients/client-codestar-notifications/src/runtimeConfig.browser.ts b/clients/client-codestar-notifications/src/runtimeConfig.browser.ts index f4f8f69098d81..553a616d83fb6 100644 --- a/clients/client-codestar-notifications/src/runtimeConfig.browser.ts +++ b/clients/client-codestar-notifications/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: CodestarNotificationsClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-codestar-notifications/src/runtimeConfig.ts b/clients/client-codestar-notifications/src/runtimeConfig.ts index 5ef151429fe8c..2f6dfeb798be7 100644 --- a/clients/client-codestar-notifications/src/runtimeConfig.ts +++ b/clients/client-codestar-notifications/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: CodestarNotificationsClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-codestar/src/CodeStarClient.ts b/clients/client-codestar/src/CodeStarClient.ts index e76a792e8c993..7aa2abb0f5b98 100644 --- a/clients/client-codestar/src/CodeStarClient.ts +++ b/clients/client-codestar/src/CodeStarClient.ts @@ -200,6 +200,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-codestar/src/endpoints.ts b/clients/client-codestar/src/endpoints.ts index 36be2dc425fcc..6d9ad78123360 100644 --- a/clients/client-codestar/src/endpoints.ts +++ b/clients/client-codestar/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "codestar", diff --git a/clients/client-codestar/src/runtimeConfig.browser.ts b/clients/client-codestar/src/runtimeConfig.browser.ts index 68dea38b957bf..7d609e03eaff8 100644 --- a/clients/client-codestar/src/runtimeConfig.browser.ts +++ b/clients/client-codestar/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: CodeStarClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-codestar/src/runtimeConfig.ts b/clients/client-codestar/src/runtimeConfig.ts index 518796eb2d878..b33c6533c8fb2 100644 --- a/clients/client-codestar/src/runtimeConfig.ts +++ b/clients/client-codestar/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: CodeStarClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cognito-identity-provider/src/CognitoIdentityProviderClient.ts b/clients/client-cognito-identity-provider/src/CognitoIdentityProviderClient.ts index b86b8438be301..ae6bb347e53f4 100644 --- a/clients/client-cognito-identity-provider/src/CognitoIdentityProviderClient.ts +++ b/clients/client-cognito-identity-provider/src/CognitoIdentityProviderClient.ts @@ -603,6 +603,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-cognito-identity-provider/src/endpoints.ts b/clients/client-cognito-identity-provider/src/endpoints.ts index 88b9db2f029de..79d1f845f86b8 100644 --- a/clients/client-cognito-identity-provider/src/endpoints.ts +++ b/clients/client-cognito-identity-provider/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -78,7 +78,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "cognito-idp", diff --git a/clients/client-cognito-identity-provider/src/runtimeConfig.browser.ts b/clients/client-cognito-identity-provider/src/runtimeConfig.browser.ts index 13e7335c560b1..5e8d090b786da 100644 --- a/clients/client-cognito-identity-provider/src/runtimeConfig.browser.ts +++ b/clients/client-cognito-identity-provider/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: CognitoIdentityProviderClientConfig) => retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cognito-identity-provider/src/runtimeConfig.ts b/clients/client-cognito-identity-provider/src/runtimeConfig.ts index 1a500cbbf8e5a..bc6bc96201a9d 100644 --- a/clients/client-cognito-identity-provider/src/runtimeConfig.ts +++ b/clients/client-cognito-identity-provider/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: CognitoIdentityProviderClientConfig) => retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cognito-identity/src/CognitoIdentityClient.ts b/clients/client-cognito-identity/src/CognitoIdentityClient.ts index cf4baa721e42a..4412d52679ff6 100644 --- a/clients/client-cognito-identity/src/CognitoIdentityClient.ts +++ b/clients/client-cognito-identity/src/CognitoIdentityClient.ts @@ -234,6 +234,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-cognito-identity/src/endpoints.ts b/clients/client-cognito-identity/src/endpoints.ts index bd08234ecf8a3..24851318d9077 100644 --- a/clients/client-cognito-identity/src/endpoints.ts +++ b/clients/client-cognito-identity/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -73,7 +73,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "cognito-identity", diff --git a/clients/client-cognito-identity/src/runtimeConfig.browser.ts b/clients/client-cognito-identity/src/runtimeConfig.browser.ts index 3d7de245f44ee..b736b9ffb28a9 100644 --- a/clients/client-cognito-identity/src/runtimeConfig.browser.ts +++ b/clients/client-cognito-identity/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: CognitoIdentityClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cognito-identity/src/runtimeConfig.ts b/clients/client-cognito-identity/src/runtimeConfig.ts index b8cbbf4604093..c04aeda3a08df 100644 --- a/clients/client-cognito-identity/src/runtimeConfig.ts +++ b/clients/client-cognito-identity/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: CognitoIdentityClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cognito-sync/src/CognitoSyncClient.ts b/clients/client-cognito-sync/src/CognitoSyncClient.ts index 49b6db125b9d7..57127b80dc8ee 100644 --- a/clients/client-cognito-sync/src/CognitoSyncClient.ts +++ b/clients/client-cognito-sync/src/CognitoSyncClient.ts @@ -209,6 +209,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-cognito-sync/src/endpoints.ts b/clients/client-cognito-sync/src/endpoints.ts index 492913e2481b9..cd6143f65d5b0 100644 --- a/clients/client-cognito-sync/src/endpoints.ts +++ b/clients/client-cognito-sync/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "cognito-sync", diff --git a/clients/client-cognito-sync/src/runtimeConfig.browser.ts b/clients/client-cognito-sync/src/runtimeConfig.browser.ts index 8595c5569fba0..6e562c1cc8c09 100644 --- a/clients/client-cognito-sync/src/runtimeConfig.browser.ts +++ b/clients/client-cognito-sync/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: CognitoSyncClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cognito-sync/src/runtimeConfig.ts b/clients/client-cognito-sync/src/runtimeConfig.ts index 06ec666d6135c..ca607758512a1 100644 --- a/clients/client-cognito-sync/src/runtimeConfig.ts +++ b/clients/client-cognito-sync/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: CognitoSyncClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-comprehend/src/ComprehendClient.ts b/clients/client-comprehend/src/ComprehendClient.ts index ec900cfa7086a..a3b3461b58707 100644 --- a/clients/client-comprehend/src/ComprehendClient.ts +++ b/clients/client-comprehend/src/ComprehendClient.ts @@ -473,6 +473,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-comprehend/src/endpoints.ts b/clients/client-comprehend/src/endpoints.ts index 03dd7006a7ac2..c5f2783e6244e 100644 --- a/clients/client-comprehend/src/endpoints.ts +++ b/clients/client-comprehend/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -73,7 +73,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "comprehend", diff --git a/clients/client-comprehend/src/runtimeConfig.browser.ts b/clients/client-comprehend/src/runtimeConfig.browser.ts index f0f5fb872052d..14054ed298f4a 100644 --- a/clients/client-comprehend/src/runtimeConfig.browser.ts +++ b/clients/client-comprehend/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ComprehendClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-comprehend/src/runtimeConfig.ts b/clients/client-comprehend/src/runtimeConfig.ts index 7d822e7c412f3..5a800f27da546 100644 --- a/clients/client-comprehend/src/runtimeConfig.ts +++ b/clients/client-comprehend/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ComprehendClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-comprehendmedical/src/ComprehendMedicalClient.ts b/clients/client-comprehendmedical/src/ComprehendMedicalClient.ts index 469a4b31bccc3..8b87e96ea6147 100644 --- a/clients/client-comprehendmedical/src/ComprehendMedicalClient.ts +++ b/clients/client-comprehendmedical/src/ComprehendMedicalClient.ts @@ -248,6 +248,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-comprehendmedical/src/endpoints.ts b/clients/client-comprehendmedical/src/endpoints.ts index 9b25d15a6983c..42f77c1e30d0b 100644 --- a/clients/client-comprehendmedical/src/endpoints.ts +++ b/clients/client-comprehendmedical/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -73,7 +73,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "comprehendmedical", diff --git a/clients/client-comprehendmedical/src/runtimeConfig.browser.ts b/clients/client-comprehendmedical/src/runtimeConfig.browser.ts index eb7744556a226..935e2005ea408 100644 --- a/clients/client-comprehendmedical/src/runtimeConfig.browser.ts +++ b/clients/client-comprehendmedical/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ComprehendMedicalClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-comprehendmedical/src/runtimeConfig.ts b/clients/client-comprehendmedical/src/runtimeConfig.ts index 309f7795911a8..3a02b2349e0b4 100644 --- a/clients/client-comprehendmedical/src/runtimeConfig.ts +++ b/clients/client-comprehendmedical/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ComprehendMedicalClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-compute-optimizer/src/ComputeOptimizerClient.ts b/clients/client-compute-optimizer/src/ComputeOptimizerClient.ts index 4df616ada4ac6..ec7e99f2fd867 100644 --- a/clients/client-compute-optimizer/src/ComputeOptimizerClient.ts +++ b/clients/client-compute-optimizer/src/ComputeOptimizerClient.ts @@ -221,6 +221,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-compute-optimizer/src/endpoints.ts b/clients/client-compute-optimizer/src/endpoints.ts index 0cc403c1ef0a5..4b9ecadfe5817 100644 --- a/clients/client-compute-optimizer/src/endpoints.ts +++ b/clients/client-compute-optimizer/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "compute-optimizer", diff --git a/clients/client-compute-optimizer/src/runtimeConfig.browser.ts b/clients/client-compute-optimizer/src/runtimeConfig.browser.ts index 6d87dcc953a5a..e40d2850e9dd6 100644 --- a/clients/client-compute-optimizer/src/runtimeConfig.browser.ts +++ b/clients/client-compute-optimizer/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ComputeOptimizerClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-compute-optimizer/src/runtimeConfig.ts b/clients/client-compute-optimizer/src/runtimeConfig.ts index 13269e3fed52a..f9a40eab35404 100644 --- a/clients/client-compute-optimizer/src/runtimeConfig.ts +++ b/clients/client-compute-optimizer/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ComputeOptimizerClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-config-service/src/ConfigServiceClient.ts b/clients/client-config-service/src/ConfigServiceClient.ts index 3ed566a9f739c..e9390a65dee6b 100644 --- a/clients/client-config-service/src/ConfigServiceClient.ts +++ b/clients/client-config-service/src/ConfigServiceClient.ts @@ -617,6 +617,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-config-service/src/endpoints.ts b/clients/client-config-service/src/endpoints.ts index dab68293dde73..f929863efac84 100644 --- a/clients/client-config-service/src/endpoints.ts +++ b/clients/client-config-service/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "config", diff --git a/clients/client-config-service/src/runtimeConfig.browser.ts b/clients/client-config-service/src/runtimeConfig.browser.ts index 089e2573c581c..17c09c7d2a748 100644 --- a/clients/client-config-service/src/runtimeConfig.browser.ts +++ b/clients/client-config-service/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ConfigServiceClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-config-service/src/runtimeConfig.ts b/clients/client-config-service/src/runtimeConfig.ts index 9122560d79af3..110d11fe2968a 100644 --- a/clients/client-config-service/src/runtimeConfig.ts +++ b/clients/client-config-service/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ConfigServiceClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-connect-contact-lens/src/ConnectContactLensClient.ts b/clients/client-connect-contact-lens/src/ConnectContactLensClient.ts index 532d9e863fbf6..8d5663fc28993 100644 --- a/clients/client-connect-contact-lens/src/ConnectContactLensClient.ts +++ b/clients/client-connect-contact-lens/src/ConnectContactLensClient.ts @@ -141,6 +141,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-connect-contact-lens/src/endpoints.ts b/clients/client-connect-contact-lens/src/endpoints.ts index 8921a3e55e541..bf4b457eaf8d3 100644 --- a/clients/client-connect-contact-lens/src/endpoints.ts +++ b/clients/client-connect-contact-lens/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "connect", diff --git a/clients/client-connect-contact-lens/src/runtimeConfig.browser.ts b/clients/client-connect-contact-lens/src/runtimeConfig.browser.ts index 828da79e54bc2..3b36f93f99427 100644 --- a/clients/client-connect-contact-lens/src/runtimeConfig.browser.ts +++ b/clients/client-connect-contact-lens/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ConnectContactLensClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-connect-contact-lens/src/runtimeConfig.ts b/clients/client-connect-contact-lens/src/runtimeConfig.ts index 1358217df62d4..c6a07e1fb9327 100644 --- a/clients/client-connect-contact-lens/src/runtimeConfig.ts +++ b/clients/client-connect-contact-lens/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ConnectContactLensClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-connect/src/ConnectClient.ts b/clients/client-connect/src/ConnectClient.ts index e7331b89a0171..26ac34e7d3d51 100644 --- a/clients/client-connect/src/ConnectClient.ts +++ b/clients/client-connect/src/ConnectClient.ts @@ -671,6 +671,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-connect/src/endpoints.ts b/clients/client-connect/src/endpoints.ts index 1ac5ee2aacd3e..dc6eb6f8261f2 100644 --- a/clients/client-connect/src/endpoints.ts +++ b/clients/client-connect/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "connect", diff --git a/clients/client-connect/src/runtimeConfig.browser.ts b/clients/client-connect/src/runtimeConfig.browser.ts index a8954eb2f47c0..93612efa10bc0 100644 --- a/clients/client-connect/src/runtimeConfig.browser.ts +++ b/clients/client-connect/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ConnectClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-connect/src/runtimeConfig.ts b/clients/client-connect/src/runtimeConfig.ts index 4bed981800a69..b77a4d9c7e451 100644 --- a/clients/client-connect/src/runtimeConfig.ts +++ b/clients/client-connect/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ConnectClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-connectparticipant/src/ConnectParticipantClient.ts b/clients/client-connectparticipant/src/ConnectParticipantClient.ts index 89903c93484c4..8e35ca39302d1 100644 --- a/clients/client-connectparticipant/src/ConnectParticipantClient.ts +++ b/clients/client-connectparticipant/src/ConnectParticipantClient.ts @@ -179,6 +179,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-connectparticipant/src/endpoints.ts b/clients/client-connectparticipant/src/endpoints.ts index c3a1785f252b9..d7e6741e30303 100644 --- a/clients/client-connectparticipant/src/endpoints.ts +++ b/clients/client-connectparticipant/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "execute-api", diff --git a/clients/client-connectparticipant/src/runtimeConfig.browser.ts b/clients/client-connectparticipant/src/runtimeConfig.browser.ts index f07ad1c08bdae..fc85d793f1abd 100644 --- a/clients/client-connectparticipant/src/runtimeConfig.browser.ts +++ b/clients/client-connectparticipant/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ConnectParticipantClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-connectparticipant/src/runtimeConfig.ts b/clients/client-connectparticipant/src/runtimeConfig.ts index 5249c09c6be0d..52018c0284ddd 100644 --- a/clients/client-connectparticipant/src/runtimeConfig.ts +++ b/clients/client-connectparticipant/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ConnectParticipantClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cost-and-usage-report-service/src/CostAndUsageReportServiceClient.ts b/clients/client-cost-and-usage-report-service/src/CostAndUsageReportServiceClient.ts index ddca7d53225ab..66afb18f99d17 100644 --- a/clients/client-cost-and-usage-report-service/src/CostAndUsageReportServiceClient.ts +++ b/clients/client-cost-and-usage-report-service/src/CostAndUsageReportServiceClient.ts @@ -161,6 +161,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-cost-and-usage-report-service/src/endpoints.ts b/clients/client-cost-and-usage-report-service/src/endpoints.ts index 8cbbf39bc8c33..313d629622218 100644 --- a/clients/client-cost-and-usage-report-service/src/endpoints.ts +++ b/clients/client-cost-and-usage-report-service/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "cur", diff --git a/clients/client-cost-and-usage-report-service/src/runtimeConfig.browser.ts b/clients/client-cost-and-usage-report-service/src/runtimeConfig.browser.ts index 5c220fce4c0d2..984182c67ebd9 100644 --- a/clients/client-cost-and-usage-report-service/src/runtimeConfig.browser.ts +++ b/clients/client-cost-and-usage-report-service/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: CostAndUsageReportServiceClientConfig) retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cost-and-usage-report-service/src/runtimeConfig.ts b/clients/client-cost-and-usage-report-service/src/runtimeConfig.ts index f0859a41bbe7f..277664b353687 100644 --- a/clients/client-cost-and-usage-report-service/src/runtimeConfig.ts +++ b/clients/client-cost-and-usage-report-service/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: CostAndUsageReportServiceClientConfig) retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cost-explorer/src/CostExplorerClient.ts b/clients/client-cost-explorer/src/CostExplorerClient.ts index 9618cd5ccf5c8..a5cf8bfdfd246 100644 --- a/clients/client-cost-explorer/src/CostExplorerClient.ts +++ b/clients/client-cost-explorer/src/CostExplorerClient.ts @@ -293,6 +293,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-cost-explorer/src/endpoints.ts b/clients/client-cost-explorer/src/endpoints.ts index 7560a48e2f869..39f99b0ea433e 100644 --- a/clients/client-cost-explorer/src/endpoints.ts +++ b/clients/client-cost-explorer/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "aws-cn-global": { @@ -63,7 +63,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "ce", diff --git a/clients/client-cost-explorer/src/runtimeConfig.browser.ts b/clients/client-cost-explorer/src/runtimeConfig.browser.ts index 59fc6cba7cdcd..3dcdfafa6ddc2 100644 --- a/clients/client-cost-explorer/src/runtimeConfig.browser.ts +++ b/clients/client-cost-explorer/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: CostExplorerClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-cost-explorer/src/runtimeConfig.ts b/clients/client-cost-explorer/src/runtimeConfig.ts index fc1392cbf66f8..77e1818f2771b 100644 --- a/clients/client-cost-explorer/src/runtimeConfig.ts +++ b/clients/client-cost-explorer/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: CostExplorerClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-customer-profiles/src/CustomerProfilesClient.ts b/clients/client-customer-profiles/src/CustomerProfilesClient.ts index 8de4ef7c02c2e..a190ab182d38e 100644 --- a/clients/client-customer-profiles/src/CustomerProfilesClient.ts +++ b/clients/client-customer-profiles/src/CustomerProfilesClient.ts @@ -254,6 +254,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-customer-profiles/src/endpoints.ts b/clients/client-customer-profiles/src/endpoints.ts index 53c7f0cd69729..7ffe7324cdbcb 100644 --- a/clients/client-customer-profiles/src/endpoints.ts +++ b/clients/client-customer-profiles/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "profile", diff --git a/clients/client-customer-profiles/src/runtimeConfig.browser.ts b/clients/client-customer-profiles/src/runtimeConfig.browser.ts index 6b4025b8c2603..eb98f59a81825 100644 --- a/clients/client-customer-profiles/src/runtimeConfig.browser.ts +++ b/clients/client-customer-profiles/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: CustomerProfilesClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-customer-profiles/src/runtimeConfig.ts b/clients/client-customer-profiles/src/runtimeConfig.ts index 8270d76b85fbc..5e9e47761b4c3 100644 --- a/clients/client-customer-profiles/src/runtimeConfig.ts +++ b/clients/client-customer-profiles/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: CustomerProfilesClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-data-pipeline/src/DataPipelineClient.ts b/clients/client-data-pipeline/src/DataPipelineClient.ts index e835c01269877..4f510f7869947 100644 --- a/clients/client-data-pipeline/src/DataPipelineClient.ts +++ b/clients/client-data-pipeline/src/DataPipelineClient.ts @@ -206,6 +206,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-data-pipeline/src/endpoints.ts b/clients/client-data-pipeline/src/endpoints.ts index 173d88b99d0aa..b6f20685f3a85 100644 --- a/clients/client-data-pipeline/src/endpoints.ts +++ b/clients/client-data-pipeline/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "datapipeline", diff --git a/clients/client-data-pipeline/src/runtimeConfig.browser.ts b/clients/client-data-pipeline/src/runtimeConfig.browser.ts index 810647a067030..e3a5bcfe79f8f 100644 --- a/clients/client-data-pipeline/src/runtimeConfig.browser.ts +++ b/clients/client-data-pipeline/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: DataPipelineClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-data-pipeline/src/runtimeConfig.ts b/clients/client-data-pipeline/src/runtimeConfig.ts index 498fb94b455e0..e6e733ba5dbf5 100644 --- a/clients/client-data-pipeline/src/runtimeConfig.ts +++ b/clients/client-data-pipeline/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: DataPipelineClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-database-migration-service/src/DatabaseMigrationServiceClient.ts b/clients/client-database-migration-service/src/DatabaseMigrationServiceClient.ts index fa8d42e7393a7..1126f4e97e946 100644 --- a/clients/client-database-migration-service/src/DatabaseMigrationServiceClient.ts +++ b/clients/client-database-migration-service/src/DatabaseMigrationServiceClient.ts @@ -428,6 +428,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-database-migration-service/src/endpoints.ts b/clients/client-database-migration-service/src/endpoints.ts index 21b5c73bd4bba..cf3bcc457add1 100644 --- a/clients/client-database-migration-service/src/endpoints.ts +++ b/clients/client-database-migration-service/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "dms-fips": { @@ -59,7 +59,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "dms", diff --git a/clients/client-database-migration-service/src/runtimeConfig.browser.ts b/clients/client-database-migration-service/src/runtimeConfig.browser.ts index 6bbf66324556e..5ed9aabdc8f2c 100644 --- a/clients/client-database-migration-service/src/runtimeConfig.browser.ts +++ b/clients/client-database-migration-service/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: DatabaseMigrationServiceClientConfig) = retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-database-migration-service/src/runtimeConfig.ts b/clients/client-database-migration-service/src/runtimeConfig.ts index 59bae52ebe18f..264d2e8a9e974 100644 --- a/clients/client-database-migration-service/src/runtimeConfig.ts +++ b/clients/client-database-migration-service/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: DatabaseMigrationServiceClientConfig) = retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-databrew/src/DataBrewClient.ts b/clients/client-databrew/src/DataBrewClient.ts index 7a3d64fef390c..9668643c0b468 100644 --- a/clients/client-databrew/src/DataBrewClient.ts +++ b/clients/client-databrew/src/DataBrewClient.ts @@ -269,6 +269,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-databrew/src/endpoints.ts b/clients/client-databrew/src/endpoints.ts index ef09b0cc69e66..cee4c5575b890 100644 --- a/clients/client-databrew/src/endpoints.ts +++ b/clients/client-databrew/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "databrew", diff --git a/clients/client-databrew/src/runtimeConfig.browser.ts b/clients/client-databrew/src/runtimeConfig.browser.ts index 46a845691993f..603ea8e2c1ad4 100644 --- a/clients/client-databrew/src/runtimeConfig.browser.ts +++ b/clients/client-databrew/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: DataBrewClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-databrew/src/runtimeConfig.ts b/clients/client-databrew/src/runtimeConfig.ts index 31e286697a995..8e96d10a5decd 100644 --- a/clients/client-databrew/src/runtimeConfig.ts +++ b/clients/client-databrew/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: DataBrewClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-dataexchange/src/DataExchangeClient.ts b/clients/client-dataexchange/src/DataExchangeClient.ts index 21cf42dd3fe13..bb8338c3b1077 100644 --- a/clients/client-dataexchange/src/DataExchangeClient.ts +++ b/clients/client-dataexchange/src/DataExchangeClient.ts @@ -224,6 +224,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-dataexchange/src/endpoints.ts b/clients/client-dataexchange/src/endpoints.ts index b611501277a18..fd195f136aba8 100644 --- a/clients/client-dataexchange/src/endpoints.ts +++ b/clients/client-dataexchange/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "dataexchange", diff --git a/clients/client-dataexchange/src/runtimeConfig.browser.ts b/clients/client-dataexchange/src/runtimeConfig.browser.ts index d2478c8631673..7272508ba6c52 100644 --- a/clients/client-dataexchange/src/runtimeConfig.browser.ts +++ b/clients/client-dataexchange/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: DataExchangeClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-dataexchange/src/runtimeConfig.ts b/clients/client-dataexchange/src/runtimeConfig.ts index 15246a3dae09b..04da9a0682a34 100644 --- a/clients/client-dataexchange/src/runtimeConfig.ts +++ b/clients/client-dataexchange/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: DataExchangeClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-datasync/src/DataSyncClient.ts b/clients/client-datasync/src/DataSyncClient.ts index 5525849f3eef5..836f8926391d3 100644 --- a/clients/client-datasync/src/DataSyncClient.ts +++ b/clients/client-datasync/src/DataSyncClient.ts @@ -278,6 +278,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-datasync/src/endpoints.ts b/clients/client-datasync/src/endpoints.ts index 60659795d384d..b48b25f206544 100644 --- a/clients/client-datasync/src/endpoints.ts +++ b/clients/client-datasync/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-ca-central-1": { @@ -87,7 +87,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "datasync", diff --git a/clients/client-datasync/src/runtimeConfig.browser.ts b/clients/client-datasync/src/runtimeConfig.browser.ts index 4082a16ed924e..7bcb717187ca3 100644 --- a/clients/client-datasync/src/runtimeConfig.browser.ts +++ b/clients/client-datasync/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: DataSyncClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-datasync/src/runtimeConfig.ts b/clients/client-datasync/src/runtimeConfig.ts index 4175061b2d32f..a8d7e104a15ea 100644 --- a/clients/client-datasync/src/runtimeConfig.ts +++ b/clients/client-datasync/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: DataSyncClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-dax/src/DAXClient.ts b/clients/client-dax/src/DAXClient.ts index f846d28f7851b..e4f49f8def3dd 100644 --- a/clients/client-dax/src/DAXClient.ts +++ b/clients/client-dax/src/DAXClient.ts @@ -224,6 +224,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-dax/src/endpoints.ts b/clients/client-dax/src/endpoints.ts index 22c10aeab79cd..b8f8aa295e8fc 100644 --- a/clients/client-dax/src/endpoints.ts +++ b/clients/client-dax/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "dax", diff --git a/clients/client-dax/src/runtimeConfig.browser.ts b/clients/client-dax/src/runtimeConfig.browser.ts index c02d050dc0886..993554d5316ad 100644 --- a/clients/client-dax/src/runtimeConfig.browser.ts +++ b/clients/client-dax/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: DAXClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-dax/src/runtimeConfig.ts b/clients/client-dax/src/runtimeConfig.ts index 6ebb90ec444c5..e6904d1fc978c 100644 --- a/clients/client-dax/src/runtimeConfig.ts +++ b/clients/client-dax/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: DAXClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-detective/src/DetectiveClient.ts b/clients/client-detective/src/DetectiveClient.ts index 9328e4c934b8f..d9458bbc8995f 100644 --- a/clients/client-detective/src/DetectiveClient.ts +++ b/clients/client-detective/src/DetectiveClient.ts @@ -191,6 +191,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-detective/src/endpoints.ts b/clients/client-detective/src/endpoints.ts index 005146c4869e5..d7b4a6468acf1 100644 --- a/clients/client-detective/src/endpoints.ts +++ b/clients/client-detective/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "us-east-1-fips": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "detective", diff --git a/clients/client-detective/src/runtimeConfig.browser.ts b/clients/client-detective/src/runtimeConfig.browser.ts index 9d6588533f4a2..4b42f484d2705 100644 --- a/clients/client-detective/src/runtimeConfig.browser.ts +++ b/clients/client-detective/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: DetectiveClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-detective/src/runtimeConfig.ts b/clients/client-detective/src/runtimeConfig.ts index 9f039fbb6d1e1..32bfa4bc5bab2 100644 --- a/clients/client-detective/src/runtimeConfig.ts +++ b/clients/client-detective/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: DetectiveClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-device-farm/src/DeviceFarmClient.ts b/clients/client-device-farm/src/DeviceFarmClient.ts index 4238e3f98a6d1..8c5e571ca7c62 100644 --- a/clients/client-device-farm/src/DeviceFarmClient.ts +++ b/clients/client-device-farm/src/DeviceFarmClient.ts @@ -464,6 +464,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-device-farm/src/endpoints.ts b/clients/client-device-farm/src/endpoints.ts index fe23a593d19b8..0e9e59665679b 100644 --- a/clients/client-device-farm/src/endpoints.ts +++ b/clients/client-device-farm/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "devicefarm", diff --git a/clients/client-device-farm/src/runtimeConfig.browser.ts b/clients/client-device-farm/src/runtimeConfig.browser.ts index 90a4b86f88a4f..23e16a1de720c 100644 --- a/clients/client-device-farm/src/runtimeConfig.browser.ts +++ b/clients/client-device-farm/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: DeviceFarmClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-device-farm/src/runtimeConfig.ts b/clients/client-device-farm/src/runtimeConfig.ts index ab0490b2a163b..a8781803ebb92 100644 --- a/clients/client-device-farm/src/runtimeConfig.ts +++ b/clients/client-device-farm/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: DeviceFarmClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-devops-guru/src/DevOpsGuruClient.ts b/clients/client-devops-guru/src/DevOpsGuruClient.ts index 1d2600d559151..fc38ff6a45d04 100644 --- a/clients/client-devops-guru/src/DevOpsGuruClient.ts +++ b/clients/client-devops-guru/src/DevOpsGuruClient.ts @@ -239,6 +239,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-devops-guru/src/endpoints.ts b/clients/client-devops-guru/src/endpoints.ts index 8d092f9aa2a88..e7da8c661637a 100644 --- a/clients/client-devops-guru/src/endpoints.ts +++ b/clients/client-devops-guru/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "devops-guru", diff --git a/clients/client-devops-guru/src/runtimeConfig.browser.ts b/clients/client-devops-guru/src/runtimeConfig.browser.ts index 9240e2d442b46..9672b5bf0f729 100644 --- a/clients/client-devops-guru/src/runtimeConfig.browser.ts +++ b/clients/client-devops-guru/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: DevOpsGuruClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-devops-guru/src/runtimeConfig.ts b/clients/client-devops-guru/src/runtimeConfig.ts index a5b0943f5617d..b2e957fc4fd12 100644 --- a/clients/client-devops-guru/src/runtimeConfig.ts +++ b/clients/client-devops-guru/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: DevOpsGuruClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-direct-connect/src/DirectConnectClient.ts b/clients/client-direct-connect/src/DirectConnectClient.ts index 8ee21cb788616..da566d12d2fcb 100644 --- a/clients/client-direct-connect/src/DirectConnectClient.ts +++ b/clients/client-direct-connect/src/DirectConnectClient.ts @@ -461,6 +461,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-direct-connect/src/endpoints.ts b/clients/client-direct-connect/src/endpoints.ts index dafb32b154dea..2508887731b4c 100644 --- a/clients/client-direct-connect/src/endpoints.ts +++ b/clients/client-direct-connect/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "directconnect", diff --git a/clients/client-direct-connect/src/runtimeConfig.browser.ts b/clients/client-direct-connect/src/runtimeConfig.browser.ts index 79a6b72e5975b..55962180e47fe 100644 --- a/clients/client-direct-connect/src/runtimeConfig.browser.ts +++ b/clients/client-direct-connect/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: DirectConnectClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-direct-connect/src/runtimeConfig.ts b/clients/client-direct-connect/src/runtimeConfig.ts index 2f4094b219629..9c266f9286fa0 100644 --- a/clients/client-direct-connect/src/runtimeConfig.ts +++ b/clients/client-direct-connect/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: DirectConnectClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-directory-service/src/DirectoryServiceClient.ts b/clients/client-directory-service/src/DirectoryServiceClient.ts index 6e2a71fdd7d64..28f9d9cc47aab 100644 --- a/clients/client-directory-service/src/DirectoryServiceClient.ts +++ b/clients/client-directory-service/src/DirectoryServiceClient.ts @@ -410,6 +410,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-directory-service/src/endpoints.ts b/clients/client-directory-service/src/endpoints.ts index 13d59f2b3159d..902fe3fe9966c 100644 --- a/clients/client-directory-service/src/endpoints.ts +++ b/clients/client-directory-service/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-ca-central-1": { @@ -87,7 +87,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "ds", diff --git a/clients/client-directory-service/src/runtimeConfig.browser.ts b/clients/client-directory-service/src/runtimeConfig.browser.ts index 98b966b8aba49..b813a4d224906 100644 --- a/clients/client-directory-service/src/runtimeConfig.browser.ts +++ b/clients/client-directory-service/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: DirectoryServiceClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-directory-service/src/runtimeConfig.ts b/clients/client-directory-service/src/runtimeConfig.ts index d420eba34bd2c..1214e80a0b23e 100644 --- a/clients/client-directory-service/src/runtimeConfig.ts +++ b/clients/client-directory-service/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: DirectoryServiceClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-dlm/src/DLMClient.ts b/clients/client-dlm/src/DLMClient.ts index dfebcc5a47f91..b1cba99caf1eb 100644 --- a/clients/client-dlm/src/DLMClient.ts +++ b/clients/client-dlm/src/DLMClient.ts @@ -176,6 +176,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-dlm/src/endpoints.ts b/clients/client-dlm/src/endpoints.ts index 1ec8eeb576ae3..a97e382e7a261 100644 --- a/clients/client-dlm/src/endpoints.ts +++ b/clients/client-dlm/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "dlm", diff --git a/clients/client-dlm/src/runtimeConfig.browser.ts b/clients/client-dlm/src/runtimeConfig.browser.ts index bdfa7bcf49655..6806d6d7f0bd7 100644 --- a/clients/client-dlm/src/runtimeConfig.browser.ts +++ b/clients/client-dlm/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: DLMClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-dlm/src/runtimeConfig.ts b/clients/client-dlm/src/runtimeConfig.ts index 1a27be7f7cf2a..bd44ef7ef2981 100644 --- a/clients/client-dlm/src/runtimeConfig.ts +++ b/clients/client-dlm/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: DLMClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-docdb/src/DocDBClient.ts b/clients/client-docdb/src/DocDBClient.ts index 122233341c659..3264d96ac68a6 100644 --- a/clients/client-docdb/src/DocDBClient.ts +++ b/clients/client-docdb/src/DocDBClient.ts @@ -416,6 +416,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-docdb/src/endpoints.ts b/clients/client-docdb/src/endpoints.ts index d1ea2a09c2193..8033fe8df7f70 100644 --- a/clients/client-docdb/src/endpoints.ts +++ b/clients/client-docdb/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "rds-fips.ca-central-1": { @@ -87,7 +87,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "rds", diff --git a/clients/client-docdb/src/runtimeConfig.browser.ts b/clients/client-docdb/src/runtimeConfig.browser.ts index 05fc6067dde53..41087020b427a 100644 --- a/clients/client-docdb/src/runtimeConfig.browser.ts +++ b/clients/client-docdb/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: DocDBClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-docdb/src/runtimeConfig.ts b/clients/client-docdb/src/runtimeConfig.ts index 3a488e4adeb8f..70a92a3e335dd 100644 --- a/clients/client-docdb/src/runtimeConfig.ts +++ b/clients/client-docdb/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: DocDBClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-dynamodb-streams/src/DynamoDBStreamsClient.ts b/clients/client-dynamodb-streams/src/DynamoDBStreamsClient.ts index a363f7b04b89c..5340a50603e06 100644 --- a/clients/client-dynamodb-streams/src/DynamoDBStreamsClient.ts +++ b/clients/client-dynamodb-streams/src/DynamoDBStreamsClient.ts @@ -149,6 +149,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-dynamodb-streams/src/endpoints.ts b/clients/client-dynamodb-streams/src/endpoints.ts index e7d8db489ace9..c9839030ed23d 100644 --- a/clients/client-dynamodb-streams/src/endpoints.ts +++ b/clients/client-dynamodb-streams/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "ca-central-1-fips": { @@ -92,7 +92,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "dynamodb", diff --git a/clients/client-dynamodb-streams/src/runtimeConfig.browser.ts b/clients/client-dynamodb-streams/src/runtimeConfig.browser.ts index 2b820f4e71e86..4cd0b6d257138 100644 --- a/clients/client-dynamodb-streams/src/runtimeConfig.browser.ts +++ b/clients/client-dynamodb-streams/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: DynamoDBStreamsClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-dynamodb-streams/src/runtimeConfig.ts b/clients/client-dynamodb-streams/src/runtimeConfig.ts index 90b3eb051f6b4..3aa980521dd56 100644 --- a/clients/client-dynamodb-streams/src/runtimeConfig.ts +++ b/clients/client-dynamodb-streams/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: DynamoDBStreamsClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-dynamodb/src/DynamoDBClient.ts b/clients/client-dynamodb/src/DynamoDBClient.ts index 2444d6907a2cd..fed0668aaafcb 100644 --- a/clients/client-dynamodb/src/DynamoDBClient.ts +++ b/clients/client-dynamodb/src/DynamoDBClient.ts @@ -347,6 +347,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-dynamodb/src/endpoints.ts b/clients/client-dynamodb/src/endpoints.ts index 888f13e83d4b6..b1fa57a95435e 100644 --- a/clients/client-dynamodb/src/endpoints.ts +++ b/clients/client-dynamodb/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "ca-central-1-fips": { @@ -92,7 +92,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "dynamodb", diff --git a/clients/client-dynamodb/src/runtimeConfig.browser.ts b/clients/client-dynamodb/src/runtimeConfig.browser.ts index 0326c8695a7f4..f1088b900a7c2 100644 --- a/clients/client-dynamodb/src/runtimeConfig.browser.ts +++ b/clients/client-dynamodb/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -36,6 +37,8 @@ export const getRuntimeConfig = (config: DynamoDBClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-dynamodb/src/runtimeConfig.ts b/clients/client-dynamodb/src/runtimeConfig.ts index 9db5bd40de834..4cfa3368b04dc 100644 --- a/clients/client-dynamodb/src/runtimeConfig.ts +++ b/clients/client-dynamodb/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_ENDPOINT_DISCOVERY_CONFIG_OPTIONS } from "@aws-sdk/middleware-endpoint-discovery"; @@ -43,6 +48,8 @@ export const getRuntimeConfig = (config: DynamoDBClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-ebs/src/EBSClient.ts b/clients/client-ebs/src/EBSClient.ts index 788779e56f1ae..36578da1121c2 100644 --- a/clients/client-ebs/src/EBSClient.ts +++ b/clients/client-ebs/src/EBSClient.ts @@ -155,6 +155,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-ebs/src/endpoints.ts b/clients/client-ebs/src/endpoints.ts index 003d4a9fe3b42..4f560105d61ed 100644 --- a/clients/client-ebs/src/endpoints.ts +++ b/clients/client-ebs/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-ca-central-1": { @@ -79,7 +79,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "ebs", diff --git a/clients/client-ebs/src/runtimeConfig.browser.ts b/clients/client-ebs/src/runtimeConfig.browser.ts index b3e5c60e6fce8..b79f632da8a40 100644 --- a/clients/client-ebs/src/runtimeConfig.browser.ts +++ b/clients/client-ebs/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: EBSClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-ebs/src/runtimeConfig.ts b/clients/client-ebs/src/runtimeConfig.ts index 13f556efd0ec5..fd16179ac2213 100644 --- a/clients/client-ebs/src/runtimeConfig.ts +++ b/clients/client-ebs/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: EBSClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-ec2-instance-connect/src/EC2InstanceConnectClient.ts b/clients/client-ec2-instance-connect/src/EC2InstanceConnectClient.ts index 2e033cfa42646..aa7a61d395388 100644 --- a/clients/client-ec2-instance-connect/src/EC2InstanceConnectClient.ts +++ b/clients/client-ec2-instance-connect/src/EC2InstanceConnectClient.ts @@ -142,6 +142,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-ec2-instance-connect/src/endpoints.ts b/clients/client-ec2-instance-connect/src/endpoints.ts index 23b3dd06ddb11..c21795d600aad 100644 --- a/clients/client-ec2-instance-connect/src/endpoints.ts +++ b/clients/client-ec2-instance-connect/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "ec2-instance-connect", diff --git a/clients/client-ec2-instance-connect/src/runtimeConfig.browser.ts b/clients/client-ec2-instance-connect/src/runtimeConfig.browser.ts index 87a3ec4e6abfc..939ea62eea884 100644 --- a/clients/client-ec2-instance-connect/src/runtimeConfig.browser.ts +++ b/clients/client-ec2-instance-connect/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: EC2InstanceConnectClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-ec2-instance-connect/src/runtimeConfig.ts b/clients/client-ec2-instance-connect/src/runtimeConfig.ts index 51d29f80eaf06..f9b423b29c456 100644 --- a/clients/client-ec2-instance-connect/src/runtimeConfig.ts +++ b/clients/client-ec2-instance-connect/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: EC2InstanceConnectClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-ec2/src/EC2Client.ts b/clients/client-ec2/src/EC2Client.ts index cb738a20013d9..ae0dc162a0faa 100644 --- a/clients/client-ec2/src/EC2Client.ts +++ b/clients/client-ec2/src/EC2Client.ts @@ -2672,6 +2672,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-ec2/src/endpoints.ts b/clients/client-ec2/src/endpoints.ts index 9843e07b5524e..6e22730f96a6b 100644 --- a/clients/client-ec2/src/endpoints.ts +++ b/clients/client-ec2/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-ca-central-1": { @@ -87,7 +87,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "ec2", diff --git a/clients/client-ec2/src/runtimeConfig.browser.ts b/clients/client-ec2/src/runtimeConfig.browser.ts index 6a3a248c1ae60..5e5a9927c14dd 100644 --- a/clients/client-ec2/src/runtimeConfig.browser.ts +++ b/clients/client-ec2/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: EC2ClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-ec2/src/runtimeConfig.ts b/clients/client-ec2/src/runtimeConfig.ts index 79d7da97d84af..cafc1b1a4c2aa 100644 --- a/clients/client-ec2/src/runtimeConfig.ts +++ b/clients/client-ec2/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: EC2ClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-ecr-public/src/ECRPUBLICClient.ts b/clients/client-ecr-public/src/ECRPUBLICClient.ts index 7f34f32883ea1..90551030503a4 100644 --- a/clients/client-ecr-public/src/ECRPUBLICClient.ts +++ b/clients/client-ecr-public/src/ECRPUBLICClient.ts @@ -245,6 +245,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-ecr-public/src/endpoints.ts b/clients/client-ecr-public/src/endpoints.ts index da19fd8575713..d891f1a5c011d 100644 --- a/clients/client-ecr-public/src/endpoints.ts +++ b/clients/client-ecr-public/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "ecr-public", diff --git a/clients/client-ecr-public/src/runtimeConfig.browser.ts b/clients/client-ecr-public/src/runtimeConfig.browser.ts index 7da388b31f6aa..fcf74d09de8b7 100644 --- a/clients/client-ecr-public/src/runtimeConfig.browser.ts +++ b/clients/client-ecr-public/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ECRPUBLICClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-ecr-public/src/runtimeConfig.ts b/clients/client-ecr-public/src/runtimeConfig.ts index 7d6bcd6859e40..7ad11bed74915 100644 --- a/clients/client-ecr-public/src/runtimeConfig.ts +++ b/clients/client-ecr-public/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ECRPUBLICClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-ecr/src/ECRClient.ts b/clients/client-ecr/src/ECRClient.ts index ae9a6d7b307c5..0f414965b515a 100644 --- a/clients/client-ecr/src/ECRClient.ts +++ b/clients/client-ecr/src/ECRClient.ts @@ -299,6 +299,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-ecr/src/endpoints.ts b/clients/client-ecr/src/endpoints.ts index e01c816074244..d2b20bfc84c35 100644 --- a/clients/client-ecr/src/endpoints.ts +++ b/clients/client-ecr/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "af-south-1": { @@ -229,7 +229,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "ecr", diff --git a/clients/client-ecr/src/runtimeConfig.browser.ts b/clients/client-ecr/src/runtimeConfig.browser.ts index 8ee11d439ded8..91cd8e0622b1f 100644 --- a/clients/client-ecr/src/runtimeConfig.browser.ts +++ b/clients/client-ecr/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ECRClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-ecr/src/runtimeConfig.ts b/clients/client-ecr/src/runtimeConfig.ts index a81812d2eb7b8..feca80bde91f3 100644 --- a/clients/client-ecr/src/runtimeConfig.ts +++ b/clients/client-ecr/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ECRClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-ecs/src/ECSClient.ts b/clients/client-ecs/src/ECSClient.ts index 291bb7303c109..272faee3f9f0b 100644 --- a/clients/client-ecs/src/ECSClient.ts +++ b/clients/client-ecs/src/ECSClient.ts @@ -371,6 +371,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-ecs/src/endpoints.ts b/clients/client-ecs/src/endpoints.ts index 1cfce674f6fd3..37cdb7b8a7932 100644 --- a/clients/client-ecs/src/endpoints.ts +++ b/clients/client-ecs/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "ecs", diff --git a/clients/client-ecs/src/runtimeConfig.browser.ts b/clients/client-ecs/src/runtimeConfig.browser.ts index d825c2cec9dd0..8f04ca4aadef8 100644 --- a/clients/client-ecs/src/runtimeConfig.browser.ts +++ b/clients/client-ecs/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ECSClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-ecs/src/runtimeConfig.ts b/clients/client-ecs/src/runtimeConfig.ts index fca51fa852894..01e6fe3ae0ca2 100644 --- a/clients/client-ecs/src/runtimeConfig.ts +++ b/clients/client-ecs/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ECSClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-efs/src/EFSClient.ts b/clients/client-efs/src/EFSClient.ts index ff65555e386b7..6ec5156665131 100644 --- a/clients/client-efs/src/EFSClient.ts +++ b/clients/client-efs/src/EFSClient.ts @@ -260,6 +260,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-efs/src/endpoints.ts b/clients/client-efs/src/endpoints.ts index c3313c0bd42de..d56e11f352bdf 100644 --- a/clients/client-efs/src/endpoints.ts +++ b/clients/client-efs/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-af-south-1": { @@ -179,7 +179,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "elasticfilesystem", diff --git a/clients/client-efs/src/runtimeConfig.browser.ts b/clients/client-efs/src/runtimeConfig.browser.ts index b39caaa44ddbd..f74779984f678 100644 --- a/clients/client-efs/src/runtimeConfig.browser.ts +++ b/clients/client-efs/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: EFSClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-efs/src/runtimeConfig.ts b/clients/client-efs/src/runtimeConfig.ts index 8166758491372..0dfbcda603458 100644 --- a/clients/client-efs/src/runtimeConfig.ts +++ b/clients/client-efs/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: EFSClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-eks/src/EKSClient.ts b/clients/client-eks/src/EKSClient.ts index d1654b89b46a8..c39cdcd0c748a 100644 --- a/clients/client-eks/src/EKSClient.ts +++ b/clients/client-eks/src/EKSClient.ts @@ -284,6 +284,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-eks/src/endpoints.ts b/clients/client-eks/src/endpoints.ts index c4a309d4066d3..c1a7649985528 100644 --- a/clients/client-eks/src/endpoints.ts +++ b/clients/client-eks/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "eks", diff --git a/clients/client-eks/src/runtimeConfig.browser.ts b/clients/client-eks/src/runtimeConfig.browser.ts index c0e6192418989..553cb5282c400 100644 --- a/clients/client-eks/src/runtimeConfig.browser.ts +++ b/clients/client-eks/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: EKSClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-eks/src/runtimeConfig.ts b/clients/client-eks/src/runtimeConfig.ts index 53963a00b7b66..33fa9ee94ec9f 100644 --- a/clients/client-eks/src/runtimeConfig.ts +++ b/clients/client-eks/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: EKSClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-elastic-beanstalk/src/ElasticBeanstalkClient.ts b/clients/client-elastic-beanstalk/src/ElasticBeanstalkClient.ts index 87c8d07226ef9..f984da5dd3a20 100644 --- a/clients/client-elastic-beanstalk/src/ElasticBeanstalkClient.ts +++ b/clients/client-elastic-beanstalk/src/ElasticBeanstalkClient.ts @@ -395,6 +395,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-elastic-beanstalk/src/endpoints.ts b/clients/client-elastic-beanstalk/src/endpoints.ts index 930d21c565c1f..6cb0a7e1b4afc 100644 --- a/clients/client-elastic-beanstalk/src/endpoints.ts +++ b/clients/client-elastic-beanstalk/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "elasticbeanstalk", diff --git a/clients/client-elastic-beanstalk/src/runtimeConfig.browser.ts b/clients/client-elastic-beanstalk/src/runtimeConfig.browser.ts index 92b661bc913d4..cd1619a716dab 100644 --- a/clients/client-elastic-beanstalk/src/runtimeConfig.browser.ts +++ b/clients/client-elastic-beanstalk/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ElasticBeanstalkClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-elastic-beanstalk/src/runtimeConfig.ts b/clients/client-elastic-beanstalk/src/runtimeConfig.ts index 3b711aab2e06a..4653fde199455 100644 --- a/clients/client-elastic-beanstalk/src/runtimeConfig.ts +++ b/clients/client-elastic-beanstalk/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ElasticBeanstalkClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-elastic-inference/src/ElasticInferenceClient.ts b/clients/client-elastic-inference/src/ElasticInferenceClient.ts index aae4a4c447e80..6365e144a3c1f 100644 --- a/clients/client-elastic-inference/src/ElasticInferenceClient.ts +++ b/clients/client-elastic-inference/src/ElasticInferenceClient.ts @@ -167,6 +167,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-elastic-inference/src/endpoints.ts b/clients/client-elastic-inference/src/endpoints.ts index 10c3454804f70..38015723b879b 100644 --- a/clients/client-elastic-inference/src/endpoints.ts +++ b/clients/client-elastic-inference/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "ap-northeast-1": { @@ -72,7 +72,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "elastic-inference", diff --git a/clients/client-elastic-inference/src/runtimeConfig.browser.ts b/clients/client-elastic-inference/src/runtimeConfig.browser.ts index 7123290b21c7c..0529b12fc652e 100644 --- a/clients/client-elastic-inference/src/runtimeConfig.browser.ts +++ b/clients/client-elastic-inference/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ElasticInferenceClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-elastic-inference/src/runtimeConfig.ts b/clients/client-elastic-inference/src/runtimeConfig.ts index 5f8e6cb6b344c..f7962022399cd 100644 --- a/clients/client-elastic-inference/src/runtimeConfig.ts +++ b/clients/client-elastic-inference/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ElasticInferenceClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-elastic-load-balancing-v2/src/ElasticLoadBalancingV2Client.ts b/clients/client-elastic-load-balancing-v2/src/ElasticLoadBalancingV2Client.ts index 33e25018833e4..e915578e9b161 100644 --- a/clients/client-elastic-load-balancing-v2/src/ElasticLoadBalancingV2Client.ts +++ b/clients/client-elastic-load-balancing-v2/src/ElasticLoadBalancingV2Client.ts @@ -275,6 +275,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-elastic-load-balancing-v2/src/endpoints.ts b/clients/client-elastic-load-balancing-v2/src/endpoints.ts index 74b3a37914872..ea17fc023c2dc 100644 --- a/clients/client-elastic-load-balancing-v2/src/endpoints.ts +++ b/clients/client-elastic-load-balancing-v2/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "elasticloadbalancing", diff --git a/clients/client-elastic-load-balancing-v2/src/runtimeConfig.browser.ts b/clients/client-elastic-load-balancing-v2/src/runtimeConfig.browser.ts index c046b49a59c7a..ac968962caf47 100644 --- a/clients/client-elastic-load-balancing-v2/src/runtimeConfig.browser.ts +++ b/clients/client-elastic-load-balancing-v2/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ElasticLoadBalancingV2ClientConfig) => retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-elastic-load-balancing-v2/src/runtimeConfig.ts b/clients/client-elastic-load-balancing-v2/src/runtimeConfig.ts index 37d9c1394e423..b28f64f099d08 100644 --- a/clients/client-elastic-load-balancing-v2/src/runtimeConfig.ts +++ b/clients/client-elastic-load-balancing-v2/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ElasticLoadBalancingV2ClientConfig) => retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-elastic-load-balancing/src/ElasticLoadBalancingClient.ts b/clients/client-elastic-load-balancing/src/ElasticLoadBalancingClient.ts index eb1cb6778ad30..9cea36078bbaf 100644 --- a/clients/client-elastic-load-balancing/src/ElasticLoadBalancingClient.ts +++ b/clients/client-elastic-load-balancing/src/ElasticLoadBalancingClient.ts @@ -296,6 +296,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-elastic-load-balancing/src/endpoints.ts b/clients/client-elastic-load-balancing/src/endpoints.ts index 74b3a37914872..ea17fc023c2dc 100644 --- a/clients/client-elastic-load-balancing/src/endpoints.ts +++ b/clients/client-elastic-load-balancing/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "elasticloadbalancing", diff --git a/clients/client-elastic-load-balancing/src/runtimeConfig.browser.ts b/clients/client-elastic-load-balancing/src/runtimeConfig.browser.ts index 9ff3f2c2b4ef2..d9f2dd323522f 100644 --- a/clients/client-elastic-load-balancing/src/runtimeConfig.browser.ts +++ b/clients/client-elastic-load-balancing/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ElasticLoadBalancingClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-elastic-load-balancing/src/runtimeConfig.ts b/clients/client-elastic-load-balancing/src/runtimeConfig.ts index aa5c5c92f3806..0df0b649d420d 100644 --- a/clients/client-elastic-load-balancing/src/runtimeConfig.ts +++ b/clients/client-elastic-load-balancing/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ElasticLoadBalancingClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-elastic-transcoder/src/ElasticTranscoderClient.ts b/clients/client-elastic-transcoder/src/ElasticTranscoderClient.ts index 3b936e1e41ee8..84588cc106841 100644 --- a/clients/client-elastic-transcoder/src/ElasticTranscoderClient.ts +++ b/clients/client-elastic-transcoder/src/ElasticTranscoderClient.ts @@ -194,6 +194,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-elastic-transcoder/src/endpoints.ts b/clients/client-elastic-transcoder/src/endpoints.ts index dff2c2e54e845..29bb2de8d9452 100644 --- a/clients/client-elastic-transcoder/src/endpoints.ts +++ b/clients/client-elastic-transcoder/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "elastictranscoder", diff --git a/clients/client-elastic-transcoder/src/runtimeConfig.browser.ts b/clients/client-elastic-transcoder/src/runtimeConfig.browser.ts index e51b0dbcf3728..ba3c09454ab6d 100644 --- a/clients/client-elastic-transcoder/src/runtimeConfig.browser.ts +++ b/clients/client-elastic-transcoder/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ElasticTranscoderClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-elastic-transcoder/src/runtimeConfig.ts b/clients/client-elastic-transcoder/src/runtimeConfig.ts index fe60b87c5240b..cbfc7ac8c16dc 100644 --- a/clients/client-elastic-transcoder/src/runtimeConfig.ts +++ b/clients/client-elastic-transcoder/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ElasticTranscoderClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-elasticache/src/ElastiCacheClient.ts b/clients/client-elasticache/src/ElastiCacheClient.ts index a3cb4a2acfddd..4f9e6db5e51e2 100644 --- a/clients/client-elasticache/src/ElastiCacheClient.ts +++ b/clients/client-elasticache/src/ElastiCacheClient.ts @@ -464,6 +464,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-elasticache/src/endpoints.ts b/clients/client-elasticache/src/endpoints.ts index 57002284c7c95..0f079a63e858b 100644 --- a/clients/client-elasticache/src/endpoints.ts +++ b/clients/client-elasticache/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { fips: { @@ -59,7 +59,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "elasticache", diff --git a/clients/client-elasticache/src/runtimeConfig.browser.ts b/clients/client-elasticache/src/runtimeConfig.browser.ts index f68d9e36902c1..a0046ec7493ea 100644 --- a/clients/client-elasticache/src/runtimeConfig.browser.ts +++ b/clients/client-elasticache/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ElastiCacheClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-elasticache/src/runtimeConfig.ts b/clients/client-elasticache/src/runtimeConfig.ts index 7f36be2f39c05..8b33bf048625c 100644 --- a/clients/client-elasticache/src/runtimeConfig.ts +++ b/clients/client-elasticache/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ElastiCacheClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-elasticsearch-service/src/ElasticsearchServiceClient.ts b/clients/client-elasticsearch-service/src/ElasticsearchServiceClient.ts index bc08720e85a63..d3d056fc5c289 100644 --- a/clients/client-elasticsearch-service/src/ElasticsearchServiceClient.ts +++ b/clients/client-elasticsearch-service/src/ElasticsearchServiceClient.ts @@ -341,6 +341,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-elasticsearch-service/src/endpoints.ts b/clients/client-elasticsearch-service/src/endpoints.ts index b682e53831beb..4042a8f4e9180 100644 --- a/clients/client-elasticsearch-service/src/endpoints.ts +++ b/clients/client-elasticsearch-service/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { fips: { @@ -59,7 +59,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "es", diff --git a/clients/client-elasticsearch-service/src/runtimeConfig.browser.ts b/clients/client-elasticsearch-service/src/runtimeConfig.browser.ts index 62faa601518eb..21bb2e57fa6f4 100644 --- a/clients/client-elasticsearch-service/src/runtimeConfig.browser.ts +++ b/clients/client-elasticsearch-service/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ElasticsearchServiceClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-elasticsearch-service/src/runtimeConfig.ts b/clients/client-elasticsearch-service/src/runtimeConfig.ts index e71435d3918d2..2f963b1f813ad 100644 --- a/clients/client-elasticsearch-service/src/runtimeConfig.ts +++ b/clients/client-elasticsearch-service/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ElasticsearchServiceClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-emr-containers/src/EMRContainersClient.ts b/clients/client-emr-containers/src/EMRContainersClient.ts index 4e9855d2ceca1..0cf57c1386aa3 100644 --- a/clients/client-emr-containers/src/EMRContainersClient.ts +++ b/clients/client-emr-containers/src/EMRContainersClient.ts @@ -209,6 +209,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-emr-containers/src/endpoints.ts b/clients/client-emr-containers/src/endpoints.ts index 3c27cb837c816..74da35c041b37 100644 --- a/clients/client-emr-containers/src/endpoints.ts +++ b/clients/client-emr-containers/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-ca-central-1": { @@ -79,7 +79,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "emr-containers", diff --git a/clients/client-emr-containers/src/runtimeConfig.browser.ts b/clients/client-emr-containers/src/runtimeConfig.browser.ts index 3208209ccad51..ebdc274770433 100644 --- a/clients/client-emr-containers/src/runtimeConfig.browser.ts +++ b/clients/client-emr-containers/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: EMRContainersClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-emr-containers/src/runtimeConfig.ts b/clients/client-emr-containers/src/runtimeConfig.ts index d12529f9ca21a..b2cbeb66275a9 100644 --- a/clients/client-emr-containers/src/runtimeConfig.ts +++ b/clients/client-emr-containers/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: EMRContainersClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-emr/src/EMRClient.ts b/clients/client-emr/src/EMRClient.ts index 376acfc0945a2..19091b0a31748 100644 --- a/clients/client-emr/src/EMRClient.ts +++ b/clients/client-emr/src/EMRClient.ts @@ -380,6 +380,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-emr/src/endpoints.ts b/clients/client-emr/src/endpoints.ts index 7819aba1ee389..6d1f13b802793 100644 --- a/clients/client-emr/src/endpoints.ts +++ b/clients/client-emr/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-ca-central-1": { @@ -87,7 +87,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "elasticmapreduce", diff --git a/clients/client-emr/src/runtimeConfig.browser.ts b/clients/client-emr/src/runtimeConfig.browser.ts index 8a7d2465624c1..d1d06a752e295 100644 --- a/clients/client-emr/src/runtimeConfig.browser.ts +++ b/clients/client-emr/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: EMRClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-emr/src/runtimeConfig.ts b/clients/client-emr/src/runtimeConfig.ts index 23d0dbc899f53..18c38ef2cef9e 100644 --- a/clients/client-emr/src/runtimeConfig.ts +++ b/clients/client-emr/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: EMRClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-eventbridge/src/EventBridgeClient.ts b/clients/client-eventbridge/src/EventBridgeClient.ts index ed5b3ba5866d9..0e508488f20f4 100644 --- a/clients/client-eventbridge/src/EventBridgeClient.ts +++ b/clients/client-eventbridge/src/EventBridgeClient.ts @@ -338,6 +338,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-eventbridge/src/endpoints.ts b/clients/client-eventbridge/src/endpoints.ts index 65fcfebb54ac7..29477f977b97f 100644 --- a/clients/client-eventbridge/src/endpoints.ts +++ b/clients/client-eventbridge/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "events", diff --git a/clients/client-eventbridge/src/runtimeConfig.browser.ts b/clients/client-eventbridge/src/runtimeConfig.browser.ts index 9db7490cb8378..310303850fda4 100644 --- a/clients/client-eventbridge/src/runtimeConfig.browser.ts +++ b/clients/client-eventbridge/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: EventBridgeClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-eventbridge/src/runtimeConfig.ts b/clients/client-eventbridge/src/runtimeConfig.ts index 8a19742195dce..776bcd820a1ce 100644 --- a/clients/client-eventbridge/src/runtimeConfig.ts +++ b/clients/client-eventbridge/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: EventBridgeClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-finspace-data/src/FinspaceDataClient.ts b/clients/client-finspace-data/src/FinspaceDataClient.ts index dd74c37bb59d1..f9595464ea190 100644 --- a/clients/client-finspace-data/src/FinspaceDataClient.ts +++ b/clients/client-finspace-data/src/FinspaceDataClient.ts @@ -149,6 +149,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-finspace-data/src/endpoints.ts b/clients/client-finspace-data/src/endpoints.ts index 436c15b0efa23..713e4989dd099 100644 --- a/clients/client-finspace-data/src/endpoints.ts +++ b/clients/client-finspace-data/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "finspace-api", diff --git a/clients/client-finspace-data/src/runtimeConfig.browser.ts b/clients/client-finspace-data/src/runtimeConfig.browser.ts index 3ccd11b955ac7..f9b1fc51a7169 100644 --- a/clients/client-finspace-data/src/runtimeConfig.browser.ts +++ b/clients/client-finspace-data/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: FinspaceDataClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-finspace-data/src/runtimeConfig.ts b/clients/client-finspace-data/src/runtimeConfig.ts index 27b3beef3f978..887e3d791c799 100644 --- a/clients/client-finspace-data/src/runtimeConfig.ts +++ b/clients/client-finspace-data/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: FinspaceDataClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-finspace/src/FinspaceClient.ts b/clients/client-finspace/src/FinspaceClient.ts index 3854067c1fb7f..96cb8b92ec53b 100644 --- a/clients/client-finspace/src/FinspaceClient.ts +++ b/clients/client-finspace/src/FinspaceClient.ts @@ -164,6 +164,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-finspace/src/endpoints.ts b/clients/client-finspace/src/endpoints.ts index 05ba867ec574a..348bbb586b10b 100644 --- a/clients/client-finspace/src/endpoints.ts +++ b/clients/client-finspace/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "finspace", diff --git a/clients/client-finspace/src/runtimeConfig.browser.ts b/clients/client-finspace/src/runtimeConfig.browser.ts index 9b0f7a56e2abc..583d8af4062a3 100644 --- a/clients/client-finspace/src/runtimeConfig.browser.ts +++ b/clients/client-finspace/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: FinspaceClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-finspace/src/runtimeConfig.ts b/clients/client-finspace/src/runtimeConfig.ts index 718edb00e4e49..b8928e5a13d3a 100644 --- a/clients/client-finspace/src/runtimeConfig.ts +++ b/clients/client-finspace/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: FinspaceClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-firehose/src/FirehoseClient.ts b/clients/client-firehose/src/FirehoseClient.ts index a2104a1ac9d66..f38c759b69768 100644 --- a/clients/client-firehose/src/FirehoseClient.ts +++ b/clients/client-firehose/src/FirehoseClient.ts @@ -197,6 +197,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-firehose/src/endpoints.ts b/clients/client-firehose/src/endpoints.ts index 9398deb342b4b..12bcaba0b1663 100644 --- a/clients/client-firehose/src/endpoints.ts +++ b/clients/client-firehose/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "firehose", diff --git a/clients/client-firehose/src/runtimeConfig.browser.ts b/clients/client-firehose/src/runtimeConfig.browser.ts index e9650b8a16f2e..2deb24cdf4e83 100644 --- a/clients/client-firehose/src/runtimeConfig.browser.ts +++ b/clients/client-firehose/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: FirehoseClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-firehose/src/runtimeConfig.ts b/clients/client-firehose/src/runtimeConfig.ts index 5f025b62e1b94..42642f26a2d94 100644 --- a/clients/client-firehose/src/runtimeConfig.ts +++ b/clients/client-firehose/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: FirehoseClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-fis/src/FisClient.ts b/clients/client-fis/src/FisClient.ts index 7bd03025cfa14..2620f22900560 100644 --- a/clients/client-fis/src/FisClient.ts +++ b/clients/client-fis/src/FisClient.ts @@ -197,6 +197,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-fis/src/endpoints.ts b/clients/client-fis/src/endpoints.ts index 021347e48465b..2dfb68524ef44 100644 --- a/clients/client-fis/src/endpoints.ts +++ b/clients/client-fis/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "fis", diff --git a/clients/client-fis/src/runtimeConfig.browser.ts b/clients/client-fis/src/runtimeConfig.browser.ts index 6d8edfa9af1ac..00c1494338b70 100644 --- a/clients/client-fis/src/runtimeConfig.browser.ts +++ b/clients/client-fis/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: FisClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-fis/src/runtimeConfig.ts b/clients/client-fis/src/runtimeConfig.ts index a433685c81909..924d34ab94d0c 100644 --- a/clients/client-fis/src/runtimeConfig.ts +++ b/clients/client-fis/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: FisClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-fms/src/FMSClient.ts b/clients/client-fms/src/FMSClient.ts index f77ec26f66c52..2540c048df1e3 100644 --- a/clients/client-fms/src/FMSClient.ts +++ b/clients/client-fms/src/FMSClient.ts @@ -248,6 +248,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-fms/src/endpoints.ts b/clients/client-fms/src/endpoints.ts index 22112eb64bb77..b69b67327c9d9 100644 --- a/clients/client-fms/src/endpoints.ts +++ b/clients/client-fms/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-af-south-1": { @@ -157,7 +157,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "fms", diff --git a/clients/client-fms/src/runtimeConfig.browser.ts b/clients/client-fms/src/runtimeConfig.browser.ts index 071a799d194cf..79cb6cb3d74d4 100644 --- a/clients/client-fms/src/runtimeConfig.browser.ts +++ b/clients/client-fms/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: FMSClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-fms/src/runtimeConfig.ts b/clients/client-fms/src/runtimeConfig.ts index 02abc9b031371..9dcbc2af57f4c 100644 --- a/clients/client-fms/src/runtimeConfig.ts +++ b/clients/client-fms/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: FMSClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-forecast/src/ForecastClient.ts b/clients/client-forecast/src/ForecastClient.ts index e3edfa387637b..f5e2575a18399 100644 --- a/clients/client-forecast/src/ForecastClient.ts +++ b/clients/client-forecast/src/ForecastClient.ts @@ -284,6 +284,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-forecast/src/endpoints.ts b/clients/client-forecast/src/endpoints.ts index cc657d80edeed..ecb42c5c9072b 100644 --- a/clients/client-forecast/src/endpoints.ts +++ b/clients/client-forecast/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -69,7 +69,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "forecast", diff --git a/clients/client-forecast/src/runtimeConfig.browser.ts b/clients/client-forecast/src/runtimeConfig.browser.ts index 05d393271820d..b9c60b2bd4f95 100644 --- a/clients/client-forecast/src/runtimeConfig.browser.ts +++ b/clients/client-forecast/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ForecastClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-forecast/src/runtimeConfig.ts b/clients/client-forecast/src/runtimeConfig.ts index 090dc7f9b9c32..5245a22b2be6e 100644 --- a/clients/client-forecast/src/runtimeConfig.ts +++ b/clients/client-forecast/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ForecastClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-forecastquery/src/ForecastqueryClient.ts b/clients/client-forecastquery/src/ForecastqueryClient.ts index 063c44fe394ec..55c72807dc952 100644 --- a/clients/client-forecastquery/src/ForecastqueryClient.ts +++ b/clients/client-forecastquery/src/ForecastqueryClient.ts @@ -138,6 +138,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-forecastquery/src/endpoints.ts b/clients/client-forecastquery/src/endpoints.ts index e982dc0d4db2f..448f7572374b4 100644 --- a/clients/client-forecastquery/src/endpoints.ts +++ b/clients/client-forecastquery/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -69,7 +69,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "forecast", diff --git a/clients/client-forecastquery/src/runtimeConfig.browser.ts b/clients/client-forecastquery/src/runtimeConfig.browser.ts index 8a4d9313deb1f..904ad20612a75 100644 --- a/clients/client-forecastquery/src/runtimeConfig.browser.ts +++ b/clients/client-forecastquery/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ForecastqueryClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-forecastquery/src/runtimeConfig.ts b/clients/client-forecastquery/src/runtimeConfig.ts index e9ec1ef90efcf..e269a1e70d3e2 100644 --- a/clients/client-forecastquery/src/runtimeConfig.ts +++ b/clients/client-forecastquery/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ForecastqueryClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-frauddetector/src/FraudDetectorClient.ts b/clients/client-frauddetector/src/FraudDetectorClient.ts index 66317f0b49f1d..9f427aa7e9d25 100644 --- a/clients/client-frauddetector/src/FraudDetectorClient.ts +++ b/clients/client-frauddetector/src/FraudDetectorClient.ts @@ -398,6 +398,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-frauddetector/src/endpoints.ts b/clients/client-frauddetector/src/endpoints.ts index 4ed80976cbb2f..944affde588b1 100644 --- a/clients/client-frauddetector/src/endpoints.ts +++ b/clients/client-frauddetector/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "frauddetector", diff --git a/clients/client-frauddetector/src/runtimeConfig.browser.ts b/clients/client-frauddetector/src/runtimeConfig.browser.ts index d6f61ce57248e..e4a43a91a8c1e 100644 --- a/clients/client-frauddetector/src/runtimeConfig.browser.ts +++ b/clients/client-frauddetector/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: FraudDetectorClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-frauddetector/src/runtimeConfig.ts b/clients/client-frauddetector/src/runtimeConfig.ts index 7d6570034f2d8..4e0be3fd42433 100644 --- a/clients/client-frauddetector/src/runtimeConfig.ts +++ b/clients/client-frauddetector/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: FraudDetectorClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-fsx/src/FSxClient.ts b/clients/client-fsx/src/FSxClient.ts index 0c747bef36159..2a054f975bae8 100644 --- a/clients/client-fsx/src/FSxClient.ts +++ b/clients/client-fsx/src/FSxClient.ts @@ -260,6 +260,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-fsx/src/endpoints.ts b/clients/client-fsx/src/endpoints.ts index 110366bfdaf46..22e06563e083e 100644 --- a/clients/client-fsx/src/endpoints.ts +++ b/clients/client-fsx/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-prod-ca-central-1": { @@ -87,7 +87,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "fsx", diff --git a/clients/client-fsx/src/runtimeConfig.browser.ts b/clients/client-fsx/src/runtimeConfig.browser.ts index 09c4857d2569b..b8840755c0b5f 100644 --- a/clients/client-fsx/src/runtimeConfig.browser.ts +++ b/clients/client-fsx/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: FSxClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-fsx/src/runtimeConfig.ts b/clients/client-fsx/src/runtimeConfig.ts index 7022cf28da6f9..a5b8f0aee2d21 100644 --- a/clients/client-fsx/src/runtimeConfig.ts +++ b/clients/client-fsx/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: FSxClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-gamelift/src/GameLiftClient.ts b/clients/client-gamelift/src/GameLiftClient.ts index 8f7d736adda60..3980517b57a5f 100644 --- a/clients/client-gamelift/src/GameLiftClient.ts +++ b/clients/client-gamelift/src/GameLiftClient.ts @@ -593,6 +593,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-gamelift/src/endpoints.ts b/clients/client-gamelift/src/endpoints.ts index 51bab7db70816..12ee60bfbb43b 100644 --- a/clients/client-gamelift/src/endpoints.ts +++ b/clients/client-gamelift/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "gamelift", diff --git a/clients/client-gamelift/src/runtimeConfig.browser.ts b/clients/client-gamelift/src/runtimeConfig.browser.ts index aa5d454a709ae..28ed639d7431b 100644 --- a/clients/client-gamelift/src/runtimeConfig.browser.ts +++ b/clients/client-gamelift/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: GameLiftClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-gamelift/src/runtimeConfig.ts b/clients/client-gamelift/src/runtimeConfig.ts index f2ecdb52af173..dd82255fcd524 100644 --- a/clients/client-gamelift/src/runtimeConfig.ts +++ b/clients/client-gamelift/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: GameLiftClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-glacier/src/GlacierClient.ts b/clients/client-glacier/src/GlacierClient.ts index b9869bae1865f..5d47cf9c83833 100644 --- a/clients/client-glacier/src/GlacierClient.ts +++ b/clients/client-glacier/src/GlacierClient.ts @@ -286,6 +286,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-glacier/src/endpoints.ts b/clients/client-glacier/src/endpoints.ts index 19ccd6352a6c8..434fe0f0aaf77 100644 --- a/clients/client-glacier/src/endpoints.ts +++ b/clients/client-glacier/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-ca-central-1": { @@ -87,7 +87,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "glacier", diff --git a/clients/client-glacier/src/runtimeConfig.browser.ts b/clients/client-glacier/src/runtimeConfig.browser.ts index 042a0a091e43b..353418568b9be 100644 --- a/clients/client-glacier/src/runtimeConfig.browser.ts +++ b/clients/client-glacier/src/runtimeConfig.browser.ts @@ -3,6 +3,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; import { bodyChecksumGenerator } from "@aws-sdk/body-checksum-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -37,6 +38,8 @@ export const getRuntimeConfig = (config: GlacierClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-glacier/src/runtimeConfig.ts b/clients/client-glacier/src/runtimeConfig.ts index 9bf5f017a9557..33ba1a2c23694 100644 --- a/clients/client-glacier/src/runtimeConfig.ts +++ b/clients/client-glacier/src/runtimeConfig.ts @@ -3,7 +3,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { bodyChecksumGenerator } from "@aws-sdk/body-checksum-node"; import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -42,6 +47,8 @@ export const getRuntimeConfig = (config: GlacierClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-global-accelerator/src/GlobalAcceleratorClient.ts b/clients/client-global-accelerator/src/GlobalAcceleratorClient.ts index 6c0d1b0ceb07e..7676a6d8946f5 100644 --- a/clients/client-global-accelerator/src/GlobalAcceleratorClient.ts +++ b/clients/client-global-accelerator/src/GlobalAcceleratorClient.ts @@ -371,6 +371,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-global-accelerator/src/endpoints.ts b/clients/client-global-accelerator/src/endpoints.ts index 2669806437aac..dc37417613de2 100644 --- a/clients/client-global-accelerator/src/endpoints.ts +++ b/clients/client-global-accelerator/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "globalaccelerator", diff --git a/clients/client-global-accelerator/src/runtimeConfig.browser.ts b/clients/client-global-accelerator/src/runtimeConfig.browser.ts index 8effacc3ee6db..1b69efb597639 100644 --- a/clients/client-global-accelerator/src/runtimeConfig.browser.ts +++ b/clients/client-global-accelerator/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: GlobalAcceleratorClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-global-accelerator/src/runtimeConfig.ts b/clients/client-global-accelerator/src/runtimeConfig.ts index 5e9532571a09a..4c85484ff9983 100644 --- a/clients/client-global-accelerator/src/runtimeConfig.ts +++ b/clients/client-global-accelerator/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: GlobalAcceleratorClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-glue/src/GlueClient.ts b/clients/client-glue/src/GlueClient.ts index f878f3018c4e0..9dfdef316a4e6 100644 --- a/clients/client-glue/src/GlueClient.ts +++ b/clients/client-glue/src/GlueClient.ts @@ -776,6 +776,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-glue/src/endpoints.ts b/clients/client-glue/src/endpoints.ts index 44721f874b90d..d5e94d5865fbc 100644 --- a/clients/client-glue/src/endpoints.ts +++ b/clients/client-glue/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "glue", diff --git a/clients/client-glue/src/runtimeConfig.browser.ts b/clients/client-glue/src/runtimeConfig.browser.ts index 2a76b9c1505c1..2982907635ad5 100644 --- a/clients/client-glue/src/runtimeConfig.browser.ts +++ b/clients/client-glue/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: GlueClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-glue/src/runtimeConfig.ts b/clients/client-glue/src/runtimeConfig.ts index 6383857a68e53..f524c3bf3a147 100644 --- a/clients/client-glue/src/runtimeConfig.ts +++ b/clients/client-glue/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: GlueClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-grafana/src/GrafanaClient.ts b/clients/client-grafana/src/GrafanaClient.ts index 5b5c084a4f470..a2981558a16e0 100644 --- a/clients/client-grafana/src/GrafanaClient.ts +++ b/clients/client-grafana/src/GrafanaClient.ts @@ -179,6 +179,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-grafana/src/endpoints.ts b/clients/client-grafana/src/endpoints.ts index e4b0adb4e401f..91d839c94d74f 100644 --- a/clients/client-grafana/src/endpoints.ts +++ b/clients/client-grafana/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "ap-northeast-1": { @@ -94,7 +94,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "grafana", diff --git a/clients/client-grafana/src/runtimeConfig.browser.ts b/clients/client-grafana/src/runtimeConfig.browser.ts index af3776989af80..ed4c95fa4d4fa 100644 --- a/clients/client-grafana/src/runtimeConfig.browser.ts +++ b/clients/client-grafana/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: GrafanaClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-grafana/src/runtimeConfig.ts b/clients/client-grafana/src/runtimeConfig.ts index dae6954f84846..5f38e78521b7d 100644 --- a/clients/client-grafana/src/runtimeConfig.ts +++ b/clients/client-grafana/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: GrafanaClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-greengrass/src/GreengrassClient.ts b/clients/client-greengrass/src/GreengrassClient.ts index 1eb0ad6ac218b..26867a73b5a30 100644 --- a/clients/client-greengrass/src/GreengrassClient.ts +++ b/clients/client-greengrass/src/GreengrassClient.ts @@ -641,6 +641,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-greengrass/src/endpoints.ts b/clients/client-greengrass/src/endpoints.ts index 081bb5577d7e5..de25d3f5a2e41 100644 --- a/clients/client-greengrass/src/endpoints.ts +++ b/clients/client-greengrass/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "dataplane-us-gov-east-1": { @@ -80,7 +80,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "greengrass", diff --git a/clients/client-greengrass/src/runtimeConfig.browser.ts b/clients/client-greengrass/src/runtimeConfig.browser.ts index 8faf49ddb653d..537bc8ac9567d 100644 --- a/clients/client-greengrass/src/runtimeConfig.browser.ts +++ b/clients/client-greengrass/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: GreengrassClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-greengrass/src/runtimeConfig.ts b/clients/client-greengrass/src/runtimeConfig.ts index 1cfc9afde92a3..cfe439680401a 100644 --- a/clients/client-greengrass/src/runtimeConfig.ts +++ b/clients/client-greengrass/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: GreengrassClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-greengrassv2/src/GreengrassV2Client.ts b/clients/client-greengrassv2/src/GreengrassV2Client.ts index 3236c79a898ad..5b10ec439aa5d 100644 --- a/clients/client-greengrassv2/src/GreengrassV2Client.ts +++ b/clients/client-greengrassv2/src/GreengrassV2Client.ts @@ -236,6 +236,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-greengrassv2/src/endpoints.ts b/clients/client-greengrassv2/src/endpoints.ts index 081bb5577d7e5..de25d3f5a2e41 100644 --- a/clients/client-greengrassv2/src/endpoints.ts +++ b/clients/client-greengrassv2/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "dataplane-us-gov-east-1": { @@ -80,7 +80,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "greengrass", diff --git a/clients/client-greengrassv2/src/runtimeConfig.browser.ts b/clients/client-greengrassv2/src/runtimeConfig.browser.ts index d921dd94901c5..8a5b156373983 100644 --- a/clients/client-greengrassv2/src/runtimeConfig.browser.ts +++ b/clients/client-greengrassv2/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: GreengrassV2ClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-greengrassv2/src/runtimeConfig.ts b/clients/client-greengrassv2/src/runtimeConfig.ts index 368b31b55bda4..d23f767a64f91 100644 --- a/clients/client-greengrassv2/src/runtimeConfig.ts +++ b/clients/client-greengrassv2/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: GreengrassV2ClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-groundstation/src/GroundStationClient.ts b/clients/client-groundstation/src/GroundStationClient.ts index 4e08bbc12adbb..aa4a2ae5d266d 100644 --- a/clients/client-groundstation/src/GroundStationClient.ts +++ b/clients/client-groundstation/src/GroundStationClient.ts @@ -239,6 +239,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-groundstation/src/endpoints.ts b/clients/client-groundstation/src/endpoints.ts index fd25a84ee0444..7d84b83f7fd2e 100644 --- a/clients/client-groundstation/src/endpoints.ts +++ b/clients/client-groundstation/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -69,7 +69,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "groundstation", diff --git a/clients/client-groundstation/src/runtimeConfig.browser.ts b/clients/client-groundstation/src/runtimeConfig.browser.ts index d5e1e31088d31..61596f9d0d106 100644 --- a/clients/client-groundstation/src/runtimeConfig.browser.ts +++ b/clients/client-groundstation/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: GroundStationClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-groundstation/src/runtimeConfig.ts b/clients/client-groundstation/src/runtimeConfig.ts index 05ac5f5b00bf2..bb601a7fa4329 100644 --- a/clients/client-groundstation/src/runtimeConfig.ts +++ b/clients/client-groundstation/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: GroundStationClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-guardduty/src/GuardDutyClient.ts b/clients/client-guardduty/src/GuardDutyClient.ts index ca9f06034c026..70e2c4e00563c 100644 --- a/clients/client-guardduty/src/GuardDutyClient.ts +++ b/clients/client-guardduty/src/GuardDutyClient.ts @@ -383,6 +383,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-guardduty/src/endpoints.ts b/clients/client-guardduty/src/endpoints.ts index 9aa49dd5e5de4..25cb3ced8972f 100644 --- a/clients/client-guardduty/src/endpoints.ts +++ b/clients/client-guardduty/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "us-east-1-fips": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "guardduty", diff --git a/clients/client-guardduty/src/runtimeConfig.browser.ts b/clients/client-guardduty/src/runtimeConfig.browser.ts index a35d88df37627..fb4774b8f2993 100644 --- a/clients/client-guardduty/src/runtimeConfig.browser.ts +++ b/clients/client-guardduty/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: GuardDutyClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-guardduty/src/runtimeConfig.ts b/clients/client-guardduty/src/runtimeConfig.ts index 7a9e8def4fe5a..9ebcaf3d85751 100644 --- a/clients/client-guardduty/src/runtimeConfig.ts +++ b/clients/client-guardduty/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: GuardDutyClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-health/src/HealthClient.ts b/clients/client-health/src/HealthClient.ts index eb506de1f0e5e..8c14909e7cdbf 100644 --- a/clients/client-health/src/HealthClient.ts +++ b/clients/client-health/src/HealthClient.ts @@ -209,6 +209,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-health/src/endpoints.ts b/clients/client-health/src/endpoints.ts index 7175eea6007e9..bbb9dcc185576 100644 --- a/clients/client-health/src/endpoints.ts +++ b/clients/client-health/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-2": { @@ -63,7 +63,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "health", diff --git a/clients/client-health/src/runtimeConfig.browser.ts b/clients/client-health/src/runtimeConfig.browser.ts index 51c2f82c33d88..3b87523669ce8 100644 --- a/clients/client-health/src/runtimeConfig.browser.ts +++ b/clients/client-health/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: HealthClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-health/src/runtimeConfig.ts b/clients/client-health/src/runtimeConfig.ts index 3aaed5e0bfab9..b6bf1365d898a 100644 --- a/clients/client-health/src/runtimeConfig.ts +++ b/clients/client-health/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: HealthClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-healthlake/src/HealthLakeClient.ts b/clients/client-healthlake/src/HealthLakeClient.ts index 8983b3568dae0..b95e9aa488f2a 100644 --- a/clients/client-healthlake/src/HealthLakeClient.ts +++ b/clients/client-healthlake/src/HealthLakeClient.ts @@ -194,6 +194,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-healthlake/src/endpoints.ts b/clients/client-healthlake/src/endpoints.ts index aa67727afc7af..bf4361818da50 100644 --- a/clients/client-healthlake/src/endpoints.ts +++ b/clients/client-healthlake/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "healthlake", diff --git a/clients/client-healthlake/src/runtimeConfig.browser.ts b/clients/client-healthlake/src/runtimeConfig.browser.ts index 8cb91b43de563..56c969eaccff4 100644 --- a/clients/client-healthlake/src/runtimeConfig.browser.ts +++ b/clients/client-healthlake/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: HealthLakeClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-healthlake/src/runtimeConfig.ts b/clients/client-healthlake/src/runtimeConfig.ts index c2ba0319d708d..f1229c048c5a3 100644 --- a/clients/client-healthlake/src/runtimeConfig.ts +++ b/clients/client-healthlake/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: HealthLakeClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-honeycode/src/HoneycodeClient.ts b/clients/client-honeycode/src/HoneycodeClient.ts index 281572c57786a..6186d5412056b 100644 --- a/clients/client-honeycode/src/HoneycodeClient.ts +++ b/clients/client-honeycode/src/HoneycodeClient.ts @@ -194,6 +194,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-honeycode/src/endpoints.ts b/clients/client-honeycode/src/endpoints.ts index 70cd4492db5b5..019bbe57cdf13 100644 --- a/clients/client-honeycode/src/endpoints.ts +++ b/clients/client-honeycode/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "honeycode", diff --git a/clients/client-honeycode/src/runtimeConfig.browser.ts b/clients/client-honeycode/src/runtimeConfig.browser.ts index f19c0bc103107..12429f51a1488 100644 --- a/clients/client-honeycode/src/runtimeConfig.browser.ts +++ b/clients/client-honeycode/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: HoneycodeClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-honeycode/src/runtimeConfig.ts b/clients/client-honeycode/src/runtimeConfig.ts index 6bee162048fc0..5c0d607827176 100644 --- a/clients/client-honeycode/src/runtimeConfig.ts +++ b/clients/client-honeycode/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: HoneycodeClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iam/src/IAMClient.ts b/clients/client-iam/src/IAMClient.ts index aeef2897ed2d7..2dcd2a2aab329 100644 --- a/clients/client-iam/src/IAMClient.ts +++ b/clients/client-iam/src/IAMClient.ts @@ -836,6 +836,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-iam/src/endpoints.ts b/clients/client-iam/src/endpoints.ts index 11a3989153d7c..f15dbb9440ea7 100644 --- a/clients/client-iam/src/endpoints.ts +++ b/clients/client-iam/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "aws-cn-global": { @@ -84,7 +84,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "iam", diff --git a/clients/client-iam/src/runtimeConfig.browser.ts b/clients/client-iam/src/runtimeConfig.browser.ts index cdbbad0b69dff..74ed42784a6ba 100644 --- a/clients/client-iam/src/runtimeConfig.browser.ts +++ b/clients/client-iam/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: IAMClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iam/src/runtimeConfig.ts b/clients/client-iam/src/runtimeConfig.ts index 843a2c3ebe4d1..3a2fefa172948 100644 --- a/clients/client-iam/src/runtimeConfig.ts +++ b/clients/client-iam/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: IAMClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-identitystore/src/IdentitystoreClient.ts b/clients/client-identitystore/src/IdentitystoreClient.ts index 00f3d0538a381..5d22bd65c1795 100644 --- a/clients/client-identitystore/src/IdentitystoreClient.ts +++ b/clients/client-identitystore/src/IdentitystoreClient.ts @@ -149,6 +149,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-identitystore/src/endpoints.ts b/clients/client-identitystore/src/endpoints.ts index 879e286537bdc..d9f5ddf22952e 100644 --- a/clients/client-identitystore/src/endpoints.ts +++ b/clients/client-identitystore/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-gov-west-1": { @@ -58,7 +58,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "identitystore", diff --git a/clients/client-identitystore/src/runtimeConfig.browser.ts b/clients/client-identitystore/src/runtimeConfig.browser.ts index 4b12b16dcaf57..f8016a54fc9db 100644 --- a/clients/client-identitystore/src/runtimeConfig.browser.ts +++ b/clients/client-identitystore/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: IdentitystoreClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-identitystore/src/runtimeConfig.ts b/clients/client-identitystore/src/runtimeConfig.ts index f0a661ba3b943..578ed99f7199b 100644 --- a/clients/client-identitystore/src/runtimeConfig.ts +++ b/clients/client-identitystore/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: IdentitystoreClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-imagebuilder/src/ImagebuilderClient.ts b/clients/client-imagebuilder/src/ImagebuilderClient.ts index 6d902a2af3e32..e830635a95ae5 100644 --- a/clients/client-imagebuilder/src/ImagebuilderClient.ts +++ b/clients/client-imagebuilder/src/ImagebuilderClient.ts @@ -362,6 +362,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-imagebuilder/src/endpoints.ts b/clients/client-imagebuilder/src/endpoints.ts index d4bc3dcc3bbe4..e5b54aac89668 100644 --- a/clients/client-imagebuilder/src/endpoints.ts +++ b/clients/client-imagebuilder/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "imagebuilder", diff --git a/clients/client-imagebuilder/src/runtimeConfig.browser.ts b/clients/client-imagebuilder/src/runtimeConfig.browser.ts index ea1801871268f..8ee2c3d83106d 100644 --- a/clients/client-imagebuilder/src/runtimeConfig.browser.ts +++ b/clients/client-imagebuilder/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ImagebuilderClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-imagebuilder/src/runtimeConfig.ts b/clients/client-imagebuilder/src/runtimeConfig.ts index fd196e2b6d8c8..1c06c6739d063 100644 --- a/clients/client-imagebuilder/src/runtimeConfig.ts +++ b/clients/client-imagebuilder/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ImagebuilderClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-inspector/src/InspectorClient.ts b/clients/client-inspector/src/InspectorClient.ts index b8be7b9a63872..f4945eeba453e 100644 --- a/clients/client-inspector/src/InspectorClient.ts +++ b/clients/client-inspector/src/InspectorClient.ts @@ -326,6 +326,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-inspector/src/endpoints.ts b/clients/client-inspector/src/endpoints.ts index 9185257613863..42ed08a322e41 100644 --- a/clients/client-inspector/src/endpoints.ts +++ b/clients/client-inspector/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "inspector", diff --git a/clients/client-inspector/src/runtimeConfig.browser.ts b/clients/client-inspector/src/runtimeConfig.browser.ts index 2f7f7f4acbac9..32c48beeaa000 100644 --- a/clients/client-inspector/src/runtimeConfig.browser.ts +++ b/clients/client-inspector/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: InspectorClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-inspector/src/runtimeConfig.ts b/clients/client-inspector/src/runtimeConfig.ts index 7f4944f48a5f2..a890e93c45ba3 100644 --- a/clients/client-inspector/src/runtimeConfig.ts +++ b/clients/client-inspector/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: InspectorClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iot-1click-devices-service/src/IoT1ClickDevicesServiceClient.ts b/clients/client-iot-1click-devices-service/src/IoT1ClickDevicesServiceClient.ts index 591ce3caea669..b0493145b0128 100644 --- a/clients/client-iot-1click-devices-service/src/IoT1ClickDevicesServiceClient.ts +++ b/clients/client-iot-1click-devices-service/src/IoT1ClickDevicesServiceClient.ts @@ -188,6 +188,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-iot-1click-devices-service/src/endpoints.ts b/clients/client-iot-1click-devices-service/src/endpoints.ts index fd3b7071952d9..b23abc2039384 100644 --- a/clients/client-iot-1click-devices-service/src/endpoints.ts +++ b/clients/client-iot-1click-devices-service/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "iot1click", diff --git a/clients/client-iot-1click-devices-service/src/runtimeConfig.browser.ts b/clients/client-iot-1click-devices-service/src/runtimeConfig.browser.ts index 7964cf7668a88..ce35eaf23082c 100644 --- a/clients/client-iot-1click-devices-service/src/runtimeConfig.browser.ts +++ b/clients/client-iot-1click-devices-service/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: IoT1ClickDevicesServiceClientConfig) => retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iot-1click-devices-service/src/runtimeConfig.ts b/clients/client-iot-1click-devices-service/src/runtimeConfig.ts index c29f9bf0ccdba..9211a28ba5774 100644 --- a/clients/client-iot-1click-devices-service/src/runtimeConfig.ts +++ b/clients/client-iot-1click-devices-service/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: IoT1ClickDevicesServiceClientConfig) => retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iot-1click-projects/src/IoT1ClickProjectsClient.ts b/clients/client-iot-1click-projects/src/IoT1ClickProjectsClient.ts index a1180d47f4966..128b6ee608401 100644 --- a/clients/client-iot-1click-projects/src/IoT1ClickProjectsClient.ts +++ b/clients/client-iot-1click-projects/src/IoT1ClickProjectsClient.ts @@ -197,6 +197,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-iot-1click-projects/src/endpoints.ts b/clients/client-iot-1click-projects/src/endpoints.ts index 3eb3c308c7fd9..d53a80fc2ea68 100644 --- a/clients/client-iot-1click-projects/src/endpoints.ts +++ b/clients/client-iot-1click-projects/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "iot1click", diff --git a/clients/client-iot-1click-projects/src/runtimeConfig.browser.ts b/clients/client-iot-1click-projects/src/runtimeConfig.browser.ts index 3098b9a229b96..affaccbdb792b 100644 --- a/clients/client-iot-1click-projects/src/runtimeConfig.browser.ts +++ b/clients/client-iot-1click-projects/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: IoT1ClickProjectsClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iot-1click-projects/src/runtimeConfig.ts b/clients/client-iot-1click-projects/src/runtimeConfig.ts index ed157068a13e5..b4de55b91c85d 100644 --- a/clients/client-iot-1click-projects/src/runtimeConfig.ts +++ b/clients/client-iot-1click-projects/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: IoT1ClickProjectsClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iot-data-plane/src/IoTDataPlaneClient.ts b/clients/client-iot-data-plane/src/IoTDataPlaneClient.ts index 37e223d530df8..c9b76c2e15579 100644 --- a/clients/client-iot-data-plane/src/IoTDataPlaneClient.ts +++ b/clients/client-iot-data-plane/src/IoTDataPlaneClient.ts @@ -164,6 +164,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-iot-data-plane/src/endpoints.ts b/clients/client-iot-data-plane/src/endpoints.ts index 4a56b4c6417f8..5b1549ebb2b30 100644 --- a/clients/client-iot-data-plane/src/endpoints.ts +++ b/clients/client-iot-data-plane/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-ca-central-1": { @@ -87,7 +87,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "iotdata", diff --git a/clients/client-iot-data-plane/src/runtimeConfig.browser.ts b/clients/client-iot-data-plane/src/runtimeConfig.browser.ts index 4d5c2a90257e2..500d6a4ee9276 100644 --- a/clients/client-iot-data-plane/src/runtimeConfig.browser.ts +++ b/clients/client-iot-data-plane/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: IoTDataPlaneClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iot-data-plane/src/runtimeConfig.ts b/clients/client-iot-data-plane/src/runtimeConfig.ts index 9e1192e24cd90..7d4d4eaa1be1d 100644 --- a/clients/client-iot-data-plane/src/runtimeConfig.ts +++ b/clients/client-iot-data-plane/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: IoTDataPlaneClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iot-events-data/src/IoTEventsDataClient.ts b/clients/client-iot-events-data/src/IoTEventsDataClient.ts index 1e9ae45f1268c..9a1119b48144d 100644 --- a/clients/client-iot-events-data/src/IoTEventsDataClient.ts +++ b/clients/client-iot-events-data/src/IoTEventsDataClient.ts @@ -176,6 +176,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-iot-events-data/src/endpoints.ts b/clients/client-iot-events-data/src/endpoints.ts index 5fa307100c6b7..34befd3539d3b 100644 --- a/clients/client-iot-events-data/src/endpoints.ts +++ b/clients/client-iot-events-data/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "ioteventsdata", diff --git a/clients/client-iot-events-data/src/runtimeConfig.browser.ts b/clients/client-iot-events-data/src/runtimeConfig.browser.ts index e36077f908a51..c8aee4eb4ad19 100644 --- a/clients/client-iot-events-data/src/runtimeConfig.browser.ts +++ b/clients/client-iot-events-data/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: IoTEventsDataClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iot-events-data/src/runtimeConfig.ts b/clients/client-iot-events-data/src/runtimeConfig.ts index 6e7ca97ca78d7..453dba0aa97b2 100644 --- a/clients/client-iot-events-data/src/runtimeConfig.ts +++ b/clients/client-iot-events-data/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: IoTEventsDataClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iot-events/src/IoTEventsClient.ts b/clients/client-iot-events/src/IoTEventsClient.ts index 8d9a7dcf2ec97..2b285f1d43d76 100644 --- a/clients/client-iot-events/src/IoTEventsClient.ts +++ b/clients/client-iot-events/src/IoTEventsClient.ts @@ -248,6 +248,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-iot-events/src/endpoints.ts b/clients/client-iot-events/src/endpoints.ts index 77bac0ff9d81b..445c43b98d696 100644 --- a/clients/client-iot-events/src/endpoints.ts +++ b/clients/client-iot-events/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "iotevents", diff --git a/clients/client-iot-events/src/runtimeConfig.browser.ts b/clients/client-iot-events/src/runtimeConfig.browser.ts index d7aceacdcd057..66edf74fdf40b 100644 --- a/clients/client-iot-events/src/runtimeConfig.browser.ts +++ b/clients/client-iot-events/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: IoTEventsClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iot-events/src/runtimeConfig.ts b/clients/client-iot-events/src/runtimeConfig.ts index 303f65c8fa839..d5eab3489884e 100644 --- a/clients/client-iot-events/src/runtimeConfig.ts +++ b/clients/client-iot-events/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: IoTEventsClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iot-jobs-data-plane/src/IoTJobsDataPlaneClient.ts b/clients/client-iot-jobs-data-plane/src/IoTJobsDataPlaneClient.ts index f265a06748abe..465488b7463cf 100644 --- a/clients/client-iot-jobs-data-plane/src/IoTJobsDataPlaneClient.ts +++ b/clients/client-iot-jobs-data-plane/src/IoTJobsDataPlaneClient.ts @@ -158,6 +158,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-iot-jobs-data-plane/src/endpoints.ts b/clients/client-iot-jobs-data-plane/src/endpoints.ts index 2c130d448e8ba..aae166095ad95 100644 --- a/clients/client-iot-jobs-data-plane/src/endpoints.ts +++ b/clients/client-iot-jobs-data-plane/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-ca-central-1": { @@ -87,7 +87,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "iot-jobs-data", diff --git a/clients/client-iot-jobs-data-plane/src/runtimeConfig.browser.ts b/clients/client-iot-jobs-data-plane/src/runtimeConfig.browser.ts index 82915d453d405..10051075b74d7 100644 --- a/clients/client-iot-jobs-data-plane/src/runtimeConfig.browser.ts +++ b/clients/client-iot-jobs-data-plane/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: IoTJobsDataPlaneClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iot-jobs-data-plane/src/runtimeConfig.ts b/clients/client-iot-jobs-data-plane/src/runtimeConfig.ts index eb6a52bdf2cb0..b786b8e10792a 100644 --- a/clients/client-iot-jobs-data-plane/src/runtimeConfig.ts +++ b/clients/client-iot-jobs-data-plane/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: IoTJobsDataPlaneClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iot-wireless/src/IoTWirelessClient.ts b/clients/client-iot-wireless/src/IoTWirelessClient.ts index 2942736be6116..4fd6274f90704 100644 --- a/clients/client-iot-wireless/src/IoTWirelessClient.ts +++ b/clients/client-iot-wireless/src/IoTWirelessClient.ts @@ -434,6 +434,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-iot-wireless/src/endpoints.ts b/clients/client-iot-wireless/src/endpoints.ts index c590a5409acfc..72daa9372a76c 100644 --- a/clients/client-iot-wireless/src/endpoints.ts +++ b/clients/client-iot-wireless/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "iotwireless", diff --git a/clients/client-iot-wireless/src/runtimeConfig.browser.ts b/clients/client-iot-wireless/src/runtimeConfig.browser.ts index 12f009d6caeab..13804fc9cc728 100644 --- a/clients/client-iot-wireless/src/runtimeConfig.browser.ts +++ b/clients/client-iot-wireless/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: IoTWirelessClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iot-wireless/src/runtimeConfig.ts b/clients/client-iot-wireless/src/runtimeConfig.ts index b2eb9b43089ef..91ddffb5ea124 100644 --- a/clients/client-iot-wireless/src/runtimeConfig.ts +++ b/clients/client-iot-wireless/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: IoTWirelessClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iot/src/IoTClient.ts b/clients/client-iot/src/IoTClient.ts index 42428476103bf..2da5bb030fe7c 100644 --- a/clients/client-iot/src/IoTClient.ts +++ b/clients/client-iot/src/IoTClient.ts @@ -1247,6 +1247,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-iot/src/endpoints.ts b/clients/client-iot/src/endpoints.ts index c03bcf0ba2aa1..d03e34703307f 100644 --- a/clients/client-iot/src/endpoints.ts +++ b/clients/client-iot/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-ca-central-1": { @@ -87,7 +87,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "execute-api", diff --git a/clients/client-iot/src/runtimeConfig.browser.ts b/clients/client-iot/src/runtimeConfig.browser.ts index c75f60f13518f..15316b7baa28c 100644 --- a/clients/client-iot/src/runtimeConfig.browser.ts +++ b/clients/client-iot/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: IoTClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iot/src/runtimeConfig.ts b/clients/client-iot/src/runtimeConfig.ts index 1d50618b6b5c1..eca8c19666f4c 100644 --- a/clients/client-iot/src/runtimeConfig.ts +++ b/clients/client-iot/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: IoTClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iotanalytics/src/IoTAnalyticsClient.ts b/clients/client-iotanalytics/src/IoTAnalyticsClient.ts index e13909c4acfa3..9d96de5b572ac 100644 --- a/clients/client-iotanalytics/src/IoTAnalyticsClient.ts +++ b/clients/client-iotanalytics/src/IoTAnalyticsClient.ts @@ -263,6 +263,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-iotanalytics/src/endpoints.ts b/clients/client-iotanalytics/src/endpoints.ts index 59d07ca7f4b81..3a7dfa9a29e26 100644 --- a/clients/client-iotanalytics/src/endpoints.ts +++ b/clients/client-iotanalytics/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "iotanalytics", diff --git a/clients/client-iotanalytics/src/runtimeConfig.browser.ts b/clients/client-iotanalytics/src/runtimeConfig.browser.ts index 8d57d41678820..d0e267af53f1f 100644 --- a/clients/client-iotanalytics/src/runtimeConfig.browser.ts +++ b/clients/client-iotanalytics/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: IoTAnalyticsClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iotanalytics/src/runtimeConfig.ts b/clients/client-iotanalytics/src/runtimeConfig.ts index b90539a5f4640..fdc659c2a7934 100644 --- a/clients/client-iotanalytics/src/runtimeConfig.ts +++ b/clients/client-iotanalytics/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: IoTAnalyticsClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iotdeviceadvisor/src/IotDeviceAdvisorClient.ts b/clients/client-iotdeviceadvisor/src/IotDeviceAdvisorClient.ts index 85c61d4c075ea..16a1e14a1ddbb 100644 --- a/clients/client-iotdeviceadvisor/src/IotDeviceAdvisorClient.ts +++ b/clients/client-iotdeviceadvisor/src/IotDeviceAdvisorClient.ts @@ -191,6 +191,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-iotdeviceadvisor/src/endpoints.ts b/clients/client-iotdeviceadvisor/src/endpoints.ts index 3950d073f2351..d5fab7b011979 100644 --- a/clients/client-iotdeviceadvisor/src/endpoints.ts +++ b/clients/client-iotdeviceadvisor/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "iotdeviceadvisor", diff --git a/clients/client-iotdeviceadvisor/src/runtimeConfig.browser.ts b/clients/client-iotdeviceadvisor/src/runtimeConfig.browser.ts index 92c029e72e445..4c236f149f4cb 100644 --- a/clients/client-iotdeviceadvisor/src/runtimeConfig.browser.ts +++ b/clients/client-iotdeviceadvisor/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: IotDeviceAdvisorClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iotdeviceadvisor/src/runtimeConfig.ts b/clients/client-iotdeviceadvisor/src/runtimeConfig.ts index 0620640973a5d..5c1b5d5e94d8c 100644 --- a/clients/client-iotdeviceadvisor/src/runtimeConfig.ts +++ b/clients/client-iotdeviceadvisor/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: IotDeviceAdvisorClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iotfleethub/src/IoTFleetHubClient.ts b/clients/client-iotfleethub/src/IoTFleetHubClient.ts index 3213263054743..c2495c9cdd20f 100644 --- a/clients/client-iotfleethub/src/IoTFleetHubClient.ts +++ b/clients/client-iotfleethub/src/IoTFleetHubClient.ts @@ -167,6 +167,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-iotfleethub/src/endpoints.ts b/clients/client-iotfleethub/src/endpoints.ts index 4514cc9984321..4f6400fc4db0b 100644 --- a/clients/client-iotfleethub/src/endpoints.ts +++ b/clients/client-iotfleethub/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-ca-central-1": { @@ -74,7 +74,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "iotfleethub", diff --git a/clients/client-iotfleethub/src/runtimeConfig.browser.ts b/clients/client-iotfleethub/src/runtimeConfig.browser.ts index 8cbb9e4364efb..bb4f1e0d867c4 100644 --- a/clients/client-iotfleethub/src/runtimeConfig.browser.ts +++ b/clients/client-iotfleethub/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: IoTFleetHubClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iotfleethub/src/runtimeConfig.ts b/clients/client-iotfleethub/src/runtimeConfig.ts index ebf10eac94414..8e36231f0c215 100644 --- a/clients/client-iotfleethub/src/runtimeConfig.ts +++ b/clients/client-iotfleethub/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: IoTFleetHubClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iotsecuretunneling/src/IoTSecureTunnelingClient.ts b/clients/client-iotsecuretunneling/src/IoTSecureTunnelingClient.ts index cbf3a27f8d801..88e9f01fe4c9a 100644 --- a/clients/client-iotsecuretunneling/src/IoTSecureTunnelingClient.ts +++ b/clients/client-iotsecuretunneling/src/IoTSecureTunnelingClient.ts @@ -161,6 +161,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-iotsecuretunneling/src/endpoints.ts b/clients/client-iotsecuretunneling/src/endpoints.ts index 70afc8c9efcb0..edb1bdc683238 100644 --- a/clients/client-iotsecuretunneling/src/endpoints.ts +++ b/clients/client-iotsecuretunneling/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "iotsecuredtunneling", diff --git a/clients/client-iotsecuretunneling/src/runtimeConfig.browser.ts b/clients/client-iotsecuretunneling/src/runtimeConfig.browser.ts index 75d8ed99c452a..74451bd89b01d 100644 --- a/clients/client-iotsecuretunneling/src/runtimeConfig.browser.ts +++ b/clients/client-iotsecuretunneling/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: IoTSecureTunnelingClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iotsecuretunneling/src/runtimeConfig.ts b/clients/client-iotsecuretunneling/src/runtimeConfig.ts index 6133f63b9e1f4..46f5c8448b3d1 100644 --- a/clients/client-iotsecuretunneling/src/runtimeConfig.ts +++ b/clients/client-iotsecuretunneling/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: IoTSecureTunnelingClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iotsitewise/src/IoTSiteWiseClient.ts b/clients/client-iotsitewise/src/IoTSiteWiseClient.ts index c34a36e1b8f19..44675c90e9c9c 100644 --- a/clients/client-iotsitewise/src/IoTSiteWiseClient.ts +++ b/clients/client-iotsitewise/src/IoTSiteWiseClient.ts @@ -377,6 +377,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-iotsitewise/src/endpoints.ts b/clients/client-iotsitewise/src/endpoints.ts index 8443518473656..b32f8fc82eb56 100644 --- a/clients/client-iotsitewise/src/endpoints.ts +++ b/clients/client-iotsitewise/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "iotsitewise", diff --git a/clients/client-iotsitewise/src/runtimeConfig.browser.ts b/clients/client-iotsitewise/src/runtimeConfig.browser.ts index 29568f72c5294..f78c18ffb1a01 100644 --- a/clients/client-iotsitewise/src/runtimeConfig.browser.ts +++ b/clients/client-iotsitewise/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: IoTSiteWiseClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iotsitewise/src/runtimeConfig.ts b/clients/client-iotsitewise/src/runtimeConfig.ts index 73f4e684e671e..72b49482c75fe 100644 --- a/clients/client-iotsitewise/src/runtimeConfig.ts +++ b/clients/client-iotsitewise/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: IoTSiteWiseClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iotthingsgraph/src/IoTThingsGraphClient.ts b/clients/client-iotthingsgraph/src/IoTThingsGraphClient.ts index b7d10f32d5705..14f3c9ad1bca5 100644 --- a/clients/client-iotthingsgraph/src/IoTThingsGraphClient.ts +++ b/clients/client-iotthingsgraph/src/IoTThingsGraphClient.ts @@ -305,6 +305,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-iotthingsgraph/src/endpoints.ts b/clients/client-iotthingsgraph/src/endpoints.ts index e701dd69075f4..9139e86429943 100644 --- a/clients/client-iotthingsgraph/src/endpoints.ts +++ b/clients/client-iotthingsgraph/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "iotthingsgraph", diff --git a/clients/client-iotthingsgraph/src/runtimeConfig.browser.ts b/clients/client-iotthingsgraph/src/runtimeConfig.browser.ts index 6e83576e657e3..e7f4729f522ab 100644 --- a/clients/client-iotthingsgraph/src/runtimeConfig.browser.ts +++ b/clients/client-iotthingsgraph/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: IoTThingsGraphClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-iotthingsgraph/src/runtimeConfig.ts b/clients/client-iotthingsgraph/src/runtimeConfig.ts index 284c315724206..711a62dacd80f 100644 --- a/clients/client-iotthingsgraph/src/runtimeConfig.ts +++ b/clients/client-iotthingsgraph/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: IoTThingsGraphClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-ivs/src/IvsClient.ts b/clients/client-ivs/src/IvsClient.ts index 7545717c85770..afff1cafc37cd 100644 --- a/clients/client-ivs/src/IvsClient.ts +++ b/clients/client-ivs/src/IvsClient.ts @@ -239,6 +239,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-ivs/src/endpoints.ts b/clients/client-ivs/src/endpoints.ts index 1b333aa968ceb..8847c87b6adab 100644 --- a/clients/client-ivs/src/endpoints.ts +++ b/clients/client-ivs/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "ivs", diff --git a/clients/client-ivs/src/runtimeConfig.browser.ts b/clients/client-ivs/src/runtimeConfig.browser.ts index 026e408e40f22..f4233056eeb91 100644 --- a/clients/client-ivs/src/runtimeConfig.browser.ts +++ b/clients/client-ivs/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: IvsClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-ivs/src/runtimeConfig.ts b/clients/client-ivs/src/runtimeConfig.ts index 65b2d7592b63d..815bd53ab81d7 100644 --- a/clients/client-ivs/src/runtimeConfig.ts +++ b/clients/client-ivs/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: IvsClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-kafka/src/KafkaClient.ts b/clients/client-kafka/src/KafkaClient.ts index 1997302e2c368..76d6c90890120 100644 --- a/clients/client-kafka/src/KafkaClient.ts +++ b/clients/client-kafka/src/KafkaClient.ts @@ -278,6 +278,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-kafka/src/endpoints.ts b/clients/client-kafka/src/endpoints.ts index 918585051bcbb..fbcf022046193 100644 --- a/clients/client-kafka/src/endpoints.ts +++ b/clients/client-kafka/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "kafka", diff --git a/clients/client-kafka/src/runtimeConfig.browser.ts b/clients/client-kafka/src/runtimeConfig.browser.ts index 0ced4be64c1ed..31cbe30a4a22a 100644 --- a/clients/client-kafka/src/runtimeConfig.browser.ts +++ b/clients/client-kafka/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: KafkaClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-kafka/src/runtimeConfig.ts b/clients/client-kafka/src/runtimeConfig.ts index da639222e9538..2fcf98b2e2c77 100644 --- a/clients/client-kafka/src/runtimeConfig.ts +++ b/clients/client-kafka/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: KafkaClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-kafkaconnect/src/KafkaConnectClient.ts b/clients/client-kafkaconnect/src/KafkaConnectClient.ts index 58796ee1ddb20..2594d68c6f79f 100644 --- a/clients/client-kafkaconnect/src/KafkaConnectClient.ts +++ b/clients/client-kafkaconnect/src/KafkaConnectClient.ts @@ -182,6 +182,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-kafkaconnect/src/endpoints.ts b/clients/client-kafkaconnect/src/endpoints.ts index 4af12c5f00bd8..a49af3b2151e2 100644 --- a/clients/client-kafkaconnect/src/endpoints.ts +++ b/clients/client-kafkaconnect/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "kafkaconnect", diff --git a/clients/client-kafkaconnect/src/runtimeConfig.browser.ts b/clients/client-kafkaconnect/src/runtimeConfig.browser.ts index 99f20464620bb..769b94990c450 100644 --- a/clients/client-kafkaconnect/src/runtimeConfig.browser.ts +++ b/clients/client-kafkaconnect/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: KafkaConnectClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-kafkaconnect/src/runtimeConfig.ts b/clients/client-kafkaconnect/src/runtimeConfig.ts index 71d9b28e8ff5f..4f1708442bd4f 100644 --- a/clients/client-kafkaconnect/src/runtimeConfig.ts +++ b/clients/client-kafkaconnect/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: KafkaConnectClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-kendra/src/KendraClient.ts b/clients/client-kendra/src/KendraClient.ts index e6a977d7ade0f..795d2539d4ebc 100644 --- a/clients/client-kendra/src/KendraClient.ts +++ b/clients/client-kendra/src/KendraClient.ts @@ -323,6 +323,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-kendra/src/endpoints.ts b/clients/client-kendra/src/endpoints.ts index 4f0ae4899f8d6..b5746e0688850 100644 --- a/clients/client-kendra/src/endpoints.ts +++ b/clients/client-kendra/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -73,7 +73,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "kendra", diff --git a/clients/client-kendra/src/runtimeConfig.browser.ts b/clients/client-kendra/src/runtimeConfig.browser.ts index 3916490fefe33..fa489244ee5f8 100644 --- a/clients/client-kendra/src/runtimeConfig.browser.ts +++ b/clients/client-kendra/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: KendraClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-kendra/src/runtimeConfig.ts b/clients/client-kendra/src/runtimeConfig.ts index 0b05be2e10ad9..9c4dc8ffccf9b 100644 --- a/clients/client-kendra/src/runtimeConfig.ts +++ b/clients/client-kendra/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: KendraClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-kinesis-analytics-v2/src/KinesisAnalyticsV2Client.ts b/clients/client-kinesis-analytics-v2/src/KinesisAnalyticsV2Client.ts index a573c0f84e70d..9d54c07473961 100644 --- a/clients/client-kinesis-analytics-v2/src/KinesisAnalyticsV2Client.ts +++ b/clients/client-kinesis-analytics-v2/src/KinesisAnalyticsV2Client.ts @@ -299,6 +299,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-kinesis-analytics-v2/src/endpoints.ts b/clients/client-kinesis-analytics-v2/src/endpoints.ts index 4b0fec194faba..18fa326b08f08 100644 --- a/clients/client-kinesis-analytics-v2/src/endpoints.ts +++ b/clients/client-kinesis-analytics-v2/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "kinesisanalytics", diff --git a/clients/client-kinesis-analytics-v2/src/runtimeConfig.browser.ts b/clients/client-kinesis-analytics-v2/src/runtimeConfig.browser.ts index 4bf84a8306d37..e9c83e0042963 100644 --- a/clients/client-kinesis-analytics-v2/src/runtimeConfig.browser.ts +++ b/clients/client-kinesis-analytics-v2/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: KinesisAnalyticsV2ClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-kinesis-analytics-v2/src/runtimeConfig.ts b/clients/client-kinesis-analytics-v2/src/runtimeConfig.ts index a1a5e0c94bc42..513e91ed776de 100644 --- a/clients/client-kinesis-analytics-v2/src/runtimeConfig.ts +++ b/clients/client-kinesis-analytics-v2/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: KinesisAnalyticsV2ClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-kinesis-analytics/src/KinesisAnalyticsClient.ts b/clients/client-kinesis-analytics/src/KinesisAnalyticsClient.ts index 57f5db1ae46c6..bcdc6709deb88 100644 --- a/clients/client-kinesis-analytics/src/KinesisAnalyticsClient.ts +++ b/clients/client-kinesis-analytics/src/KinesisAnalyticsClient.ts @@ -233,6 +233,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-kinesis-analytics/src/endpoints.ts b/clients/client-kinesis-analytics/src/endpoints.ts index 4b0fec194faba..18fa326b08f08 100644 --- a/clients/client-kinesis-analytics/src/endpoints.ts +++ b/clients/client-kinesis-analytics/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "kinesisanalytics", diff --git a/clients/client-kinesis-analytics/src/runtimeConfig.browser.ts b/clients/client-kinesis-analytics/src/runtimeConfig.browser.ts index 388a6954d397a..8249e837235ad 100644 --- a/clients/client-kinesis-analytics/src/runtimeConfig.browser.ts +++ b/clients/client-kinesis-analytics/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: KinesisAnalyticsClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-kinesis-analytics/src/runtimeConfig.ts b/clients/client-kinesis-analytics/src/runtimeConfig.ts index f480b8b03cf87..4d2a4cebbf2a4 100644 --- a/clients/client-kinesis-analytics/src/runtimeConfig.ts +++ b/clients/client-kinesis-analytics/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: KinesisAnalyticsClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-kinesis-video-archived-media/src/KinesisVideoArchivedMediaClient.ts b/clients/client-kinesis-video-archived-media/src/KinesisVideoArchivedMediaClient.ts index 56067cd37d429..3a99fbce4726d 100644 --- a/clients/client-kinesis-video-archived-media/src/KinesisVideoArchivedMediaClient.ts +++ b/clients/client-kinesis-video-archived-media/src/KinesisVideoArchivedMediaClient.ts @@ -161,6 +161,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-kinesis-video-archived-media/src/endpoints.ts b/clients/client-kinesis-video-archived-media/src/endpoints.ts index 85db15fb72c66..1462ba68a1378 100644 --- a/clients/client-kinesis-video-archived-media/src/endpoints.ts +++ b/clients/client-kinesis-video-archived-media/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "kinesisvideo", diff --git a/clients/client-kinesis-video-archived-media/src/runtimeConfig.browser.ts b/clients/client-kinesis-video-archived-media/src/runtimeConfig.browser.ts index b52c4d44ccb6c..e0fb59d21fa21 100644 --- a/clients/client-kinesis-video-archived-media/src/runtimeConfig.browser.ts +++ b/clients/client-kinesis-video-archived-media/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: KinesisVideoArchivedMediaClientConfig) retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-kinesis-video-archived-media/src/runtimeConfig.ts b/clients/client-kinesis-video-archived-media/src/runtimeConfig.ts index 877348a788964..6d76bc96e3f12 100644 --- a/clients/client-kinesis-video-archived-media/src/runtimeConfig.ts +++ b/clients/client-kinesis-video-archived-media/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: KinesisVideoArchivedMediaClientConfig) retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-kinesis-video-media/src/KinesisVideoMediaClient.ts b/clients/client-kinesis-video-media/src/KinesisVideoMediaClient.ts index 953c334dbf092..b670471313f46 100644 --- a/clients/client-kinesis-video-media/src/KinesisVideoMediaClient.ts +++ b/clients/client-kinesis-video-media/src/KinesisVideoMediaClient.ts @@ -138,6 +138,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-kinesis-video-media/src/endpoints.ts b/clients/client-kinesis-video-media/src/endpoints.ts index 85db15fb72c66..1462ba68a1378 100644 --- a/clients/client-kinesis-video-media/src/endpoints.ts +++ b/clients/client-kinesis-video-media/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "kinesisvideo", diff --git a/clients/client-kinesis-video-media/src/runtimeConfig.browser.ts b/clients/client-kinesis-video-media/src/runtimeConfig.browser.ts index 60309d86edf82..e1c7a39de26f6 100644 --- a/clients/client-kinesis-video-media/src/runtimeConfig.browser.ts +++ b/clients/client-kinesis-video-media/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: KinesisVideoMediaClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-kinesis-video-media/src/runtimeConfig.ts b/clients/client-kinesis-video-media/src/runtimeConfig.ts index 40d4b24c1665e..8d009e9e618ee 100644 --- a/clients/client-kinesis-video-media/src/runtimeConfig.ts +++ b/clients/client-kinesis-video-media/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: KinesisVideoMediaClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-kinesis-video-signaling/src/KinesisVideoSignalingClient.ts b/clients/client-kinesis-video-signaling/src/KinesisVideoSignalingClient.ts index 7da2f48b157bb..8d7a858e279c7 100644 --- a/clients/client-kinesis-video-signaling/src/KinesisVideoSignalingClient.ts +++ b/clients/client-kinesis-video-signaling/src/KinesisVideoSignalingClient.ts @@ -148,6 +148,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-kinesis-video-signaling/src/endpoints.ts b/clients/client-kinesis-video-signaling/src/endpoints.ts index 85db15fb72c66..1462ba68a1378 100644 --- a/clients/client-kinesis-video-signaling/src/endpoints.ts +++ b/clients/client-kinesis-video-signaling/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "kinesisvideo", diff --git a/clients/client-kinesis-video-signaling/src/runtimeConfig.browser.ts b/clients/client-kinesis-video-signaling/src/runtimeConfig.browser.ts index 66fe3be3e77f3..d540eed75b41d 100644 --- a/clients/client-kinesis-video-signaling/src/runtimeConfig.browser.ts +++ b/clients/client-kinesis-video-signaling/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: KinesisVideoSignalingClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-kinesis-video-signaling/src/runtimeConfig.ts b/clients/client-kinesis-video-signaling/src/runtimeConfig.ts index 542b5586f332c..b4bb1d08acc64 100644 --- a/clients/client-kinesis-video-signaling/src/runtimeConfig.ts +++ b/clients/client-kinesis-video-signaling/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: KinesisVideoSignalingClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-kinesis-video/src/KinesisVideoClient.ts b/clients/client-kinesis-video/src/KinesisVideoClient.ts index 0d16a80cf903e..a472b28b4f1e6 100644 --- a/clients/client-kinesis-video/src/KinesisVideoClient.ts +++ b/clients/client-kinesis-video/src/KinesisVideoClient.ts @@ -218,6 +218,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-kinesis-video/src/endpoints.ts b/clients/client-kinesis-video/src/endpoints.ts index 85db15fb72c66..1462ba68a1378 100644 --- a/clients/client-kinesis-video/src/endpoints.ts +++ b/clients/client-kinesis-video/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "kinesisvideo", diff --git a/clients/client-kinesis-video/src/runtimeConfig.browser.ts b/clients/client-kinesis-video/src/runtimeConfig.browser.ts index 736fed01fbe2e..56ea40998440c 100644 --- a/clients/client-kinesis-video/src/runtimeConfig.browser.ts +++ b/clients/client-kinesis-video/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: KinesisVideoClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-kinesis-video/src/runtimeConfig.ts b/clients/client-kinesis-video/src/runtimeConfig.ts index 2b6c0f2a30488..2343ae2abcf96 100644 --- a/clients/client-kinesis-video/src/runtimeConfig.ts +++ b/clients/client-kinesis-video/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: KinesisVideoClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-kinesis/src/KinesisClient.ts b/clients/client-kinesis/src/KinesisClient.ts index deb063180da0b..942a2094cf08f 100644 --- a/clients/client-kinesis/src/KinesisClient.ts +++ b/clients/client-kinesis/src/KinesisClient.ts @@ -263,6 +263,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-kinesis/src/endpoints.ts b/clients/client-kinesis/src/endpoints.ts index 2c5bfc811f428..1a2b2b57048cc 100644 --- a/clients/client-kinesis/src/endpoints.ts +++ b/clients/client-kinesis/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "kinesis", diff --git a/clients/client-kinesis/src/runtimeConfig.browser.ts b/clients/client-kinesis/src/runtimeConfig.browser.ts index cc2eabc7cb768..19cdde4d54667 100644 --- a/clients/client-kinesis/src/runtimeConfig.browser.ts +++ b/clients/client-kinesis/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { eventStreamSerdeProvider } from "@aws-sdk/eventstream-serde-browser"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; @@ -37,6 +38,8 @@ export const getRuntimeConfig = (config: KinesisClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-kinesis/src/runtimeConfig.ts b/clients/client-kinesis/src/runtimeConfig.ts index 045ff67ae6e5a..0907c971196cf 100644 --- a/clients/client-kinesis/src/runtimeConfig.ts +++ b/clients/client-kinesis/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { eventStreamSerdeProvider } from "@aws-sdk/eventstream-serde-node"; import { Hash } from "@aws-sdk/hash-node"; @@ -42,6 +47,8 @@ export const getRuntimeConfig = (config: KinesisClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-kms/src/KMSClient.ts b/clients/client-kms/src/KMSClient.ts index 5976cc11f4e91..452c75e333436 100644 --- a/clients/client-kms/src/KMSClient.ts +++ b/clients/client-kms/src/KMSClient.ts @@ -329,6 +329,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-kms/src/endpoints.ts b/clients/client-kms/src/endpoints.ts index 2936f1058ef04..a073f48763cb3 100644 --- a/clients/client-kms/src/endpoints.ts +++ b/clients/client-kms/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { ProdFips: { @@ -58,7 +58,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "kms", diff --git a/clients/client-kms/src/runtimeConfig.browser.ts b/clients/client-kms/src/runtimeConfig.browser.ts index cc8102543ae2a..307ab2d60f5b0 100644 --- a/clients/client-kms/src/runtimeConfig.browser.ts +++ b/clients/client-kms/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: KMSClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-kms/src/runtimeConfig.ts b/clients/client-kms/src/runtimeConfig.ts index d795732ef97cb..5d157c57dd95b 100644 --- a/clients/client-kms/src/runtimeConfig.ts +++ b/clients/client-kms/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: KMSClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-lakeformation/src/LakeFormationClient.ts b/clients/client-lakeformation/src/LakeFormationClient.ts index 6a080c9f66d51..fba9973cd3b5b 100644 --- a/clients/client-lakeformation/src/LakeFormationClient.ts +++ b/clients/client-lakeformation/src/LakeFormationClient.ts @@ -233,6 +233,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-lakeformation/src/endpoints.ts b/clients/client-lakeformation/src/endpoints.ts index df5ad94dd4e2d..26998ff9ca183 100644 --- a/clients/client-lakeformation/src/endpoints.ts +++ b/clients/client-lakeformation/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -78,7 +78,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "lakeformation", diff --git a/clients/client-lakeformation/src/runtimeConfig.browser.ts b/clients/client-lakeformation/src/runtimeConfig.browser.ts index 5e7b4c685adc2..87761d3525fd3 100644 --- a/clients/client-lakeformation/src/runtimeConfig.browser.ts +++ b/clients/client-lakeformation/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: LakeFormationClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-lakeformation/src/runtimeConfig.ts b/clients/client-lakeformation/src/runtimeConfig.ts index 21bf25987dcd4..b0aad255da6f0 100644 --- a/clients/client-lakeformation/src/runtimeConfig.ts +++ b/clients/client-lakeformation/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: LakeFormationClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-lambda/src/LambdaClient.ts b/clients/client-lambda/src/LambdaClient.ts index 7853af4a8739b..de17e940f8ae4 100644 --- a/clients/client-lambda/src/LambdaClient.ts +++ b/clients/client-lambda/src/LambdaClient.ts @@ -413,6 +413,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-lambda/src/endpoints.ts b/clients/client-lambda/src/endpoints.ts index d7455427a9066..e346bb99e91ab 100644 --- a/clients/client-lambda/src/endpoints.ts +++ b/clients/client-lambda/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "lambda", diff --git a/clients/client-lambda/src/runtimeConfig.browser.ts b/clients/client-lambda/src/runtimeConfig.browser.ts index dc30f93796961..b87a60e32aae6 100644 --- a/clients/client-lambda/src/runtimeConfig.browser.ts +++ b/clients/client-lambda/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: LambdaClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-lambda/src/runtimeConfig.ts b/clients/client-lambda/src/runtimeConfig.ts index f62d6399faf04..fc4e7c56801cf 100644 --- a/clients/client-lambda/src/runtimeConfig.ts +++ b/clients/client-lambda/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: LambdaClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-lex-model-building-service/src/LexModelBuildingServiceClient.ts b/clients/client-lex-model-building-service/src/LexModelBuildingServiceClient.ts index e9d6cb380af8e..052951c54d558 100644 --- a/clients/client-lex-model-building-service/src/LexModelBuildingServiceClient.ts +++ b/clients/client-lex-model-building-service/src/LexModelBuildingServiceClient.ts @@ -293,6 +293,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-lex-model-building-service/src/endpoints.ts b/clients/client-lex-model-building-service/src/endpoints.ts index 41c1e259b61ac..0f8f21ac03801 100644 --- a/clients/client-lex-model-building-service/src/endpoints.ts +++ b/clients/client-lex-model-building-service/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "us-east-1-fips": { @@ -68,7 +68,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "lex", diff --git a/clients/client-lex-model-building-service/src/runtimeConfig.browser.ts b/clients/client-lex-model-building-service/src/runtimeConfig.browser.ts index 274c8d2e9a5c6..96befbae5b0f8 100644 --- a/clients/client-lex-model-building-service/src/runtimeConfig.browser.ts +++ b/clients/client-lex-model-building-service/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: LexModelBuildingServiceClientConfig) => retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-lex-model-building-service/src/runtimeConfig.ts b/clients/client-lex-model-building-service/src/runtimeConfig.ts index b969254953568..ebb1079b4bb3d 100644 --- a/clients/client-lex-model-building-service/src/runtimeConfig.ts +++ b/clients/client-lex-model-building-service/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: LexModelBuildingServiceClientConfig) => retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-lex-models-v2/src/LexModelsV2Client.ts b/clients/client-lex-models-v2/src/LexModelsV2Client.ts index a6303b822bf33..b0907bb77abfb 100644 --- a/clients/client-lex-models-v2/src/LexModelsV2Client.ts +++ b/clients/client-lex-models-v2/src/LexModelsV2Client.ts @@ -338,6 +338,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-lex-models-v2/src/endpoints.ts b/clients/client-lex-models-v2/src/endpoints.ts index 2b348da74242b..264972112f16d 100644 --- a/clients/client-lex-models-v2/src/endpoints.ts +++ b/clients/client-lex-models-v2/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "lex", diff --git a/clients/client-lex-models-v2/src/runtimeConfig.browser.ts b/clients/client-lex-models-v2/src/runtimeConfig.browser.ts index 2e0c581d56d4f..f28821230f84e 100644 --- a/clients/client-lex-models-v2/src/runtimeConfig.browser.ts +++ b/clients/client-lex-models-v2/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: LexModelsV2ClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-lex-models-v2/src/runtimeConfig.ts b/clients/client-lex-models-v2/src/runtimeConfig.ts index e27428bed8f52..b6a3a6a450302 100644 --- a/clients/client-lex-models-v2/src/runtimeConfig.ts +++ b/clients/client-lex-models-v2/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: LexModelsV2ClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-lex-runtime-service/src/LexRuntimeServiceClient.ts b/clients/client-lex-runtime-service/src/LexRuntimeServiceClient.ts index 8c144c58a6108..f72d49b061ea2 100644 --- a/clients/client-lex-runtime-service/src/LexRuntimeServiceClient.ts +++ b/clients/client-lex-runtime-service/src/LexRuntimeServiceClient.ts @@ -152,6 +152,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-lex-runtime-service/src/endpoints.ts b/clients/client-lex-runtime-service/src/endpoints.ts index 86072320870f5..71a0a9ce2eb55 100644 --- a/clients/client-lex-runtime-service/src/endpoints.ts +++ b/clients/client-lex-runtime-service/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "us-east-1-fips": { @@ -68,7 +68,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "lex", diff --git a/clients/client-lex-runtime-service/src/runtimeConfig.browser.ts b/clients/client-lex-runtime-service/src/runtimeConfig.browser.ts index 2f2d62ab59eda..1c3343e5fd773 100644 --- a/clients/client-lex-runtime-service/src/runtimeConfig.browser.ts +++ b/clients/client-lex-runtime-service/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: LexRuntimeServiceClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-lex-runtime-service/src/runtimeConfig.ts b/clients/client-lex-runtime-service/src/runtimeConfig.ts index cd98a80c01127..b439277611b0f 100644 --- a/clients/client-lex-runtime-service/src/runtimeConfig.ts +++ b/clients/client-lex-runtime-service/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: LexRuntimeServiceClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-lex-runtime-v2/src/LexRuntimeV2Client.ts b/clients/client-lex-runtime-v2/src/LexRuntimeV2Client.ts index 05205200ead54..8e814cc37d0c6 100644 --- a/clients/client-lex-runtime-v2/src/LexRuntimeV2Client.ts +++ b/clients/client-lex-runtime-v2/src/LexRuntimeV2Client.ts @@ -167,6 +167,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-lex-runtime-v2/src/endpoints.ts b/clients/client-lex-runtime-v2/src/endpoints.ts index 44871334e8ffa..e0fdf1dc793f7 100644 --- a/clients/client-lex-runtime-v2/src/endpoints.ts +++ b/clients/client-lex-runtime-v2/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "lex", diff --git a/clients/client-lex-runtime-v2/src/runtimeConfig.browser.ts b/clients/client-lex-runtime-v2/src/runtimeConfig.browser.ts index c6cfda2d3ff1c..053f4941da3f8 100644 --- a/clients/client-lex-runtime-v2/src/runtimeConfig.browser.ts +++ b/clients/client-lex-runtime-v2/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { eventStreamSerdeProvider } from "@aws-sdk/eventstream-serde-browser"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidFunction, invalidProvider } from "@aws-sdk/invalid-dependency"; @@ -40,6 +41,8 @@ export const getRuntimeConfig = (config: LexRuntimeV2ClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-lex-runtime-v2/src/runtimeConfig.ts b/clients/client-lex-runtime-v2/src/runtimeConfig.ts index be08b76870ed7..854a7b3dbeead 100644 --- a/clients/client-lex-runtime-v2/src/runtimeConfig.ts +++ b/clients/client-lex-runtime-v2/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { eventStreamPayloadHandlerProvider } from "@aws-sdk/eventstream-handler-node"; import { eventStreamSerdeProvider } from "@aws-sdk/eventstream-serde-node"; @@ -44,6 +49,8 @@ export const getRuntimeConfig = (config: LexRuntimeV2ClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-license-manager/src/LicenseManagerClient.ts b/clients/client-license-manager/src/LicenseManagerClient.ts index 9ef1dc3c44726..81eaf5c31ebc7 100644 --- a/clients/client-license-manager/src/LicenseManagerClient.ts +++ b/clients/client-license-manager/src/LicenseManagerClient.ts @@ -362,6 +362,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-license-manager/src/endpoints.ts b/clients/client-license-manager/src/endpoints.ts index 96941d2628b3e..cb8664373f155 100644 --- a/clients/client-license-manager/src/endpoints.ts +++ b/clients/client-license-manager/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "license-manager", diff --git a/clients/client-license-manager/src/runtimeConfig.browser.ts b/clients/client-license-manager/src/runtimeConfig.browser.ts index c2c6bb65adb90..3d776967d6fb4 100644 --- a/clients/client-license-manager/src/runtimeConfig.browser.ts +++ b/clients/client-license-manager/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: LicenseManagerClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-license-manager/src/runtimeConfig.ts b/clients/client-license-manager/src/runtimeConfig.ts index 2666448172da5..ec537fc77b52a 100644 --- a/clients/client-license-manager/src/runtimeConfig.ts +++ b/clients/client-license-manager/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: LicenseManagerClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-lightsail/src/LightsailClient.ts b/clients/client-lightsail/src/LightsailClient.ts index eb86bc9848853..5f5172524ffe1 100644 --- a/clients/client-lightsail/src/LightsailClient.ts +++ b/clients/client-lightsail/src/LightsailClient.ts @@ -821,6 +821,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-lightsail/src/endpoints.ts b/clients/client-lightsail/src/endpoints.ts index b5ae64afaed17..21572d762b835 100644 --- a/clients/client-lightsail/src/endpoints.ts +++ b/clients/client-lightsail/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "lightsail", diff --git a/clients/client-lightsail/src/runtimeConfig.browser.ts b/clients/client-lightsail/src/runtimeConfig.browser.ts index d54627b814572..f5fb48c5a3a10 100644 --- a/clients/client-lightsail/src/runtimeConfig.browser.ts +++ b/clients/client-lightsail/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: LightsailClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-lightsail/src/runtimeConfig.ts b/clients/client-lightsail/src/runtimeConfig.ts index 880512e9b2f39..a8907c4c4b048 100644 --- a/clients/client-lightsail/src/runtimeConfig.ts +++ b/clients/client-lightsail/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: LightsailClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-location/src/LocationClient.ts b/clients/client-location/src/LocationClient.ts index 1a47eb2d76bff..68aa88cb8a47a 100644 --- a/clients/client-location/src/LocationClient.ts +++ b/clients/client-location/src/LocationClient.ts @@ -359,6 +359,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-location/src/endpoints.ts b/clients/client-location/src/endpoints.ts index 795b6e6f87fb5..3d2a6f1720011 100644 --- a/clients/client-location/src/endpoints.ts +++ b/clients/client-location/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "geo", diff --git a/clients/client-location/src/runtimeConfig.browser.ts b/clients/client-location/src/runtimeConfig.browser.ts index a0a45907eceb7..b3e47de68c779 100644 --- a/clients/client-location/src/runtimeConfig.browser.ts +++ b/clients/client-location/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: LocationClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-location/src/runtimeConfig.ts b/clients/client-location/src/runtimeConfig.ts index 60017b2b403bb..8b8f3d7828699 100644 --- a/clients/client-location/src/runtimeConfig.ts +++ b/clients/client-location/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: LocationClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-lookoutequipment/src/LookoutEquipmentClient.ts b/clients/client-lookoutequipment/src/LookoutEquipmentClient.ts index d0498401327e6..4574883ffa02f 100644 --- a/clients/client-lookoutequipment/src/LookoutEquipmentClient.ts +++ b/clients/client-lookoutequipment/src/LookoutEquipmentClient.ts @@ -239,6 +239,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-lookoutequipment/src/endpoints.ts b/clients/client-lookoutequipment/src/endpoints.ts index 60448c8c4a0ef..f385887b948a1 100644 --- a/clients/client-lookoutequipment/src/endpoints.ts +++ b/clients/client-lookoutequipment/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "lookoutequipment", diff --git a/clients/client-lookoutequipment/src/runtimeConfig.browser.ts b/clients/client-lookoutequipment/src/runtimeConfig.browser.ts index b548d2caae1e1..4c5134db0c61b 100644 --- a/clients/client-lookoutequipment/src/runtimeConfig.browser.ts +++ b/clients/client-lookoutequipment/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: LookoutEquipmentClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-lookoutequipment/src/runtimeConfig.ts b/clients/client-lookoutequipment/src/runtimeConfig.ts index 509123cbbd728..fd573dfb76c0a 100644 --- a/clients/client-lookoutequipment/src/runtimeConfig.ts +++ b/clients/client-lookoutequipment/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: LookoutEquipmentClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-lookoutmetrics/src/LookoutMetricsClient.ts b/clients/client-lookoutmetrics/src/LookoutMetricsClient.ts index d9510f0be289c..40ec646eef726 100644 --- a/clients/client-lookoutmetrics/src/LookoutMetricsClient.ts +++ b/clients/client-lookoutmetrics/src/LookoutMetricsClient.ts @@ -245,6 +245,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-lookoutmetrics/src/endpoints.ts b/clients/client-lookoutmetrics/src/endpoints.ts index 0ad6ba2279e31..330606fce2f0f 100644 --- a/clients/client-lookoutmetrics/src/endpoints.ts +++ b/clients/client-lookoutmetrics/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "lookoutmetrics", diff --git a/clients/client-lookoutmetrics/src/runtimeConfig.browser.ts b/clients/client-lookoutmetrics/src/runtimeConfig.browser.ts index a043728847180..79e8f8ffb6eda 100644 --- a/clients/client-lookoutmetrics/src/runtimeConfig.browser.ts +++ b/clients/client-lookoutmetrics/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: LookoutMetricsClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-lookoutmetrics/src/runtimeConfig.ts b/clients/client-lookoutmetrics/src/runtimeConfig.ts index 7b1995d4009b8..86c0309070f71 100644 --- a/clients/client-lookoutmetrics/src/runtimeConfig.ts +++ b/clients/client-lookoutmetrics/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: LookoutMetricsClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-lookoutvision/src/LookoutVisionClient.ts b/clients/client-lookoutvision/src/LookoutVisionClient.ts index 7a02eb163dc51..d5a800da83194 100644 --- a/clients/client-lookoutvision/src/LookoutVisionClient.ts +++ b/clients/client-lookoutvision/src/LookoutVisionClient.ts @@ -200,6 +200,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-lookoutvision/src/endpoints.ts b/clients/client-lookoutvision/src/endpoints.ts index de0216ff69c14..e9e6a3825b63a 100644 --- a/clients/client-lookoutvision/src/endpoints.ts +++ b/clients/client-lookoutvision/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "lookoutvision", diff --git a/clients/client-lookoutvision/src/runtimeConfig.browser.ts b/clients/client-lookoutvision/src/runtimeConfig.browser.ts index 6a0253b2254b0..909d88a1b5d85 100644 --- a/clients/client-lookoutvision/src/runtimeConfig.browser.ts +++ b/clients/client-lookoutvision/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: LookoutVisionClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-lookoutvision/src/runtimeConfig.ts b/clients/client-lookoutvision/src/runtimeConfig.ts index 2cd934e3ac386..c3cd6cd067dc3 100644 --- a/clients/client-lookoutvision/src/runtimeConfig.ts +++ b/clients/client-lookoutvision/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: LookoutVisionClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-machine-learning/src/MachineLearningClient.ts b/clients/client-machine-learning/src/MachineLearningClient.ts index 49989f9e9a1e0..7bc3c596c29d9 100644 --- a/clients/client-machine-learning/src/MachineLearningClient.ts +++ b/clients/client-machine-learning/src/MachineLearningClient.ts @@ -254,6 +254,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-machine-learning/src/endpoints.ts b/clients/client-machine-learning/src/endpoints.ts index 712a04049e71a..abe2353e4525c 100644 --- a/clients/client-machine-learning/src/endpoints.ts +++ b/clients/client-machine-learning/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "machinelearning", diff --git a/clients/client-machine-learning/src/runtimeConfig.browser.ts b/clients/client-machine-learning/src/runtimeConfig.browser.ts index e3d5e0491b1cb..183a5b886a9d3 100644 --- a/clients/client-machine-learning/src/runtimeConfig.browser.ts +++ b/clients/client-machine-learning/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: MachineLearningClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-machine-learning/src/runtimeConfig.ts b/clients/client-machine-learning/src/runtimeConfig.ts index 80ae841e83de8..d94a67a68e61a 100644 --- a/clients/client-machine-learning/src/runtimeConfig.ts +++ b/clients/client-machine-learning/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: MachineLearningClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-macie/src/MacieClient.ts b/clients/client-macie/src/MacieClient.ts index daecf0fb82635..f3365619c72d2 100644 --- a/clients/client-macie/src/MacieClient.ts +++ b/clients/client-macie/src/MacieClient.ts @@ -170,6 +170,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-macie/src/endpoints.ts b/clients/client-macie/src/endpoints.ts index b8c396bb51101..2391d025a16b0 100644 --- a/clients/client-macie/src/endpoints.ts +++ b/clients/client-macie/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -64,7 +64,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "macie", diff --git a/clients/client-macie/src/runtimeConfig.browser.ts b/clients/client-macie/src/runtimeConfig.browser.ts index 3770c7b8662c8..fce0268489ef4 100644 --- a/clients/client-macie/src/runtimeConfig.browser.ts +++ b/clients/client-macie/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: MacieClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-macie/src/runtimeConfig.ts b/clients/client-macie/src/runtimeConfig.ts index 17e62fc543791..fb78c0415247b 100644 --- a/clients/client-macie/src/runtimeConfig.ts +++ b/clients/client-macie/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: MacieClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-macie2/src/Macie2Client.ts b/clients/client-macie2/src/Macie2Client.ts index 6b7c633f53a0a..34ccae660137f 100644 --- a/clients/client-macie2/src/Macie2Client.ts +++ b/clients/client-macie2/src/Macie2Client.ts @@ -407,6 +407,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-macie2/src/endpoints.ts b/clients/client-macie2/src/endpoints.ts index 58bb2a2c16c37..3b967d2f88e56 100644 --- a/clients/client-macie2/src/endpoints.ts +++ b/clients/client-macie2/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -74,7 +74,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "macie2", diff --git a/clients/client-macie2/src/runtimeConfig.browser.ts b/clients/client-macie2/src/runtimeConfig.browser.ts index 2c47ca2eb0045..a8fe44e3d1010 100644 --- a/clients/client-macie2/src/runtimeConfig.browser.ts +++ b/clients/client-macie2/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: Macie2ClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-macie2/src/runtimeConfig.ts b/clients/client-macie2/src/runtimeConfig.ts index 388ece68d43c7..707a9ef26e080 100644 --- a/clients/client-macie2/src/runtimeConfig.ts +++ b/clients/client-macie2/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: Macie2ClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-managedblockchain/src/ManagedBlockchainClient.ts b/clients/client-managedblockchain/src/ManagedBlockchainClient.ts index a1486d84f17f5..80de3ec1dbc6c 100644 --- a/clients/client-managedblockchain/src/ManagedBlockchainClient.ts +++ b/clients/client-managedblockchain/src/ManagedBlockchainClient.ts @@ -209,6 +209,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-managedblockchain/src/endpoints.ts b/clients/client-managedblockchain/src/endpoints.ts index 0756e9a5c27af..8f7275c4885d0 100644 --- a/clients/client-managedblockchain/src/endpoints.ts +++ b/clients/client-managedblockchain/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "managedblockchain", diff --git a/clients/client-managedblockchain/src/runtimeConfig.browser.ts b/clients/client-managedblockchain/src/runtimeConfig.browser.ts index 59320b745085a..8f94987f329f2 100644 --- a/clients/client-managedblockchain/src/runtimeConfig.browser.ts +++ b/clients/client-managedblockchain/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ManagedBlockchainClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-managedblockchain/src/runtimeConfig.ts b/clients/client-managedblockchain/src/runtimeConfig.ts index 8028a8c52ee0b..7baadbab192ea 100644 --- a/clients/client-managedblockchain/src/runtimeConfig.ts +++ b/clients/client-managedblockchain/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ManagedBlockchainClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-marketplace-catalog/src/MarketplaceCatalogClient.ts b/clients/client-marketplace-catalog/src/MarketplaceCatalogClient.ts index ca71031035178..6671fcea73df0 100644 --- a/clients/client-marketplace-catalog/src/MarketplaceCatalogClient.ts +++ b/clients/client-marketplace-catalog/src/MarketplaceCatalogClient.ts @@ -155,6 +155,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-marketplace-catalog/src/endpoints.ts b/clients/client-marketplace-catalog/src/endpoints.ts index ca1caeaf924a2..96084089d17c3 100644 --- a/clients/client-marketplace-catalog/src/endpoints.ts +++ b/clients/client-marketplace-catalog/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "aws-marketplace", diff --git a/clients/client-marketplace-catalog/src/runtimeConfig.browser.ts b/clients/client-marketplace-catalog/src/runtimeConfig.browser.ts index 9608813374903..9071983e45868 100644 --- a/clients/client-marketplace-catalog/src/runtimeConfig.browser.ts +++ b/clients/client-marketplace-catalog/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: MarketplaceCatalogClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-marketplace-catalog/src/runtimeConfig.ts b/clients/client-marketplace-catalog/src/runtimeConfig.ts index 127c70dddf9d0..f614ade150e26 100644 --- a/clients/client-marketplace-catalog/src/runtimeConfig.ts +++ b/clients/client-marketplace-catalog/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: MarketplaceCatalogClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-marketplace-commerce-analytics/src/MarketplaceCommerceAnalyticsClient.ts b/clients/client-marketplace-commerce-analytics/src/MarketplaceCommerceAnalyticsClient.ts index 9322da3f8ab9e..213713fdfe861 100644 --- a/clients/client-marketplace-commerce-analytics/src/MarketplaceCommerceAnalyticsClient.ts +++ b/clients/client-marketplace-commerce-analytics/src/MarketplaceCommerceAnalyticsClient.ts @@ -142,6 +142,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-marketplace-commerce-analytics/src/endpoints.ts b/clients/client-marketplace-commerce-analytics/src/endpoints.ts index 8df1077e70edd..5a951649ae35b 100644 --- a/clients/client-marketplace-commerce-analytics/src/endpoints.ts +++ b/clients/client-marketplace-commerce-analytics/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "marketplacecommerceanalytics", diff --git a/clients/client-marketplace-commerce-analytics/src/runtimeConfig.browser.ts b/clients/client-marketplace-commerce-analytics/src/runtimeConfig.browser.ts index 51f2102cfc79c..af814fe82ea60 100644 --- a/clients/client-marketplace-commerce-analytics/src/runtimeConfig.browser.ts +++ b/clients/client-marketplace-commerce-analytics/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: MarketplaceCommerceAnalyticsClientConfi retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-marketplace-commerce-analytics/src/runtimeConfig.ts b/clients/client-marketplace-commerce-analytics/src/runtimeConfig.ts index 02155966fe8d0..c6d4299930ae3 100644 --- a/clients/client-marketplace-commerce-analytics/src/runtimeConfig.ts +++ b/clients/client-marketplace-commerce-analytics/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: MarketplaceCommerceAnalyticsClientConfi retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-marketplace-entitlement-service/src/MarketplaceEntitlementServiceClient.ts b/clients/client-marketplace-entitlement-service/src/MarketplaceEntitlementServiceClient.ts index 5af35ab39090e..576c1d376a985 100644 --- a/clients/client-marketplace-entitlement-service/src/MarketplaceEntitlementServiceClient.ts +++ b/clients/client-marketplace-entitlement-service/src/MarketplaceEntitlementServiceClient.ts @@ -138,6 +138,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-marketplace-entitlement-service/src/endpoints.ts b/clients/client-marketplace-entitlement-service/src/endpoints.ts index 9eee07668ce6b..c04835e4eab69 100644 --- a/clients/client-marketplace-entitlement-service/src/endpoints.ts +++ b/clients/client-marketplace-entitlement-service/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "aws-marketplace", diff --git a/clients/client-marketplace-entitlement-service/src/runtimeConfig.browser.ts b/clients/client-marketplace-entitlement-service/src/runtimeConfig.browser.ts index e091bea91f808..aac7b0f94b2f7 100644 --- a/clients/client-marketplace-entitlement-service/src/runtimeConfig.browser.ts +++ b/clients/client-marketplace-entitlement-service/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: MarketplaceEntitlementServiceClientConf retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-marketplace-entitlement-service/src/runtimeConfig.ts b/clients/client-marketplace-entitlement-service/src/runtimeConfig.ts index edcf14b2cac09..d8f20603ff7aa 100644 --- a/clients/client-marketplace-entitlement-service/src/runtimeConfig.ts +++ b/clients/client-marketplace-entitlement-service/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: MarketplaceEntitlementServiceClientConf retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-marketplace-metering/src/MarketplaceMeteringClient.ts b/clients/client-marketplace-metering/src/MarketplaceMeteringClient.ts index 0c2c39ac943b0..f94f4cbf819e1 100644 --- a/clients/client-marketplace-metering/src/MarketplaceMeteringClient.ts +++ b/clients/client-marketplace-metering/src/MarketplaceMeteringClient.ts @@ -149,6 +149,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-marketplace-metering/src/endpoints.ts b/clients/client-marketplace-metering/src/endpoints.ts index a96f82e58e64b..36973e51d7fce 100644 --- a/clients/client-marketplace-metering/src/endpoints.ts +++ b/clients/client-marketplace-metering/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "aws-marketplace", diff --git a/clients/client-marketplace-metering/src/runtimeConfig.browser.ts b/clients/client-marketplace-metering/src/runtimeConfig.browser.ts index c93fa33414695..92945836914ed 100644 --- a/clients/client-marketplace-metering/src/runtimeConfig.browser.ts +++ b/clients/client-marketplace-metering/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: MarketplaceMeteringClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-marketplace-metering/src/runtimeConfig.ts b/clients/client-marketplace-metering/src/runtimeConfig.ts index 15c3e2fdbcd0c..7fec397b8d95b 100644 --- a/clients/client-marketplace-metering/src/runtimeConfig.ts +++ b/clients/client-marketplace-metering/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: MarketplaceMeteringClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-mediaconnect/src/MediaConnectClient.ts b/clients/client-mediaconnect/src/MediaConnectClient.ts index c15ccbbfcd5f1..fb83addfaa6b1 100644 --- a/clients/client-mediaconnect/src/MediaConnectClient.ts +++ b/clients/client-mediaconnect/src/MediaConnectClient.ts @@ -257,6 +257,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-mediaconnect/src/endpoints.ts b/clients/client-mediaconnect/src/endpoints.ts index 77061028c2e7c..c0426b9050cf1 100644 --- a/clients/client-mediaconnect/src/endpoints.ts +++ b/clients/client-mediaconnect/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "mediaconnect", diff --git a/clients/client-mediaconnect/src/runtimeConfig.browser.ts b/clients/client-mediaconnect/src/runtimeConfig.browser.ts index 90d9ba5747c46..8ed76f66dcacf 100644 --- a/clients/client-mediaconnect/src/runtimeConfig.browser.ts +++ b/clients/client-mediaconnect/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: MediaConnectClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-mediaconnect/src/runtimeConfig.ts b/clients/client-mediaconnect/src/runtimeConfig.ts index 70d3806046b8c..671bcdd2d22a9 100644 --- a/clients/client-mediaconnect/src/runtimeConfig.ts +++ b/clients/client-mediaconnect/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: MediaConnectClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-mediaconvert/src/MediaConvertClient.ts b/clients/client-mediaconvert/src/MediaConvertClient.ts index 48d78a75ec0a0..1593e31d95405 100644 --- a/clients/client-mediaconvert/src/MediaConvertClient.ts +++ b/clients/client-mediaconvert/src/MediaConvertClient.ts @@ -230,6 +230,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-mediaconvert/src/endpoints.ts b/clients/client-mediaconvert/src/endpoints.ts index e3c13447fd78f..dd20646c94f3c 100644 --- a/clients/client-mediaconvert/src/endpoints.ts +++ b/clients/client-mediaconvert/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "cn-northwest-1": { @@ -87,7 +87,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "mediaconvert", diff --git a/clients/client-mediaconvert/src/runtimeConfig.browser.ts b/clients/client-mediaconvert/src/runtimeConfig.browser.ts index 8c26598bc342c..ab44926f46e67 100644 --- a/clients/client-mediaconvert/src/runtimeConfig.browser.ts +++ b/clients/client-mediaconvert/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: MediaConvertClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-mediaconvert/src/runtimeConfig.ts b/clients/client-mediaconvert/src/runtimeConfig.ts index 69d426e5a07ab..72726c36c871e 100644 --- a/clients/client-mediaconvert/src/runtimeConfig.ts +++ b/clients/client-mediaconvert/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: MediaConvertClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-medialive/src/MediaLiveClient.ts b/clients/client-medialive/src/MediaLiveClient.ts index 107c7400338e4..29105fac20b5b 100644 --- a/clients/client-medialive/src/MediaLiveClient.ts +++ b/clients/client-medialive/src/MediaLiveClient.ts @@ -368,6 +368,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-medialive/src/endpoints.ts b/clients/client-medialive/src/endpoints.ts index 30d293ba4a51e..873e493bb893e 100644 --- a/clients/client-medialive/src/endpoints.ts +++ b/clients/client-medialive/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -69,7 +69,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "medialive", diff --git a/clients/client-medialive/src/runtimeConfig.browser.ts b/clients/client-medialive/src/runtimeConfig.browser.ts index 22a5be45a2a67..95995b4728857 100644 --- a/clients/client-medialive/src/runtimeConfig.browser.ts +++ b/clients/client-medialive/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: MediaLiveClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-medialive/src/runtimeConfig.ts b/clients/client-medialive/src/runtimeConfig.ts index f5f0273aa5713..7744a53a1eb81 100644 --- a/clients/client-medialive/src/runtimeConfig.ts +++ b/clients/client-medialive/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: MediaLiveClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-mediapackage-vod/src/MediaPackageVodClient.ts b/clients/client-mediapackage-vod/src/MediaPackageVodClient.ts index 411c26a65a8dd..25c1271b20dca 100644 --- a/clients/client-mediapackage-vod/src/MediaPackageVodClient.ts +++ b/clients/client-mediapackage-vod/src/MediaPackageVodClient.ts @@ -218,6 +218,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-mediapackage-vod/src/endpoints.ts b/clients/client-mediapackage-vod/src/endpoints.ts index e51c1381737cd..05435a84abeb6 100644 --- a/clients/client-mediapackage-vod/src/endpoints.ts +++ b/clients/client-mediapackage-vod/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "mediapackage-vod", diff --git a/clients/client-mediapackage-vod/src/runtimeConfig.browser.ts b/clients/client-mediapackage-vod/src/runtimeConfig.browser.ts index a314f70fe371d..94598c32566f2 100644 --- a/clients/client-mediapackage-vod/src/runtimeConfig.browser.ts +++ b/clients/client-mediapackage-vod/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: MediaPackageVodClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-mediapackage-vod/src/runtimeConfig.ts b/clients/client-mediapackage-vod/src/runtimeConfig.ts index ff7ba879ef41d..bceb295851d73 100644 --- a/clients/client-mediapackage-vod/src/runtimeConfig.ts +++ b/clients/client-mediapackage-vod/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: MediaPackageVodClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-mediapackage/src/MediaPackageClient.ts b/clients/client-mediapackage/src/MediaPackageClient.ts index 8d8c957983eac..d42e928c21612 100644 --- a/clients/client-mediapackage/src/MediaPackageClient.ts +++ b/clients/client-mediapackage/src/MediaPackageClient.ts @@ -218,6 +218,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-mediapackage/src/endpoints.ts b/clients/client-mediapackage/src/endpoints.ts index 21d31aa98f2c5..96ce70783baa5 100644 --- a/clients/client-mediapackage/src/endpoints.ts +++ b/clients/client-mediapackage/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "mediapackage", diff --git a/clients/client-mediapackage/src/runtimeConfig.browser.ts b/clients/client-mediapackage/src/runtimeConfig.browser.ts index 813f71f990e5b..77a34f20485f6 100644 --- a/clients/client-mediapackage/src/runtimeConfig.browser.ts +++ b/clients/client-mediapackage/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: MediaPackageClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-mediapackage/src/runtimeConfig.ts b/clients/client-mediapackage/src/runtimeConfig.ts index a7edcf91502d5..7e10b249aef6a 100644 --- a/clients/client-mediapackage/src/runtimeConfig.ts +++ b/clients/client-mediapackage/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: MediaPackageClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-mediastore-data/src/MediaStoreDataClient.ts b/clients/client-mediastore-data/src/MediaStoreDataClient.ts index 69c51647ed391..df7d08b3916fe 100644 --- a/clients/client-mediastore-data/src/MediaStoreDataClient.ts +++ b/clients/client-mediastore-data/src/MediaStoreDataClient.ts @@ -152,6 +152,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-mediastore-data/src/endpoints.ts b/clients/client-mediastore-data/src/endpoints.ts index 7944787c36cab..28c0137e549ee 100644 --- a/clients/client-mediastore-data/src/endpoints.ts +++ b/clients/client-mediastore-data/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "mediastore", diff --git a/clients/client-mediastore-data/src/runtimeConfig.browser.ts b/clients/client-mediastore-data/src/runtimeConfig.browser.ts index 6d4a625d6a374..ea1fbc833b84d 100644 --- a/clients/client-mediastore-data/src/runtimeConfig.browser.ts +++ b/clients/client-mediastore-data/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: MediaStoreDataClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-mediastore-data/src/runtimeConfig.ts b/clients/client-mediastore-data/src/runtimeConfig.ts index 31d71fe70f507..c616abd1aa179 100644 --- a/clients/client-mediastore-data/src/runtimeConfig.ts +++ b/clients/client-mediastore-data/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: MediaStoreDataClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-mediastore/src/MediaStoreClient.ts b/clients/client-mediastore/src/MediaStoreClient.ts index c28571ec3bdcf..1fc6d1ff4a1bc 100644 --- a/clients/client-mediastore/src/MediaStoreClient.ts +++ b/clients/client-mediastore/src/MediaStoreClient.ts @@ -209,6 +209,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-mediastore/src/endpoints.ts b/clients/client-mediastore/src/endpoints.ts index 55e48b6a58232..a6fbf2cd7bcd3 100644 --- a/clients/client-mediastore/src/endpoints.ts +++ b/clients/client-mediastore/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "mediastore", diff --git a/clients/client-mediastore/src/runtimeConfig.browser.ts b/clients/client-mediastore/src/runtimeConfig.browser.ts index 3c65c223b7250..f11fa37c1172c 100644 --- a/clients/client-mediastore/src/runtimeConfig.browser.ts +++ b/clients/client-mediastore/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: MediaStoreClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-mediastore/src/runtimeConfig.ts b/clients/client-mediastore/src/runtimeConfig.ts index 6b242c31342b0..c7c18178afbd7 100644 --- a/clients/client-mediastore/src/runtimeConfig.ts +++ b/clients/client-mediastore/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: MediaStoreClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-mediatailor/src/MediaTailorClient.ts b/clients/client-mediatailor/src/MediaTailorClient.ts index ac17f2b5362a1..2daa995751f71 100644 --- a/clients/client-mediatailor/src/MediaTailorClient.ts +++ b/clients/client-mediatailor/src/MediaTailorClient.ts @@ -296,6 +296,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-mediatailor/src/endpoints.ts b/clients/client-mediatailor/src/endpoints.ts index 9612482d4b0cc..121ec8016bab6 100644 --- a/clients/client-mediatailor/src/endpoints.ts +++ b/clients/client-mediatailor/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "mediatailor", diff --git a/clients/client-mediatailor/src/runtimeConfig.browser.ts b/clients/client-mediatailor/src/runtimeConfig.browser.ts index fb33503c1a53e..f5d2f2008c481 100644 --- a/clients/client-mediatailor/src/runtimeConfig.browser.ts +++ b/clients/client-mediatailor/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: MediaTailorClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-mediatailor/src/runtimeConfig.ts b/clients/client-mediatailor/src/runtimeConfig.ts index 393a2a059f542..7d889d0b2b97d 100644 --- a/clients/client-mediatailor/src/runtimeConfig.ts +++ b/clients/client-mediatailor/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: MediaTailorClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-memorydb/src/MemoryDBClient.ts b/clients/client-memorydb/src/MemoryDBClient.ts index c41e4c00de9ab..2e417e9714563 100644 --- a/clients/client-memorydb/src/MemoryDBClient.ts +++ b/clients/client-memorydb/src/MemoryDBClient.ts @@ -269,6 +269,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-memorydb/src/endpoints.ts b/clients/client-memorydb/src/endpoints.ts index cd09922f96a1e..329552b056aaf 100644 --- a/clients/client-memorydb/src/endpoints.ts +++ b/clients/client-memorydb/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "memorydb", diff --git a/clients/client-memorydb/src/runtimeConfig.browser.ts b/clients/client-memorydb/src/runtimeConfig.browser.ts index 578631d8e12b4..ce879e9aa0e3b 100644 --- a/clients/client-memorydb/src/runtimeConfig.browser.ts +++ b/clients/client-memorydb/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: MemoryDBClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-memorydb/src/runtimeConfig.ts b/clients/client-memorydb/src/runtimeConfig.ts index daa07996ecc6a..efa0bb16b4adc 100644 --- a/clients/client-memorydb/src/runtimeConfig.ts +++ b/clients/client-memorydb/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: MemoryDBClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-mgn/src/MgnClient.ts b/clients/client-mgn/src/MgnClient.ts index 74dab893e50f1..7378b80244277 100644 --- a/clients/client-mgn/src/MgnClient.ts +++ b/clients/client-mgn/src/MgnClient.ts @@ -257,6 +257,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-mgn/src/endpoints.ts b/clients/client-mgn/src/endpoints.ts index 9abb55ab8e2bf..eb10dc42d61c3 100644 --- a/clients/client-mgn/src/endpoints.ts +++ b/clients/client-mgn/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "mgn", diff --git a/clients/client-mgn/src/runtimeConfig.browser.ts b/clients/client-mgn/src/runtimeConfig.browser.ts index 7e087e489fc82..02f261396952e 100644 --- a/clients/client-mgn/src/runtimeConfig.browser.ts +++ b/clients/client-mgn/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: MgnClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-mgn/src/runtimeConfig.ts b/clients/client-mgn/src/runtimeConfig.ts index d3c0464326f14..75ac798a7e59a 100644 --- a/clients/client-mgn/src/runtimeConfig.ts +++ b/clients/client-mgn/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: MgnClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-migration-hub/src/MigrationHubClient.ts b/clients/client-migration-hub/src/MigrationHubClient.ts index 2216b024e6e0a..a075ce629fce4 100644 --- a/clients/client-migration-hub/src/MigrationHubClient.ts +++ b/clients/client-migration-hub/src/MigrationHubClient.ts @@ -236,6 +236,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-migration-hub/src/endpoints.ts b/clients/client-migration-hub/src/endpoints.ts index 633cfad07b6c5..bf77f04962ed0 100644 --- a/clients/client-migration-hub/src/endpoints.ts +++ b/clients/client-migration-hub/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "mgh", diff --git a/clients/client-migration-hub/src/runtimeConfig.browser.ts b/clients/client-migration-hub/src/runtimeConfig.browser.ts index 29ff606461a6c..30ce492c897ab 100644 --- a/clients/client-migration-hub/src/runtimeConfig.browser.ts +++ b/clients/client-migration-hub/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: MigrationHubClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-migration-hub/src/runtimeConfig.ts b/clients/client-migration-hub/src/runtimeConfig.ts index ee8fa8f8f8cf8..462c9758a767d 100644 --- a/clients/client-migration-hub/src/runtimeConfig.ts +++ b/clients/client-migration-hub/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: MigrationHubClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-migrationhub-config/src/MigrationHubConfigClient.ts b/clients/client-migrationhub-config/src/MigrationHubConfigClient.ts index 5f7c26219f37d..65022cfe155ce 100644 --- a/clients/client-migrationhub-config/src/MigrationHubConfigClient.ts +++ b/clients/client-migrationhub-config/src/MigrationHubConfigClient.ts @@ -152,6 +152,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-migrationhub-config/src/endpoints.ts b/clients/client-migrationhub-config/src/endpoints.ts index df31ed29b9b37..21c25a84b28f4 100644 --- a/clients/client-migrationhub-config/src/endpoints.ts +++ b/clients/client-migrationhub-config/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "mgh", diff --git a/clients/client-migrationhub-config/src/runtimeConfig.browser.ts b/clients/client-migrationhub-config/src/runtimeConfig.browser.ts index 7ef28fabedbcd..a1e8e985ef6d6 100644 --- a/clients/client-migrationhub-config/src/runtimeConfig.browser.ts +++ b/clients/client-migrationhub-config/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: MigrationHubConfigClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-migrationhub-config/src/runtimeConfig.ts b/clients/client-migrationhub-config/src/runtimeConfig.ts index f7e6599ab55bf..4a7421c7f8c39 100644 --- a/clients/client-migrationhub-config/src/runtimeConfig.ts +++ b/clients/client-migrationhub-config/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: MigrationHubConfigClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-mobile/src/MobileClient.ts b/clients/client-mobile/src/MobileClient.ts index 093cba908d816..c5fe8ebf28621 100644 --- a/clients/client-mobile/src/MobileClient.ts +++ b/clients/client-mobile/src/MobileClient.ts @@ -164,6 +164,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-mobile/src/endpoints.ts b/clients/client-mobile/src/endpoints.ts index df56c68ba1c38..7cc5d8d839292 100644 --- a/clients/client-mobile/src/endpoints.ts +++ b/clients/client-mobile/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "awsmobilehubservice", diff --git a/clients/client-mobile/src/runtimeConfig.browser.ts b/clients/client-mobile/src/runtimeConfig.browser.ts index 5d35b110fecba..9fa7a8feb68ec 100644 --- a/clients/client-mobile/src/runtimeConfig.browser.ts +++ b/clients/client-mobile/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: MobileClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-mobile/src/runtimeConfig.ts b/clients/client-mobile/src/runtimeConfig.ts index 4f0e837dbc6b7..6dd1604bef4b1 100644 --- a/clients/client-mobile/src/runtimeConfig.ts +++ b/clients/client-mobile/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: MobileClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-mq/src/MqClient.ts b/clients/client-mq/src/MqClient.ts index 0b46c27b19c1e..43655c759fcca 100644 --- a/clients/client-mq/src/MqClient.ts +++ b/clients/client-mq/src/MqClient.ts @@ -224,6 +224,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-mq/src/endpoints.ts b/clients/client-mq/src/endpoints.ts index 7a347edcdf6fe..b76c720abd496 100644 --- a/clients/client-mq/src/endpoints.ts +++ b/clients/client-mq/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "mq", diff --git a/clients/client-mq/src/runtimeConfig.browser.ts b/clients/client-mq/src/runtimeConfig.browser.ts index 40b1e6fe57b87..fc635327513d9 100644 --- a/clients/client-mq/src/runtimeConfig.browser.ts +++ b/clients/client-mq/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: MqClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-mq/src/runtimeConfig.ts b/clients/client-mq/src/runtimeConfig.ts index e422337129aad..2f61f0b7881f6 100644 --- a/clients/client-mq/src/runtimeConfig.ts +++ b/clients/client-mq/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: MqClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-mturk/src/MTurkClient.ts b/clients/client-mturk/src/MTurkClient.ts index 581fb31c902e3..5196d7d91fe3c 100644 --- a/clients/client-mturk/src/MTurkClient.ts +++ b/clients/client-mturk/src/MTurkClient.ts @@ -317,6 +317,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-mturk/src/endpoints.ts b/clients/client-mturk/src/endpoints.ts index 0f472fabd3894..d2b66e6592332 100644 --- a/clients/client-mturk/src/endpoints.ts +++ b/clients/client-mturk/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { sandbox: { @@ -58,7 +58,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "mturk-requester", diff --git a/clients/client-mturk/src/runtimeConfig.browser.ts b/clients/client-mturk/src/runtimeConfig.browser.ts index ed2ac7df5a4cc..e47b5ff535629 100644 --- a/clients/client-mturk/src/runtimeConfig.browser.ts +++ b/clients/client-mturk/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: MTurkClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-mturk/src/runtimeConfig.ts b/clients/client-mturk/src/runtimeConfig.ts index 249926e1b10cd..bd0ba35824eb4 100644 --- a/clients/client-mturk/src/runtimeConfig.ts +++ b/clients/client-mturk/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: MTurkClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-mwaa/src/MWAAClient.ts b/clients/client-mwaa/src/MWAAClient.ts index 77e7509053426..7558d75cd1a7e 100644 --- a/clients/client-mwaa/src/MWAAClient.ts +++ b/clients/client-mwaa/src/MWAAClient.ts @@ -176,6 +176,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-mwaa/src/endpoints.ts b/clients/client-mwaa/src/endpoints.ts index df4961fb648dc..fbc8d3dce68db 100644 --- a/clients/client-mwaa/src/endpoints.ts +++ b/clients/client-mwaa/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "airflow", diff --git a/clients/client-mwaa/src/runtimeConfig.browser.ts b/clients/client-mwaa/src/runtimeConfig.browser.ts index 3c14e6366a75c..4c1d1359f5552 100644 --- a/clients/client-mwaa/src/runtimeConfig.browser.ts +++ b/clients/client-mwaa/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: MWAAClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-mwaa/src/runtimeConfig.ts b/clients/client-mwaa/src/runtimeConfig.ts index 8e2620284e7ff..540981dd13d0b 100644 --- a/clients/client-mwaa/src/runtimeConfig.ts +++ b/clients/client-mwaa/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: MWAAClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-neptune/src/NeptuneClient.ts b/clients/client-neptune/src/NeptuneClient.ts index 3a8dd708cccc7..39837cc271425 100644 --- a/clients/client-neptune/src/NeptuneClient.ts +++ b/clients/client-neptune/src/NeptuneClient.ts @@ -473,6 +473,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-neptune/src/endpoints.ts b/clients/client-neptune/src/endpoints.ts index d1ea2a09c2193..8033fe8df7f70 100644 --- a/clients/client-neptune/src/endpoints.ts +++ b/clients/client-neptune/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "rds-fips.ca-central-1": { @@ -87,7 +87,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "rds", diff --git a/clients/client-neptune/src/runtimeConfig.browser.ts b/clients/client-neptune/src/runtimeConfig.browser.ts index 1ac86b7de72ad..c3519158d2393 100644 --- a/clients/client-neptune/src/runtimeConfig.browser.ts +++ b/clients/client-neptune/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: NeptuneClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-neptune/src/runtimeConfig.ts b/clients/client-neptune/src/runtimeConfig.ts index 73c4084906a5e..3f576caf3a12d 100644 --- a/clients/client-neptune/src/runtimeConfig.ts +++ b/clients/client-neptune/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: NeptuneClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-network-firewall/src/NetworkFirewallClient.ts b/clients/client-network-firewall/src/NetworkFirewallClient.ts index 65ae282ca5866..4142e927d9896 100644 --- a/clients/client-network-firewall/src/NetworkFirewallClient.ts +++ b/clients/client-network-firewall/src/NetworkFirewallClient.ts @@ -272,6 +272,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-network-firewall/src/endpoints.ts b/clients/client-network-firewall/src/endpoints.ts index aec8272595dae..ef2695b25fa61 100644 --- a/clients/client-network-firewall/src/endpoints.ts +++ b/clients/client-network-firewall/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-ca-central-1": { @@ -87,7 +87,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "network-firewall", diff --git a/clients/client-network-firewall/src/runtimeConfig.browser.ts b/clients/client-network-firewall/src/runtimeConfig.browser.ts index 8f9d2b57d979a..4eb3b11857107 100644 --- a/clients/client-network-firewall/src/runtimeConfig.browser.ts +++ b/clients/client-network-firewall/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: NetworkFirewallClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-network-firewall/src/runtimeConfig.ts b/clients/client-network-firewall/src/runtimeConfig.ts index 9e7261b7529cf..28b15386c2f15 100644 --- a/clients/client-network-firewall/src/runtimeConfig.ts +++ b/clients/client-network-firewall/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: NetworkFirewallClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-networkmanager/src/NetworkManagerClient.ts b/clients/client-networkmanager/src/NetworkManagerClient.ts index 91be92be7557e..00780743497f0 100644 --- a/clients/client-networkmanager/src/NetworkManagerClient.ts +++ b/clients/client-networkmanager/src/NetworkManagerClient.ts @@ -287,6 +287,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-networkmanager/src/endpoints.ts b/clients/client-networkmanager/src/endpoints.ts index 937203e117717..b68df2c253804 100644 --- a/clients/client-networkmanager/src/endpoints.ts +++ b/clients/client-networkmanager/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "networkmanager", diff --git a/clients/client-networkmanager/src/runtimeConfig.browser.ts b/clients/client-networkmanager/src/runtimeConfig.browser.ts index dfc5280932ce5..d0cfc052723a6 100644 --- a/clients/client-networkmanager/src/runtimeConfig.browser.ts +++ b/clients/client-networkmanager/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: NetworkManagerClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-networkmanager/src/runtimeConfig.ts b/clients/client-networkmanager/src/runtimeConfig.ts index 9aaae811d3fdb..41de84fe94859 100644 --- a/clients/client-networkmanager/src/runtimeConfig.ts +++ b/clients/client-networkmanager/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: NetworkManagerClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-nimble/src/NimbleClient.ts b/clients/client-nimble/src/NimbleClient.ts index ee65e4f319606..975f35805d257 100644 --- a/clients/client-nimble/src/NimbleClient.ts +++ b/clients/client-nimble/src/NimbleClient.ts @@ -353,6 +353,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-nimble/src/endpoints.ts b/clients/client-nimble/src/endpoints.ts index e1287d3bee8c0..0e24103f56e9e 100644 --- a/clients/client-nimble/src/endpoints.ts +++ b/clients/client-nimble/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "nimble", diff --git a/clients/client-nimble/src/runtimeConfig.browser.ts b/clients/client-nimble/src/runtimeConfig.browser.ts index 919bbdc1db017..8b0c8d14d682a 100644 --- a/clients/client-nimble/src/runtimeConfig.browser.ts +++ b/clients/client-nimble/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: NimbleClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-nimble/src/runtimeConfig.ts b/clients/client-nimble/src/runtimeConfig.ts index 58c4050268961..ab3e8d91e93dc 100644 --- a/clients/client-nimble/src/runtimeConfig.ts +++ b/clients/client-nimble/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: NimbleClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-opensearch/src/OpenSearchClient.ts b/clients/client-opensearch/src/OpenSearchClient.ts index 6a4f47a0b9c04..0bda2e88ea86c 100644 --- a/clients/client-opensearch/src/OpenSearchClient.ts +++ b/clients/client-opensearch/src/OpenSearchClient.ts @@ -314,6 +314,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-opensearch/src/endpoints.ts b/clients/client-opensearch/src/endpoints.ts index b682e53831beb..4042a8f4e9180 100644 --- a/clients/client-opensearch/src/endpoints.ts +++ b/clients/client-opensearch/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { fips: { @@ -59,7 +59,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "es", diff --git a/clients/client-opensearch/src/runtimeConfig.browser.ts b/clients/client-opensearch/src/runtimeConfig.browser.ts index 9f0959837e713..78366d2a543aa 100644 --- a/clients/client-opensearch/src/runtimeConfig.browser.ts +++ b/clients/client-opensearch/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: OpenSearchClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-opensearch/src/runtimeConfig.ts b/clients/client-opensearch/src/runtimeConfig.ts index fc25d8b71ade6..dce0ffc8f038d 100644 --- a/clients/client-opensearch/src/runtimeConfig.ts +++ b/clients/client-opensearch/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: OpenSearchClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-opsworks/src/OpsWorksClient.ts b/clients/client-opsworks/src/OpsWorksClient.ts index b1895e67719bc..63c5f1a4cdc6f 100644 --- a/clients/client-opsworks/src/OpsWorksClient.ts +++ b/clients/client-opsworks/src/OpsWorksClient.ts @@ -437,6 +437,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-opsworks/src/endpoints.ts b/clients/client-opsworks/src/endpoints.ts index c4a707e372a02..a7a5933ddad40 100644 --- a/clients/client-opsworks/src/endpoints.ts +++ b/clients/client-opsworks/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "opsworks", diff --git a/clients/client-opsworks/src/runtimeConfig.browser.ts b/clients/client-opsworks/src/runtimeConfig.browser.ts index 1fe61d72cdc29..92ea2bf3ccb46 100644 --- a/clients/client-opsworks/src/runtimeConfig.browser.ts +++ b/clients/client-opsworks/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: OpsWorksClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-opsworks/src/runtimeConfig.ts b/clients/client-opsworks/src/runtimeConfig.ts index 554d00f776926..bdeaab19e223d 100644 --- a/clients/client-opsworks/src/runtimeConfig.ts +++ b/clients/client-opsworks/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: OpsWorksClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-opsworkscm/src/OpsWorksCMClient.ts b/clients/client-opsworkscm/src/OpsWorksCMClient.ts index f0ff9fb2b5566..71d477f4b2939 100644 --- a/clients/client-opsworkscm/src/OpsWorksCMClient.ts +++ b/clients/client-opsworkscm/src/OpsWorksCMClient.ts @@ -209,6 +209,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-opsworkscm/src/endpoints.ts b/clients/client-opsworkscm/src/endpoints.ts index d29e5ca9e7d57..9a817e5579f67 100644 --- a/clients/client-opsworkscm/src/endpoints.ts +++ b/clients/client-opsworkscm/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "opsworks-cm", diff --git a/clients/client-opsworkscm/src/runtimeConfig.browser.ts b/clients/client-opsworkscm/src/runtimeConfig.browser.ts index e31f36f0b9cda..cb32530f3ff43 100644 --- a/clients/client-opsworkscm/src/runtimeConfig.browser.ts +++ b/clients/client-opsworkscm/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: OpsWorksCMClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-opsworkscm/src/runtimeConfig.ts b/clients/client-opsworkscm/src/runtimeConfig.ts index ca4f0f9d7e1df..427db5b45d192 100644 --- a/clients/client-opsworkscm/src/runtimeConfig.ts +++ b/clients/client-opsworkscm/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: OpsWorksCMClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-organizations/src/OrganizationsClient.ts b/clients/client-organizations/src/OrganizationsClient.ts index 2e6444e1cc042..e8b5ada73a97d 100644 --- a/clients/client-organizations/src/OrganizationsClient.ts +++ b/clients/client-organizations/src/OrganizationsClient.ts @@ -365,6 +365,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-organizations/src/endpoints.ts b/clients/client-organizations/src/endpoints.ts index ca60f976b7e82..3d5896c1708c4 100644 --- a/clients/client-organizations/src/endpoints.ts +++ b/clients/client-organizations/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "aws-cn-global": { @@ -76,7 +76,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "organizations", diff --git a/clients/client-organizations/src/runtimeConfig.browser.ts b/clients/client-organizations/src/runtimeConfig.browser.ts index ec53a99a498be..9e6fbb99d8d10 100644 --- a/clients/client-organizations/src/runtimeConfig.browser.ts +++ b/clients/client-organizations/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: OrganizationsClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-organizations/src/runtimeConfig.ts b/clients/client-organizations/src/runtimeConfig.ts index 318e2970f416c..75caf52f29c92 100644 --- a/clients/client-organizations/src/runtimeConfig.ts +++ b/clients/client-organizations/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: OrganizationsClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-outposts/src/OutpostsClient.ts b/clients/client-outposts/src/OutpostsClient.ts index d669e4e65d432..1ce599665110a 100644 --- a/clients/client-outposts/src/OutpostsClient.ts +++ b/clients/client-outposts/src/OutpostsClient.ts @@ -176,6 +176,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-outposts/src/endpoints.ts b/clients/client-outposts/src/endpoints.ts index af145b69537af..de969ad49780e 100644 --- a/clients/client-outposts/src/endpoints.ts +++ b/clients/client-outposts/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-ca-central-1": { @@ -87,7 +87,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "outposts", diff --git a/clients/client-outposts/src/runtimeConfig.browser.ts b/clients/client-outposts/src/runtimeConfig.browser.ts index 17c3259c3bd75..bbb53a9002b4d 100644 --- a/clients/client-outposts/src/runtimeConfig.browser.ts +++ b/clients/client-outposts/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: OutpostsClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-outposts/src/runtimeConfig.ts b/clients/client-outposts/src/runtimeConfig.ts index 350ab7132e38f..4fae4ebd40215 100644 --- a/clients/client-outposts/src/runtimeConfig.ts +++ b/clients/client-outposts/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: OutpostsClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-panorama/src/PanoramaClient.ts b/clients/client-panorama/src/PanoramaClient.ts index 551ee1de4e21d..0cd68c02ebdb8 100644 --- a/clients/client-panorama/src/PanoramaClient.ts +++ b/clients/client-panorama/src/PanoramaClient.ts @@ -293,6 +293,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-panorama/src/endpoints.ts b/clients/client-panorama/src/endpoints.ts index 2c7660dd8b2e4..9c75b80878cb7 100644 --- a/clients/client-panorama/src/endpoints.ts +++ b/clients/client-panorama/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "panorama", diff --git a/clients/client-panorama/src/runtimeConfig.browser.ts b/clients/client-panorama/src/runtimeConfig.browser.ts index 44dc9c40fa2ca..63016f6729e95 100644 --- a/clients/client-panorama/src/runtimeConfig.browser.ts +++ b/clients/client-panorama/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: PanoramaClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-panorama/src/runtimeConfig.ts b/clients/client-panorama/src/runtimeConfig.ts index 5f0380bb11b7c..953a3d3ce9878 100644 --- a/clients/client-panorama/src/runtimeConfig.ts +++ b/clients/client-panorama/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: PanoramaClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-personalize-events/src/PersonalizeEventsClient.ts b/clients/client-personalize-events/src/PersonalizeEventsClient.ts index 34bc7da1dd511..3b557a0c87f78 100644 --- a/clients/client-personalize-events/src/PersonalizeEventsClient.ts +++ b/clients/client-personalize-events/src/PersonalizeEventsClient.ts @@ -140,6 +140,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-personalize-events/src/endpoints.ts b/clients/client-personalize-events/src/endpoints.ts index d544ee4f3c628..37d9feed92b80 100644 --- a/clients/client-personalize-events/src/endpoints.ts +++ b/clients/client-personalize-events/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "personalize", diff --git a/clients/client-personalize-events/src/runtimeConfig.browser.ts b/clients/client-personalize-events/src/runtimeConfig.browser.ts index 99a54c5a05615..035025e7931ac 100644 --- a/clients/client-personalize-events/src/runtimeConfig.browser.ts +++ b/clients/client-personalize-events/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: PersonalizeEventsClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-personalize-events/src/runtimeConfig.ts b/clients/client-personalize-events/src/runtimeConfig.ts index aeea61c80cd13..5e74a64bb9eca 100644 --- a/clients/client-personalize-events/src/runtimeConfig.ts +++ b/clients/client-personalize-events/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: PersonalizeEventsClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-personalize-runtime/src/PersonalizeRuntimeClient.ts b/clients/client-personalize-runtime/src/PersonalizeRuntimeClient.ts index 23d934753bd16..6ed7157ea01fb 100644 --- a/clients/client-personalize-runtime/src/PersonalizeRuntimeClient.ts +++ b/clients/client-personalize-runtime/src/PersonalizeRuntimeClient.ts @@ -142,6 +142,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-personalize-runtime/src/endpoints.ts b/clients/client-personalize-runtime/src/endpoints.ts index fc2b4dff7e283..58a6846f48e1e 100644 --- a/clients/client-personalize-runtime/src/endpoints.ts +++ b/clients/client-personalize-runtime/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "personalize", diff --git a/clients/client-personalize-runtime/src/runtimeConfig.browser.ts b/clients/client-personalize-runtime/src/runtimeConfig.browser.ts index 32d6160a87d9d..f21199d5bbcf8 100644 --- a/clients/client-personalize-runtime/src/runtimeConfig.browser.ts +++ b/clients/client-personalize-runtime/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: PersonalizeRuntimeClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-personalize-runtime/src/runtimeConfig.ts b/clients/client-personalize-runtime/src/runtimeConfig.ts index fb8734f23f5f5..1fce5faca3445 100644 --- a/clients/client-personalize-runtime/src/runtimeConfig.ts +++ b/clients/client-personalize-runtime/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: PersonalizeRuntimeClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-personalize/src/PersonalizeClient.ts b/clients/client-personalize/src/PersonalizeClient.ts index 933d7219dc77a..b99dbb931fee9 100644 --- a/clients/client-personalize/src/PersonalizeClient.ts +++ b/clients/client-personalize/src/PersonalizeClient.ts @@ -326,6 +326,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-personalize/src/endpoints.ts b/clients/client-personalize/src/endpoints.ts index 35e8372682587..bc11eefa7d52f 100644 --- a/clients/client-personalize/src/endpoints.ts +++ b/clients/client-personalize/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "personalize", diff --git a/clients/client-personalize/src/runtimeConfig.browser.ts b/clients/client-personalize/src/runtimeConfig.browser.ts index 56b9f37100cdc..73cb917a4252e 100644 --- a/clients/client-personalize/src/runtimeConfig.browser.ts +++ b/clients/client-personalize/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: PersonalizeClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-personalize/src/runtimeConfig.ts b/clients/client-personalize/src/runtimeConfig.ts index 36f56e24daf79..a2ed67e7e2efe 100644 --- a/clients/client-personalize/src/runtimeConfig.ts +++ b/clients/client-personalize/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: PersonalizeClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-pi/src/PIClient.ts b/clients/client-pi/src/PIClient.ts index 01489ff770dba..c1d1ec2319c0d 100644 --- a/clients/client-pi/src/PIClient.ts +++ b/clients/client-pi/src/PIClient.ts @@ -152,6 +152,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-pi/src/endpoints.ts b/clients/client-pi/src/endpoints.ts index f4a376b88cb00..36fa00d15b3eb 100644 --- a/clients/client-pi/src/endpoints.ts +++ b/clients/client-pi/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "pi", diff --git a/clients/client-pi/src/runtimeConfig.browser.ts b/clients/client-pi/src/runtimeConfig.browser.ts index cb1a97d38e1af..b6396f9be0099 100644 --- a/clients/client-pi/src/runtimeConfig.browser.ts +++ b/clients/client-pi/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: PIClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-pi/src/runtimeConfig.ts b/clients/client-pi/src/runtimeConfig.ts index 360277c244ae7..131990d8fb2a8 100644 --- a/clients/client-pi/src/runtimeConfig.ts +++ b/clients/client-pi/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: PIClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-pinpoint-email/src/PinpointEmailClient.ts b/clients/client-pinpoint-email/src/PinpointEmailClient.ts index da3da32884281..fa4006e99a5f4 100644 --- a/clients/client-pinpoint-email/src/PinpointEmailClient.ts +++ b/clients/client-pinpoint-email/src/PinpointEmailClient.ts @@ -368,6 +368,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-pinpoint-email/src/endpoints.ts b/clients/client-pinpoint-email/src/endpoints.ts index 7e35e642de089..fd64fb343c7f7 100644 --- a/clients/client-pinpoint-email/src/endpoints.ts +++ b/clients/client-pinpoint-email/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-gov-west-1": { @@ -58,7 +58,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "ses", diff --git a/clients/client-pinpoint-email/src/runtimeConfig.browser.ts b/clients/client-pinpoint-email/src/runtimeConfig.browser.ts index 2932655dd1314..d528dbec17f75 100644 --- a/clients/client-pinpoint-email/src/runtimeConfig.browser.ts +++ b/clients/client-pinpoint-email/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: PinpointEmailClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-pinpoint-email/src/runtimeConfig.ts b/clients/client-pinpoint-email/src/runtimeConfig.ts index 3580ab2982bba..eb6ce86f0fdf9 100644 --- a/clients/client-pinpoint-email/src/runtimeConfig.ts +++ b/clients/client-pinpoint-email/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: PinpointEmailClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-pinpoint-sms-voice/src/PinpointSMSVoiceClient.ts b/clients/client-pinpoint-sms-voice/src/PinpointSMSVoiceClient.ts index fc82195af6895..cd5394a10f2a5 100644 --- a/clients/client-pinpoint-sms-voice/src/PinpointSMSVoiceClient.ts +++ b/clients/client-pinpoint-sms-voice/src/PinpointSMSVoiceClient.ts @@ -182,6 +182,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-pinpoint-sms-voice/src/endpoints.ts b/clients/client-pinpoint-sms-voice/src/endpoints.ts index 1cdb265708b02..e64c42f116f1b 100644 --- a/clients/client-pinpoint-sms-voice/src/endpoints.ts +++ b/clients/client-pinpoint-sms-voice/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "sms-voice", diff --git a/clients/client-pinpoint-sms-voice/src/runtimeConfig.browser.ts b/clients/client-pinpoint-sms-voice/src/runtimeConfig.browser.ts index c964c802622ac..15575111e7654 100644 --- a/clients/client-pinpoint-sms-voice/src/runtimeConfig.browser.ts +++ b/clients/client-pinpoint-sms-voice/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: PinpointSMSVoiceClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-pinpoint-sms-voice/src/runtimeConfig.ts b/clients/client-pinpoint-sms-voice/src/runtimeConfig.ts index 3390705c3aee2..2321c0f85a0b2 100644 --- a/clients/client-pinpoint-sms-voice/src/runtimeConfig.ts +++ b/clients/client-pinpoint-sms-voice/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: PinpointSMSVoiceClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-pinpoint/src/PinpointClient.ts b/clients/client-pinpoint/src/PinpointClient.ts index 5656de95e2d06..764e46b7f6726 100644 --- a/clients/client-pinpoint/src/PinpointClient.ts +++ b/clients/client-pinpoint/src/PinpointClient.ts @@ -605,6 +605,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-pinpoint/src/endpoints.ts b/clients/client-pinpoint/src/endpoints.ts index ef0ae060ff62b..9bac44694cc26 100644 --- a/clients/client-pinpoint/src/endpoints.ts +++ b/clients/client-pinpoint/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -80,7 +80,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "mobiletargeting", diff --git a/clients/client-pinpoint/src/runtimeConfig.browser.ts b/clients/client-pinpoint/src/runtimeConfig.browser.ts index 30a3b600e95c2..7019b778ebe2f 100644 --- a/clients/client-pinpoint/src/runtimeConfig.browser.ts +++ b/clients/client-pinpoint/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: PinpointClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-pinpoint/src/runtimeConfig.ts b/clients/client-pinpoint/src/runtimeConfig.ts index 067cb49cbb781..bdccd466416f0 100644 --- a/clients/client-pinpoint/src/runtimeConfig.ts +++ b/clients/client-pinpoint/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: PinpointClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-polly/src/PollyClient.ts b/clients/client-polly/src/PollyClient.ts index 4f6c076198574..fc7b699e6769e 100644 --- a/clients/client-polly/src/PollyClient.ts +++ b/clients/client-polly/src/PollyClient.ts @@ -173,6 +173,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-polly/src/endpoints.ts b/clients/client-polly/src/endpoints.ts index a76af10a84256..d6a93265e77af 100644 --- a/clients/client-polly/src/endpoints.ts +++ b/clients/client-polly/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -78,7 +78,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "polly", diff --git a/clients/client-polly/src/runtimeConfig.browser.ts b/clients/client-polly/src/runtimeConfig.browser.ts index 84157d4294e2d..805e07b173cfa 100644 --- a/clients/client-polly/src/runtimeConfig.browser.ts +++ b/clients/client-polly/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: PollyClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-polly/src/runtimeConfig.ts b/clients/client-polly/src/runtimeConfig.ts index c13743d910857..9f170320d1740 100644 --- a/clients/client-polly/src/runtimeConfig.ts +++ b/clients/client-polly/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: PollyClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-pricing/src/PricingClient.ts b/clients/client-pricing/src/PricingClient.ts index 75e93e1e0e6cb..caf25a07bac53 100644 --- a/clients/client-pricing/src/PricingClient.ts +++ b/clients/client-pricing/src/PricingClient.ts @@ -143,6 +143,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-pricing/src/endpoints.ts b/clients/client-pricing/src/endpoints.ts index 3732ee042227c..87d4373eab25a 100644 --- a/clients/client-pricing/src/endpoints.ts +++ b/clients/client-pricing/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "pricing", diff --git a/clients/client-pricing/src/runtimeConfig.browser.ts b/clients/client-pricing/src/runtimeConfig.browser.ts index 0b8086dad4d66..6248519291cc6 100644 --- a/clients/client-pricing/src/runtimeConfig.browser.ts +++ b/clients/client-pricing/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: PricingClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-pricing/src/runtimeConfig.ts b/clients/client-pricing/src/runtimeConfig.ts index c4256a595acc8..f1d24351436af 100644 --- a/clients/client-pricing/src/runtimeConfig.ts +++ b/clients/client-pricing/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: PricingClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-proton/src/ProtonClient.ts b/clients/client-proton/src/ProtonClient.ts index 0e77584b0ebbb..68195cee00b10 100644 --- a/clients/client-proton/src/ProtonClient.ts +++ b/clients/client-proton/src/ProtonClient.ts @@ -386,6 +386,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-proton/src/endpoints.ts b/clients/client-proton/src/endpoints.ts index d6fa05ba2a860..247c2a7d6b4cd 100644 --- a/clients/client-proton/src/endpoints.ts +++ b/clients/client-proton/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "proton", diff --git a/clients/client-proton/src/runtimeConfig.browser.ts b/clients/client-proton/src/runtimeConfig.browser.ts index fdcecb19b75d2..d7d46275bd3d0 100644 --- a/clients/client-proton/src/runtimeConfig.browser.ts +++ b/clients/client-proton/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ProtonClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-proton/src/runtimeConfig.ts b/clients/client-proton/src/runtimeConfig.ts index d9a8b4b2e8264..0baa38661859f 100644 --- a/clients/client-proton/src/runtimeConfig.ts +++ b/clients/client-proton/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ProtonClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-qldb-session/src/QLDBSessionClient.ts b/clients/client-qldb-session/src/QLDBSessionClient.ts index aefd08854e649..e05e132b0cedf 100644 --- a/clients/client-qldb-session/src/QLDBSessionClient.ts +++ b/clients/client-qldb-session/src/QLDBSessionClient.ts @@ -138,6 +138,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-qldb-session/src/endpoints.ts b/clients/client-qldb-session/src/endpoints.ts index 000a7b977f301..20923707f13a2 100644 --- a/clients/client-qldb-session/src/endpoints.ts +++ b/clients/client-qldb-session/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -69,7 +69,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "qldb", diff --git a/clients/client-qldb-session/src/runtimeConfig.browser.ts b/clients/client-qldb-session/src/runtimeConfig.browser.ts index ed3e7a3dacd13..0ed939d1a239d 100644 --- a/clients/client-qldb-session/src/runtimeConfig.browser.ts +++ b/clients/client-qldb-session/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: QLDBSessionClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-qldb-session/src/runtimeConfig.ts b/clients/client-qldb-session/src/runtimeConfig.ts index c1a83d148fd0a..cd6eb43a6477c 100644 --- a/clients/client-qldb-session/src/runtimeConfig.ts +++ b/clients/client-qldb-session/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: QLDBSessionClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-qldb/src/QLDBClient.ts b/clients/client-qldb/src/QLDBClient.ts index 74ef166fc7c7a..39794a9409c5e 100644 --- a/clients/client-qldb/src/QLDBClient.ts +++ b/clients/client-qldb/src/QLDBClient.ts @@ -224,6 +224,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-qldb/src/endpoints.ts b/clients/client-qldb/src/endpoints.ts index 086b16d1d0b65..21947d0c3a124 100644 --- a/clients/client-qldb/src/endpoints.ts +++ b/clients/client-qldb/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -69,7 +69,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "qldb", diff --git a/clients/client-qldb/src/runtimeConfig.browser.ts b/clients/client-qldb/src/runtimeConfig.browser.ts index 9c548fa3963d0..8c811e9681ac3 100644 --- a/clients/client-qldb/src/runtimeConfig.browser.ts +++ b/clients/client-qldb/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: QLDBClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-qldb/src/runtimeConfig.ts b/clients/client-qldb/src/runtimeConfig.ts index 73fbb5ec8829f..7911df47a861c 100644 --- a/clients/client-qldb/src/runtimeConfig.ts +++ b/clients/client-qldb/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: QLDBClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-quicksight/src/QuickSightClient.ts b/clients/client-quicksight/src/QuickSightClient.ts index 760f2b5816ead..5a5fa78e56af0 100644 --- a/clients/client-quicksight/src/QuickSightClient.ts +++ b/clients/client-quicksight/src/QuickSightClient.ts @@ -623,6 +623,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-quicksight/src/endpoints.ts b/clients/client-quicksight/src/endpoints.ts index 7bb60b95e3d24..aadfeb68bd135 100644 --- a/clients/client-quicksight/src/endpoints.ts +++ b/clients/client-quicksight/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -54,7 +54,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "quicksight", diff --git a/clients/client-quicksight/src/runtimeConfig.browser.ts b/clients/client-quicksight/src/runtimeConfig.browser.ts index 58863d68818f7..8263f3f45107a 100644 --- a/clients/client-quicksight/src/runtimeConfig.browser.ts +++ b/clients/client-quicksight/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: QuickSightClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-quicksight/src/runtimeConfig.ts b/clients/client-quicksight/src/runtimeConfig.ts index 24c4b7ed5a77d..df3f5a4b4e205 100644 --- a/clients/client-quicksight/src/runtimeConfig.ts +++ b/clients/client-quicksight/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: QuickSightClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-ram/src/RAMClient.ts b/clients/client-ram/src/RAMClient.ts index 57093ff450d4c..481b2ae7b070a 100644 --- a/clients/client-ram/src/RAMClient.ts +++ b/clients/client-ram/src/RAMClient.ts @@ -257,6 +257,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-ram/src/endpoints.ts b/clients/client-ram/src/endpoints.ts index 8a2a295b2231d..c001a7b7fa956 100644 --- a/clients/client-ram/src/endpoints.ts +++ b/clients/client-ram/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-ca-central-1": { @@ -87,7 +87,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "ram", diff --git a/clients/client-ram/src/runtimeConfig.browser.ts b/clients/client-ram/src/runtimeConfig.browser.ts index e632279fca176..1b0f61c40c488 100644 --- a/clients/client-ram/src/runtimeConfig.browser.ts +++ b/clients/client-ram/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: RAMClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-ram/src/runtimeConfig.ts b/clients/client-ram/src/runtimeConfig.ts index 3109d39b411b3..57c1a55b4a3e3 100644 --- a/clients/client-ram/src/runtimeConfig.ts +++ b/clients/client-ram/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: RAMClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-rds-data/src/RDSDataClient.ts b/clients/client-rds-data/src/RDSDataClient.ts index 02b29106f600e..7123e69e92a2f 100644 --- a/clients/client-rds-data/src/RDSDataClient.ts +++ b/clients/client-rds-data/src/RDSDataClient.ts @@ -161,6 +161,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-rds-data/src/endpoints.ts b/clients/client-rds-data/src/endpoints.ts index 93b10378c1a10..d017013776cff 100644 --- a/clients/client-rds-data/src/endpoints.ts +++ b/clients/client-rds-data/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "rds-data", diff --git a/clients/client-rds-data/src/runtimeConfig.browser.ts b/clients/client-rds-data/src/runtimeConfig.browser.ts index 3c7fa194df8c5..8bbf17beff7a6 100644 --- a/clients/client-rds-data/src/runtimeConfig.browser.ts +++ b/clients/client-rds-data/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: RDSDataClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-rds-data/src/runtimeConfig.ts b/clients/client-rds-data/src/runtimeConfig.ts index e4289e066f0d0..5820af891957c 100644 --- a/clients/client-rds-data/src/runtimeConfig.ts +++ b/clients/client-rds-data/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: RDSDataClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-rds/src/RDSClient.ts b/clients/client-rds/src/RDSClient.ts index 931e46aa43055..9f743c5a19f4a 100644 --- a/clients/client-rds/src/RDSClient.ts +++ b/clients/client-rds/src/RDSClient.ts @@ -872,6 +872,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-rds/src/endpoints.ts b/clients/client-rds/src/endpoints.ts index d1ea2a09c2193..8033fe8df7f70 100644 --- a/clients/client-rds/src/endpoints.ts +++ b/clients/client-rds/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "rds-fips.ca-central-1": { @@ -87,7 +87,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "rds", diff --git a/clients/client-rds/src/runtimeConfig.browser.ts b/clients/client-rds/src/runtimeConfig.browser.ts index 00ae53249930e..2ce8f80dc3e87 100644 --- a/clients/client-rds/src/runtimeConfig.browser.ts +++ b/clients/client-rds/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: RDSClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-rds/src/runtimeConfig.ts b/clients/client-rds/src/runtimeConfig.ts index 53e1f49433572..b0e5b83aaca1b 100644 --- a/clients/client-rds/src/runtimeConfig.ts +++ b/clients/client-rds/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: RDSClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-redshift-data/src/RedshiftDataClient.ts b/clients/client-redshift-data/src/RedshiftDataClient.ts index 5281d7ca158c2..b2def116b1bba 100644 --- a/clients/client-redshift-data/src/RedshiftDataClient.ts +++ b/clients/client-redshift-data/src/RedshiftDataClient.ts @@ -170,6 +170,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-redshift-data/src/endpoints.ts b/clients/client-redshift-data/src/endpoints.ts index 09438420ee9fd..ad7eac42a8a3f 100644 --- a/clients/client-redshift-data/src/endpoints.ts +++ b/clients/client-redshift-data/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "redshift-data", diff --git a/clients/client-redshift-data/src/runtimeConfig.browser.ts b/clients/client-redshift-data/src/runtimeConfig.browser.ts index 9dd5a4c6af2ad..701344206b2d3 100644 --- a/clients/client-redshift-data/src/runtimeConfig.browser.ts +++ b/clients/client-redshift-data/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: RedshiftDataClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-redshift-data/src/runtimeConfig.ts b/clients/client-redshift-data/src/runtimeConfig.ts index 6bb6ea60ff888..b7e299ca026ba 100644 --- a/clients/client-redshift-data/src/runtimeConfig.ts +++ b/clients/client-redshift-data/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: RedshiftDataClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-redshift/src/RedshiftClient.ts b/clients/client-redshift/src/RedshiftClient.ts index 7a960f8895d2d..ab8cd965e4401 100644 --- a/clients/client-redshift/src/RedshiftClient.ts +++ b/clients/client-redshift/src/RedshiftClient.ts @@ -752,6 +752,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-redshift/src/endpoints.ts b/clients/client-redshift/src/endpoints.ts index db23c3e9f05db..eeca0ebbc815e 100644 --- a/clients/client-redshift/src/endpoints.ts +++ b/clients/client-redshift/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-ca-central-1": { @@ -87,7 +87,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "redshift", diff --git a/clients/client-redshift/src/runtimeConfig.browser.ts b/clients/client-redshift/src/runtimeConfig.browser.ts index 08b421e10efb7..5b82b94088afc 100644 --- a/clients/client-redshift/src/runtimeConfig.browser.ts +++ b/clients/client-redshift/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: RedshiftClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-redshift/src/runtimeConfig.ts b/clients/client-redshift/src/runtimeConfig.ts index 13a223a981a50..5e6ac975aef81 100644 --- a/clients/client-redshift/src/runtimeConfig.ts +++ b/clients/client-redshift/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: RedshiftClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-rekognition/src/RekognitionClient.ts b/clients/client-rekognition/src/RekognitionClient.ts index 5212922810fd6..e3a8bcef1d263 100644 --- a/clients/client-rekognition/src/RekognitionClient.ts +++ b/clients/client-rekognition/src/RekognitionClient.ts @@ -356,6 +356,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-rekognition/src/endpoints.ts b/clients/client-rekognition/src/endpoints.ts index b7494bc37162d..85552784669ad 100644 --- a/clients/client-rekognition/src/endpoints.ts +++ b/clients/client-rekognition/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "rekognition-fips.ca-central-1": { @@ -83,7 +83,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "rekognition", diff --git a/clients/client-rekognition/src/runtimeConfig.browser.ts b/clients/client-rekognition/src/runtimeConfig.browser.ts index 27d95aeec024a..760cb1a704b5d 100644 --- a/clients/client-rekognition/src/runtimeConfig.browser.ts +++ b/clients/client-rekognition/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: RekognitionClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-rekognition/src/runtimeConfig.ts b/clients/client-rekognition/src/runtimeConfig.ts index 3e95aa105e7c6..1f01621917db7 100644 --- a/clients/client-rekognition/src/runtimeConfig.ts +++ b/clients/client-rekognition/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: RekognitionClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-resource-groups-tagging-api/src/ResourceGroupsTaggingAPIClient.ts b/clients/client-resource-groups-tagging-api/src/ResourceGroupsTaggingAPIClient.ts index c13c25c2ab662..0b9916e8f9e50 100644 --- a/clients/client-resource-groups-tagging-api/src/ResourceGroupsTaggingAPIClient.ts +++ b/clients/client-resource-groups-tagging-api/src/ResourceGroupsTaggingAPIClient.ts @@ -170,6 +170,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-resource-groups-tagging-api/src/endpoints.ts b/clients/client-resource-groups-tagging-api/src/endpoints.ts index 7ec8379d32238..4fdf98d3a27e6 100644 --- a/clients/client-resource-groups-tagging-api/src/endpoints.ts +++ b/clients/client-resource-groups-tagging-api/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "tagging", diff --git a/clients/client-resource-groups-tagging-api/src/runtimeConfig.browser.ts b/clients/client-resource-groups-tagging-api/src/runtimeConfig.browser.ts index 4ec0ec9a6e43f..f687167496297 100644 --- a/clients/client-resource-groups-tagging-api/src/runtimeConfig.browser.ts +++ b/clients/client-resource-groups-tagging-api/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ResourceGroupsTaggingAPIClientConfig) = retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-resource-groups-tagging-api/src/runtimeConfig.ts b/clients/client-resource-groups-tagging-api/src/runtimeConfig.ts index c6f414e236675..4848a2119773f 100644 --- a/clients/client-resource-groups-tagging-api/src/runtimeConfig.ts +++ b/clients/client-resource-groups-tagging-api/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ResourceGroupsTaggingAPIClientConfig) = retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-resource-groups/src/ResourceGroupsClient.ts b/clients/client-resource-groups/src/ResourceGroupsClient.ts index 9ee7c9c051df4..1c7e90d87f8fb 100644 --- a/clients/client-resource-groups/src/ResourceGroupsClient.ts +++ b/clients/client-resource-groups/src/ResourceGroupsClient.ts @@ -191,6 +191,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-resource-groups/src/endpoints.ts b/clients/client-resource-groups/src/endpoints.ts index d9faa6c7e6643..a9f0251fd4c78 100644 --- a/clients/client-resource-groups/src/endpoints.ts +++ b/clients/client-resource-groups/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "resource-groups", diff --git a/clients/client-resource-groups/src/runtimeConfig.browser.ts b/clients/client-resource-groups/src/runtimeConfig.browser.ts index f47828be463e0..f4229e447a1e6 100644 --- a/clients/client-resource-groups/src/runtimeConfig.browser.ts +++ b/clients/client-resource-groups/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ResourceGroupsClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-resource-groups/src/runtimeConfig.ts b/clients/client-resource-groups/src/runtimeConfig.ts index 42bf220affda1..4344c6f83d311 100644 --- a/clients/client-resource-groups/src/runtimeConfig.ts +++ b/clients/client-resource-groups/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ResourceGroupsClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-robomaker/src/RoboMakerClient.ts b/clients/client-robomaker/src/RoboMakerClient.ts index 520d6459cf0f1..2b4bf82c41737 100644 --- a/clients/client-robomaker/src/RoboMakerClient.ts +++ b/clients/client-robomaker/src/RoboMakerClient.ts @@ -422,6 +422,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-robomaker/src/endpoints.ts b/clients/client-robomaker/src/endpoints.ts index 5e1dc3d31eb30..05951bdbc7e0e 100644 --- a/clients/client-robomaker/src/endpoints.ts +++ b/clients/client-robomaker/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "robomaker", diff --git a/clients/client-robomaker/src/runtimeConfig.browser.ts b/clients/client-robomaker/src/runtimeConfig.browser.ts index 553cf76bcb779..1021f7683c2e8 100644 --- a/clients/client-robomaker/src/runtimeConfig.browser.ts +++ b/clients/client-robomaker/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: RoboMakerClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-robomaker/src/runtimeConfig.ts b/clients/client-robomaker/src/runtimeConfig.ts index 92c60b72268b0..c0412d67ba8cb 100644 --- a/clients/client-robomaker/src/runtimeConfig.ts +++ b/clients/client-robomaker/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: RoboMakerClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-route-53-domains/src/Route53DomainsClient.ts b/clients/client-route-53-domains/src/Route53DomainsClient.ts index 786e7416dd401..cb7488e2e0953 100644 --- a/clients/client-route-53-domains/src/Route53DomainsClient.ts +++ b/clients/client-route-53-domains/src/Route53DomainsClient.ts @@ -278,6 +278,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-route-53-domains/src/endpoints.ts b/clients/client-route-53-domains/src/endpoints.ts index 451423ae64540..91ddd5db1b062 100644 --- a/clients/client-route-53-domains/src/endpoints.ts +++ b/clients/client-route-53-domains/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "route53domains", diff --git a/clients/client-route-53-domains/src/runtimeConfig.browser.ts b/clients/client-route-53-domains/src/runtimeConfig.browser.ts index 6eea662b1e5dc..9b98bd54ab83e 100644 --- a/clients/client-route-53-domains/src/runtimeConfig.browser.ts +++ b/clients/client-route-53-domains/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: Route53DomainsClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-route-53-domains/src/runtimeConfig.ts b/clients/client-route-53-domains/src/runtimeConfig.ts index 6331cf7dda897..410064cdca122 100644 --- a/clients/client-route-53-domains/src/runtimeConfig.ts +++ b/clients/client-route-53-domains/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: Route53DomainsClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-route-53/src/Route53Client.ts b/clients/client-route-53/src/Route53Client.ts index 32b6eb8324ea3..f348d62f2f088 100644 --- a/clients/client-route-53/src/Route53Client.ts +++ b/clients/client-route-53/src/Route53Client.ts @@ -464,6 +464,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-route-53/src/endpoints.ts b/clients/client-route-53/src/endpoints.ts index eb95260700236..63aa81981d721 100644 --- a/clients/client-route-53/src/endpoints.ts +++ b/clients/client-route-53/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "aws-cn-global": { @@ -84,7 +84,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "route53", diff --git a/clients/client-route-53/src/runtimeConfig.browser.ts b/clients/client-route-53/src/runtimeConfig.browser.ts index 222838eef1947..1f70e21fff467 100644 --- a/clients/client-route-53/src/runtimeConfig.browser.ts +++ b/clients/client-route-53/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: Route53ClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-route-53/src/runtimeConfig.ts b/clients/client-route-53/src/runtimeConfig.ts index 7621d4ca69364..7109fe954d3da 100644 --- a/clients/client-route-53/src/runtimeConfig.ts +++ b/clients/client-route-53/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: Route53ClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-route53-recovery-cluster/src/Route53RecoveryClusterClient.ts b/clients/client-route53-recovery-cluster/src/Route53RecoveryClusterClient.ts index 9e1c17efb6bbf..f81c4c20c4f88 100644 --- a/clients/client-route53-recovery-cluster/src/Route53RecoveryClusterClient.ts +++ b/clients/client-route53-recovery-cluster/src/Route53RecoveryClusterClient.ts @@ -155,6 +155,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-route53-recovery-cluster/src/endpoints.ts b/clients/client-route53-recovery-cluster/src/endpoints.ts index 78c318f1cbc25..952e8dfad1845 100644 --- a/clients/client-route53-recovery-cluster/src/endpoints.ts +++ b/clients/client-route53-recovery-cluster/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "route53-recovery-cluster", diff --git a/clients/client-route53-recovery-cluster/src/runtimeConfig.browser.ts b/clients/client-route53-recovery-cluster/src/runtimeConfig.browser.ts index 9c4140adfcb7b..8a008a7adf039 100644 --- a/clients/client-route53-recovery-cluster/src/runtimeConfig.browser.ts +++ b/clients/client-route53-recovery-cluster/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: Route53RecoveryClusterClientConfig) => retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-route53-recovery-cluster/src/runtimeConfig.ts b/clients/client-route53-recovery-cluster/src/runtimeConfig.ts index 0c68fcc201acd..953465d465c6c 100644 --- a/clients/client-route53-recovery-cluster/src/runtimeConfig.ts +++ b/clients/client-route53-recovery-cluster/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: Route53RecoveryClusterClientConfig) => retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-route53-recovery-control-config/src/Route53RecoveryControlConfigClient.ts b/clients/client-route53-recovery-control-config/src/Route53RecoveryControlConfigClient.ts index 681cb35c2d9e1..624226a77d481 100644 --- a/clients/client-route53-recovery-control-config/src/Route53RecoveryControlConfigClient.ts +++ b/clients/client-route53-recovery-control-config/src/Route53RecoveryControlConfigClient.ts @@ -218,6 +218,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-route53-recovery-control-config/src/endpoints.ts b/clients/client-route53-recovery-control-config/src/endpoints.ts index bc2a796a6c056..7592ba72a136d 100644 --- a/clients/client-route53-recovery-control-config/src/endpoints.ts +++ b/clients/client-route53-recovery-control-config/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "aws-global": { @@ -59,7 +59,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "route53-recovery-control-config", diff --git a/clients/client-route53-recovery-control-config/src/runtimeConfig.browser.ts b/clients/client-route53-recovery-control-config/src/runtimeConfig.browser.ts index 1f5c9deb2c64f..89fec32e7bfbc 100644 --- a/clients/client-route53-recovery-control-config/src/runtimeConfig.browser.ts +++ b/clients/client-route53-recovery-control-config/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: Route53RecoveryControlConfigClientConfi retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-route53-recovery-control-config/src/runtimeConfig.ts b/clients/client-route53-recovery-control-config/src/runtimeConfig.ts index bf7eae9b3dbea..31c7724b63636 100644 --- a/clients/client-route53-recovery-control-config/src/runtimeConfig.ts +++ b/clients/client-route53-recovery-control-config/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: Route53RecoveryControlConfigClientConfi retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-route53-recovery-readiness/src/Route53RecoveryReadinessClient.ts b/clients/client-route53-recovery-readiness/src/Route53RecoveryReadinessClient.ts index ffab0ab17054d..19161ca97cd5c 100644 --- a/clients/client-route53-recovery-readiness/src/Route53RecoveryReadinessClient.ts +++ b/clients/client-route53-recovery-readiness/src/Route53RecoveryReadinessClient.ts @@ -281,6 +281,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-route53-recovery-readiness/src/endpoints.ts b/clients/client-route53-recovery-readiness/src/endpoints.ts index 75c06ec7db947..e3e6873c9e83d 100644 --- a/clients/client-route53-recovery-readiness/src/endpoints.ts +++ b/clients/client-route53-recovery-readiness/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "route53-recovery-readiness", diff --git a/clients/client-route53-recovery-readiness/src/runtimeConfig.browser.ts b/clients/client-route53-recovery-readiness/src/runtimeConfig.browser.ts index 3d06e276f2c5c..08fe684e5c9b8 100644 --- a/clients/client-route53-recovery-readiness/src/runtimeConfig.browser.ts +++ b/clients/client-route53-recovery-readiness/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: Route53RecoveryReadinessClientConfig) = retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-route53-recovery-readiness/src/runtimeConfig.ts b/clients/client-route53-recovery-readiness/src/runtimeConfig.ts index 65548132e85db..cbf5e98e0670c 100644 --- a/clients/client-route53-recovery-readiness/src/runtimeConfig.ts +++ b/clients/client-route53-recovery-readiness/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: Route53RecoveryReadinessClientConfig) = retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-route53resolver/src/Route53ResolverClient.ts b/clients/client-route53resolver/src/Route53ResolverClient.ts index c584d13826ca3..7eff8cfc889c8 100644 --- a/clients/client-route53resolver/src/Route53ResolverClient.ts +++ b/clients/client-route53resolver/src/Route53ResolverClient.ts @@ -476,6 +476,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-route53resolver/src/endpoints.ts b/clients/client-route53resolver/src/endpoints.ts index 418adbfaf47a5..d89457960450b 100644 --- a/clients/client-route53resolver/src/endpoints.ts +++ b/clients/client-route53resolver/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "route53resolver", diff --git a/clients/client-route53resolver/src/runtimeConfig.browser.ts b/clients/client-route53resolver/src/runtimeConfig.browser.ts index ae4c2c1f336f7..79a89eddf4bb0 100644 --- a/clients/client-route53resolver/src/runtimeConfig.browser.ts +++ b/clients/client-route53resolver/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: Route53ResolverClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-route53resolver/src/runtimeConfig.ts b/clients/client-route53resolver/src/runtimeConfig.ts index e890348a1cb50..adb4ee10a39d2 100644 --- a/clients/client-route53resolver/src/runtimeConfig.ts +++ b/clients/client-route53resolver/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: Route53ResolverClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-s3-control/src/S3ControlClient.ts b/clients/client-s3-control/src/S3ControlClient.ts index 4acf320efee0b..1b4cdc0dfed28 100644 --- a/clients/client-s3-control/src/S3ControlClient.ts +++ b/clients/client-s3-control/src/S3ControlClient.ts @@ -426,6 +426,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-s3-control/src/endpoints.ts b/clients/client-s3-control/src/endpoints.ts index 3c0e697dcfda3..84e4f55ec78f0 100644 --- a/clients/client-s3-control/src/endpoints.ts +++ b/clients/client-s3-control/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "ap-northeast-1": { @@ -171,7 +171,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "s3", diff --git a/clients/client-s3-control/src/runtimeConfig.browser.ts b/clients/client-s3-control/src/runtimeConfig.browser.ts index 62ecc76ae8f6f..d8ccba0012b6f 100644 --- a/clients/client-s3-control/src/runtimeConfig.browser.ts +++ b/clients/client-s3-control/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { blobHasher as streamHasher } from "@aws-sdk/hash-blob-browser"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; @@ -39,6 +40,8 @@ export const getRuntimeConfig = (config: S3ControlClientConfig) => { sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, streamHasher: config?.streamHasher ?? streamHasher, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-s3-control/src/runtimeConfig.ts b/clients/client-s3-control/src/runtimeConfig.ts index fba4648f02444..5aa8f45af8380 100644 --- a/clients/client-s3-control/src/runtimeConfig.ts +++ b/clients/client-s3-control/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { fileStreamHasher as streamHasher } from "@aws-sdk/hash-stream-node"; @@ -44,6 +49,8 @@ export const getRuntimeConfig = (config: S3ControlClientConfig) => { sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, streamHasher: config?.streamHasher ?? streamHasher, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-s3/src/S3Client.ts b/clients/client-s3/src/S3Client.ts index ef693b5e471b9..71d99fb034082 100644 --- a/clients/client-s3/src/S3Client.ts +++ b/clients/client-s3/src/S3Client.ts @@ -581,6 +581,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-s3/src/endpoints.ts b/clients/client-s3/src/endpoints.ts index 8d26ce2d5535d..ebea3379289fc 100644 --- a/clients/client-s3/src/endpoints.ts +++ b/clients/client-s3/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "accesspoint-af-south-1": { @@ -228,7 +228,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "s3", diff --git a/clients/client-s3/src/runtimeConfig.browser.ts b/clients/client-s3/src/runtimeConfig.browser.ts index 35ded8520fbf7..0f5bfc37e837c 100644 --- a/clients/client-s3/src/runtimeConfig.browser.ts +++ b/clients/client-s3/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { eventStreamSerdeProvider } from "@aws-sdk/eventstream-serde-browser"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { blobHasher as streamHasher } from "@aws-sdk/hash-blob-browser"; @@ -41,6 +42,8 @@ export const getRuntimeConfig = (config: S3ClientConfig) => { sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, streamHasher: config?.streamHasher ?? streamHasher, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-s3/src/runtimeConfig.ts b/clients/client-s3/src/runtimeConfig.ts index 15d331e6d3ba0..3b073a628803d 100644 --- a/clients/client-s3/src/runtimeConfig.ts +++ b/clients/client-s3/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { eventStreamSerdeProvider } from "@aws-sdk/eventstream-serde-node"; import { Hash } from "@aws-sdk/hash-node"; @@ -48,6 +53,8 @@ export const getRuntimeConfig = (config: S3ClientConfig) => { streamCollector: config?.streamCollector ?? streamCollector, streamHasher: config?.streamHasher ?? streamHasher, useArnRegion: config?.useArnRegion ?? loadNodeConfig(NODE_USE_ARN_REGION_CONFIG_OPTIONS), + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-s3outposts/src/S3OutpostsClient.ts b/clients/client-s3outposts/src/S3OutpostsClient.ts index 27c6eca92b2f8..5e896924b23d6 100644 --- a/clients/client-s3outposts/src/S3OutpostsClient.ts +++ b/clients/client-s3outposts/src/S3OutpostsClient.ts @@ -140,6 +140,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-s3outposts/src/endpoints.ts b/clients/client-s3outposts/src/endpoints.ts index 6a0e9d0a2faef..db082a629cc8c 100644 --- a/clients/client-s3outposts/src/endpoints.ts +++ b/clients/client-s3outposts/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "s3-outposts", diff --git a/clients/client-s3outposts/src/runtimeConfig.browser.ts b/clients/client-s3outposts/src/runtimeConfig.browser.ts index a7cd4a63dcc99..ed26780d3e0e6 100644 --- a/clients/client-s3outposts/src/runtimeConfig.browser.ts +++ b/clients/client-s3outposts/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: S3OutpostsClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-s3outposts/src/runtimeConfig.ts b/clients/client-s3outposts/src/runtimeConfig.ts index 0e92daa0e10ee..5a6b849651542 100644 --- a/clients/client-s3outposts/src/runtimeConfig.ts +++ b/clients/client-s3outposts/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: S3OutpostsClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-sagemaker-a2i-runtime/src/SageMakerA2IRuntimeClient.ts b/clients/client-sagemaker-a2i-runtime/src/SageMakerA2IRuntimeClient.ts index bd51c8fda1e55..02abf166d5ac1 100644 --- a/clients/client-sagemaker-a2i-runtime/src/SageMakerA2IRuntimeClient.ts +++ b/clients/client-sagemaker-a2i-runtime/src/SageMakerA2IRuntimeClient.ts @@ -152,6 +152,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-sagemaker-a2i-runtime/src/endpoints.ts b/clients/client-sagemaker-a2i-runtime/src/endpoints.ts index 53a1b470754c5..6deba417c2674 100644 --- a/clients/client-sagemaker-a2i-runtime/src/endpoints.ts +++ b/clients/client-sagemaker-a2i-runtime/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "sagemaker", diff --git a/clients/client-sagemaker-a2i-runtime/src/runtimeConfig.browser.ts b/clients/client-sagemaker-a2i-runtime/src/runtimeConfig.browser.ts index a3f026123c8fb..ce27079d27e97 100644 --- a/clients/client-sagemaker-a2i-runtime/src/runtimeConfig.browser.ts +++ b/clients/client-sagemaker-a2i-runtime/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: SageMakerA2IRuntimeClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-sagemaker-a2i-runtime/src/runtimeConfig.ts b/clients/client-sagemaker-a2i-runtime/src/runtimeConfig.ts index 2db8d97ba1c73..68a2184074a06 100644 --- a/clients/client-sagemaker-a2i-runtime/src/runtimeConfig.ts +++ b/clients/client-sagemaker-a2i-runtime/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: SageMakerA2IRuntimeClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-sagemaker-edge/src/SagemakerEdgeClient.ts b/clients/client-sagemaker-edge/src/SagemakerEdgeClient.ts index ff45014e7bf3a..6fa9a18197293 100644 --- a/clients/client-sagemaker-edge/src/SagemakerEdgeClient.ts +++ b/clients/client-sagemaker-edge/src/SagemakerEdgeClient.ts @@ -142,6 +142,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-sagemaker-edge/src/endpoints.ts b/clients/client-sagemaker-edge/src/endpoints.ts index b36e6104c4e95..a8ac2f954ff9c 100644 --- a/clients/client-sagemaker-edge/src/endpoints.ts +++ b/clients/client-sagemaker-edge/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "sagemaker", diff --git a/clients/client-sagemaker-edge/src/runtimeConfig.browser.ts b/clients/client-sagemaker-edge/src/runtimeConfig.browser.ts index 11a644ca4acfa..e7d2f148e2a91 100644 --- a/clients/client-sagemaker-edge/src/runtimeConfig.browser.ts +++ b/clients/client-sagemaker-edge/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: SagemakerEdgeClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-sagemaker-edge/src/runtimeConfig.ts b/clients/client-sagemaker-edge/src/runtimeConfig.ts index ab6901571d301..492cbc1a14093 100644 --- a/clients/client-sagemaker-edge/src/runtimeConfig.ts +++ b/clients/client-sagemaker-edge/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: SagemakerEdgeClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-sagemaker-featurestore-runtime/src/SageMakerFeatureStoreRuntimeClient.ts b/clients/client-sagemaker-featurestore-runtime/src/SageMakerFeatureStoreRuntimeClient.ts index 5f2de1b316ca1..3b0a9e7a3dc59 100644 --- a/clients/client-sagemaker-featurestore-runtime/src/SageMakerFeatureStoreRuntimeClient.ts +++ b/clients/client-sagemaker-featurestore-runtime/src/SageMakerFeatureStoreRuntimeClient.ts @@ -149,6 +149,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-sagemaker-featurestore-runtime/src/endpoints.ts b/clients/client-sagemaker-featurestore-runtime/src/endpoints.ts index 275f91080b317..d929887f5a266 100644 --- a/clients/client-sagemaker-featurestore-runtime/src/endpoints.ts +++ b/clients/client-sagemaker-featurestore-runtime/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "sagemaker", diff --git a/clients/client-sagemaker-featurestore-runtime/src/runtimeConfig.browser.ts b/clients/client-sagemaker-featurestore-runtime/src/runtimeConfig.browser.ts index 655c6e061b84b..a82a59393c6cf 100644 --- a/clients/client-sagemaker-featurestore-runtime/src/runtimeConfig.browser.ts +++ b/clients/client-sagemaker-featurestore-runtime/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: SageMakerFeatureStoreRuntimeClientConfi retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-sagemaker-featurestore-runtime/src/runtimeConfig.ts b/clients/client-sagemaker-featurestore-runtime/src/runtimeConfig.ts index d10d12d15cfad..aa0b23311a07b 100644 --- a/clients/client-sagemaker-featurestore-runtime/src/runtimeConfig.ts +++ b/clients/client-sagemaker-featurestore-runtime/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: SageMakerFeatureStoreRuntimeClientConfi retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-sagemaker-runtime/src/SageMakerRuntimeClient.ts b/clients/client-sagemaker-runtime/src/SageMakerRuntimeClient.ts index 43f300bc39694..37ad833e7676f 100644 --- a/clients/client-sagemaker-runtime/src/SageMakerRuntimeClient.ts +++ b/clients/client-sagemaker-runtime/src/SageMakerRuntimeClient.ts @@ -142,6 +142,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-sagemaker-runtime/src/endpoints.ts b/clients/client-sagemaker-runtime/src/endpoints.ts index 53e4fd657fe03..be6d80980b00a 100644 --- a/clients/client-sagemaker-runtime/src/endpoints.ts +++ b/clients/client-sagemaker-runtime/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "us-east-1-fips": { @@ -78,7 +78,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "sagemaker", diff --git a/clients/client-sagemaker-runtime/src/runtimeConfig.browser.ts b/clients/client-sagemaker-runtime/src/runtimeConfig.browser.ts index 131e7a99a5895..d4ea35aeb5ddd 100644 --- a/clients/client-sagemaker-runtime/src/runtimeConfig.browser.ts +++ b/clients/client-sagemaker-runtime/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: SageMakerRuntimeClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-sagemaker-runtime/src/runtimeConfig.ts b/clients/client-sagemaker-runtime/src/runtimeConfig.ts index da6668caf5c21..5467222d612d9 100644 --- a/clients/client-sagemaker-runtime/src/runtimeConfig.ts +++ b/clients/client-sagemaker-runtime/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: SageMakerRuntimeClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-sagemaker/src/SageMakerClient.ts b/clients/client-sagemaker/src/SageMakerClient.ts index 386bc55e28d0a..b5a3f0ce50da9 100644 --- a/clients/client-sagemaker/src/SageMakerClient.ts +++ b/clients/client-sagemaker/src/SageMakerClient.ts @@ -1220,6 +1220,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-sagemaker/src/endpoints.ts b/clients/client-sagemaker/src/endpoints.ts index 2efcac442f371..ff199bcd77896 100644 --- a/clients/client-sagemaker/src/endpoints.ts +++ b/clients/client-sagemaker/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "us-east-1-fips": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "sagemaker", diff --git a/clients/client-sagemaker/src/runtimeConfig.browser.ts b/clients/client-sagemaker/src/runtimeConfig.browser.ts index ea80b206f8eac..2710825b6c257 100644 --- a/clients/client-sagemaker/src/runtimeConfig.browser.ts +++ b/clients/client-sagemaker/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: SageMakerClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-sagemaker/src/runtimeConfig.ts b/clients/client-sagemaker/src/runtimeConfig.ts index f2f450c06000f..bdc87f37ec3f0 100644 --- a/clients/client-sagemaker/src/runtimeConfig.ts +++ b/clients/client-sagemaker/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: SageMakerClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-savingsplans/src/SavingsplansClient.ts b/clients/client-savingsplans/src/SavingsplansClient.ts index 1f00e68db93e5..d9259255c93cb 100644 --- a/clients/client-savingsplans/src/SavingsplansClient.ts +++ b/clients/client-savingsplans/src/SavingsplansClient.ts @@ -182,6 +182,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-savingsplans/src/endpoints.ts b/clients/client-savingsplans/src/endpoints.ts index 29799d001c7af..111921d464bc1 100644 --- a/clients/client-savingsplans/src/endpoints.ts +++ b/clients/client-savingsplans/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "aws-global": { @@ -59,7 +59,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "savingsplans", diff --git a/clients/client-savingsplans/src/runtimeConfig.browser.ts b/clients/client-savingsplans/src/runtimeConfig.browser.ts index 86608b053faac..985fffb522ed2 100644 --- a/clients/client-savingsplans/src/runtimeConfig.browser.ts +++ b/clients/client-savingsplans/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: SavingsplansClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-savingsplans/src/runtimeConfig.ts b/clients/client-savingsplans/src/runtimeConfig.ts index 350604e775026..93a9430d59395 100644 --- a/clients/client-savingsplans/src/runtimeConfig.ts +++ b/clients/client-savingsplans/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: SavingsplansClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-schemas/src/SchemasClient.ts b/clients/client-schemas/src/SchemasClient.ts index 554b8b87cd517..6f566592c00b3 100644 --- a/clients/client-schemas/src/SchemasClient.ts +++ b/clients/client-schemas/src/SchemasClient.ts @@ -248,6 +248,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-schemas/src/endpoints.ts b/clients/client-schemas/src/endpoints.ts index de0715686f8cd..1d551384a525c 100644 --- a/clients/client-schemas/src/endpoints.ts +++ b/clients/client-schemas/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "schemas", diff --git a/clients/client-schemas/src/runtimeConfig.browser.ts b/clients/client-schemas/src/runtimeConfig.browser.ts index 1e0d873091fe9..12a177fb66b56 100644 --- a/clients/client-schemas/src/runtimeConfig.browser.ts +++ b/clients/client-schemas/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: SchemasClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-schemas/src/runtimeConfig.ts b/clients/client-schemas/src/runtimeConfig.ts index b62f4b8905dfa..dec7993298026 100644 --- a/clients/client-schemas/src/runtimeConfig.ts +++ b/clients/client-schemas/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: SchemasClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-secrets-manager/src/SecretsManagerClient.ts b/clients/client-secrets-manager/src/SecretsManagerClient.ts index 4917b4d7362ba..5d3ad7ba0bffc 100644 --- a/clients/client-secrets-manager/src/SecretsManagerClient.ts +++ b/clients/client-secrets-manager/src/SecretsManagerClient.ts @@ -224,6 +224,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-secrets-manager/src/endpoints.ts b/clients/client-secrets-manager/src/endpoints.ts index b133d0fd233d8..0ed701184fc69 100644 --- a/clients/client-secrets-manager/src/endpoints.ts +++ b/clients/client-secrets-manager/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "us-east-1-fips": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "secretsmanager", diff --git a/clients/client-secrets-manager/src/runtimeConfig.browser.ts b/clients/client-secrets-manager/src/runtimeConfig.browser.ts index b486785957555..cb05763269c55 100644 --- a/clients/client-secrets-manager/src/runtimeConfig.browser.ts +++ b/clients/client-secrets-manager/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: SecretsManagerClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-secrets-manager/src/runtimeConfig.ts b/clients/client-secrets-manager/src/runtimeConfig.ts index 70db2dbce9dfe..9c1c18e6b09cb 100644 --- a/clients/client-secrets-manager/src/runtimeConfig.ts +++ b/clients/client-secrets-manager/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: SecretsManagerClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-securityhub/src/SecurityHubClient.ts b/clients/client-securityhub/src/SecurityHubClient.ts index c723e89f10527..222e937fb161f 100644 --- a/clients/client-securityhub/src/SecurityHubClient.ts +++ b/clients/client-securityhub/src/SecurityHubClient.ts @@ -392,6 +392,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-securityhub/src/endpoints.ts b/clients/client-securityhub/src/endpoints.ts index d7d58c139080e..f3d813ebed8b5 100644 --- a/clients/client-securityhub/src/endpoints.ts +++ b/clients/client-securityhub/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "securityhub", diff --git a/clients/client-securityhub/src/runtimeConfig.browser.ts b/clients/client-securityhub/src/runtimeConfig.browser.ts index dc90aa5bb1b73..f076a7e9343de 100644 --- a/clients/client-securityhub/src/runtimeConfig.browser.ts +++ b/clients/client-securityhub/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: SecurityHubClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-securityhub/src/runtimeConfig.ts b/clients/client-securityhub/src/runtimeConfig.ts index c8b67f8fb9a10..33e3a68605d5a 100644 --- a/clients/client-securityhub/src/runtimeConfig.ts +++ b/clients/client-securityhub/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: SecurityHubClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-serverlessapplicationrepository/src/ServerlessApplicationRepositoryClient.ts b/clients/client-serverlessapplicationrepository/src/ServerlessApplicationRepositoryClient.ts index 99b7460910a0d..41948a19b7d2a 100644 --- a/clients/client-serverlessapplicationrepository/src/ServerlessApplicationRepositoryClient.ts +++ b/clients/client-serverlessapplicationrepository/src/ServerlessApplicationRepositoryClient.ts @@ -203,6 +203,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-serverlessapplicationrepository/src/endpoints.ts b/clients/client-serverlessapplicationrepository/src/endpoints.ts index c8bdcacd02eb8..c5378361a43b9 100644 --- a/clients/client-serverlessapplicationrepository/src/endpoints.ts +++ b/clients/client-serverlessapplicationrepository/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "us-gov-east-1": { @@ -62,7 +62,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "serverlessrepo", diff --git a/clients/client-serverlessapplicationrepository/src/runtimeConfig.browser.ts b/clients/client-serverlessapplicationrepository/src/runtimeConfig.browser.ts index 3208c583bb8ea..f3afb643f1dfe 100644 --- a/clients/client-serverlessapplicationrepository/src/runtimeConfig.browser.ts +++ b/clients/client-serverlessapplicationrepository/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ServerlessApplicationRepositoryClientCo retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-serverlessapplicationrepository/src/runtimeConfig.ts b/clients/client-serverlessapplicationrepository/src/runtimeConfig.ts index db0c4b2f5a88e..915e42d18d8b0 100644 --- a/clients/client-serverlessapplicationrepository/src/runtimeConfig.ts +++ b/clients/client-serverlessapplicationrepository/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ServerlessApplicationRepositoryClientCo retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-service-catalog-appregistry/src/ServiceCatalogAppRegistryClient.ts b/clients/client-service-catalog-appregistry/src/ServiceCatalogAppRegistryClient.ts index 0e94c67c10713..3a9503ba983b6 100644 --- a/clients/client-service-catalog-appregistry/src/ServiceCatalogAppRegistryClient.ts +++ b/clients/client-service-catalog-appregistry/src/ServiceCatalogAppRegistryClient.ts @@ -233,6 +233,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-service-catalog-appregistry/src/endpoints.ts b/clients/client-service-catalog-appregistry/src/endpoints.ts index 3b1b1d44d5cc6..886288086efab 100644 --- a/clients/client-service-catalog-appregistry/src/endpoints.ts +++ b/clients/client-service-catalog-appregistry/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-ca-central-1": { @@ -87,7 +87,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "servicecatalog", diff --git a/clients/client-service-catalog-appregistry/src/runtimeConfig.browser.ts b/clients/client-service-catalog-appregistry/src/runtimeConfig.browser.ts index 279629cb4ef4d..70fba213007cb 100644 --- a/clients/client-service-catalog-appregistry/src/runtimeConfig.browser.ts +++ b/clients/client-service-catalog-appregistry/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ServiceCatalogAppRegistryClientConfig) retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-service-catalog-appregistry/src/runtimeConfig.ts b/clients/client-service-catalog-appregistry/src/runtimeConfig.ts index b4df1a0b326f6..4b60ff910963e 100644 --- a/clients/client-service-catalog-appregistry/src/runtimeConfig.ts +++ b/clients/client-service-catalog-appregistry/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ServiceCatalogAppRegistryClientConfig) retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-service-catalog/src/ServiceCatalogClient.ts b/clients/client-service-catalog/src/ServiceCatalogClient.ts index 43191ed44267c..94d3bd3caf2cd 100644 --- a/clients/client-service-catalog/src/ServiceCatalogClient.ts +++ b/clients/client-service-catalog/src/ServiceCatalogClient.ts @@ -584,6 +584,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-service-catalog/src/endpoints.ts b/clients/client-service-catalog/src/endpoints.ts index c254963a28d73..6fd7b75764f33 100644 --- a/clients/client-service-catalog/src/endpoints.ts +++ b/clients/client-service-catalog/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "us-east-1-fips": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "servicecatalog", diff --git a/clients/client-service-catalog/src/runtimeConfig.browser.ts b/clients/client-service-catalog/src/runtimeConfig.browser.ts index 0e324c042b6fa..8c8392e2f1166 100644 --- a/clients/client-service-catalog/src/runtimeConfig.browser.ts +++ b/clients/client-service-catalog/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ServiceCatalogClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-service-catalog/src/runtimeConfig.ts b/clients/client-service-catalog/src/runtimeConfig.ts index f2338766c79e0..f3cddf8b00802 100644 --- a/clients/client-service-catalog/src/runtimeConfig.ts +++ b/clients/client-service-catalog/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ServiceCatalogClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-service-quotas/src/ServiceQuotasClient.ts b/clients/client-service-quotas/src/ServiceQuotasClient.ts index 005bef4b4565c..46fdd9e7c5b15 100644 --- a/clients/client-service-quotas/src/ServiceQuotasClient.ts +++ b/clients/client-service-quotas/src/ServiceQuotasClient.ts @@ -236,6 +236,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-service-quotas/src/endpoints.ts b/clients/client-service-quotas/src/endpoints.ts index 6b52c0d68a7ef..a0f4103f696b1 100644 --- a/clients/client-service-quotas/src/endpoints.ts +++ b/clients/client-service-quotas/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-gov-east-1": { @@ -62,7 +62,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "servicequotas", diff --git a/clients/client-service-quotas/src/runtimeConfig.browser.ts b/clients/client-service-quotas/src/runtimeConfig.browser.ts index 0a8acb9bd6e7a..42a7a1be61c15 100644 --- a/clients/client-service-quotas/src/runtimeConfig.browser.ts +++ b/clients/client-service-quotas/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ServiceQuotasClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-service-quotas/src/runtimeConfig.ts b/clients/client-service-quotas/src/runtimeConfig.ts index f9711f060575e..21d0e8714405a 100644 --- a/clients/client-service-quotas/src/runtimeConfig.ts +++ b/clients/client-service-quotas/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ServiceQuotasClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-servicediscovery/src/ServiceDiscoveryClient.ts b/clients/client-servicediscovery/src/ServiceDiscoveryClient.ts index 42131639df055..115ed82bee4cf 100644 --- a/clients/client-servicediscovery/src/ServiceDiscoveryClient.ts +++ b/clients/client-servicediscovery/src/ServiceDiscoveryClient.ts @@ -242,6 +242,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-servicediscovery/src/endpoints.ts b/clients/client-servicediscovery/src/endpoints.ts index 8303b39f9bdf8..4a46356b55857 100644 --- a/clients/client-servicediscovery/src/endpoints.ts +++ b/clients/client-servicediscovery/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "servicediscovery-fips": { @@ -59,7 +59,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "servicediscovery", diff --git a/clients/client-servicediscovery/src/runtimeConfig.browser.ts b/clients/client-servicediscovery/src/runtimeConfig.browser.ts index 73c82252d9c58..db211dc2d3f30 100644 --- a/clients/client-servicediscovery/src/runtimeConfig.browser.ts +++ b/clients/client-servicediscovery/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ServiceDiscoveryClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-servicediscovery/src/runtimeConfig.ts b/clients/client-servicediscovery/src/runtimeConfig.ts index 9b3e25410665f..def66e4eb748d 100644 --- a/clients/client-servicediscovery/src/runtimeConfig.ts +++ b/clients/client-servicediscovery/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ServiceDiscoveryClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-ses/src/SESClient.ts b/clients/client-ses/src/SESClient.ts index 5748600f7e7be..448c811e5bac9 100644 --- a/clients/client-ses/src/SESClient.ts +++ b/clients/client-ses/src/SESClient.ts @@ -500,6 +500,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-ses/src/endpoints.ts b/clients/client-ses/src/endpoints.ts index 7e35e642de089..fd64fb343c7f7 100644 --- a/clients/client-ses/src/endpoints.ts +++ b/clients/client-ses/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-gov-west-1": { @@ -58,7 +58,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "ses", diff --git a/clients/client-ses/src/runtimeConfig.browser.ts b/clients/client-ses/src/runtimeConfig.browser.ts index 718802339855c..b58c6a7add595 100644 --- a/clients/client-ses/src/runtimeConfig.browser.ts +++ b/clients/client-ses/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: SESClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-ses/src/runtimeConfig.ts b/clients/client-ses/src/runtimeConfig.ts index 6df9f5673511e..b5b727b95dd8e 100644 --- a/clients/client-ses/src/runtimeConfig.ts +++ b/clients/client-ses/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: SESClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-sesv2/src/SESv2Client.ts b/clients/client-sesv2/src/SESv2Client.ts index ef5128364138c..9d06750534766 100644 --- a/clients/client-sesv2/src/SESv2Client.ts +++ b/clients/client-sesv2/src/SESv2Client.ts @@ -551,6 +551,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-sesv2/src/endpoints.ts b/clients/client-sesv2/src/endpoints.ts index 7e35e642de089..fd64fb343c7f7 100644 --- a/clients/client-sesv2/src/endpoints.ts +++ b/clients/client-sesv2/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-gov-west-1": { @@ -58,7 +58,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "ses", diff --git a/clients/client-sesv2/src/runtimeConfig.browser.ts b/clients/client-sesv2/src/runtimeConfig.browser.ts index 9723820aa2df8..bacefba5ce5fd 100644 --- a/clients/client-sesv2/src/runtimeConfig.browser.ts +++ b/clients/client-sesv2/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: SESv2ClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-sesv2/src/runtimeConfig.ts b/clients/client-sesv2/src/runtimeConfig.ts index d6168e5ec1794..f37a474d6dd8a 100644 --- a/clients/client-sesv2/src/runtimeConfig.ts +++ b/clients/client-sesv2/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: SESv2ClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-sfn/src/SFNClient.ts b/clients/client-sfn/src/SFNClient.ts index 4b06f885a7a8e..9d87ebcc5e680 100644 --- a/clients/client-sfn/src/SFNClient.ts +++ b/clients/client-sfn/src/SFNClient.ts @@ -218,6 +218,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-sfn/src/endpoints.ts b/clients/client-sfn/src/endpoints.ts index f1c112d1cf803..807910f2f7e52 100644 --- a/clients/client-sfn/src/endpoints.ts +++ b/clients/client-sfn/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "states", diff --git a/clients/client-sfn/src/runtimeConfig.browser.ts b/clients/client-sfn/src/runtimeConfig.browser.ts index aa0302d574544..fcc085bf083aa 100644 --- a/clients/client-sfn/src/runtimeConfig.browser.ts +++ b/clients/client-sfn/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: SFNClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-sfn/src/runtimeConfig.ts b/clients/client-sfn/src/runtimeConfig.ts index 44b1a0c5f5638..dfdbce67a3945 100644 --- a/clients/client-sfn/src/runtimeConfig.ts +++ b/clients/client-sfn/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: SFNClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-shield/src/ShieldClient.ts b/clients/client-shield/src/ShieldClient.ts index f7f4adac3b811..59b022992de4d 100644 --- a/clients/client-shield/src/ShieldClient.ts +++ b/clients/client-shield/src/ShieldClient.ts @@ -296,6 +296,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-shield/src/endpoints.ts b/clients/client-shield/src/endpoints.ts index 77d9f1ddb27a0..bb3bf3cb4ce60 100644 --- a/clients/client-shield/src/endpoints.ts +++ b/clients/client-shield/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "aws-global": { @@ -64,7 +64,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "shield", diff --git a/clients/client-shield/src/runtimeConfig.browser.ts b/clients/client-shield/src/runtimeConfig.browser.ts index 064cb3dfd0a96..29ba93a8c2ead 100644 --- a/clients/client-shield/src/runtimeConfig.browser.ts +++ b/clients/client-shield/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: ShieldClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-shield/src/runtimeConfig.ts b/clients/client-shield/src/runtimeConfig.ts index 4633b738529cc..40008a122ae84 100644 --- a/clients/client-shield/src/runtimeConfig.ts +++ b/clients/client-shield/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: ShieldClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-signer/src/SignerClient.ts b/clients/client-signer/src/SignerClient.ts index ca1118cdf8780..a806a5bd1199f 100644 --- a/clients/client-signer/src/SignerClient.ts +++ b/clients/client-signer/src/SignerClient.ts @@ -212,6 +212,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-signer/src/endpoints.ts b/clients/client-signer/src/endpoints.ts index 88a7a95eedf45..df0b713f1ccce 100644 --- a/clients/client-signer/src/endpoints.ts +++ b/clients/client-signer/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "signer", diff --git a/clients/client-signer/src/runtimeConfig.browser.ts b/clients/client-signer/src/runtimeConfig.browser.ts index 566af9d475acf..6e59850f5a5a6 100644 --- a/clients/client-signer/src/runtimeConfig.browser.ts +++ b/clients/client-signer/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: SignerClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-signer/src/runtimeConfig.ts b/clients/client-signer/src/runtimeConfig.ts index f7caae40c00cc..758e02fd90bb5 100644 --- a/clients/client-signer/src/runtimeConfig.ts +++ b/clients/client-signer/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: SignerClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-sms/src/SMSClient.ts b/clients/client-sms/src/SMSClient.ts index f3042cd67714e..36a70ed3930d8 100644 --- a/clients/client-sms/src/SMSClient.ts +++ b/clients/client-sms/src/SMSClient.ts @@ -302,6 +302,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-sms/src/endpoints.ts b/clients/client-sms/src/endpoints.ts index ff434eefdd6b8..822e2bb54c94f 100644 --- a/clients/client-sms/src/endpoints.ts +++ b/clients/client-sms/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "sms", diff --git a/clients/client-sms/src/runtimeConfig.browser.ts b/clients/client-sms/src/runtimeConfig.browser.ts index d3414b8ad68ba..9e040a47a3cbb 100644 --- a/clients/client-sms/src/runtimeConfig.browser.ts +++ b/clients/client-sms/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: SMSClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-sms/src/runtimeConfig.ts b/clients/client-sms/src/runtimeConfig.ts index 87b0b85026a99..e8a4db91b1145 100644 --- a/clients/client-sms/src/runtimeConfig.ts +++ b/clients/client-sms/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: SMSClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-snow-device-management/src/SnowDeviceManagementClient.ts b/clients/client-snow-device-management/src/SnowDeviceManagementClient.ts index c54833d4a0011..387bffba45868 100644 --- a/clients/client-snow-device-management/src/SnowDeviceManagementClient.ts +++ b/clients/client-snow-device-management/src/SnowDeviceManagementClient.ts @@ -185,6 +185,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-snow-device-management/src/endpoints.ts b/clients/client-snow-device-management/src/endpoints.ts index 28482867e40c4..b90bf1e817b5c 100644 --- a/clients/client-snow-device-management/src/endpoints.ts +++ b/clients/client-snow-device-management/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "snow-device-management", diff --git a/clients/client-snow-device-management/src/runtimeConfig.browser.ts b/clients/client-snow-device-management/src/runtimeConfig.browser.ts index 9ee6ed8561d20..229bfd4f32d51 100644 --- a/clients/client-snow-device-management/src/runtimeConfig.browser.ts +++ b/clients/client-snow-device-management/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: SnowDeviceManagementClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-snow-device-management/src/runtimeConfig.ts b/clients/client-snow-device-management/src/runtimeConfig.ts index 35644cf72d6e9..c0853d9018685 100644 --- a/clients/client-snow-device-management/src/runtimeConfig.ts +++ b/clients/client-snow-device-management/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: SnowDeviceManagementClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-snowball/src/SnowballClient.ts b/clients/client-snowball/src/SnowballClient.ts index 6c39cf287e583..4f8ac9c6c146c 100644 --- a/clients/client-snowball/src/SnowballClient.ts +++ b/clients/client-snowball/src/SnowballClient.ts @@ -233,6 +233,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-snowball/src/endpoints.ts b/clients/client-snowball/src/endpoints.ts index 16d0ceb0a39c9..1c02a1b031f2d 100644 --- a/clients/client-snowball/src/endpoints.ts +++ b/clients/client-snowball/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-ap-northeast-1": { @@ -150,7 +150,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "snowball", diff --git a/clients/client-snowball/src/runtimeConfig.browser.ts b/clients/client-snowball/src/runtimeConfig.browser.ts index b9cfd4fa01fb2..eb6d47aed001d 100644 --- a/clients/client-snowball/src/runtimeConfig.browser.ts +++ b/clients/client-snowball/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: SnowballClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-snowball/src/runtimeConfig.ts b/clients/client-snowball/src/runtimeConfig.ts index 4263fc57cc73c..bab7b256122ec 100644 --- a/clients/client-snowball/src/runtimeConfig.ts +++ b/clients/client-snowball/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: SnowballClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-sns/src/SNSClient.ts b/clients/client-sns/src/SNSClient.ts index 6e4abe9b8a80d..05f7d429be057 100644 --- a/clients/client-sns/src/SNSClient.ts +++ b/clients/client-sns/src/SNSClient.ts @@ -320,6 +320,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-sns/src/endpoints.ts b/clients/client-sns/src/endpoints.ts index 5d5abe9fb9411..900feee5a24c4 100644 --- a/clients/client-sns/src/endpoints.ts +++ b/clients/client-sns/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "sns", diff --git a/clients/client-sns/src/runtimeConfig.browser.ts b/clients/client-sns/src/runtimeConfig.browser.ts index 005d3d818cd76..7c29f98b082ca 100644 --- a/clients/client-sns/src/runtimeConfig.browser.ts +++ b/clients/client-sns/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: SNSClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-sns/src/runtimeConfig.ts b/clients/client-sns/src/runtimeConfig.ts index b6b2c44f3d895..ead9684ca3a8e 100644 --- a/clients/client-sns/src/runtimeConfig.ts +++ b/clients/client-sns/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: SNSClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-sqs/src/SQSClient.ts b/clients/client-sqs/src/SQSClient.ts index 919e9c9ebfcc5..0d324a0be766d 100644 --- a/clients/client-sqs/src/SQSClient.ts +++ b/clients/client-sqs/src/SQSClient.ts @@ -206,6 +206,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-sqs/src/endpoints.ts b/clients/client-sqs/src/endpoints.ts index 94d4a6ee282d0..13c287e248842 100644 --- a/clients/client-sqs/src/endpoints.ts +++ b/clients/client-sqs/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "sqs", diff --git a/clients/client-sqs/src/runtimeConfig.browser.ts b/clients/client-sqs/src/runtimeConfig.browser.ts index ada5b89794ff1..0f45aedc6f788 100644 --- a/clients/client-sqs/src/runtimeConfig.browser.ts +++ b/clients/client-sqs/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { Md5 } from "@aws-sdk/md5-js"; @@ -37,6 +38,8 @@ export const getRuntimeConfig = (config: SQSClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-sqs/src/runtimeConfig.ts b/clients/client-sqs/src/runtimeConfig.ts index 58e8fe76edfe0..3b942fbfbbc44 100644 --- a/clients/client-sqs/src/runtimeConfig.ts +++ b/clients/client-sqs/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -42,6 +47,8 @@ export const getRuntimeConfig = (config: SQSClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-ssm-contacts/src/SSMContactsClient.ts b/clients/client-ssm-contacts/src/SSMContactsClient.ts index b219bf71bff68..59466d28cbd9b 100644 --- a/clients/client-ssm-contacts/src/SSMContactsClient.ts +++ b/clients/client-ssm-contacts/src/SSMContactsClient.ts @@ -242,6 +242,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-ssm-contacts/src/endpoints.ts b/clients/client-ssm-contacts/src/endpoints.ts index 57148ab0c38d3..b621894a9e778 100644 --- a/clients/client-ssm-contacts/src/endpoints.ts +++ b/clients/client-ssm-contacts/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "ssm-contacts", diff --git a/clients/client-ssm-contacts/src/runtimeConfig.browser.ts b/clients/client-ssm-contacts/src/runtimeConfig.browser.ts index 89e880a50aece..1cba1cda35910 100644 --- a/clients/client-ssm-contacts/src/runtimeConfig.browser.ts +++ b/clients/client-ssm-contacts/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: SSMContactsClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-ssm-contacts/src/runtimeConfig.ts b/clients/client-ssm-contacts/src/runtimeConfig.ts index ba8689dad4517..e37092e8d6c26 100644 --- a/clients/client-ssm-contacts/src/runtimeConfig.ts +++ b/clients/client-ssm-contacts/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: SSMContactsClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-ssm-incidents/src/SSMIncidentsClient.ts b/clients/client-ssm-incidents/src/SSMIncidentsClient.ts index 5356315316620..dd2fff87dfd6d 100644 --- a/clients/client-ssm-incidents/src/SSMIncidentsClient.ts +++ b/clients/client-ssm-incidents/src/SSMIncidentsClient.ts @@ -266,6 +266,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-ssm-incidents/src/endpoints.ts b/clients/client-ssm-incidents/src/endpoints.ts index 86fb0d1bb0ca4..dce80d2922704 100644 --- a/clients/client-ssm-incidents/src/endpoints.ts +++ b/clients/client-ssm-incidents/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "ssm-incidents", diff --git a/clients/client-ssm-incidents/src/runtimeConfig.browser.ts b/clients/client-ssm-incidents/src/runtimeConfig.browser.ts index aadbb906b0414..22b72834e3bd1 100644 --- a/clients/client-ssm-incidents/src/runtimeConfig.browser.ts +++ b/clients/client-ssm-incidents/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: SSMIncidentsClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-ssm-incidents/src/runtimeConfig.ts b/clients/client-ssm-incidents/src/runtimeConfig.ts index 4f770ded81f4c..0ab3a37e04c32 100644 --- a/clients/client-ssm-incidents/src/runtimeConfig.ts +++ b/clients/client-ssm-incidents/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: SSMIncidentsClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-ssm/src/SSMClient.ts b/clients/client-ssm/src/SSMClient.ts index 8fb793759c59b..2f906ba8bb5d9 100644 --- a/clients/client-ssm/src/SSMClient.ts +++ b/clients/client-ssm/src/SSMClient.ts @@ -812,6 +812,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-ssm/src/endpoints.ts b/clients/client-ssm/src/endpoints.ts index eb2c4b6cb0a60..6d407424a24c9 100644 --- a/clients/client-ssm/src/endpoints.ts +++ b/clients/client-ssm/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-ca-central-1": { @@ -87,7 +87,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "ssm", diff --git a/clients/client-ssm/src/runtimeConfig.browser.ts b/clients/client-ssm/src/runtimeConfig.browser.ts index c4ba04667ca9d..4a75aae2ea0ee 100644 --- a/clients/client-ssm/src/runtimeConfig.browser.ts +++ b/clients/client-ssm/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: SSMClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-ssm/src/runtimeConfig.ts b/clients/client-ssm/src/runtimeConfig.ts index 88a982ea5e787..339a09717d4bb 100644 --- a/clients/client-ssm/src/runtimeConfig.ts +++ b/clients/client-ssm/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: SSMClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-sso-admin/src/SSOAdminClient.ts b/clients/client-sso-admin/src/SSOAdminClient.ts index eec73267eb3f5..1176e7355cdb1 100644 --- a/clients/client-sso-admin/src/SSOAdminClient.ts +++ b/clients/client-sso-admin/src/SSOAdminClient.ts @@ -311,6 +311,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-sso-admin/src/endpoints.ts b/clients/client-sso-admin/src/endpoints.ts index 1cf480502f098..bb954dba649e5 100644 --- a/clients/client-sso-admin/src/endpoints.ts +++ b/clients/client-sso-admin/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "sso", diff --git a/clients/client-sso-admin/src/runtimeConfig.browser.ts b/clients/client-sso-admin/src/runtimeConfig.browser.ts index 4c0037d298021..54a76b4decfc7 100644 --- a/clients/client-sso-admin/src/runtimeConfig.browser.ts +++ b/clients/client-sso-admin/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: SSOAdminClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-sso-admin/src/runtimeConfig.ts b/clients/client-sso-admin/src/runtimeConfig.ts index 9056a902bb52c..f4ab7f69759e3 100644 --- a/clients/client-sso-admin/src/runtimeConfig.ts +++ b/clients/client-sso-admin/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: SSOAdminClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-sso-oidc/src/SSOOIDCClient.ts b/clients/client-sso-oidc/src/SSOOIDCClient.ts index 6740ec4e39145..d8c16ff49bfd8 100644 --- a/clients/client-sso-oidc/src/SSOOIDCClient.ts +++ b/clients/client-sso-oidc/src/SSOOIDCClient.ts @@ -142,6 +142,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-sso-oidc/src/endpoints.ts b/clients/client-sso-oidc/src/endpoints.ts index 404808b2d5e3e..b8723fce752dc 100644 --- a/clients/client-sso-oidc/src/endpoints.ts +++ b/clients/client-sso-oidc/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "ap-northeast-1": { @@ -118,7 +118,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "awsssooidc", diff --git a/clients/client-sso-oidc/src/runtimeConfig.browser.ts b/clients/client-sso-oidc/src/runtimeConfig.browser.ts index a7d0cfa0b799a..9fdbb1c248604 100644 --- a/clients/client-sso-oidc/src/runtimeConfig.browser.ts +++ b/clients/client-sso-oidc/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -33,6 +34,8 @@ export const getRuntimeConfig = (config: SSOOIDCClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-sso-oidc/src/runtimeConfig.ts b/clients/client-sso-oidc/src/runtimeConfig.ts index 4665d2eb9a8fd..1e4e64683a0b9 100644 --- a/clients/client-sso-oidc/src/runtimeConfig.ts +++ b/clients/client-sso-oidc/src/runtimeConfig.ts @@ -1,7 +1,12 @@ // @ts-ignore: package.json will be imported from dist folders import packageInfo from "../package.json"; // eslint-disable-line -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; import { loadConfig as loadNodeConfig } from "@aws-sdk/node-config-provider"; @@ -36,6 +41,8 @@ export const getRuntimeConfig = (config: SSOOIDCClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-sso/src/SSOClient.ts b/clients/client-sso/src/SSOClient.ts index 7e687633b68f1..e37211b00d885 100644 --- a/clients/client-sso/src/SSOClient.ts +++ b/clients/client-sso/src/SSOClient.ts @@ -142,6 +142,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-sso/src/endpoints.ts b/clients/client-sso/src/endpoints.ts index 1b19abc72e157..428e1c79dd5f8 100644 --- a/clients/client-sso/src/endpoints.ts +++ b/clients/client-sso/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "ap-southeast-1": { @@ -90,7 +90,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "awsssoportal", diff --git a/clients/client-sso/src/runtimeConfig.browser.ts b/clients/client-sso/src/runtimeConfig.browser.ts index 9f123fc4ab92a..89c9b161fa715 100644 --- a/clients/client-sso/src/runtimeConfig.browser.ts +++ b/clients/client-sso/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -33,6 +34,8 @@ export const getRuntimeConfig = (config: SSOClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-sso/src/runtimeConfig.ts b/clients/client-sso/src/runtimeConfig.ts index a2f94d40246d2..61f19262e2e95 100644 --- a/clients/client-sso/src/runtimeConfig.ts +++ b/clients/client-sso/src/runtimeConfig.ts @@ -1,7 +1,12 @@ // @ts-ignore: package.json will be imported from dist folders import packageInfo from "../package.json"; // eslint-disable-line -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; import { loadConfig as loadNodeConfig } from "@aws-sdk/node-config-provider"; @@ -36,6 +41,8 @@ export const getRuntimeConfig = (config: SSOClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-storage-gateway/src/StorageGatewayClient.ts b/clients/client-storage-gateway/src/StorageGatewayClient.ts index 45eb68abfa4ae..3950970346d7d 100644 --- a/clients/client-storage-gateway/src/StorageGatewayClient.ts +++ b/clients/client-storage-gateway/src/StorageGatewayClient.ts @@ -560,6 +560,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-storage-gateway/src/endpoints.ts b/clients/client-storage-gateway/src/endpoints.ts index d468818ec6fdc..79792c629c096 100644 --- a/clients/client-storage-gateway/src/endpoints.ts +++ b/clients/client-storage-gateway/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { fips: { @@ -59,7 +59,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "storagegateway", diff --git a/clients/client-storage-gateway/src/runtimeConfig.browser.ts b/clients/client-storage-gateway/src/runtimeConfig.browser.ts index 16d5f5f4ffaa6..39900e3cd567a 100644 --- a/clients/client-storage-gateway/src/runtimeConfig.browser.ts +++ b/clients/client-storage-gateway/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: StorageGatewayClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-storage-gateway/src/runtimeConfig.ts b/clients/client-storage-gateway/src/runtimeConfig.ts index 6e334064d3102..88e499afbffa6 100644 --- a/clients/client-storage-gateway/src/runtimeConfig.ts +++ b/clients/client-storage-gateway/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: StorageGatewayClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-sts/src/STSClient.ts b/clients/client-sts/src/STSClient.ts index 3668cd8ff3ac3..13d9e542b5222 100644 --- a/clients/client-sts/src/STSClient.ts +++ b/clients/client-sts/src/STSClient.ts @@ -162,6 +162,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-sts/src/endpoints.ts b/clients/client-sts/src/endpoints.ts index 490818a92821a..66dda5bf9ad6d 100644 --- a/clients/client-sts/src/endpoints.ts +++ b/clients/client-sts/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "aws-global": { @@ -87,7 +87,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "sts", diff --git a/clients/client-sts/src/runtimeConfig.browser.ts b/clients/client-sts/src/runtimeConfig.browser.ts index 40dbfec2d6374..f2c7dbf03cc76 100644 --- a/clients/client-sts/src/runtimeConfig.browser.ts +++ b/clients/client-sts/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: STSClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-sts/src/runtimeConfig.ts b/clients/client-sts/src/runtimeConfig.ts index 6bb7fb1e93f7d..5d85d391d6485 100644 --- a/clients/client-sts/src/runtimeConfig.ts +++ b/clients/client-sts/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "./defaultStsRoleAssumers"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: STSClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-support/src/SupportClient.ts b/clients/client-support/src/SupportClient.ts index b68b77f83ca73..e25d5c2b10c58 100644 --- a/clients/client-support/src/SupportClient.ts +++ b/clients/client-support/src/SupportClient.ts @@ -206,6 +206,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-support/src/endpoints.ts b/clients/client-support/src/endpoints.ts index 6b4cd3d45dc6e..2f31b2dafdb0c 100644 --- a/clients/client-support/src/endpoints.ts +++ b/clients/client-support/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "aws-cn-global": { @@ -79,7 +79,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "support", diff --git a/clients/client-support/src/runtimeConfig.browser.ts b/clients/client-support/src/runtimeConfig.browser.ts index 6298e1e25691a..725c44f6e049c 100644 --- a/clients/client-support/src/runtimeConfig.browser.ts +++ b/clients/client-support/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: SupportClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-support/src/runtimeConfig.ts b/clients/client-support/src/runtimeConfig.ts index efea4c3c483a0..c60b9054f1b39 100644 --- a/clients/client-support/src/runtimeConfig.ts +++ b/clients/client-support/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: SupportClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-swf/src/SWFClient.ts b/clients/client-swf/src/SWFClient.ts index 8e478bdc94987..b7431a7f67c67 100644 --- a/clients/client-swf/src/SWFClient.ts +++ b/clients/client-swf/src/SWFClient.ts @@ -332,6 +332,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-swf/src/endpoints.ts b/clients/client-swf/src/endpoints.ts index 6b83176541d7a..4e8331b9d98d7 100644 --- a/clients/client-swf/src/endpoints.ts +++ b/clients/client-swf/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "swf", diff --git a/clients/client-swf/src/runtimeConfig.browser.ts b/clients/client-swf/src/runtimeConfig.browser.ts index f38d2bd5418b3..7de8451c55ca5 100644 --- a/clients/client-swf/src/runtimeConfig.browser.ts +++ b/clients/client-swf/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: SWFClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-swf/src/runtimeConfig.ts b/clients/client-swf/src/runtimeConfig.ts index 1cb96628d9933..18605e9a7d3bc 100644 --- a/clients/client-swf/src/runtimeConfig.ts +++ b/clients/client-swf/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: SWFClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-synthetics/src/SyntheticsClient.ts b/clients/client-synthetics/src/SyntheticsClient.ts index b9b9d26febe28..2f0e10548251b 100644 --- a/clients/client-synthetics/src/SyntheticsClient.ts +++ b/clients/client-synthetics/src/SyntheticsClient.ts @@ -185,6 +185,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-synthetics/src/endpoints.ts b/clients/client-synthetics/src/endpoints.ts index 97fe9ac997889..bae44c2aa9caa 100644 --- a/clients/client-synthetics/src/endpoints.ts +++ b/clients/client-synthetics/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "synthetics", diff --git a/clients/client-synthetics/src/runtimeConfig.browser.ts b/clients/client-synthetics/src/runtimeConfig.browser.ts index e9922cd0f989b..b7b477603d54e 100644 --- a/clients/client-synthetics/src/runtimeConfig.browser.ts +++ b/clients/client-synthetics/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: SyntheticsClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-synthetics/src/runtimeConfig.ts b/clients/client-synthetics/src/runtimeConfig.ts index bb0240da5b665..7a449791fd459 100644 --- a/clients/client-synthetics/src/runtimeConfig.ts +++ b/clients/client-synthetics/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: SyntheticsClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-textract/src/TextractClient.ts b/clients/client-textract/src/TextractClient.ts index 7cf69a9da6d52..79cd5922c0c0d 100644 --- a/clients/client-textract/src/TextractClient.ts +++ b/clients/client-textract/src/TextractClient.ts @@ -179,6 +179,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-textract/src/endpoints.ts b/clients/client-textract/src/endpoints.ts index 71335c4f95f87..86d7d2e75b426 100644 --- a/clients/client-textract/src/endpoints.ts +++ b/clients/client-textract/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-ca-central-1": { @@ -87,7 +87,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "textract", diff --git a/clients/client-textract/src/runtimeConfig.browser.ts b/clients/client-textract/src/runtimeConfig.browser.ts index edf765344ef4c..4aaab6089a3b7 100644 --- a/clients/client-textract/src/runtimeConfig.browser.ts +++ b/clients/client-textract/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: TextractClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-textract/src/runtimeConfig.ts b/clients/client-textract/src/runtimeConfig.ts index f2f3462de29f0..e3c6f9eefb78c 100644 --- a/clients/client-textract/src/runtimeConfig.ts +++ b/clients/client-textract/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: TextractClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-timestream-query/src/TimestreamQueryClient.ts b/clients/client-timestream-query/src/TimestreamQueryClient.ts index 4fa77d7412c1e..7fedc1967851f 100644 --- a/clients/client-timestream-query/src/TimestreamQueryClient.ts +++ b/clients/client-timestream-query/src/TimestreamQueryClient.ts @@ -149,6 +149,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-timestream-query/src/endpoints.ts b/clients/client-timestream-query/src/endpoints.ts index 90f0885d544b6..87f3f056dc8c6 100644 --- a/clients/client-timestream-query/src/endpoints.ts +++ b/clients/client-timestream-query/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "timestream", diff --git a/clients/client-timestream-query/src/runtimeConfig.browser.ts b/clients/client-timestream-query/src/runtimeConfig.browser.ts index 9438205c172d5..4021189413447 100644 --- a/clients/client-timestream-query/src/runtimeConfig.browser.ts +++ b/clients/client-timestream-query/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -36,6 +37,8 @@ export const getRuntimeConfig = (config: TimestreamQueryClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-timestream-query/src/runtimeConfig.ts b/clients/client-timestream-query/src/runtimeConfig.ts index 53f297391fdcc..33ddba079acb5 100644 --- a/clients/client-timestream-query/src/runtimeConfig.ts +++ b/clients/client-timestream-query/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_ENDPOINT_DISCOVERY_CONFIG_OPTIONS } from "@aws-sdk/middleware-endpoint-discovery"; @@ -43,6 +48,8 @@ export const getRuntimeConfig = (config: TimestreamQueryClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-timestream-write/src/TimestreamWriteClient.ts b/clients/client-timestream-write/src/TimestreamWriteClient.ts index 2c51d5ba437ef..83252e6372071 100644 --- a/clients/client-timestream-write/src/TimestreamWriteClient.ts +++ b/clients/client-timestream-write/src/TimestreamWriteClient.ts @@ -194,6 +194,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-timestream-write/src/endpoints.ts b/clients/client-timestream-write/src/endpoints.ts index ed33470377821..cc9b8ebdf545a 100644 --- a/clients/client-timestream-write/src/endpoints.ts +++ b/clients/client-timestream-write/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "timestream", diff --git a/clients/client-timestream-write/src/runtimeConfig.browser.ts b/clients/client-timestream-write/src/runtimeConfig.browser.ts index 96828430ea418..3ecb56e0cec90 100644 --- a/clients/client-timestream-write/src/runtimeConfig.browser.ts +++ b/clients/client-timestream-write/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -36,6 +37,8 @@ export const getRuntimeConfig = (config: TimestreamWriteClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-timestream-write/src/runtimeConfig.ts b/clients/client-timestream-write/src/runtimeConfig.ts index 5c87e517ce564..041637fefa3cb 100644 --- a/clients/client-timestream-write/src/runtimeConfig.ts +++ b/clients/client-timestream-write/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_ENDPOINT_DISCOVERY_CONFIG_OPTIONS } from "@aws-sdk/middleware-endpoint-discovery"; @@ -43,6 +48,8 @@ export const getRuntimeConfig = (config: TimestreamWriteClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-transcribe-streaming/src/TranscribeStreamingClient.ts b/clients/client-transcribe-streaming/src/TranscribeStreamingClient.ts index 7b93ab1f68995..6500301920578 100644 --- a/clients/client-transcribe-streaming/src/TranscribeStreamingClient.ts +++ b/clients/client-transcribe-streaming/src/TranscribeStreamingClient.ts @@ -163,6 +163,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-transcribe-streaming/src/endpoints.ts b/clients/client-transcribe-streaming/src/endpoints.ts index 2fd090652a56f..7bc450345c8c3 100644 --- a/clients/client-transcribe-streaming/src/endpoints.ts +++ b/clients/client-transcribe-streaming/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "transcribestreaming-fips-ca-central-1": { @@ -74,7 +74,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "transcribe", diff --git a/clients/client-transcribe-streaming/src/runtimeConfig.browser.ts b/clients/client-transcribe-streaming/src/runtimeConfig.browser.ts index d6985d6fcf21d..50e9b5b7f6d15 100644 --- a/clients/client-transcribe-streaming/src/runtimeConfig.browser.ts +++ b/clients/client-transcribe-streaming/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { eventStreamSerdeProvider } from "@aws-sdk/eventstream-serde-browser"; import { streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; @@ -39,6 +40,8 @@ export const getRuntimeConfig = (config: TranscribeStreamingClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-transcribe-streaming/src/runtimeConfig.ts b/clients/client-transcribe-streaming/src/runtimeConfig.ts index fc37984569392..50d30a82416c0 100644 --- a/clients/client-transcribe-streaming/src/runtimeConfig.ts +++ b/clients/client-transcribe-streaming/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { eventStreamPayloadHandlerProvider } from "@aws-sdk/eventstream-handler-node"; import { eventStreamSerdeProvider } from "@aws-sdk/eventstream-serde-node"; @@ -44,6 +49,8 @@ export const getRuntimeConfig = (config: TranscribeStreamingClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-transcribe/src/TranscribeClient.ts b/clients/client-transcribe/src/TranscribeClient.ts index ce77fba24be8b..5b90936f78d72 100644 --- a/clients/client-transcribe/src/TranscribeClient.ts +++ b/clients/client-transcribe/src/TranscribeClient.ts @@ -347,6 +347,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-transcribe/src/endpoints.ts b/clients/client-transcribe/src/endpoints.ts index 08ef84f2c63c8..2d9c82b6ffcfe 100644 --- a/clients/client-transcribe/src/endpoints.ts +++ b/clients/client-transcribe/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "cn-north-1": { @@ -90,7 +90,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "transcribe", diff --git a/clients/client-transcribe/src/runtimeConfig.browser.ts b/clients/client-transcribe/src/runtimeConfig.browser.ts index 32ce09e53ffc0..04e24c0bb2bd0 100644 --- a/clients/client-transcribe/src/runtimeConfig.browser.ts +++ b/clients/client-transcribe/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: TranscribeClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-transcribe/src/runtimeConfig.ts b/clients/client-transcribe/src/runtimeConfig.ts index 368ea47a874ab..5e609f49eabcb 100644 --- a/clients/client-transcribe/src/runtimeConfig.ts +++ b/clients/client-transcribe/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: TranscribeClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-transfer/src/TransferClient.ts b/clients/client-transfer/src/TransferClient.ts index 6168d2d32d5aa..38f8f3a6c7027 100644 --- a/clients/client-transfer/src/TransferClient.ts +++ b/clients/client-transfer/src/TransferClient.ts @@ -248,6 +248,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-transfer/src/endpoints.ts b/clients/client-transfer/src/endpoints.ts index 02bccec521da7..931566f8f0416 100644 --- a/clients/client-transfer/src/endpoints.ts +++ b/clients/client-transfer/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-ca-central-1": { @@ -87,7 +87,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "transfer", diff --git a/clients/client-transfer/src/runtimeConfig.browser.ts b/clients/client-transfer/src/runtimeConfig.browser.ts index f92e21dbd12a1..3289d61bcf54a 100644 --- a/clients/client-transfer/src/runtimeConfig.browser.ts +++ b/clients/client-transfer/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: TransferClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-transfer/src/runtimeConfig.ts b/clients/client-transfer/src/runtimeConfig.ts index d831c4e59045c..ae95c6a428b6d 100644 --- a/clients/client-transfer/src/runtimeConfig.ts +++ b/clients/client-transfer/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: TransferClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-translate/src/TranslateClient.ts b/clients/client-translate/src/TranslateClient.ts index 0657a65216506..2fa837b4b2208 100644 --- a/clients/client-translate/src/TranslateClient.ts +++ b/clients/client-translate/src/TranslateClient.ts @@ -191,6 +191,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-translate/src/endpoints.ts b/clients/client-translate/src/endpoints.ts index 69f51cfe52aa0..46c870c68e907 100644 --- a/clients/client-translate/src/endpoints.ts +++ b/clients/client-translate/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "us-east-1-fips": { @@ -73,7 +73,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "translate", diff --git a/clients/client-translate/src/runtimeConfig.browser.ts b/clients/client-translate/src/runtimeConfig.browser.ts index 1337b54909143..25d0405051d45 100644 --- a/clients/client-translate/src/runtimeConfig.browser.ts +++ b/clients/client-translate/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: TranslateClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-translate/src/runtimeConfig.ts b/clients/client-translate/src/runtimeConfig.ts index 3aa1f0e2ee748..07f6eae466a76 100644 --- a/clients/client-translate/src/runtimeConfig.ts +++ b/clients/client-translate/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: TranslateClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-voice-id/src/VoiceIDClient.ts b/clients/client-voice-id/src/VoiceIDClient.ts index 10591304a314b..c08975385606b 100644 --- a/clients/client-voice-id/src/VoiceIDClient.ts +++ b/clients/client-voice-id/src/VoiceIDClient.ts @@ -221,6 +221,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-voice-id/src/endpoints.ts b/clients/client-voice-id/src/endpoints.ts index 07e4f42ecd5ef..b8d4a6c247ef4 100644 --- a/clients/client-voice-id/src/endpoints.ts +++ b/clients/client-voice-id/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "voiceid", diff --git a/clients/client-voice-id/src/runtimeConfig.browser.ts b/clients/client-voice-id/src/runtimeConfig.browser.ts index 6965ac998aaed..f05d348f3c1fb 100644 --- a/clients/client-voice-id/src/runtimeConfig.browser.ts +++ b/clients/client-voice-id/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: VoiceIDClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-voice-id/src/runtimeConfig.ts b/clients/client-voice-id/src/runtimeConfig.ts index 6d41c3cfd2ca0..0e94b0fbea8b5 100644 --- a/clients/client-voice-id/src/runtimeConfig.ts +++ b/clients/client-voice-id/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: VoiceIDClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-waf-regional/src/WAFRegionalClient.ts b/clients/client-waf-regional/src/WAFRegionalClient.ts index 8b011b3f85c31..dff248273934a 100644 --- a/clients/client-waf-regional/src/WAFRegionalClient.ts +++ b/clients/client-waf-regional/src/WAFRegionalClient.ts @@ -485,6 +485,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-waf-regional/src/endpoints.ts b/clients/client-waf-regional/src/endpoints.ts index 7650d5a0bd54c..6158d97df487a 100644 --- a/clients/client-waf-regional/src/endpoints.ts +++ b/clients/client-waf-regional/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "af-south-1": { @@ -275,7 +275,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "waf-regional", diff --git a/clients/client-waf-regional/src/runtimeConfig.browser.ts b/clients/client-waf-regional/src/runtimeConfig.browser.ts index 6f9c95cd31301..bcaca369f5ed1 100644 --- a/clients/client-waf-regional/src/runtimeConfig.browser.ts +++ b/clients/client-waf-regional/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: WAFRegionalClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-waf-regional/src/runtimeConfig.ts b/clients/client-waf-regional/src/runtimeConfig.ts index b7ecee0ff1faf..7e292135c518a 100644 --- a/clients/client-waf-regional/src/runtimeConfig.ts +++ b/clients/client-waf-regional/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: WAFRegionalClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-waf/src/WAFClient.ts b/clients/client-waf/src/WAFClient.ts index 49ea255d68080..1836192a0ea7c 100644 --- a/clients/client-waf/src/WAFClient.ts +++ b/clients/client-waf/src/WAFClient.ts @@ -467,6 +467,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-waf/src/endpoints.ts b/clients/client-waf/src/endpoints.ts index 804f6e61174f6..0b3f36d0f93c0 100644 --- a/clients/client-waf/src/endpoints.ts +++ b/clients/client-waf/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "aws-fips": { @@ -64,7 +64,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "waf", diff --git a/clients/client-waf/src/runtimeConfig.browser.ts b/clients/client-waf/src/runtimeConfig.browser.ts index c85c34cc78828..0b8f77c332c22 100644 --- a/clients/client-waf/src/runtimeConfig.browser.ts +++ b/clients/client-waf/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: WAFClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-waf/src/runtimeConfig.ts b/clients/client-waf/src/runtimeConfig.ts index 5be8b27fb43ee..a53aa1e42f8eb 100644 --- a/clients/client-waf/src/runtimeConfig.ts +++ b/clients/client-waf/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: WAFClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-wafv2/src/WAFV2Client.ts b/clients/client-wafv2/src/WAFV2Client.ts index 1e1a58f168c4a..248abe62a0a06 100644 --- a/clients/client-wafv2/src/WAFV2Client.ts +++ b/clients/client-wafv2/src/WAFV2Client.ts @@ -338,6 +338,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-wafv2/src/endpoints.ts b/clients/client-wafv2/src/endpoints.ts index 44f3d32250a6d..942ba3bd0f8d5 100644 --- a/clients/client-wafv2/src/endpoints.ts +++ b/clients/client-wafv2/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "wafv2", diff --git a/clients/client-wafv2/src/runtimeConfig.browser.ts b/clients/client-wafv2/src/runtimeConfig.browser.ts index c3ce08d2efd3b..bc93af58bc0df 100644 --- a/clients/client-wafv2/src/runtimeConfig.browser.ts +++ b/clients/client-wafv2/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: WAFV2ClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-wafv2/src/runtimeConfig.ts b/clients/client-wafv2/src/runtimeConfig.ts index 4ff95193f7ff3..2bf994084f165 100644 --- a/clients/client-wafv2/src/runtimeConfig.ts +++ b/clients/client-wafv2/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: WAFV2ClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-wellarchitected/src/WellArchitectedClient.ts b/clients/client-wellarchitected/src/WellArchitectedClient.ts index bf5cc189a1c28..1e6630e6aa110 100644 --- a/clients/client-wellarchitected/src/WellArchitectedClient.ts +++ b/clients/client-wellarchitected/src/WellArchitectedClient.ts @@ -257,6 +257,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-wellarchitected/src/endpoints.ts b/clients/client-wellarchitected/src/endpoints.ts index e840f2f102f43..6fb1791bc1954 100644 --- a/clients/client-wellarchitected/src/endpoints.ts +++ b/clients/client-wellarchitected/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "wellarchitected", diff --git a/clients/client-wellarchitected/src/runtimeConfig.browser.ts b/clients/client-wellarchitected/src/runtimeConfig.browser.ts index 7056f182b69a8..bcce07d0153d7 100644 --- a/clients/client-wellarchitected/src/runtimeConfig.browser.ts +++ b/clients/client-wellarchitected/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: WellArchitectedClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-wellarchitected/src/runtimeConfig.ts b/clients/client-wellarchitected/src/runtimeConfig.ts index f6786664c2d60..ec869619b820f 100644 --- a/clients/client-wellarchitected/src/runtimeConfig.ts +++ b/clients/client-wellarchitected/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: WellArchitectedClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-wisdom/src/WisdomClient.ts b/clients/client-wisdom/src/WisdomClient.ts index c1afc63ab35e9..98354162acf44 100644 --- a/clients/client-wisdom/src/WisdomClient.ts +++ b/clients/client-wisdom/src/WisdomClient.ts @@ -260,6 +260,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-wisdom/src/endpoints.ts b/clients/client-wisdom/src/endpoints.ts index dfa42a758b0c0..1c64232239755 100644 --- a/clients/client-wisdom/src/endpoints.ts +++ b/clients/client-wisdom/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "wisdom", diff --git a/clients/client-wisdom/src/runtimeConfig.browser.ts b/clients/client-wisdom/src/runtimeConfig.browser.ts index 2a2c68938fa56..9a12090b8eb34 100644 --- a/clients/client-wisdom/src/runtimeConfig.browser.ts +++ b/clients/client-wisdom/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: WisdomClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-wisdom/src/runtimeConfig.ts b/clients/client-wisdom/src/runtimeConfig.ts index 8ac4380f0f9e6..328285bb55ada 100644 --- a/clients/client-wisdom/src/runtimeConfig.ts +++ b/clients/client-wisdom/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: WisdomClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-workdocs/src/WorkDocsClient.ts b/clients/client-workdocs/src/WorkDocsClient.ts index 55c889e69d156..f485834dab399 100644 --- a/clients/client-workdocs/src/WorkDocsClient.ts +++ b/clients/client-workdocs/src/WorkDocsClient.ts @@ -308,6 +308,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-workdocs/src/endpoints.ts b/clients/client-workdocs/src/endpoints.ts index 48f0ca1ea9f3c..d7ff6fcad41d4 100644 --- a/clients/client-workdocs/src/endpoints.ts +++ b/clients/client-workdocs/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -64,7 +64,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "workdocs", diff --git a/clients/client-workdocs/src/runtimeConfig.browser.ts b/clients/client-workdocs/src/runtimeConfig.browser.ts index 00abb57271c9e..205a1eaa547a5 100644 --- a/clients/client-workdocs/src/runtimeConfig.browser.ts +++ b/clients/client-workdocs/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: WorkDocsClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-workdocs/src/runtimeConfig.ts b/clients/client-workdocs/src/runtimeConfig.ts index f196dbe5c668b..5ccb5990fb9bf 100644 --- a/clients/client-workdocs/src/runtimeConfig.ts +++ b/clients/client-workdocs/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: WorkDocsClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-worklink/src/WorkLinkClient.ts b/clients/client-worklink/src/WorkLinkClient.ts index 093dfa9187a13..14e4c74f158d1 100644 --- a/clients/client-worklink/src/WorkLinkClient.ts +++ b/clients/client-worklink/src/WorkLinkClient.ts @@ -296,6 +296,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-worklink/src/endpoints.ts b/clients/client-worklink/src/endpoints.ts index e72f4f571bc6e..f9feee42a4b28 100644 --- a/clients/client-worklink/src/endpoints.ts +++ b/clients/client-worklink/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "worklink", diff --git a/clients/client-worklink/src/runtimeConfig.browser.ts b/clients/client-worklink/src/runtimeConfig.browser.ts index b6977557dabae..f90aa9571ef8b 100644 --- a/clients/client-worklink/src/runtimeConfig.browser.ts +++ b/clients/client-worklink/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: WorkLinkClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-worklink/src/runtimeConfig.ts b/clients/client-worklink/src/runtimeConfig.ts index 685314ef23ef6..516ea88461e3c 100644 --- a/clients/client-worklink/src/runtimeConfig.ts +++ b/clients/client-worklink/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: WorkLinkClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-workmail/src/WorkMailClient.ts b/clients/client-workmail/src/WorkMailClient.ts index ec335c2a881e1..a9c2c0b17ae46 100644 --- a/clients/client-workmail/src/WorkMailClient.ts +++ b/clients/client-workmail/src/WorkMailClient.ts @@ -437,6 +437,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-workmail/src/endpoints.ts b/clients/client-workmail/src/endpoints.ts index cb07fab2a42fe..627030b02becf 100644 --- a/clients/client-workmail/src/endpoints.ts +++ b/clients/client-workmail/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "workmail", diff --git a/clients/client-workmail/src/runtimeConfig.browser.ts b/clients/client-workmail/src/runtimeConfig.browser.ts index bebd768b74eab..1e3787f11a939 100644 --- a/clients/client-workmail/src/runtimeConfig.browser.ts +++ b/clients/client-workmail/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: WorkMailClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-workmail/src/runtimeConfig.ts b/clients/client-workmail/src/runtimeConfig.ts index 49232d802a14c..4730c7c3e1611 100644 --- a/clients/client-workmail/src/runtimeConfig.ts +++ b/clients/client-workmail/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: WorkMailClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-workmailmessageflow/src/WorkMailMessageFlowClient.ts b/clients/client-workmailmessageflow/src/WorkMailMessageFlowClient.ts index a6ee1d4e2c130..7d810aea4077a 100644 --- a/clients/client-workmailmessageflow/src/WorkMailMessageFlowClient.ts +++ b/clients/client-workmailmessageflow/src/WorkMailMessageFlowClient.ts @@ -145,6 +145,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-workmailmessageflow/src/endpoints.ts b/clients/client-workmailmessageflow/src/endpoints.ts index ce50b2483b944..9e5127896fc32 100644 --- a/clients/client-workmailmessageflow/src/endpoints.ts +++ b/clients/client-workmailmessageflow/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "workmailmessageflow", diff --git a/clients/client-workmailmessageflow/src/runtimeConfig.browser.ts b/clients/client-workmailmessageflow/src/runtimeConfig.browser.ts index c108ff971cacc..a324023e24f3b 100644 --- a/clients/client-workmailmessageflow/src/runtimeConfig.browser.ts +++ b/clients/client-workmailmessageflow/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: WorkMailMessageFlowClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-workmailmessageflow/src/runtimeConfig.ts b/clients/client-workmailmessageflow/src/runtimeConfig.ts index acf4607c372a9..6496d672167ad 100644 --- a/clients/client-workmailmessageflow/src/runtimeConfig.ts +++ b/clients/client-workmailmessageflow/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: WorkMailMessageFlowClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-workspaces/src/WorkSpacesClient.ts b/clients/client-workspaces/src/WorkSpacesClient.ts index 35eb01265d269..8897e062bd635 100644 --- a/clients/client-workspaces/src/WorkSpacesClient.ts +++ b/clients/client-workspaces/src/WorkSpacesClient.ts @@ -401,6 +401,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-workspaces/src/endpoints.ts b/clients/client-workspaces/src/endpoints.ts index 35b5fa07c9e38..b40d7232ffb34 100644 --- a/clients/client-workspaces/src/endpoints.ts +++ b/clients/client-workspaces/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -68,7 +68,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "workspaces", diff --git a/clients/client-workspaces/src/runtimeConfig.browser.ts b/clients/client-workspaces/src/runtimeConfig.browser.ts index 69610b421887a..7104391e891c0 100644 --- a/clients/client-workspaces/src/runtimeConfig.browser.ts +++ b/clients/client-workspaces/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: WorkSpacesClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-workspaces/src/runtimeConfig.ts b/clients/client-workspaces/src/runtimeConfig.ts index ede42556634ee..d7dc39a067dcc 100644 --- a/clients/client-workspaces/src/runtimeConfig.ts +++ b/clients/client-workspaces/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: WorkSpacesClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-xray/src/XRayClient.ts b/clients/client-xray/src/XRayClient.ts index e60dc78276fd7..5b1d747124904 100644 --- a/clients/client-xray/src/XRayClient.ts +++ b/clients/client-xray/src/XRayClient.ts @@ -242,6 +242,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/clients/client-xray/src/endpoints.ts b/clients/client-xray/src/endpoints.ts index 38e09c779ec6a..33fe2dd967a73 100644 --- a/clients/client-xray/src/endpoints.ts +++ b/clients/client-xray/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = { "fips-us-east-1": { @@ -82,7 +82,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "xray", diff --git a/clients/client-xray/src/runtimeConfig.browser.ts b/clients/client-xray/src/runtimeConfig.browser.ts index 058133e7e0877..ba2da7ad0d388 100644 --- a/clients/client-xray/src/runtimeConfig.browser.ts +++ b/clients/client-xray/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: XRayClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/clients/client-xray/src/runtimeConfig.ts b/clients/client-xray/src/runtimeConfig.ts index 9d02ea2be19fa..d9831678f3fb4 100644 --- a/clients/client-xray/src/runtimeConfig.ts +++ b/clients/client-xray/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: XRayClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/codegen/smithy-aws-typescript-codegen/src/main/java/software/amazon/smithy/aws/typescript/codegen/AddClientRuntimeConfig.java b/codegen/smithy-aws-typescript-codegen/src/main/java/software/amazon/smithy/aws/typescript/codegen/AddClientRuntimeConfig.java index 6b89fc3b9dd37..8e16e01eb42fe 100644 --- a/codegen/smithy-aws-typescript-codegen/src/main/java/software/amazon/smithy/aws/typescript/codegen/AddClientRuntimeConfig.java +++ b/codegen/smithy-aws-typescript-codegen/src/main/java/software/amazon/smithy/aws/typescript/codegen/AddClientRuntimeConfig.java @@ -39,6 +39,8 @@ * made at most in case of retry. *
  • retryMode: Specifies which retry algorithm to use.
  • *
  • logger: Optional logger for logging debug/info/warn/error.
  • + *
  • useDualstackEndpoint: Enables IPv6/IPv4 dualstack endpoint.
  • + *
  • useFipsEndpoint: Enables FIPS compatible endpoints.
  • * * *

    This plugin adds the following Node runtime specific values: @@ -47,7 +49,9 @@ *

  • maxAttempts: Uses the default maxAttempts provider that checks things * like environment variables and the AWS config file.
  • *
  • retryMode: Specifies which retry algorithm to use.
  • - *
  • logger: Sets to empty as logger is passed in client configuration
  • + *
  • logger: Sets to empty as logger is passed in client configuration.
  • + *
  • useDualstackEndpoint: Uses default useDualstackEndpoint provider.
  • + *
  • useFipsEndpoint: Uses default useFipsEndpoint provider.
  • * * *

    This plugin adds the following Browser runtime specific values: @@ -55,7 +59,9 @@ *

      *
    • maxAttempts: Returns default value of 3.
    • *
    • retryMode: Provider which returns DEFAULT_RETRY_MODE.
    • - *
    • logger: Sets to empty as logger is passed in client configuration
    • + *
    • logger: Sets to empty as logger is passed in client configuration.
    • + *
    • useDualstackEndpoint: Sets to false.
    • + *
    • useFipsEndpoint: Sets to false.
    • *
    */ @SmithyInternalApi @@ -77,6 +83,10 @@ public void addConfigInterfaceFields( .write("retryMode?: string | __Provider;\n"); writer.writeDocs("Optional logger for logging debug/info/warn/error.") .write("logger?: __Logger;\n"); + writer.writeDocs("Enables IPv6/IPv4 dualstack endpoint.") + .write("useDualstackEndpoint?: boolean | __Provider;\n"); + writer.writeDocs("Enables FIPS compatible endpoints.") + .write("useFipsEndpoint?: boolean | __Provider;\n"); } @Override @@ -107,6 +117,18 @@ public Map> getRuntimeConfigWriters( writer.addImport("DEFAULT_RETRY_MODE", "DEFAULT_RETRY_MODE", TypeScriptDependency.MIDDLEWARE_RETRY.packageName); writer.write("(() => Promise.resolve(DEFAULT_RETRY_MODE))"); + }, + "useDualstackEndpoint", writer -> { + writer.addDependency(TypeScriptDependency.CONFIG_RESOLVER); + writer.addImport("DEFAULT_USE_DUALSTACK_ENDPOINT", "DEFAULT_USE_DUALSTACK_ENDPOINT", + TypeScriptDependency.CONFIG_RESOLVER.packageName); + writer.write("(() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT))"); + }, + "useFipsEndpoint", writer -> { + writer.addDependency(TypeScriptDependency.CONFIG_RESOLVER); + writer.addImport("DEFAULT_USE_FIPS_ENDPOINT", "DEFAULT_USE_FIPS_ENDPOINT", + TypeScriptDependency.CONFIG_RESOLVER.packageName); + writer.write("(() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT))"); } ); case NODE: @@ -127,6 +149,26 @@ public Map> getRuntimeConfigWriters( writer.addImport("NODE_RETRY_MODE_CONFIG_OPTIONS", "NODE_RETRY_MODE_CONFIG_OPTIONS", TypeScriptDependency.MIDDLEWARE_RETRY.packageName); writer.write("loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS)"); + }, + "useDualstackEndpoint", writer -> { + writer.addDependency(AwsDependency.NODE_CONFIG_PROVIDER); + writer.addImport("loadConfig", "loadNodeConfig", + AwsDependency.NODE_CONFIG_PROVIDER.packageName); + writer.addDependency(TypeScriptDependency.CONFIG_RESOLVER); + writer.addImport("NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS", + "NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS", + TypeScriptDependency.CONFIG_RESOLVER.packageName); + writer.write("loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS)"); + }, + "useFipsEndpoint", writer -> { + writer.addDependency(AwsDependency.NODE_CONFIG_PROVIDER); + writer.addImport("loadConfig", "loadNodeConfig", + AwsDependency.NODE_CONFIG_PROVIDER.packageName); + writer.addDependency(TypeScriptDependency.CONFIG_RESOLVER); + writer.addImport("NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS", + "NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS", + TypeScriptDependency.CONFIG_RESOLVER.packageName); + writer.write("loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS)"); } ); default: diff --git a/codegen/smithy-aws-typescript-codegen/src/main/java/software/amazon/smithy/aws/typescript/codegen/EndpointGenerator.java b/codegen/smithy-aws-typescript-codegen/src/main/java/software/amazon/smithy/aws/typescript/codegen/EndpointGenerator.java index 5dd9dfeb1d672..a0bf9682a9c5e 100644 --- a/codegen/smithy-aws-typescript-codegen/src/main/java/software/amazon/smithy/aws/typescript/codegen/EndpointGenerator.java +++ b/codegen/smithy-aws-typescript-codegen/src/main/java/software/amazon/smithy/aws/typescript/codegen/EndpointGenerator.java @@ -142,10 +142,12 @@ private void writePartitionHash() { private void writeEndpointProviderFunction() { writer.addImport("RegionInfoProvider", "RegionInfoProvider", TypeScriptDependency.AWS_SDK_TYPES.packageName); + writer.addImport("RegionInfoProviderOptions", "RegionInfoProviderOptions", + TypeScriptDependency.AWS_SDK_TYPES.packageName); writer.addImport("getRegionInfo", "getRegionInfo", TypeScriptDependency.CONFIG_RESOLVER.packageName); writer.openBlock("export const defaultRegionInfoProvider: RegionInfoProvider = async (\n" + " region: string,\n" - + " options?: any\n" + + " options?: RegionInfoProviderOptions\n" + ") => ", ";", () -> { writer.openBlock("getRegionInfo(region, {", "})", () -> { writer.write("...options,"); diff --git a/packages/config-resolver/package.json b/packages/config-resolver/package.json index d4cf5da747184..c2ce74b16aa21 100644 --- a/packages/config-resolver/package.json +++ b/packages/config-resolver/package.json @@ -17,17 +17,17 @@ "url": "https://aws.amazon.com/javascript/" }, "license": "Apache-2.0", - "devDependencies": { - "@aws-sdk/node-config-provider": "3.39.0", - "@types/jest": "^26.0.4", - "jest": "^26.1.0", - "typescript": "~4.3.5" - }, "dependencies": { + "@aws-sdk/node-config-provider": "3.39.0", "@aws-sdk/signature-v4": "3.39.0", "@aws-sdk/types": "3.38.0", "tslib": "^2.3.0" }, + "devDependencies": { + "@types/jest": "^26.0.4", + "jest": "^26.1.0", + "typescript": "~4.3.5" + }, "engines": { "node": ">= 10.0.0" }, diff --git a/packages/config-resolver/src/endpointsConfig/NodeUseDualstackEndpointConfigOptions.spec.ts b/packages/config-resolver/src/endpointsConfig/NodeUseDualstackEndpointConfigOptions.spec.ts new file mode 100644 index 0000000000000..661f4ba8b56f5 --- /dev/null +++ b/packages/config-resolver/src/endpointsConfig/NodeUseDualstackEndpointConfigOptions.spec.ts @@ -0,0 +1,51 @@ +import { booleanSelector, SelectorType } from "@aws-sdk/node-config-provider"; + +import { + CONFIG_USE_DUALSTACK_ENDPOINT, + DEFAULT_USE_DUALSTACK_ENDPOINT, + ENV_USE_DUALSTACK_ENDPOINT, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, +} from "./NodeUseDualstackEndpointConfigOptions"; + +jest.mock("@aws-sdk/node-config-provider"); + +describe("NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS", () => { + afterEach(() => { + jest.clearAllMocks(); + }); + + const test = (func: Function, obj: { [key: string]: string }, key: string, type: SelectorType) => { + it.each([true, false, undefined])("returns %s", (output) => { + (booleanSelector as jest.Mock).mockReturnValueOnce(output); + expect(func(obj)).toEqual(output); + expect(booleanSelector).toBeCalledWith(obj, key, type); + }); + + it("throws error", () => { + const mockError = new Error("error"); + (booleanSelector as jest.Mock).mockImplementationOnce(() => { + throw mockError; + }); + expect(() => { + func(obj); + }).toThrow(mockError); + }); + }; + + describe("calls booleanSelector for environmentVariableSelector", () => { + const env: { [ENV_USE_DUALSTACK_ENDPOINT]: any } = {} as any; + const { environmentVariableSelector } = NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS; + test(environmentVariableSelector, env, ENV_USE_DUALSTACK_ENDPOINT, SelectorType.ENV); + }); + + describe("calls booleanSelector for configFileSelector", () => { + const profileContent: { [CONFIG_USE_DUALSTACK_ENDPOINT]: any } = {} as any; + const { configFileSelector } = NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS; + test(configFileSelector, profileContent, CONFIG_USE_DUALSTACK_ENDPOINT, SelectorType.CONFIG); + }); + + it("returns false for default", () => { + const { default: defaultValue } = NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS; + expect(defaultValue).toEqual(DEFAULT_USE_DUALSTACK_ENDPOINT); + }); +}); diff --git a/packages/config-resolver/src/endpointsConfig/NodeUseDualstackEndpointConfigOptions.ts b/packages/config-resolver/src/endpointsConfig/NodeUseDualstackEndpointConfigOptions.ts new file mode 100644 index 0000000000000..b1f96b08e3d71 --- /dev/null +++ b/packages/config-resolver/src/endpointsConfig/NodeUseDualstackEndpointConfigOptions.ts @@ -0,0 +1,13 @@ +import { LoadedConfigSelectors } from "@aws-sdk/node-config-provider"; +import { booleanSelector, SelectorType } from "@aws-sdk/node-config-provider"; + +export const ENV_USE_DUALSTACK_ENDPOINT = "AWS_USE_DUALSTACK_ENDPOINT"; +export const CONFIG_USE_DUALSTACK_ENDPOINT = "use_dualstack_endpoint"; +export const DEFAULT_USE_DUALSTACK_ENDPOINT = false; + +export const NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS: LoadedConfigSelectors = { + environmentVariableSelector: (env: NodeJS.ProcessEnv) => + booleanSelector(env, ENV_USE_DUALSTACK_ENDPOINT, SelectorType.ENV), + configFileSelector: (profile) => booleanSelector(profile, CONFIG_USE_DUALSTACK_ENDPOINT, SelectorType.CONFIG), + default: false, +}; diff --git a/packages/config-resolver/src/endpointsConfig/NodeUseFipsEndpointConfigOptions.spec.ts b/packages/config-resolver/src/endpointsConfig/NodeUseFipsEndpointConfigOptions.spec.ts new file mode 100644 index 0000000000000..908393472cf7d --- /dev/null +++ b/packages/config-resolver/src/endpointsConfig/NodeUseFipsEndpointConfigOptions.spec.ts @@ -0,0 +1,51 @@ +import { booleanSelector, SelectorType } from "@aws-sdk/node-config-provider"; + +import { + CONFIG_USE_FIPS_ENDPOINT, + DEFAULT_USE_FIPS_ENDPOINT, + ENV_USE_FIPS_ENDPOINT, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "./NodeUseFipsEndpointConfigOptions"; + +jest.mock("@aws-sdk/node-config-provider"); + +describe("NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS", () => { + afterEach(() => { + jest.clearAllMocks(); + }); + + const test = (func: Function, obj: { [key: string]: string }, key: string, type: SelectorType) => { + it.each([true, false, undefined])("returns %s", (output) => { + (booleanSelector as jest.Mock).mockReturnValueOnce(output); + expect(func(obj)).toEqual(output); + expect(booleanSelector).toBeCalledWith(obj, key, type); + }); + + it("throws error", () => { + const mockError = new Error("error"); + (booleanSelector as jest.Mock).mockImplementationOnce(() => { + throw mockError; + }); + expect(() => { + func(obj); + }).toThrow(mockError); + }); + }; + + describe("calls booleanSelector for environmentVariableSelector", () => { + const env: { [ENV_USE_FIPS_ENDPOINT]: any } = {} as any; + const { environmentVariableSelector } = NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS; + test(environmentVariableSelector, env, ENV_USE_FIPS_ENDPOINT, SelectorType.ENV); + }); + + describe("calls booleanSelector for configFileSelector", () => { + const profileContent: { [CONFIG_USE_FIPS_ENDPOINT]: any } = {} as any; + const { configFileSelector } = NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS; + test(configFileSelector, profileContent, CONFIG_USE_FIPS_ENDPOINT, SelectorType.CONFIG); + }); + + it("returns false for default", () => { + const { default: defaultValue } = NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS; + expect(defaultValue).toEqual(DEFAULT_USE_FIPS_ENDPOINT); + }); +}); diff --git a/packages/config-resolver/src/endpointsConfig/NodeUseFipsEndpointConfigOptions.ts b/packages/config-resolver/src/endpointsConfig/NodeUseFipsEndpointConfigOptions.ts new file mode 100644 index 0000000000000..4bea5ebf88d42 --- /dev/null +++ b/packages/config-resolver/src/endpointsConfig/NodeUseFipsEndpointConfigOptions.ts @@ -0,0 +1,13 @@ +import { LoadedConfigSelectors } from "@aws-sdk/node-config-provider"; +import { booleanSelector, SelectorType } from "@aws-sdk/node-config-provider"; + +export const ENV_USE_FIPS_ENDPOINT = "AWS_USE_FIPS_ENDPOINT"; +export const CONFIG_USE_FIPS_ENDPOINT = "use_fips_endpoint"; +export const DEFAULT_USE_FIPS_ENDPOINT = false; + +export const NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS: LoadedConfigSelectors = { + environmentVariableSelector: (env: NodeJS.ProcessEnv) => + booleanSelector(env, ENV_USE_FIPS_ENDPOINT, SelectorType.ENV), + configFileSelector: (profile) => booleanSelector(profile, CONFIG_USE_FIPS_ENDPOINT, SelectorType.CONFIG), + default: false, +}; diff --git a/packages/config-resolver/src/endpointsConfig/index.ts b/packages/config-resolver/src/endpointsConfig/index.ts index ed5fcc4490184..1424c22f2a2f6 100644 --- a/packages/config-resolver/src/endpointsConfig/index.ts +++ b/packages/config-resolver/src/endpointsConfig/index.ts @@ -1,2 +1,4 @@ +export * from "./NodeUseDualstackEndpointConfigOptions"; +export * from "./NodeUseFipsEndpointConfigOptions"; export * from "./resolveCustomEndpointsConfig"; export * from "./resolveEndpointsConfig"; diff --git a/packages/config-resolver/src/endpointsConfig/resolveCustomEndpointsConfig.ts b/packages/config-resolver/src/endpointsConfig/resolveCustomEndpointsConfig.ts index 1ba9c8d812c70..3118029e50c81 100644 --- a/packages/config-resolver/src/endpointsConfig/resolveCustomEndpointsConfig.ts +++ b/packages/config-resolver/src/endpointsConfig/resolveCustomEndpointsConfig.ts @@ -1,6 +1,7 @@ import { Endpoint, Provider, UrlParser } from "@aws-sdk/types"; import { EndpointsInputConfig, EndpointsResolvedConfig } from "./resolveEndpointsConfig"; +import { normalizeBoolean } from "./utils/normalizeBoolean"; import { normalizeEndpoint } from "./utils/normalizeEndpoint"; export interface CustomEndpointsInputConfig extends EndpointsInputConfig { @@ -29,4 +30,6 @@ export const resolveCustomEndpointsConfig = ( tls: input.tls ?? true, endpoint: normalizeEndpoint(input), isCustomEndpoint: true, + useDualstackEndpoint: normalizeBoolean(input.useDualstackEndpoint!), + useFipsEndpoint: normalizeBoolean(input.useFipsEndpoint!), }); diff --git a/packages/config-resolver/src/endpointsConfig/resolveEndpointsConfig.ts b/packages/config-resolver/src/endpointsConfig/resolveEndpointsConfig.ts index 8f286bd22cd60..0167e1cddd8e8 100644 --- a/packages/config-resolver/src/endpointsConfig/resolveEndpointsConfig.ts +++ b/packages/config-resolver/src/endpointsConfig/resolveEndpointsConfig.ts @@ -1,6 +1,7 @@ import { Endpoint, Provider, RegionInfoProvider, UrlParser } from "@aws-sdk/types"; import { getEndpointFromRegion } from "./utils/getEndpointFromRegion"; +import { normalizeBoolean } from "./utils/normalizeBoolean"; import { normalizeEndpoint } from "./utils/normalizeEndpoint"; export interface EndpointsInputConfig { @@ -13,6 +14,16 @@ export interface EndpointsInputConfig { * Whether TLS is enabled for requests. */ tls?: boolean; + + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | Provider; } interface PreviouslyResolved { @@ -23,7 +34,7 @@ interface PreviouslyResolved { export interface EndpointsResolvedConfig extends Required { /** - * Resolved value for input {@link EndpointsResolvedConfig.endpoint} + * Resolved value for input {@link EndpointsInputConfig.endpoint} */ endpoint: Provider; @@ -32,6 +43,16 @@ export interface EndpointsResolvedConfig extends Required * @internal */ isCustomEndpoint: boolean; + + /** + * Resolved value for input {@link EndpointsInputConfig.useDualstackEndpoint} + */ + useDualstackEndpoint: Provider; + + /** + * Resolved value for input {@link EndpointsInputConfig.useFipsEndpoint} + */ + useFipsEndpoint: Provider; } export const resolveEndpointsConfig = ( @@ -43,4 +64,6 @@ export const resolveEndpointsConfig = ( ? normalizeEndpoint({ ...input, endpoint: input.endpoint }) : () => getEndpointFromRegion(input), isCustomEndpoint: input.endpoint ? true : false, + useDualstackEndpoint: normalizeBoolean(input.useDualstackEndpoint!), + useFipsEndpoint: normalizeBoolean(input.useFipsEndpoint!), }); diff --git a/packages/config-resolver/src/endpointsConfig/utils/normalizeBoolean.spec.ts b/packages/config-resolver/src/endpointsConfig/utils/normalizeBoolean.spec.ts new file mode 100644 index 0000000000000..6165f59166cae --- /dev/null +++ b/packages/config-resolver/src/endpointsConfig/utils/normalizeBoolean.spec.ts @@ -0,0 +1,13 @@ +import { normalizeBoolean } from "./normalizeBoolean"; + +describe(normalizeBoolean.name, () => { + it.each([true, false])("returns Provider if value is boolean: %s", async (value) => { + const output = normalizeBoolean(value); + expect(await output()).toEqual(value); + }); + + it.each([true, false])("returns Provider if it's a Provider which returns %s", (value) => { + const mockBooleanProvider = () => Promise.resolve(value); + expect(normalizeBoolean(mockBooleanProvider)).toBe(mockBooleanProvider); + }); +}); diff --git a/packages/config-resolver/src/endpointsConfig/utils/normalizeBoolean.ts b/packages/config-resolver/src/endpointsConfig/utils/normalizeBoolean.ts new file mode 100644 index 0000000000000..4c0a93cb622df --- /dev/null +++ b/packages/config-resolver/src/endpointsConfig/utils/normalizeBoolean.ts @@ -0,0 +1,10 @@ +import { Provider } from "@aws-sdk/types"; + +// TODO: Move to a utility file which can be used across packages +export const normalizeBoolean = (value: boolean | Provider): Provider => { + if (typeof value === "boolean") { + const promisified = Promise.resolve(value); + return () => promisified; + } + return value as Provider; +}; diff --git a/packages/middleware-bucket-endpoint/src/bucketEndpointMiddleware.spec.ts b/packages/middleware-bucket-endpoint/src/bucketEndpointMiddleware.spec.ts index b7ff228087704..77c0f33764998 100644 --- a/packages/middleware-bucket-endpoint/src/bucketEndpointMiddleware.spec.ts +++ b/packages/middleware-bucket-endpoint/src/bucketEndpointMiddleware.spec.ts @@ -34,6 +34,7 @@ describe("bucketEndpointMiddleware", () => { .fn() .mockResolvedValue({ hostname: "foo.us-foo-2.amazonaws.com", partition: "aws-foo", signingRegion: mockRegion }), useArnRegion: jest.fn().mockResolvedValue(false), + useDualstackEndpoint: () => Promise.resolve(false), }; afterEach(() => { @@ -79,7 +80,7 @@ describe("bucketEndpointMiddleware", () => { resolveBucketEndpointConfig({ ...previouslyResolvedConfig, useAccelerateEndpoint: true, - useDualstackEndpoint: true, + useDualstackEndpoint: () => Promise.resolve(true), forcePathStyle: true, isCustomEndpoint: true, }) diff --git a/packages/middleware-bucket-endpoint/src/bucketEndpointMiddleware.ts b/packages/middleware-bucket-endpoint/src/bucketEndpointMiddleware.ts index 30e39cf465be2..3a01e05e4ed61 100644 --- a/packages/middleware-bucket-endpoint/src/bucketEndpointMiddleware.ts +++ b/packages/middleware-bucket-endpoint/src/bucketEndpointMiddleware.ts @@ -15,76 +15,84 @@ import { bucketHostname } from "./bucketHostname"; import { getPseudoRegion } from "./bucketHostnameUtils"; import { BucketEndpointResolvedConfig } from "./configurations"; -export const bucketEndpointMiddleware = (options: BucketEndpointResolvedConfig): BuildMiddleware => < - Output extends MetadataBearer ->( - next: BuildHandler, - context: HandlerExecutionContext -): BuildHandler => async (args: BuildHandlerArguments): Promise> => { - const { Bucket: bucketName } = args.input as { Bucket: string }; - let replaceBucketInPath = options.bucketEndpoint; - const request = args.request; - if (HttpRequest.isInstance(request)) { - if (options.bucketEndpoint) { - request.hostname = bucketName; - } else if (validateArn(bucketName)) { - const bucketArn = parseArn(bucketName); - const clientRegion = getPseudoRegion(await options.region()); - const { partition, signingRegion = clientRegion } = (await options.regionInfoProvider(clientRegion)) || {}; - const useArnRegion = await options.useArnRegion(); - const { hostname, bucketEndpoint, signingRegion: modifiedSigningRegion, signingService } = bucketHostname({ - bucketName: bucketArn, - baseHostname: request.hostname, - accelerateEndpoint: options.useAccelerateEndpoint, - dualstackEndpoint: options.useDualstackEndpoint, - pathStyleEndpoint: options.forcePathStyle, - tlsCompatible: request.protocol === "https:", - useArnRegion, - clientPartition: partition, - clientSigningRegion: signingRegion, - clientRegion: clientRegion, - isCustomEndpoint: options.isCustomEndpoint, - disableMultiregionAccessPoints: await options.disableMultiregionAccessPoints(), - }); +export const bucketEndpointMiddleware = + (options: BucketEndpointResolvedConfig): BuildMiddleware => + ( + next: BuildHandler, + context: HandlerExecutionContext + ): BuildHandler => + async (args: BuildHandlerArguments): Promise> => { + const { Bucket: bucketName } = args.input as { Bucket: string }; + let replaceBucketInPath = options.bucketEndpoint; + const request = args.request; + if (HttpRequest.isInstance(request)) { + if (options.bucketEndpoint) { + request.hostname = bucketName; + } else if (validateArn(bucketName)) { + const bucketArn = parseArn(bucketName); + const clientRegion = getPseudoRegion(await options.region()); + const { partition, signingRegion = clientRegion } = (await options.regionInfoProvider(clientRegion)) || {}; + const useArnRegion = await options.useArnRegion(); + const dualstackEndpoint = await options.useDualstackEndpoint(); + const { + hostname, + bucketEndpoint, + signingRegion: modifiedSigningRegion, + signingService, + } = bucketHostname({ + bucketName: bucketArn, + baseHostname: request.hostname, + accelerateEndpoint: options.useAccelerateEndpoint, + dualstackEndpoint, + pathStyleEndpoint: options.forcePathStyle, + tlsCompatible: request.protocol === "https:", + useArnRegion, + clientPartition: partition, + clientSigningRegion: signingRegion, + clientRegion: clientRegion, + isCustomEndpoint: options.isCustomEndpoint, + disableMultiregionAccessPoints: await options.disableMultiregionAccessPoints(), + }); - // If the request needs to use a region or service name inferred from ARN that different from client region, we - // need to set them in the handler context so the signer will use them - if (modifiedSigningRegion && modifiedSigningRegion !== signingRegion) { - context["signing_region"] = modifiedSigningRegion; - } - if (signingService && signingService !== "s3") { - context["signing_service"] = signingService; - } + // If the request needs to use a region or service name inferred from ARN that different from client region, we + // need to set them in the handler context so the signer will use them + if (modifiedSigningRegion && modifiedSigningRegion !== signingRegion) { + context["signing_region"] = modifiedSigningRegion; + } + if (signingService && signingService !== "s3") { + context["signing_service"] = signingService; + } - request.hostname = hostname; - replaceBucketInPath = bucketEndpoint; - } else { - const clientRegion = getPseudoRegion(await options.region()); - const { hostname, bucketEndpoint } = bucketHostname({ - bucketName, - clientRegion, - baseHostname: request.hostname, - accelerateEndpoint: options.useAccelerateEndpoint, - dualstackEndpoint: options.useDualstackEndpoint, - pathStyleEndpoint: options.forcePathStyle, - tlsCompatible: request.protocol === "https:", - isCustomEndpoint: options.isCustomEndpoint, - }); + request.hostname = hostname; + replaceBucketInPath = bucketEndpoint; + } else { + const clientRegion = getPseudoRegion(await options.region()); + const dualstackEndpoint = await options.useDualstackEndpoint(); + const { hostname, bucketEndpoint } = bucketHostname({ + bucketName, + clientRegion, + baseHostname: request.hostname, + accelerateEndpoint: options.useAccelerateEndpoint, + dualstackEndpoint, + pathStyleEndpoint: options.forcePathStyle, + tlsCompatible: request.protocol === "https:", + isCustomEndpoint: options.isCustomEndpoint, + }); - request.hostname = hostname; - replaceBucketInPath = bucketEndpoint; - } + request.hostname = hostname; + replaceBucketInPath = bucketEndpoint; + } - if (replaceBucketInPath) { - request.path = request.path.replace(/^(\/)?[^\/]+/, ""); - if (request.path === "") { - request.path = "/"; + if (replaceBucketInPath) { + request.path = request.path.replace(/^(\/)?[^\/]+/, ""); + if (request.path === "") { + request.path = "/"; + } } } - } - return next({ ...args, request }); -}; + return next({ ...args, request }); + }; export const bucketEndpointMiddlewareOptions: RelativeMiddlewareOptions = { tags: ["BUCKET_ENDPOINT"], diff --git a/packages/middleware-bucket-endpoint/src/configurations.ts b/packages/middleware-bucket-endpoint/src/configurations.ts index 059fce339deac..562ae72534dfd 100644 --- a/packages/middleware-bucket-endpoint/src/configurations.ts +++ b/packages/middleware-bucket-endpoint/src/configurations.ts @@ -14,13 +14,6 @@ export interface BucketEndpointInputConfig { * Whether to use the S3 Transfer Acceleration endpoint by default */ useAccelerateEndpoint?: boolean; - /** - * Enables IPv6/IPv4 dualstack endpoint. When a DNS lookup is performed on an endpoint of this type, it returns an “A” - * record with an IPv4 address and an “AAAA” record with an IPv6 address. In most cases the network stack in the - * client environment will automatically prefer the AAAA record and make a connection using the IPv6 address. Note, - * however, that currently on Windows, the IPv4 address will be preferred. - */ - useDualstackEndpoint?: boolean; /** * Whether to override the request region with the region inferred from requested resource's ARN. Defaults to false */ @@ -36,6 +29,7 @@ interface PreviouslyResolved { isCustomEndpoint: boolean; region: Provider; regionInfoProvider: RegionInfoProvider; + useDualstackEndpoint: Provider; } export interface BucketEndpointResolvedConfig { @@ -57,9 +51,9 @@ export interface BucketEndpointResolvedConfig { */ useAccelerateEndpoint: boolean; /** - * Resolved value for input config {@link BucketEndpointInputConfig.useDualstackEndpoint} + * Enables IPv6/IPv4 dualstack endpoint. */ - useDualstackEndpoint: boolean; + useDualstackEndpoint: Provider; /** * Resolved value for input config {@link BucketEndpointInputConfig.useArnRegion} */ @@ -83,7 +77,6 @@ export function resolveBucketEndpointConfig( bucketEndpoint = false, forcePathStyle = false, useAccelerateEndpoint = false, - useDualstackEndpoint = false, useArnRegion = false, disableMultiregionAccessPoints = false, } = input; @@ -92,7 +85,6 @@ export function resolveBucketEndpointConfig( bucketEndpoint, forcePathStyle, useAccelerateEndpoint, - useDualstackEndpoint, useArnRegion: typeof useArnRegion === "function" ? useArnRegion : () => Promise.resolve(useArnRegion), disableMultiregionAccessPoints: typeof disableMultiregionAccessPoints === "function" diff --git a/packages/middleware-sdk-s3-control/src/configurations.ts b/packages/middleware-sdk-s3-control/src/configurations.ts index 52c49567d5373..96bdf7a0f8731 100644 --- a/packages/middleware-sdk-s3-control/src/configurations.ts +++ b/packages/middleware-sdk-s3-control/src/configurations.ts @@ -2,10 +2,6 @@ import { Provider, RegionInfoProvider } from "@aws-sdk/types"; export { NODE_USE_ARN_REGION_CONFIG_OPTIONS } from "@aws-sdk/middleware-bucket-endpoint"; export interface S3ControlInputConfig { - /** - * Enables IPv6/IPv4 dualstack endpoint. When a DNS lookup is performed on an endpoint of this type, it returns an “A” record with an IPv4 address and an “AAAA” record with an IPv6 address. In most cases the network stack in the client environment will automatically prefer the AAAA record and make a connection using the IPv6 address. Note, however, that currently on Windows, the IPv4 address will be preferred. - */ - useDualstackEndpoint?: boolean; /** * Whether to override the request region with the region inferred from requested resource's ARN. Defaults to false */ @@ -16,6 +12,7 @@ interface PreviouslyResolved { isCustomEndpoint: boolean; region: Provider; regionInfoProvider: RegionInfoProvider; + useDualstackEndpoint: Provider; } export interface S3ControlResolvedConfig { @@ -25,9 +22,9 @@ export interface S3ControlResolvedConfig { */ isCustomEndpoint: boolean; /** - * Resolved value for input config {@link S3ControlInputConfig.useDualstackEndpoint} + * Enables IPv6/IPv4 dualstack endpoint. */ - useDualstackEndpoint: boolean; + useDualstackEndpoint: Provider; /** * Resolved value for input config {@link S3ControlInputConfig.useArnRegion} */ @@ -46,10 +43,9 @@ export interface S3ControlResolvedConfig { export function resolveS3ControlConfig( input: T & PreviouslyResolved & S3ControlInputConfig ): T & S3ControlResolvedConfig { - const { useDualstackEndpoint = false, useArnRegion = false } = input; + const { useArnRegion = false } = input; return { ...input, - useDualstackEndpoint, useArnRegion: typeof useArnRegion === "function" ? useArnRegion : () => Promise.resolve(useArnRegion), }; } diff --git a/packages/middleware-sdk-s3-control/src/process-arnables-plugin/parse-outpost-arnables.ts b/packages/middleware-sdk-s3-control/src/process-arnables-plugin/parse-outpost-arnables.ts index bbf6ad0c5c6ce..21b3bc2194d61 100644 --- a/packages/middleware-sdk-s3-control/src/process-arnables-plugin/parse-outpost-arnables.ts +++ b/packages/middleware-sdk-s3-control/src/process-arnables-plugin/parse-outpost-arnables.ts @@ -38,10 +38,11 @@ export const parseOutpostArnablesMiddleaware = const clientRegion = await options.region(); const { regionInfoProvider } = options; const useArnRegion = await options.useArnRegion(); + const useDualstackEndpoint = await options.useDualstackEndpoint(); const baseRegion = getPseudoRegion(clientRegion); const { partition: clientPartition, signingRegion = baseRegion } = (await regionInfoProvider(baseRegion))!; const validatorOptions: ValidateOutpostsArnOptions = { - useDualstackEndpoint: options.useDualstackEndpoint, + useDualstackEndpoint, clientRegion, clientPartition, signingRegion, diff --git a/packages/middleware-sdk-s3-control/src/process-arnables-plugin/plugin.spec.ts b/packages/middleware-sdk-s3-control/src/process-arnables-plugin/plugin.spec.ts index d1d7c50ddc758..bb69e89238ff8 100644 --- a/packages/middleware-sdk-s3-control/src/process-arnables-plugin/plugin.spec.ts +++ b/packages/middleware-sdk-s3-control/src/process-arnables-plugin/plugin.spec.ts @@ -10,12 +10,12 @@ describe("getProcessArnablesMiddleware", () => { region: string; regionInfoProvider?: Provider; useAccelerateEndpoint?: boolean; - useDualstackEndpoint?: boolean; + useDualstackEndpoint?: Provider; useArnRegion?: boolean; }; const setupPluginOptions = (options: FakeOptions): S3ControlResolvedConfig => { return { - useDualstackEndpoint: false, + useDualstackEndpoint: () => Promise.resolve(false), ...options, regionInfoProvider: options.regionInfoProvider ?? jest.fn().mockResolvedValue({ partition: "aws" }), region: jest.fn().mockResolvedValue(options.region), @@ -239,7 +239,7 @@ describe("getProcessArnablesMiddleware", () => { const clientRegion = "us-west-2"; const options = setupPluginOptions({ region: clientRegion, - useDualstackEndpoint: true, + useDualstackEndpoint: () => Promise.resolve(true), }); const stack = getStack(`s3-control.${clientRegion}.amazonaws.com`, options); const handler = stack.resolve((() => {}) as any, {}); @@ -483,7 +483,7 @@ describe("getProcessArnablesMiddleware", () => { const clientRegion = "us-west-2"; const options = setupPluginOptions({ region: clientRegion, - useDualstackEndpoint: true, + useDualstackEndpoint: () => Promise.resolve(true), }); const stack = getStack(`s3-control.${clientRegion}.amazonaws.com`, options); const handler = stack.resolve((() => {}) as any, {}); diff --git a/packages/types/src/util.ts b/packages/types/src/util.ts index 3f1889cf4cf8c..9b87d502d3e57 100644 --- a/packages/types/src/util.ts +++ b/packages/types/src/util.ts @@ -92,6 +92,22 @@ export interface RegionInfo { signingRegion?: string; } +/** + * Options to pass when calling {@link RegionInfoProvider} + */ +export interface RegionInfoProviderOptions { + /** + * Enables IPv6/IPv4 dualstack endpoint. + * @default false + */ + useDualstackEndpoint: boolean; + /** + * Enables FIPS compatible endpoints. + * @default false + */ + useFipsEndpoint: boolean; +} + /** * Function returns designated service's regionalization * information from given region. Each service client @@ -99,7 +115,7 @@ export interface RegionInfo { * to provide the default values of related configurations */ export interface RegionInfoProvider { - (region: string, options?: any): Promise; + (region: string, options?: RegionInfoProviderOptions): Promise; } /** diff --git a/private/aws-echo-service/src/EchoServiceClient.ts b/private/aws-echo-service/src/EchoServiceClient.ts index 19a591c790ee9..d3cd2f6792a1c 100644 --- a/private/aws-echo-service/src/EchoServiceClient.ts +++ b/private/aws-echo-service/src/EchoServiceClient.ts @@ -127,6 +127,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * The provider populating default tracking information to be sent with `user-agent`, `x-amz-user-agent` header * @internal diff --git a/private/aws-echo-service/src/runtimeConfig.browser.ts b/private/aws-echo-service/src/runtimeConfig.browser.ts index 3ae8628dd97be..819319bf299a8 100644 --- a/private/aws-echo-service/src/runtimeConfig.browser.ts +++ b/private/aws-echo-service/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; import { fromBase64, toBase64 } from "@aws-sdk/util-base64-browser"; @@ -30,6 +31,8 @@ export const getRuntimeConfig = (config: EchoServiceClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/private/aws-echo-service/src/runtimeConfig.ts b/private/aws-echo-service/src/runtimeConfig.ts index 6de63577e8b36..26f5db2eccf12 100644 --- a/private/aws-echo-service/src/runtimeConfig.ts +++ b/private/aws-echo-service/src/runtimeConfig.ts @@ -1,6 +1,10 @@ // @ts-ignore: package.json will be imported from dist folders import packageInfo from "../package.json"; // eslint-disable-line +import { + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; import { loadConfig as loadNodeConfig } from "@aws-sdk/node-config-provider"; @@ -33,6 +37,8 @@ export const getRuntimeConfig = (config: EchoServiceClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/private/aws-protocoltests-ec2/src/EC2ProtocolClient.ts b/private/aws-protocoltests-ec2/src/EC2ProtocolClient.ts index 85e7dacae8b04..4c879ce2a39be 100644 --- a/private/aws-protocoltests-ec2/src/EC2ProtocolClient.ts +++ b/private/aws-protocoltests-ec2/src/EC2ProtocolClient.ts @@ -211,6 +211,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/private/aws-protocoltests-ec2/src/endpoints.ts b/private/aws-protocoltests-ec2/src/endpoints.ts index 1dff9bfbb8cbb..0e85dfecc22cf 100644 --- a/private/aws-protocoltests-ec2/src/endpoints.ts +++ b/private/aws-protocoltests-ec2/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "awsec2", diff --git a/private/aws-protocoltests-ec2/src/runtimeConfig.browser.ts b/private/aws-protocoltests-ec2/src/runtimeConfig.browser.ts index aa5e0b059e471..455ab30a77135 100644 --- a/private/aws-protocoltests-ec2/src/runtimeConfig.browser.ts +++ b/private/aws-protocoltests-ec2/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; import { fromBase64, toBase64 } from "@aws-sdk/util-base64-browser"; @@ -31,6 +32,8 @@ export const getRuntimeConfig = (config: EC2ProtocolClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/private/aws-protocoltests-ec2/src/runtimeConfig.ts b/private/aws-protocoltests-ec2/src/runtimeConfig.ts index ca6e2ed871b43..a40ed3f270044 100644 --- a/private/aws-protocoltests-ec2/src/runtimeConfig.ts +++ b/private/aws-protocoltests-ec2/src/runtimeConfig.ts @@ -1,6 +1,10 @@ // @ts-ignore: package.json will be imported from dist folders import packageInfo from "../package.json"; // eslint-disable-line +import { + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; import { loadConfig as loadNodeConfig } from "@aws-sdk/node-config-provider"; @@ -34,6 +38,8 @@ export const getRuntimeConfig = (config: EC2ProtocolClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/private/aws-protocoltests-json-10/src/JSONRPC10Client.ts b/private/aws-protocoltests-json-10/src/JSONRPC10Client.ts index 439cac7439573..1eb2809c4ec90 100644 --- a/private/aws-protocoltests-json-10/src/JSONRPC10Client.ts +++ b/private/aws-protocoltests-json-10/src/JSONRPC10Client.ts @@ -169,6 +169,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/private/aws-protocoltests-json-10/src/endpoints.ts b/private/aws-protocoltests-json-10/src/endpoints.ts index 113b0b9ec77fc..bd6726b853d27 100644 --- a/private/aws-protocoltests-json-10/src/endpoints.ts +++ b/private/aws-protocoltests-json-10/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "jsonrpc10", diff --git a/private/aws-protocoltests-json-10/src/runtimeConfig.browser.ts b/private/aws-protocoltests-json-10/src/runtimeConfig.browser.ts index df129702b0885..c8355cc8af7f8 100644 --- a/private/aws-protocoltests-json-10/src/runtimeConfig.browser.ts +++ b/private/aws-protocoltests-json-10/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; import { fromBase64, toBase64 } from "@aws-sdk/util-base64-browser"; @@ -31,6 +32,8 @@ export const getRuntimeConfig = (config: JSONRPC10ClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/private/aws-protocoltests-json-10/src/runtimeConfig.ts b/private/aws-protocoltests-json-10/src/runtimeConfig.ts index 15c4361033846..32cb3fe36919b 100644 --- a/private/aws-protocoltests-json-10/src/runtimeConfig.ts +++ b/private/aws-protocoltests-json-10/src/runtimeConfig.ts @@ -1,6 +1,10 @@ // @ts-ignore: package.json will be imported from dist folders import packageInfo from "../package.json"; // eslint-disable-line +import { + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; import { loadConfig as loadNodeConfig } from "@aws-sdk/node-config-provider"; @@ -34,6 +38,8 @@ export const getRuntimeConfig = (config: JSONRPC10ClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/private/aws-protocoltests-json/src/JsonProtocolClient.ts b/private/aws-protocoltests-json/src/JsonProtocolClient.ts index 373b4829272a7..f5761d4a492bf 100644 --- a/private/aws-protocoltests-json/src/JsonProtocolClient.ts +++ b/private/aws-protocoltests-json/src/JsonProtocolClient.ts @@ -191,6 +191,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/private/aws-protocoltests-json/src/endpoints.ts b/private/aws-protocoltests-json/src/endpoints.ts index 5b52f205dd6ad..28532a196b263 100644 --- a/private/aws-protocoltests-json/src/endpoints.ts +++ b/private/aws-protocoltests-json/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "foo", diff --git a/private/aws-protocoltests-json/src/runtimeConfig.browser.ts b/private/aws-protocoltests-json/src/runtimeConfig.browser.ts index dfe2f7ddc1abc..1c484a40bc69f 100644 --- a/private/aws-protocoltests-json/src/runtimeConfig.browser.ts +++ b/private/aws-protocoltests-json/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { invalidProvider } from "@aws-sdk/invalid-dependency"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: JsonProtocolClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/private/aws-protocoltests-json/src/runtimeConfig.ts b/private/aws-protocoltests-json/src/runtimeConfig.ts index 579a5ba379b9e..ec2c30c399348 100644 --- a/private/aws-protocoltests-json/src/runtimeConfig.ts +++ b/private/aws-protocoltests-json/src/runtimeConfig.ts @@ -2,7 +2,12 @@ import packageInfo from "../package.json"; // eslint-disable-line import { decorateDefaultCredentialProvider } from "@aws-sdk/client-sts"; -import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver"; +import { + NODE_REGION_CONFIG_FILE_OPTIONS, + NODE_REGION_CONFIG_OPTIONS, + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -40,6 +45,8 @@ export const getRuntimeConfig = (config: JsonProtocolClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/private/aws-protocoltests-query/src/QueryProtocolClient.ts b/private/aws-protocoltests-query/src/QueryProtocolClient.ts index 11b2e19a4359e..c67ff8a812d5e 100644 --- a/private/aws-protocoltests-query/src/QueryProtocolClient.ts +++ b/private/aws-protocoltests-query/src/QueryProtocolClient.ts @@ -241,6 +241,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/private/aws-protocoltests-query/src/endpoints.ts b/private/aws-protocoltests-query/src/endpoints.ts index fff1593194be8..1320d847af71c 100644 --- a/private/aws-protocoltests-query/src/endpoints.ts +++ b/private/aws-protocoltests-query/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "awsquery", diff --git a/private/aws-protocoltests-query/src/runtimeConfig.browser.ts b/private/aws-protocoltests-query/src/runtimeConfig.browser.ts index 2caa43a22cee1..3ab2533e386c2 100644 --- a/private/aws-protocoltests-query/src/runtimeConfig.browser.ts +++ b/private/aws-protocoltests-query/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; import { fromBase64, toBase64 } from "@aws-sdk/util-base64-browser"; @@ -31,6 +32,8 @@ export const getRuntimeConfig = (config: QueryProtocolClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/private/aws-protocoltests-query/src/runtimeConfig.ts b/private/aws-protocoltests-query/src/runtimeConfig.ts index 95c1994a9e2b6..fadeba69209d8 100644 --- a/private/aws-protocoltests-query/src/runtimeConfig.ts +++ b/private/aws-protocoltests-query/src/runtimeConfig.ts @@ -1,6 +1,10 @@ // @ts-ignore: package.json will be imported from dist folders import packageInfo from "../package.json"; // eslint-disable-line +import { + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; import { loadConfig as loadNodeConfig } from "@aws-sdk/node-config-provider"; @@ -34,6 +38,8 @@ export const getRuntimeConfig = (config: QueryProtocolClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/private/aws-protocoltests-restjson/src/RestJsonProtocolClient.ts b/private/aws-protocoltests-restjson/src/RestJsonProtocolClient.ts index c59738cacb33c..7526f599fad42 100644 --- a/private/aws-protocoltests-restjson/src/RestJsonProtocolClient.ts +++ b/private/aws-protocoltests-restjson/src/RestJsonProtocolClient.ts @@ -507,6 +507,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/private/aws-protocoltests-restjson/src/endpoints.ts b/private/aws-protocoltests-restjson/src/endpoints.ts index cb7b16a70f63e..e6a29f8908018 100644 --- a/private/aws-protocoltests-restjson/src/endpoints.ts +++ b/private/aws-protocoltests-restjson/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "restjson", diff --git a/private/aws-protocoltests-restjson/src/runtimeConfig.browser.ts b/private/aws-protocoltests-restjson/src/runtimeConfig.browser.ts index eb22e57df9087..7a4aee61954a9 100644 --- a/private/aws-protocoltests-restjson/src/runtimeConfig.browser.ts +++ b/private/aws-protocoltests-restjson/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { blobHasher as streamHasher } from "@aws-sdk/hash-blob-browser"; import { Md5 } from "@aws-sdk/md5-js"; @@ -35,6 +36,8 @@ export const getRuntimeConfig = (config: RestJsonProtocolClientConfig) => { sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, streamHasher: config?.streamHasher ?? streamHasher, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/private/aws-protocoltests-restjson/src/runtimeConfig.ts b/private/aws-protocoltests-restjson/src/runtimeConfig.ts index 5fce08d94ec86..db17f88ff1d4e 100644 --- a/private/aws-protocoltests-restjson/src/runtimeConfig.ts +++ b/private/aws-protocoltests-restjson/src/runtimeConfig.ts @@ -1,6 +1,10 @@ // @ts-ignore: package.json will be imported from dist folders import packageInfo from "../package.json"; // eslint-disable-line +import { + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { Hash } from "@aws-sdk/hash-node"; import { fileStreamHasher as streamHasher } from "@aws-sdk/hash-stream-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; @@ -38,6 +42,8 @@ export const getRuntimeConfig = (config: RestJsonProtocolClientConfig) => { sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, streamHasher: config?.streamHasher ?? streamHasher, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/private/aws-protocoltests-restxml/src/RestXmlProtocolClient.ts b/private/aws-protocoltests-restxml/src/RestXmlProtocolClient.ts index 55afbed456ac2..86373148e5f7f 100644 --- a/private/aws-protocoltests-restxml/src/RestXmlProtocolClient.ts +++ b/private/aws-protocoltests-restxml/src/RestXmlProtocolClient.ts @@ -373,6 +373,16 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__ */ logger?: __Logger; + /** + * Enables IPv6/IPv4 dualstack endpoint. + */ + useDualstackEndpoint?: boolean | __Provider; + + /** + * Enables FIPS compatible endpoints. + */ + useFipsEndpoint?: boolean | __Provider; + /** * Unique service identifier. * @internal diff --git a/private/aws-protocoltests-restxml/src/endpoints.ts b/private/aws-protocoltests-restxml/src/endpoints.ts index f06accf756ded..5625ad0d337b9 100644 --- a/private/aws-protocoltests-restxml/src/endpoints.ts +++ b/private/aws-protocoltests-restxml/src/endpoints.ts @@ -1,5 +1,5 @@ import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver"; -import { RegionInfoProvider } from "@aws-sdk/types"; +import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types"; const regionHash: RegionHash = {}; @@ -53,7 +53,10 @@ const partitionHash: PartitionHash = { }, }; -export const defaultRegionInfoProvider: RegionInfoProvider = async (region: string, options?: any) => +export const defaultRegionInfoProvider: RegionInfoProvider = async ( + region: string, + options?: RegionInfoProviderOptions +) => getRegionInfo(region, { ...options, signingService: "restxml", diff --git a/private/aws-protocoltests-restxml/src/runtimeConfig.browser.ts b/private/aws-protocoltests-restxml/src/runtimeConfig.browser.ts index c57b26caa429c..ca7fbb8a12afe 100644 --- a/private/aws-protocoltests-restxml/src/runtimeConfig.browser.ts +++ b/private/aws-protocoltests-restxml/src/runtimeConfig.browser.ts @@ -2,6 +2,7 @@ import packageInfo from "../package.json"; // eslint-disable-line import { Sha256 } from "@aws-crypto/sha256-browser"; +import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@aws-sdk/config-resolver"; import { FetchHttpHandler, streamCollector } from "@aws-sdk/fetch-http-handler"; import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@aws-sdk/middleware-retry"; import { fromBase64, toBase64 } from "@aws-sdk/util-base64-browser"; @@ -31,6 +32,8 @@ export const getRuntimeConfig = (config: RestXmlProtocolClientConfig) => { retryMode: config?.retryMode ?? (() => Promise.resolve(DEFAULT_RETRY_MODE)), sha256: config?.sha256 ?? Sha256, streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)), + useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; diff --git a/private/aws-protocoltests-restxml/src/runtimeConfig.ts b/private/aws-protocoltests-restxml/src/runtimeConfig.ts index 5b405c2b22a54..a5e0820420b71 100644 --- a/private/aws-protocoltests-restxml/src/runtimeConfig.ts +++ b/private/aws-protocoltests-restxml/src/runtimeConfig.ts @@ -1,6 +1,10 @@ // @ts-ignore: package.json will be imported from dist folders import packageInfo from "../package.json"; // eslint-disable-line +import { + NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, + NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, +} from "@aws-sdk/config-resolver"; import { Hash } from "@aws-sdk/hash-node"; import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry"; import { loadConfig as loadNodeConfig } from "@aws-sdk/node-config-provider"; @@ -34,6 +38,8 @@ export const getRuntimeConfig = (config: RestXmlProtocolClientConfig) => { retryMode: config?.retryMode ?? loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: config?.sha256 ?? Hash.bind(null, "sha256"), streamCollector: config?.streamCollector ?? streamCollector, + useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), + useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, };