@aws-sdk/client-app-mesh 3.87.0 → 3.95.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,33 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [3.95.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.94.0...v3.95.0) (2022-05-19)
7
+
8
+ **Note:** Version bump only for package @aws-sdk/client-app-mesh
9
+
10
+
11
+
12
+
13
+
14
+ # [3.94.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.93.0...v3.94.0) (2022-05-18)
15
+
16
+
17
+ ### Features
18
+
19
+ * **client-app-mesh:** This release updates the existing Create and Update APIs for meshes and virtual nodes by adding a new IP preference field. This new IP preference field can be used to control the IP versions being used with the mesh and allows for IPv6 support within App Mesh. ([0f427f3](https://github.com/aws/aws-sdk-js-v3/commit/0f427f3a187d49c10e82272a8905056a3857f646))
20
+
21
+
22
+
23
+
24
+
25
+ # [3.92.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.91.0...v3.92.0) (2022-05-16)
26
+
27
+ **Note:** Version bump only for package @aws-sdk/client-app-mesh
28
+
29
+
30
+
31
+
32
+
6
33
  # [3.87.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.86.0...v3.87.0) (2022-05-09)
7
34
 
8
35
  **Note:** Version bump only for package @aws-sdk/client-app-mesh
package/README.md CHANGED
@@ -9,15 +9,17 @@
9
9
 
10
10
  AWS SDK for JavaScript AppMesh Client for Node.js, Browser and React Native.
11
11
 
12
- <p>App Mesh is a service mesh based on the Envoy proxy that makes it easy to monitor and
13
- control microservices. App Mesh standardizes how your microservices communicate, giving you
14
- end-to-end visibility and helping to ensure high availability for your applications.</p>
15
- <p>App Mesh gives you consistent visibility and network traffic controls for every
16
- microservice in an application. You can use App Mesh with Amazon Web Services Fargate, Amazon ECS, Amazon EKS,
17
- Kubernetes on Amazon Web Services, and Amazon EC2.</p>
12
+ <p>App Mesh is a service mesh based on the Envoy proxy that makes it easy to
13
+ monitor and control microservices. App Mesh standardizes how your microservices
14
+ communicate, giving you end-to-end visibility and helping to ensure high availability for
15
+ your applications.</p>
16
+ <p>App Mesh gives you consistent visibility and network traffic controls for
17
+ every microservice in an application. You can use App Mesh with Amazon Web Services Fargate, Amazon ECS, Amazon EKS, Kubernetes on Amazon Web Services, and
18
+ Amazon EC2.</p>
18
19
  <note>
19
- <p>App Mesh supports microservice applications that use service discovery naming for their
20
- components. For more information about service discovery on Amazon ECS, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-discovery.html">Service Discovery</a> in the <i>Amazon Elastic Container Service Developer Guide</i>. Kubernetes
20
+ <p>App Mesh supports microservice applications that use service discovery
21
+ naming for their components. For more information about service discovery on Amazon ECS, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-discovery.html">Service
22
+ Discovery</a> in the <i>Amazon Elastic Container Service Developer Guide</i>. Kubernetes
21
23
  <code>kube-dns</code> and <code>coredns</code> are supported. For more information,
22
24
  see <a href="https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/">DNS
23
25
  for Services and Pods</a> in the Kubernetes documentation.</p>
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.VirtualGatewayPortProtocol = exports.VirtualGatewayConnectionPool = exports.VirtualGatewayHttp2ConnectionPool = exports.VirtualGatewayHttpConnectionPool = exports.VirtualGatewayGrpcConnectionPool = exports.VirtualGatewayBackendDefaults = exports.VirtualGatewayClientPolicy = exports.VirtualGatewayClientPolicyTls = exports.VirtualGatewayTlsValidationContext = exports.VirtualGatewayTlsValidationContextTrust = exports.VirtualGatewayTlsValidationContextSdsTrust = exports.VirtualGatewayTlsValidationContextFileTrust = exports.VirtualGatewayTlsValidationContextAcmTrust = exports.SubjectAlternativeNames = exports.SubjectAlternativeNameMatchers = exports.VirtualGatewayClientTlsCertificate = exports.VirtualGatewayListenerTlsSdsCertificate = exports.VirtualGatewayListenerTlsFileCertificate = exports.UpdateMeshOutput = exports.UpdateMeshInput = exports.ListMeshesOutput = exports.MeshRef = exports.ListMeshesInput = exports.DescribeMeshOutput = exports.DescribeMeshInput = exports.ResourceInUseException = exports.DeleteMeshOutput = exports.DeleteMeshInput = exports.LimitExceededException = exports.CreateMeshOutput = exports.MeshData = exports.MeshStatus = exports.MeshStatusCode = exports.ResourceMetadata = exports.CreateMeshInput = exports.MeshSpec = exports.EgressFilter = exports.EgressFilterType = exports.ConflictException = exports.TooManyRequestsException = exports.ServiceUnavailableException = exports.NotFoundException = exports.ListTagsForResourceOutput = exports.TagRef = exports.ListTagsForResourceInput = exports.InternalServerErrorException = exports.ForbiddenException = exports.BadRequestException = exports.AccessLog = exports.FileAccessLog = void 0;
4
- exports.GatewayRouteStatus = exports.GatewayRouteStatusCode = exports.CreateGatewayRouteInput = exports.GatewayRouteSpec = exports.HttpGatewayRoute = exports.HttpGatewayRouteMatch = exports.HttpQueryParameter = exports.QueryParameterMatch = exports.HttpPathMatch = exports.HttpMethod = exports.HttpGatewayRouteHeader = exports.HeaderMatchMethod = exports.HttpGatewayRouteAction = exports.HttpGatewayRouteRewrite = exports.HttpGatewayRoutePrefixRewrite = exports.HttpGatewayRoutePathRewrite = exports.GrpcGatewayRoute = exports.GrpcGatewayRouteMatch = exports.GrpcGatewayRouteMetadata = exports.GrpcMetadataMatchMethod = exports.MatchRange = exports.GatewayRouteHostnameMatch = exports.GrpcGatewayRouteAction = exports.GatewayRouteTarget = exports.GatewayRouteVirtualService = exports.GrpcGatewayRouteRewrite = exports.GatewayRouteHostnameRewrite = exports.DefaultGatewayRouteRewrite = exports.DescribeVirtualGatewayOutput = exports.DescribeVirtualGatewayInput = exports.DeleteVirtualGatewayOutput = exports.DeleteVirtualGatewayInput = exports.CreateVirtualGatewayOutput = exports.VirtualGatewayData = exports.VirtualGatewayStatus = exports.VirtualGatewayStatusCode = exports.CreateVirtualGatewayInput = exports.VirtualGatewaySpec = exports.VirtualGatewayLogging = exports.VirtualGatewayAccessLog = exports.VirtualGatewayFileAccessLog = exports.VirtualGatewayListener = exports.VirtualGatewayListenerTls = exports.VirtualGatewayListenerTlsValidationContext = exports.VirtualGatewayListenerTlsValidationContextTrust = exports.VirtualGatewayListenerTlsMode = exports.VirtualGatewayListenerTlsCertificate = exports.VirtualGatewayListenerTlsAcmCertificate = exports.VirtualGatewayPortMapping = exports.VirtualGatewayHealthCheckPolicy = void 0;
5
- exports.ListenerTls = exports.ListenerTlsValidationContext = exports.ListenerTlsValidationContextTrust = exports.ListenerTlsMode = exports.ListenerTlsCertificate = exports.ListenerTlsAcmCertificate = exports.ListenerTimeout = exports.TcpTimeout = exports.HttpTimeout = exports.GrpcTimeout = exports.PortMapping = exports.OutlierDetection = exports.Duration = exports.DurationUnit = exports.HealthCheckPolicy = exports.PortProtocol = exports.VirtualNodeConnectionPool = exports.VirtualNodeTcpConnectionPool = exports.VirtualNodeHttp2ConnectionPool = exports.VirtualNodeHttpConnectionPool = exports.VirtualNodeGrpcConnectionPool = exports.Backend = exports.VirtualServiceBackend = exports.BackendDefaults = exports.ClientPolicy = exports.ClientPolicyTls = exports.TlsValidationContext = exports.TlsValidationContextTrust = exports.TlsValidationContextSdsTrust = exports.TlsValidationContextFileTrust = exports.TlsValidationContextAcmTrust = exports.ClientTlsCertificate = exports.ListenerTlsSdsCertificate = exports.ListenerTlsFileCertificate = exports.UpdateVirtualGatewayOutput = exports.UpdateVirtualGatewayInput = exports.ListVirtualGatewaysOutput = exports.VirtualGatewayRef = exports.ListVirtualGatewaysInput = exports.UpdateGatewayRouteOutput = exports.UpdateGatewayRouteInput = exports.ListGatewayRoutesOutput = exports.GatewayRouteRef = exports.ListGatewayRoutesInput = exports.DescribeGatewayRouteOutput = exports.DescribeGatewayRouteInput = exports.DeleteGatewayRouteOutput = exports.DeleteGatewayRouteInput = exports.CreateGatewayRouteOutput = exports.GatewayRouteData = void 0;
6
- exports.HttpRetryPolicy = exports.HttpRouteMatch = exports.HttpScheme = exports.HttpRouteHeader = exports.HttpRouteAction = exports.GrpcRoute = exports.GrpcRetryPolicy = exports.TcpRetryPolicyEvent = exports.GrpcRetryPolicyEvent = exports.GrpcRouteMatch = exports.GrpcRouteMetadata = exports.GrpcRouteMetadataMatchMethod = exports.GrpcRouteAction = exports.WeightedTarget = exports.ListVirtualRoutersOutput = exports.VirtualRouterRef = exports.ListVirtualRoutersInput = exports.DescribeVirtualRouterOutput = exports.DescribeVirtualRouterInput = exports.DeleteVirtualRouterOutput = exports.DeleteVirtualRouterInput = exports.CreateVirtualRouterOutput = exports.VirtualRouterData = exports.VirtualRouterStatus = exports.VirtualRouterStatusCode = exports.CreateVirtualRouterInput = exports.VirtualRouterSpec = exports.VirtualRouterListener = exports.UpdateVirtualNodeOutput = exports.UpdateVirtualNodeInput = exports.ListVirtualNodesOutput = exports.VirtualNodeRef = exports.ListVirtualNodesInput = exports.DescribeVirtualNodeOutput = exports.DescribeVirtualNodeInput = exports.DeleteVirtualNodeOutput = exports.DeleteVirtualNodeInput = exports.CreateVirtualNodeOutput = exports.VirtualNodeData = exports.VirtualNodeStatus = exports.VirtualNodeStatusCode = exports.CreateVirtualNodeInput = exports.VirtualNodeSpec = exports.ServiceDiscovery = exports.DnsServiceDiscovery = exports.DnsResponseType = exports.AwsCloudMapServiceDiscovery = exports.AwsCloudMapInstanceAttribute = exports.Logging = exports.Listener = void 0;
7
- exports.UntagResourceOutput = exports.UntagResourceInput = exports.TooManyTagsException = exports.TagResourceOutput = exports.TagResourceInput = exports.UpdateVirtualServiceOutput = exports.UpdateVirtualServiceInput = exports.ListVirtualServicesOutput = exports.VirtualServiceRef = exports.ListVirtualServicesInput = exports.DescribeVirtualServiceOutput = exports.DescribeVirtualServiceInput = exports.DeleteVirtualServiceOutput = exports.DeleteVirtualServiceInput = exports.CreateVirtualServiceOutput = exports.VirtualServiceData = exports.VirtualServiceStatus = exports.VirtualServiceStatusCode = exports.CreateVirtualServiceInput = exports.VirtualServiceSpec = exports.VirtualServiceProvider = exports.VirtualRouterServiceProvider = exports.VirtualNodeServiceProvider = exports.UpdateVirtualRouterOutput = exports.UpdateVirtualRouterInput = exports.UpdateRouteOutput = exports.UpdateRouteInput = exports.ListRoutesOutput = exports.RouteRef = exports.ListRoutesInput = exports.DescribeRouteOutput = exports.DescribeRouteInput = exports.DeleteRouteOutput = exports.DeleteRouteInput = exports.CreateRouteOutput = exports.RouteData = exports.RouteStatus = exports.RouteStatusCode = exports.CreateRouteInput = exports.RouteSpec = exports.TcpRoute = exports.TcpRouteAction = exports.HttpRoute = void 0;
3
+ exports.VirtualGatewayHttp2ConnectionPool = exports.VirtualGatewayHttpConnectionPool = exports.VirtualGatewayGrpcConnectionPool = exports.VirtualGatewayBackendDefaults = exports.VirtualGatewayClientPolicy = exports.VirtualGatewayClientPolicyTls = exports.VirtualGatewayTlsValidationContext = exports.VirtualGatewayTlsValidationContextTrust = exports.VirtualGatewayTlsValidationContextSdsTrust = exports.VirtualGatewayTlsValidationContextFileTrust = exports.VirtualGatewayTlsValidationContextAcmTrust = exports.SubjectAlternativeNames = exports.SubjectAlternativeNameMatchers = exports.VirtualGatewayClientTlsCertificate = exports.VirtualGatewayListenerTlsSdsCertificate = exports.VirtualGatewayListenerTlsFileCertificate = exports.UpdateMeshOutput = exports.UpdateMeshInput = exports.ListMeshesOutput = exports.MeshRef = exports.ListMeshesInput = exports.DescribeMeshOutput = exports.DescribeMeshInput = exports.ResourceInUseException = exports.DeleteMeshOutput = exports.DeleteMeshInput = exports.LimitExceededException = exports.CreateMeshOutput = exports.MeshData = exports.MeshStatus = exports.MeshStatusCode = exports.ResourceMetadata = exports.CreateMeshInput = exports.MeshSpec = exports.MeshServiceDiscovery = exports.IpPreference = exports.EgressFilter = exports.EgressFilterType = exports.ConflictException = exports.TooManyRequestsException = exports.ServiceUnavailableException = exports.NotFoundException = exports.ListTagsForResourceOutput = exports.TagRef = exports.ListTagsForResourceInput = exports.InternalServerErrorException = exports.ForbiddenException = exports.BadRequestException = exports.AccessLog = exports.FileAccessLog = void 0;
4
+ exports.CreateGatewayRouteInput = exports.GatewayRouteSpec = exports.HttpGatewayRoute = exports.HttpGatewayRouteMatch = exports.HttpQueryParameter = exports.QueryParameterMatch = exports.HttpPathMatch = exports.HttpMethod = exports.HttpGatewayRouteHeader = exports.HeaderMatchMethod = exports.HttpGatewayRouteAction = exports.HttpGatewayRouteRewrite = exports.HttpGatewayRoutePrefixRewrite = exports.HttpGatewayRoutePathRewrite = exports.GrpcGatewayRoute = exports.GrpcGatewayRouteMatch = exports.GrpcGatewayRouteMetadata = exports.GrpcMetadataMatchMethod = exports.MatchRange = exports.GatewayRouteHostnameMatch = exports.GrpcGatewayRouteAction = exports.GatewayRouteTarget = exports.GatewayRouteVirtualService = exports.GrpcGatewayRouteRewrite = exports.GatewayRouteHostnameRewrite = exports.DefaultGatewayRouteRewrite = exports.DescribeVirtualGatewayOutput = exports.DescribeVirtualGatewayInput = exports.DeleteVirtualGatewayOutput = exports.DeleteVirtualGatewayInput = exports.CreateVirtualGatewayOutput = exports.VirtualGatewayData = exports.VirtualGatewayStatus = exports.VirtualGatewayStatusCode = exports.CreateVirtualGatewayInput = exports.VirtualGatewaySpec = exports.VirtualGatewayLogging = exports.VirtualGatewayAccessLog = exports.VirtualGatewayFileAccessLog = exports.VirtualGatewayListener = exports.VirtualGatewayListenerTls = exports.VirtualGatewayListenerTlsValidationContext = exports.VirtualGatewayListenerTlsValidationContextTrust = exports.VirtualGatewayListenerTlsMode = exports.VirtualGatewayListenerTlsCertificate = exports.VirtualGatewayListenerTlsAcmCertificate = exports.VirtualGatewayPortMapping = exports.VirtualGatewayHealthCheckPolicy = exports.VirtualGatewayPortProtocol = exports.VirtualGatewayConnectionPool = void 0;
5
+ exports.ListenerTlsValidationContextTrust = exports.ListenerTlsMode = exports.ListenerTlsCertificate = exports.ListenerTlsAcmCertificate = exports.ListenerTimeout = exports.TcpTimeout = exports.HttpTimeout = exports.GrpcTimeout = exports.PortMapping = exports.OutlierDetection = exports.Duration = exports.DurationUnit = exports.HealthCheckPolicy = exports.PortProtocol = exports.VirtualNodeConnectionPool = exports.VirtualNodeTcpConnectionPool = exports.VirtualNodeHttp2ConnectionPool = exports.VirtualNodeHttpConnectionPool = exports.VirtualNodeGrpcConnectionPool = exports.Backend = exports.VirtualServiceBackend = exports.BackendDefaults = exports.ClientPolicy = exports.ClientPolicyTls = exports.TlsValidationContext = exports.TlsValidationContextTrust = exports.TlsValidationContextSdsTrust = exports.TlsValidationContextFileTrust = exports.TlsValidationContextAcmTrust = exports.ClientTlsCertificate = exports.ListenerTlsSdsCertificate = exports.ListenerTlsFileCertificate = exports.UpdateVirtualGatewayOutput = exports.UpdateVirtualGatewayInput = exports.ListVirtualGatewaysOutput = exports.VirtualGatewayRef = exports.ListVirtualGatewaysInput = exports.UpdateGatewayRouteOutput = exports.UpdateGatewayRouteInput = exports.ListGatewayRoutesOutput = exports.GatewayRouteRef = exports.ListGatewayRoutesInput = exports.DescribeGatewayRouteOutput = exports.DescribeGatewayRouteInput = exports.DeleteGatewayRouteOutput = exports.DeleteGatewayRouteInput = exports.CreateGatewayRouteOutput = exports.GatewayRouteData = exports.GatewayRouteStatus = exports.GatewayRouteStatusCode = void 0;
6
+ exports.HttpScheme = exports.HttpRouteHeader = exports.HttpRouteAction = exports.GrpcRoute = exports.GrpcRetryPolicy = exports.TcpRetryPolicyEvent = exports.GrpcRetryPolicyEvent = exports.GrpcRouteMatch = exports.GrpcRouteMetadata = exports.GrpcRouteMetadataMatchMethod = exports.GrpcRouteAction = exports.WeightedTarget = exports.ListVirtualRoutersOutput = exports.VirtualRouterRef = exports.ListVirtualRoutersInput = exports.DescribeVirtualRouterOutput = exports.DescribeVirtualRouterInput = exports.DeleteVirtualRouterOutput = exports.DeleteVirtualRouterInput = exports.CreateVirtualRouterOutput = exports.VirtualRouterData = exports.VirtualRouterStatus = exports.VirtualRouterStatusCode = exports.CreateVirtualRouterInput = exports.VirtualRouterSpec = exports.VirtualRouterListener = exports.UpdateVirtualNodeOutput = exports.UpdateVirtualNodeInput = exports.ListVirtualNodesOutput = exports.VirtualNodeRef = exports.ListVirtualNodesInput = exports.DescribeVirtualNodeOutput = exports.DescribeVirtualNodeInput = exports.DeleteVirtualNodeOutput = exports.DeleteVirtualNodeInput = exports.CreateVirtualNodeOutput = exports.VirtualNodeData = exports.VirtualNodeStatus = exports.VirtualNodeStatusCode = exports.CreateVirtualNodeInput = exports.VirtualNodeSpec = exports.ServiceDiscovery = exports.DnsServiceDiscovery = exports.DnsResponseType = exports.AwsCloudMapServiceDiscovery = exports.AwsCloudMapInstanceAttribute = exports.Logging = exports.Listener = exports.ListenerTls = exports.ListenerTlsValidationContext = void 0;
7
+ exports.UntagResourceOutput = exports.UntagResourceInput = exports.TooManyTagsException = exports.TagResourceOutput = exports.TagResourceInput = exports.UpdateVirtualServiceOutput = exports.UpdateVirtualServiceInput = exports.ListVirtualServicesOutput = exports.VirtualServiceRef = exports.ListVirtualServicesInput = exports.DescribeVirtualServiceOutput = exports.DescribeVirtualServiceInput = exports.DeleteVirtualServiceOutput = exports.DeleteVirtualServiceInput = exports.CreateVirtualServiceOutput = exports.VirtualServiceData = exports.VirtualServiceStatus = exports.VirtualServiceStatusCode = exports.CreateVirtualServiceInput = exports.VirtualServiceSpec = exports.VirtualServiceProvider = exports.VirtualRouterServiceProvider = exports.VirtualNodeServiceProvider = exports.UpdateVirtualRouterOutput = exports.UpdateVirtualRouterInput = exports.UpdateRouteOutput = exports.UpdateRouteInput = exports.ListRoutesOutput = exports.RouteRef = exports.ListRoutesInput = exports.DescribeRouteOutput = exports.DescribeRouteInput = exports.DeleteRouteOutput = exports.DeleteRouteInput = exports.CreateRouteOutput = exports.RouteData = exports.RouteStatus = exports.RouteStatusCode = exports.CreateRouteInput = exports.RouteSpec = exports.TcpRoute = exports.TcpRouteAction = exports.HttpRoute = exports.HttpRetryPolicy = exports.HttpRouteMatch = void 0;
8
8
  const AppMeshServiceException_1 = require("./AppMeshServiceException");
9
9
  var FileAccessLog;
10
10
  (function (FileAccessLog) {
@@ -151,6 +151,19 @@ var EgressFilter;
151
151
  ...obj,
152
152
  });
153
153
  })(EgressFilter = exports.EgressFilter || (exports.EgressFilter = {}));
154
+ var IpPreference;
155
+ (function (IpPreference) {
156
+ IpPreference["IPv4_ONLY"] = "IPv4_ONLY";
157
+ IpPreference["IPv4_PREFERRED"] = "IPv4_PREFERRED";
158
+ IpPreference["IPv6_ONLY"] = "IPv6_ONLY";
159
+ IpPreference["IPv6_PREFERRED"] = "IPv6_PREFERRED";
160
+ })(IpPreference = exports.IpPreference || (exports.IpPreference = {}));
161
+ var MeshServiceDiscovery;
162
+ (function (MeshServiceDiscovery) {
163
+ MeshServiceDiscovery.filterSensitiveLog = (obj) => ({
164
+ ...obj,
165
+ });
166
+ })(MeshServiceDiscovery = exports.MeshServiceDiscovery || (exports.MeshServiceDiscovery = {}));
154
167
  var MeshSpec;
155
168
  (function (MeshSpec) {
156
169
  MeshSpec.filterSensitiveLog = (obj) => ({
@@ -3755,6 +3755,7 @@ const serializeAws_restJson1AwsCloudMapServiceDiscovery = (input, context) => {
3755
3755
  input.attributes !== null && {
3756
3756
  attributes: serializeAws_restJson1AwsCloudMapInstanceAttributes(input.attributes, context),
3757
3757
  }),
3758
+ ...(input.ipPreference !== undefined && input.ipPreference !== null && { ipPreference: input.ipPreference }),
3758
3759
  ...(input.namespaceName !== undefined && input.namespaceName !== null && { namespaceName: input.namespaceName }),
3759
3760
  ...(input.serviceName !== undefined && input.serviceName !== null && { serviceName: input.serviceName }),
3760
3761
  };
@@ -3822,6 +3823,7 @@ const serializeAws_restJson1ClientTlsCertificate = (input, context) => {
3822
3823
  const serializeAws_restJson1DnsServiceDiscovery = (input, context) => {
3823
3824
  return {
3824
3825
  ...(input.hostname !== undefined && input.hostname !== null && { hostname: input.hostname }),
3826
+ ...(input.ipPreference !== undefined && input.ipPreference !== null && { ipPreference: input.ipPreference }),
3825
3827
  ...(input.responseType !== undefined && input.responseType !== null && { responseType: input.responseType }),
3826
3828
  };
3827
3829
  };
@@ -4357,10 +4359,19 @@ const serializeAws_restJson1MatchRange = (input, context) => {
4357
4359
  ...(input.start !== undefined && input.start !== null && { start: input.start }),
4358
4360
  };
4359
4361
  };
4362
+ const serializeAws_restJson1MeshServiceDiscovery = (input, context) => {
4363
+ return {
4364
+ ...(input.ipPreference !== undefined && input.ipPreference !== null && { ipPreference: input.ipPreference }),
4365
+ };
4366
+ };
4360
4367
  const serializeAws_restJson1MeshSpec = (input, context) => {
4361
4368
  return {
4362
4369
  ...(input.egressFilter !== undefined &&
4363
4370
  input.egressFilter !== null && { egressFilter: serializeAws_restJson1EgressFilter(input.egressFilter, context) }),
4371
+ ...(input.serviceDiscovery !== undefined &&
4372
+ input.serviceDiscovery !== null && {
4373
+ serviceDiscovery: serializeAws_restJson1MeshServiceDiscovery(input.serviceDiscovery, context),
4374
+ }),
4364
4375
  };
4365
4376
  };
4366
4377
  const serializeAws_restJson1OutlierDetection = (input, context) => {
@@ -4939,6 +4950,7 @@ const deserializeAws_restJson1AwsCloudMapServiceDiscovery = (output, context) =>
4939
4950
  attributes: output.attributes !== undefined && output.attributes !== null
4940
4951
  ? deserializeAws_restJson1AwsCloudMapInstanceAttributes(output.attributes, context)
4941
4952
  : undefined,
4953
+ ipPreference: (0, smithy_client_1.expectString)(output.ipPreference),
4942
4954
  namespaceName: (0, smithy_client_1.expectString)(output.namespaceName),
4943
4955
  serviceName: (0, smithy_client_1.expectString)(output.serviceName),
4944
4956
  };
@@ -5017,6 +5029,7 @@ const deserializeAws_restJson1ClientTlsCertificate = (output, context) => {
5017
5029
  const deserializeAws_restJson1DnsServiceDiscovery = (output, context) => {
5018
5030
  return {
5019
5031
  hostname: (0, smithy_client_1.expectString)(output.hostname),
5032
+ ipPreference: (0, smithy_client_1.expectString)(output.ipPreference),
5020
5033
  responseType: (0, smithy_client_1.expectString)(output.responseType),
5021
5034
  };
5022
5035
  };
@@ -5719,11 +5732,19 @@ const deserializeAws_restJson1MeshRef = (output, context) => {
5719
5732
  version: (0, smithy_client_1.expectLong)(output.version),
5720
5733
  };
5721
5734
  };
5735
+ const deserializeAws_restJson1MeshServiceDiscovery = (output, context) => {
5736
+ return {
5737
+ ipPreference: (0, smithy_client_1.expectString)(output.ipPreference),
5738
+ };
5739
+ };
5722
5740
  const deserializeAws_restJson1MeshSpec = (output, context) => {
5723
5741
  return {
5724
5742
  egressFilter: output.egressFilter !== undefined && output.egressFilter !== null
5725
5743
  ? deserializeAws_restJson1EgressFilter(output.egressFilter, context)
5726
5744
  : undefined,
5745
+ serviceDiscovery: output.serviceDiscovery !== undefined && output.serviceDiscovery !== null
5746
+ ? deserializeAws_restJson1MeshServiceDiscovery(output.serviceDiscovery, context)
5747
+ : undefined,
5727
5748
  };
5728
5749
  };
5729
5750
  const deserializeAws_restJson1MeshStatus = (output, context) => {
@@ -129,6 +129,17 @@ export var EgressFilter;
129
129
  (function (EgressFilter) {
130
130
  EgressFilter.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };
131
131
  })(EgressFilter || (EgressFilter = {}));
132
+ export var IpPreference;
133
+ (function (IpPreference) {
134
+ IpPreference["IPv4_ONLY"] = "IPv4_ONLY";
135
+ IpPreference["IPv4_PREFERRED"] = "IPv4_PREFERRED";
136
+ IpPreference["IPv6_ONLY"] = "IPv6_ONLY";
137
+ IpPreference["IPv6_PREFERRED"] = "IPv6_PREFERRED";
138
+ })(IpPreference || (IpPreference = {}));
139
+ export var MeshServiceDiscovery;
140
+ (function (MeshServiceDiscovery) {
141
+ MeshServiceDiscovery.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };
142
+ })(MeshServiceDiscovery || (MeshServiceDiscovery = {}));
132
143
  export var MeshSpec;
133
144
  (function (MeshSpec) {
134
145
  MeshSpec.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };
@@ -4704,10 +4704,10 @@ var serializeAws_restJson1AwsCloudMapInstanceAttributes = function (input, conte
4704
4704
  });
4705
4705
  };
4706
4706
  var serializeAws_restJson1AwsCloudMapServiceDiscovery = function (input, context) {
4707
- return __assign(__assign(__assign({}, (input.attributes !== undefined &&
4707
+ return __assign(__assign(__assign(__assign({}, (input.attributes !== undefined &&
4708
4708
  input.attributes !== null && {
4709
4709
  attributes: serializeAws_restJson1AwsCloudMapInstanceAttributes(input.attributes, context),
4710
- })), (input.namespaceName !== undefined && input.namespaceName !== null && { namespaceName: input.namespaceName })), (input.serviceName !== undefined && input.serviceName !== null && { serviceName: input.serviceName }));
4710
+ })), (input.ipPreference !== undefined && input.ipPreference !== null && { ipPreference: input.ipPreference })), (input.namespaceName !== undefined && input.namespaceName !== null && { namespaceName: input.namespaceName })), (input.serviceName !== undefined && input.serviceName !== null && { serviceName: input.serviceName }));
4711
4711
  };
4712
4712
  var serializeAws_restJson1Backend = function (input, context) {
4713
4713
  return Backend.visit(input, {
@@ -4761,7 +4761,7 @@ var serializeAws_restJson1ClientTlsCertificate = function (input, context) {
4761
4761
  });
4762
4762
  };
4763
4763
  var serializeAws_restJson1DnsServiceDiscovery = function (input, context) {
4764
- return __assign(__assign({}, (input.hostname !== undefined && input.hostname !== null && { hostname: input.hostname })), (input.responseType !== undefined && input.responseType !== null && { responseType: input.responseType }));
4764
+ return __assign(__assign(__assign({}, (input.hostname !== undefined && input.hostname !== null && { hostname: input.hostname })), (input.ipPreference !== undefined && input.ipPreference !== null && { ipPreference: input.ipPreference })), (input.responseType !== undefined && input.responseType !== null && { responseType: input.responseType }));
4765
4765
  };
4766
4766
  var serializeAws_restJson1Duration = function (input, context) {
4767
4767
  return __assign(__assign({}, (input.unit !== undefined && input.unit !== null && { unit: input.unit })), (input.value !== undefined && input.value !== null && { value: input.value }));
@@ -5142,9 +5142,15 @@ var serializeAws_restJson1Logging = function (input, context) {
5142
5142
  var serializeAws_restJson1MatchRange = function (input, context) {
5143
5143
  return __assign(__assign({}, (input.end !== undefined && input.end !== null && { end: input.end })), (input.start !== undefined && input.start !== null && { start: input.start }));
5144
5144
  };
5145
+ var serializeAws_restJson1MeshServiceDiscovery = function (input, context) {
5146
+ return __assign({}, (input.ipPreference !== undefined && input.ipPreference !== null && { ipPreference: input.ipPreference }));
5147
+ };
5145
5148
  var serializeAws_restJson1MeshSpec = function (input, context) {
5146
- return __assign({}, (input.egressFilter !== undefined &&
5147
- input.egressFilter !== null && { egressFilter: serializeAws_restJson1EgressFilter(input.egressFilter, context) }));
5149
+ return __assign(__assign({}, (input.egressFilter !== undefined &&
5150
+ input.egressFilter !== null && { egressFilter: serializeAws_restJson1EgressFilter(input.egressFilter, context) })), (input.serviceDiscovery !== undefined &&
5151
+ input.serviceDiscovery !== null && {
5152
+ serviceDiscovery: serializeAws_restJson1MeshServiceDiscovery(input.serviceDiscovery, context),
5153
+ }));
5148
5154
  };
5149
5155
  var serializeAws_restJson1OutlierDetection = function (input, context) {
5150
5156
  return __assign(__assign(__assign(__assign({}, (input.baseEjectionDuration !== undefined &&
@@ -5589,6 +5595,7 @@ var deserializeAws_restJson1AwsCloudMapServiceDiscovery = function (output, cont
5589
5595
  attributes: output.attributes !== undefined && output.attributes !== null
5590
5596
  ? deserializeAws_restJson1AwsCloudMapInstanceAttributes(output.attributes, context)
5591
5597
  : undefined,
5598
+ ipPreference: __expectString(output.ipPreference),
5592
5599
  namespaceName: __expectString(output.namespaceName),
5593
5600
  serviceName: __expectString(output.serviceName),
5594
5601
  };
@@ -5667,6 +5674,7 @@ var deserializeAws_restJson1ClientTlsCertificate = function (output, context) {
5667
5674
  var deserializeAws_restJson1DnsServiceDiscovery = function (output, context) {
5668
5675
  return {
5669
5676
  hostname: __expectString(output.hostname),
5677
+ ipPreference: __expectString(output.ipPreference),
5670
5678
  responseType: __expectString(output.responseType),
5671
5679
  };
5672
5680
  };
@@ -6369,11 +6377,19 @@ var deserializeAws_restJson1MeshRef = function (output, context) {
6369
6377
  version: __expectLong(output.version),
6370
6378
  };
6371
6379
  };
6380
+ var deserializeAws_restJson1MeshServiceDiscovery = function (output, context) {
6381
+ return {
6382
+ ipPreference: __expectString(output.ipPreference),
6383
+ };
6384
+ };
6372
6385
  var deserializeAws_restJson1MeshSpec = function (output, context) {
6373
6386
  return {
6374
6387
  egressFilter: output.egressFilter !== undefined && output.egressFilter !== null
6375
6388
  ? deserializeAws_restJson1EgressFilter(output.egressFilter, context)
6376
6389
  : undefined,
6390
+ serviceDiscovery: output.serviceDiscovery !== undefined && output.serviceDiscovery !== null
6391
+ ? deserializeAws_restJson1MeshServiceDiscovery(output.serviceDiscovery, context)
6392
+ : undefined,
6377
6393
  };
6378
6394
  };
6379
6395
  var deserializeAws_restJson1MeshStatus = function (output, context) {
@@ -39,15 +39,17 @@ import { UpdateVirtualNodeCommandInput, UpdateVirtualNodeCommandOutput } from ".
39
39
  import { UpdateVirtualRouterCommandInput, UpdateVirtualRouterCommandOutput } from "./commands/UpdateVirtualRouterCommand";
40
40
  import { UpdateVirtualServiceCommandInput, UpdateVirtualServiceCommandOutput } from "./commands/UpdateVirtualServiceCommand";
41
41
  /**
42
- * <p>App Mesh is a service mesh based on the Envoy proxy that makes it easy to monitor and
43
- * control microservices. App Mesh standardizes how your microservices communicate, giving you
44
- * end-to-end visibility and helping to ensure high availability for your applications.</p>
45
- * <p>App Mesh gives you consistent visibility and network traffic controls for every
46
- * microservice in an application. You can use App Mesh with Amazon Web Services Fargate, Amazon ECS, Amazon EKS,
47
- * Kubernetes on Amazon Web Services, and Amazon EC2.</p>
42
+ * <p>App Mesh is a service mesh based on the Envoy proxy that makes it easy to
43
+ * monitor and control microservices. App Mesh standardizes how your microservices
44
+ * communicate, giving you end-to-end visibility and helping to ensure high availability for
45
+ * your applications.</p>
46
+ * <p>App Mesh gives you consistent visibility and network traffic controls for
47
+ * every microservice in an application. You can use App Mesh with Amazon Web Services Fargate, Amazon ECS, Amazon EKS, Kubernetes on Amazon Web Services, and
48
+ * Amazon EC2.</p>
48
49
  * <note>
49
- * <p>App Mesh supports microservice applications that use service discovery naming for their
50
- * components. For more information about service discovery on Amazon ECS, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-discovery.html">Service Discovery</a> in the <i>Amazon Elastic Container Service Developer Guide</i>. Kubernetes
50
+ * <p>App Mesh supports microservice applications that use service discovery
51
+ * naming for their components. For more information about service discovery on Amazon ECS, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-discovery.html">Service
52
+ * Discovery</a> in the <i>Amazon Elastic Container Service Developer Guide</i>. Kubernetes
51
53
  * <code>kube-dns</code> and <code>coredns</code> are supported. For more information,
52
54
  * see <a href="https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/">DNS
53
55
  * for Services and Pods</a> in the Kubernetes documentation.</p>
@@ -87,10 +89,9 @@ export declare class AppMesh extends AppMeshClient {
87
89
  /**
88
90
  * <p>Creates a virtual gateway.</p>
89
91
  * <p>A virtual gateway allows resources outside your mesh to communicate to resources that
90
- * are inside your mesh. The virtual gateway represents an Envoy proxy running in an Amazon ECS
91
- * task, in a Kubernetes service, or on an Amazon EC2 instance. Unlike a virtual node, which
92
- * represents an Envoy running with an application, a virtual gateway represents Envoy
93
- * deployed by itself.</p>
92
+ * are inside your mesh. The virtual gateway represents an Envoy proxy running in an Amazon ECS task, in a Kubernetes service, or on an Amazon EC2 instance. Unlike a
93
+ * virtual node, which represents an Envoy running with an application, a virtual gateway
94
+ * represents Envoy deployed by itself.</p>
94
95
  * <p>For more information about virtual gateways, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_gateways.html">Virtual gateways</a>. </p>
95
96
  */
96
97
  createVirtualGateway(args: CreateVirtualGatewayCommandInput, options?: __HttpHandlerOptions): Promise<CreateVirtualGatewayCommandOutput>;
@@ -98,10 +99,10 @@ export declare class AppMesh extends AppMeshClient {
98
99
  createVirtualGateway(args: CreateVirtualGatewayCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: CreateVirtualGatewayCommandOutput) => void): void;
99
100
  /**
100
101
  * <p>Creates a virtual node within a service mesh.</p>
101
- * <p> A virtual node acts as a logical pointer to a particular task group, such as an Amazon ECS
102
- * service or a Kubernetes deployment. When you create a virtual node, you can specify the
103
- * service discovery information for your task group, and whether the proxy running in a task
104
- * group will communicate with other proxies using Transport Layer Security (TLS).</p>
102
+ * <p> A virtual node acts as a logical pointer to a particular task group, such as an Amazon ECS service or a Kubernetes deployment. When you create a virtual node, you can
103
+ * specify the service discovery information for your task group, and whether the proxy
104
+ * running in a task group will communicate with other proxies using Transport Layer Security
105
+ * (TLS).</p>
105
106
  * <p>You define a <code>listener</code> for any inbound traffic that your virtual node
106
107
  * expects. Any virtual service that your virtual node expects to communicate to is specified
107
108
  * as a <code>backend</code>.</p>
@@ -118,8 +119,9 @@ export declare class AppMesh extends AppMeshClient {
118
119
  * <code>APPMESH_RESOURCE_CLUSTER</code> environment variable with your own name.</p>
119
120
  * </note>
120
121
  * <p>For more information about virtual nodes, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_nodes.html">Virtual nodes</a>. You must be using <code>1.15.0</code> or later of the Envoy image when
121
- * setting these variables. For more information aboutApp Mesh Envoy variables, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/envoy.html">Envoy image</a> in
122
- * the AWS App Mesh User Guide.</p>
122
+ * setting these variables. For more information aboutApp Mesh Envoy variables, see
123
+ * <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/envoy.html">Envoy
124
+ * image</a> in the App Mesh User Guide.</p>
123
125
  */
124
126
  createVirtualNode(args: CreateVirtualNodeCommandInput, options?: __HttpHandlerOptions): Promise<CreateVirtualNodeCommandOutput>;
125
127
  createVirtualNode(args: CreateVirtualNodeCommandInput, cb: (err: any, data?: CreateVirtualNodeCommandOutput) => void): void;
@@ -164,15 +164,17 @@ declare type AppMeshClientResolvedConfigType = __SmithyResolvedConfiguration<__H
164
164
  export interface AppMeshClientResolvedConfig extends AppMeshClientResolvedConfigType {
165
165
  }
166
166
  /**
167
- * <p>App Mesh is a service mesh based on the Envoy proxy that makes it easy to monitor and
168
- * control microservices. App Mesh standardizes how your microservices communicate, giving you
169
- * end-to-end visibility and helping to ensure high availability for your applications.</p>
170
- * <p>App Mesh gives you consistent visibility and network traffic controls for every
171
- * microservice in an application. You can use App Mesh with Amazon Web Services Fargate, Amazon ECS, Amazon EKS,
172
- * Kubernetes on Amazon Web Services, and Amazon EC2.</p>
167
+ * <p>App Mesh is a service mesh based on the Envoy proxy that makes it easy to
168
+ * monitor and control microservices. App Mesh standardizes how your microservices
169
+ * communicate, giving you end-to-end visibility and helping to ensure high availability for
170
+ * your applications.</p>
171
+ * <p>App Mesh gives you consistent visibility and network traffic controls for
172
+ * every microservice in an application. You can use App Mesh with Amazon Web Services Fargate, Amazon ECS, Amazon EKS, Kubernetes on Amazon Web Services, and
173
+ * Amazon EC2.</p>
173
174
  * <note>
174
- * <p>App Mesh supports microservice applications that use service discovery naming for their
175
- * components. For more information about service discovery on Amazon ECS, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-discovery.html">Service Discovery</a> in the <i>Amazon Elastic Container Service Developer Guide</i>. Kubernetes
175
+ * <p>App Mesh supports microservice applications that use service discovery
176
+ * naming for their components. For more information about service discovery on Amazon ECS, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-discovery.html">Service
177
+ * Discovery</a> in the <i>Amazon Elastic Container Service Developer Guide</i>. Kubernetes
176
178
  * <code>kube-dns</code> and <code>coredns</code> are supported. For more information,
177
179
  * see <a href="https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/">DNS
178
180
  * for Services and Pods</a> in the Kubernetes documentation.</p>
@@ -9,10 +9,9 @@ export interface CreateVirtualGatewayCommandOutput extends CreateVirtualGatewayO
9
9
  /**
10
10
  * <p>Creates a virtual gateway.</p>
11
11
  * <p>A virtual gateway allows resources outside your mesh to communicate to resources that
12
- * are inside your mesh. The virtual gateway represents an Envoy proxy running in an Amazon ECS
13
- * task, in a Kubernetes service, or on an Amazon EC2 instance. Unlike a virtual node, which
14
- * represents an Envoy running with an application, a virtual gateway represents Envoy
15
- * deployed by itself.</p>
12
+ * are inside your mesh. The virtual gateway represents an Envoy proxy running in an Amazon ECS task, in a Kubernetes service, or on an Amazon EC2 instance. Unlike a
13
+ * virtual node, which represents an Envoy running with an application, a virtual gateway
14
+ * represents Envoy deployed by itself.</p>
16
15
  * <p>For more information about virtual gateways, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_gateways.html">Virtual gateways</a>. </p>
17
16
  * @example
18
17
  * Use a bare-bones client and the command you need to make an API call.
@@ -8,10 +8,10 @@ export interface CreateVirtualNodeCommandOutput extends CreateVirtualNodeOutput,
8
8
  }
9
9
  /**
10
10
  * <p>Creates a virtual node within a service mesh.</p>
11
- * <p> A virtual node acts as a logical pointer to a particular task group, such as an Amazon ECS
12
- * service or a Kubernetes deployment. When you create a virtual node, you can specify the
13
- * service discovery information for your task group, and whether the proxy running in a task
14
- * group will communicate with other proxies using Transport Layer Security (TLS).</p>
11
+ * <p> A virtual node acts as a logical pointer to a particular task group, such as an Amazon ECS service or a Kubernetes deployment. When you create a virtual node, you can
12
+ * specify the service discovery information for your task group, and whether the proxy
13
+ * running in a task group will communicate with other proxies using Transport Layer Security
14
+ * (TLS).</p>
15
15
  * <p>You define a <code>listener</code> for any inbound traffic that your virtual node
16
16
  * expects. Any virtual service that your virtual node expects to communicate to is specified
17
17
  * as a <code>backend</code>.</p>
@@ -28,8 +28,9 @@ export interface CreateVirtualNodeCommandOutput extends CreateVirtualNodeOutput,
28
28
  * <code>APPMESH_RESOURCE_CLUSTER</code> environment variable with your own name.</p>
29
29
  * </note>
30
30
  * <p>For more information about virtual nodes, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_nodes.html">Virtual nodes</a>. You must be using <code>1.15.0</code> or later of the Envoy image when
31
- * setting these variables. For more information aboutApp Mesh Envoy variables, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/envoy.html">Envoy image</a> in
32
- * the AWS App Mesh User Guide.</p>
31
+ * setting these variables. For more information aboutApp Mesh Envoy variables, see
32
+ * <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/envoy.html">Envoy
33
+ * image</a> in the App Mesh User Guide.</p>
33
34
  * @example
34
35
  * Use a bare-bones client and the command you need to make an API call.
35
36
  * ```javascript
@@ -10,6 +10,7 @@ export interface FileAccessLog {
10
10
  * <code>awslogs</code>, to export the access logs to a log storage service such as Amazon
11
11
  * CloudWatch Logs. You can also specify a path in the Envoy container's file system to write
12
12
  * the files to disk.</p>
13
+ *
13
14
  * <note>
14
15
  * <p>The Envoy process must have write permissions to the path that you specify here.
15
16
  * Otherwise, Envoy fails to bootstrap properly.</p>
@@ -187,8 +188,8 @@ export declare class ServiceUnavailableException extends __BaseException {
187
188
  constructor(opts: __ExceptionOptionType<ServiceUnavailableException, __BaseException>);
188
189
  }
189
190
  /**
190
- * <p>The maximum request rate permitted by the App Mesh APIs has been exceeded for your
191
- * account. For best results, use an increasing or variable sleep interval between
191
+ * <p>The maximum request rate permitted by the App Mesh APIs has been exceeded for
192
+ * your account. For best results, use an increasing or variable sleep interval between
192
193
  * requests.</p>
193
194
  */
194
195
  export declare class TooManyRequestsException extends __BaseException {
@@ -225,9 +226,9 @@ export interface EgressFilter {
225
226
  /**
226
227
  * <p>The egress filter type. By default, the type is <code>DROP_ALL</code>, which allows
227
228
  * egress only from virtual nodes to other defined resources in the service mesh (and any
228
- * traffic to <code>*.amazonaws.com</code> for Amazon Web Services API calls). You can set the egress filter
229
- * type to <code>ALLOW_ALL</code> to allow egress to any endpoint inside or outside of the
230
- * service mesh.</p>
229
+ * traffic to <code>*.amazonaws.com</code> for Amazon Web Services API calls). You can set the
230
+ * egress filter type to <code>ALLOW_ALL</code> to allow egress to any endpoint inside or
231
+ * outside of the service mesh.</p>
231
232
  */
232
233
  type: EgressFilterType | string | undefined;
233
234
  }
@@ -237,6 +238,27 @@ export declare namespace EgressFilter {
237
238
  */
238
239
  const filterSensitiveLog: (obj: EgressFilter) => any;
239
240
  }
241
+ export declare enum IpPreference {
242
+ IPv4_ONLY = "IPv4_ONLY",
243
+ IPv4_PREFERRED = "IPv4_PREFERRED",
244
+ IPv6_ONLY = "IPv6_ONLY",
245
+ IPv6_PREFERRED = "IPv6_PREFERRED"
246
+ }
247
+ /**
248
+ * <p>An object that represents the service discovery information for a service mesh.</p>
249
+ */
250
+ export interface MeshServiceDiscovery {
251
+ /**
252
+ * <p>The IP version to use to control traffic within the mesh.</p>
253
+ */
254
+ ipPreference?: IpPreference | string;
255
+ }
256
+ export declare namespace MeshServiceDiscovery {
257
+ /**
258
+ * @internal
259
+ */
260
+ const filterSensitiveLog: (obj: MeshServiceDiscovery) => any;
261
+ }
240
262
  /**
241
263
  * <p>An object that represents the specification of a service mesh.</p>
242
264
  */
@@ -245,6 +267,10 @@ export interface MeshSpec {
245
267
  * <p>The egress filter rules for the service mesh.</p>
246
268
  */
247
269
  egressFilter?: EgressFilter;
270
+ /**
271
+ * <p>An object that represents the service discovery information for a service mesh.</p>
272
+ */
273
+ serviceDiscovery?: MeshServiceDiscovery;
248
274
  }
249
275
  export declare namespace MeshSpec {
250
276
  /**
@@ -308,12 +334,12 @@ export interface ResourceMetadata {
308
334
  */
309
335
  lastUpdatedAt: Date | undefined;
310
336
  /**
311
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
337
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
312
338
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
313
339
  */
314
340
  meshOwner: string | undefined;
315
341
  /**
316
- * <p>The AWS IAM account ID of the resource owner. If the account ID is not your own, then it's
342
+ * <p>The Amazon Web Services IAM account ID of the resource owner. If the account ID is not your own, then it's
317
343
  * the ID of the mesh owner or of another account that the mesh is shared with. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
318
344
  */
319
345
  resourceOwner: string | undefined;
@@ -388,7 +414,7 @@ export declare namespace CreateMeshOutput {
388
414
  }
389
415
  /**
390
416
  * <p>You have exceeded a service limit for your account. For more information, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/service-quotas.html">Service
391
- * Limits</a> in the <i>AWS App Mesh User Guide</i>.</p>
417
+ * Limits</a> in the <i>App Mesh User Guide</i>.</p>
392
418
  */
393
419
  export declare class LimitExceededException extends __BaseException {
394
420
  readonly name: "LimitExceededException";
@@ -449,7 +475,7 @@ export interface DescribeMeshInput {
449
475
  */
450
476
  meshName: string | undefined;
451
477
  /**
452
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
478
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
453
479
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
454
480
  */
455
481
  meshOwner?: string;
@@ -517,12 +543,12 @@ export interface MeshRef {
517
543
  */
518
544
  meshName: string | undefined;
519
545
  /**
520
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
546
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
521
547
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
522
548
  */
523
549
  meshOwner: string | undefined;
524
550
  /**
525
- * <p>The AWS IAM account ID of the resource owner. If the account ID is not your own, then it's
551
+ * <p>The Amazon Web Services IAM account ID of the resource owner. If the account ID is not your own, then it's
526
552
  * the ID of the mesh owner or of another account that the mesh is shared with. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
527
553
  */
528
554
  resourceOwner: string | undefined;
@@ -759,7 +785,9 @@ export declare namespace VirtualGatewayTlsValidationContextFileTrust {
759
785
  /**
760
786
  * <p>An object that represents a virtual gateway's listener's Transport Layer Security (TLS) Secret Discovery Service
761
787
  * validation context trust. The proxy must be configured with a local SDS provider via a Unix
762
- * Domain Socket. See App Mesh <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html">TLS documentation</a> for more info.</p>
788
+ * Domain Socket. See App Mesh
789
+ * <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html">TLS
790
+ * documentation</a> for more info.</p>
763
791
  */
764
792
  export interface VirtualGatewayTlsValidationContextSdsTrust {
765
793
  /**
@@ -780,8 +808,7 @@ export declare namespace VirtualGatewayTlsValidationContextSdsTrust {
780
808
  export declare type VirtualGatewayTlsValidationContextTrust = VirtualGatewayTlsValidationContextTrust.AcmMember | VirtualGatewayTlsValidationContextTrust.FileMember | VirtualGatewayTlsValidationContextTrust.SdsMember | VirtualGatewayTlsValidationContextTrust.$UnknownMember;
781
809
  export declare namespace VirtualGatewayTlsValidationContextTrust {
782
810
  /**
783
- * <p>A reference to an object that represents a Transport Layer Security (TLS) validation context trust for an
784
- * Certificate Manager certificate.</p>
811
+ * <p>A reference to an object that represents a Transport Layer Security (TLS) validation context trust for an Certificate Manager certificate.</p>
785
812
  */
786
813
  interface AcmMember {
787
814
  acm: VirtualGatewayTlsValidationContextAcmTrust;
@@ -1394,7 +1421,7 @@ export interface CreateVirtualGatewayInput {
1394
1421
  */
1395
1422
  clientToken?: string;
1396
1423
  /**
1397
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then
1424
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then
1398
1425
  * the account that you specify must share the mesh with your account before you can create
1399
1426
  * the resource in the service mesh. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
1400
1427
  */
@@ -1479,7 +1506,7 @@ export interface DeleteVirtualGatewayInput {
1479
1506
  */
1480
1507
  meshName: string | undefined;
1481
1508
  /**
1482
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
1509
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
1483
1510
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
1484
1511
  */
1485
1512
  meshOwner?: string;
@@ -1512,7 +1539,7 @@ export interface DescribeVirtualGatewayInput {
1512
1539
  */
1513
1540
  meshName: string | undefined;
1514
1541
  /**
1515
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
1542
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
1516
1543
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
1517
1544
  */
1518
1545
  meshOwner?: string;
@@ -1747,7 +1774,8 @@ export interface GrpcGatewayRouteMetadata {
1747
1774
  */
1748
1775
  name: string | undefined;
1749
1776
  /**
1750
- * <p>Specify <code>True</code> to match anything except the match criteria. The default value is <code>False</code>.</p>
1777
+ * <p>Specify <code>True</code> to match anything except the match criteria. The default value
1778
+ * is <code>False</code>.</p>
1751
1779
  */
1752
1780
  invert?: boolean;
1753
1781
  /**
@@ -1971,7 +1999,8 @@ export interface HttpGatewayRouteHeader {
1971
1999
  */
1972
2000
  name: string | undefined;
1973
2001
  /**
1974
- * <p>Specify <code>True</code> to match anything except the match criteria. The default value is <code>False</code>.</p>
2002
+ * <p>Specify <code>True</code> to match anything except the match criteria. The default value
2003
+ * is <code>False</code>.</p>
1975
2004
  */
1976
2005
  invert?: boolean;
1977
2006
  /**
@@ -2169,7 +2198,7 @@ export interface CreateGatewayRouteInput {
2169
2198
  */
2170
2199
  clientToken?: string;
2171
2200
  /**
2172
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then
2201
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then
2173
2202
  * the account that you specify must share the mesh with your account before you can create
2174
2203
  * the resource in the service mesh. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
2175
2204
  */
@@ -2262,7 +2291,7 @@ export interface DeleteGatewayRouteInput {
2262
2291
  */
2263
2292
  virtualGatewayName: string | undefined;
2264
2293
  /**
2265
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
2294
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
2266
2295
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
2267
2296
  */
2268
2297
  meshOwner?: string;
@@ -2299,7 +2328,7 @@ export interface DescribeGatewayRouteInput {
2299
2328
  */
2300
2329
  virtualGatewayName: string | undefined;
2301
2330
  /**
2302
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
2331
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
2303
2332
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
2304
2333
  */
2305
2334
  meshOwner?: string;
@@ -2350,7 +2379,7 @@ export interface ListGatewayRoutesInput {
2350
2379
  */
2351
2380
  limit?: number;
2352
2381
  /**
2353
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
2382
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
2354
2383
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
2355
2384
  */
2356
2385
  meshOwner?: string;
@@ -2378,12 +2407,12 @@ export interface GatewayRouteRef {
2378
2407
  */
2379
2408
  virtualGatewayName: string | undefined;
2380
2409
  /**
2381
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
2410
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
2382
2411
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
2383
2412
  */
2384
2413
  meshOwner: string | undefined;
2385
2414
  /**
2386
- * <p>The AWS IAM account ID of the resource owner. If the account ID is not your own, then it's
2415
+ * <p>The Amazon Web Services IAM account ID of the resource owner. If the account ID is not your own, then it's
2387
2416
  * the ID of the mesh owner or of another account that the mesh is shared with. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
2388
2417
  */
2389
2418
  resourceOwner: string | undefined;
@@ -2453,7 +2482,7 @@ export interface UpdateGatewayRouteInput {
2453
2482
  */
2454
2483
  clientToken?: string;
2455
2484
  /**
2456
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
2485
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
2457
2486
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
2458
2487
  */
2459
2488
  meshOwner?: string;
@@ -2500,7 +2529,7 @@ export interface ListVirtualGatewaysInput {
2500
2529
  */
2501
2530
  limit?: number;
2502
2531
  /**
2503
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
2532
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
2504
2533
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
2505
2534
  */
2506
2535
  meshOwner?: string;
@@ -2524,12 +2553,12 @@ export interface VirtualGatewayRef {
2524
2553
  */
2525
2554
  virtualGatewayName: string | undefined;
2526
2555
  /**
2527
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
2556
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
2528
2557
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
2529
2558
  */
2530
2559
  meshOwner: string | undefined;
2531
2560
  /**
2532
- * <p>The AWS IAM account ID of the resource owner. If the account ID is not your own, then it's
2561
+ * <p>The Amazon Web Services IAM account ID of the resource owner. If the account ID is not your own, then it's
2533
2562
  * the ID of the mesh owner or of another account that the mesh is shared with. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
2534
2563
  */
2535
2564
  resourceOwner: string | undefined;
@@ -2595,7 +2624,7 @@ export interface UpdateVirtualGatewayInput {
2595
2624
  */
2596
2625
  clientToken?: string;
2597
2626
  /**
2598
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
2627
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
2599
2628
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
2600
2629
  */
2601
2630
  meshOwner?: string;
@@ -2641,8 +2670,9 @@ export declare namespace ListenerTlsFileCertificate {
2641
2670
  }
2642
2671
  /**
2643
2672
  * <p>An object that represents the listener's Secret Discovery Service certificate. The proxy
2644
- * must be configured with a local SDS provider via a Unix Domain Socket. See App Mesh <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html">TLS documentation</a>
2645
- * for more info.</p>
2673
+ * must be configured with a local SDS provider via a Unix Domain Socket. See App Mesh
2674
+ * <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html">TLS
2675
+ * documentation</a> for more info.</p>
2646
2676
  */
2647
2677
  export interface ListenerTlsSdsCertificate {
2648
2678
  /**
@@ -2733,7 +2763,7 @@ export declare namespace TlsValidationContextFileTrust {
2733
2763
  /**
2734
2764
  * <p>An object that represents a Transport Layer Security (TLS) Secret Discovery Service validation context trust. The
2735
2765
  * proxy must be configured with a local SDS provider via a Unix Domain Socket. See App Mesh
2736
- * <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html">TLS
2766
+ * <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html">TLS
2737
2767
  * documentation</a> for more info.</p>
2738
2768
  */
2739
2769
  export interface TlsValidationContextSdsTrust {
@@ -2755,8 +2785,7 @@ export declare namespace TlsValidationContextSdsTrust {
2755
2785
  export declare type TlsValidationContextTrust = TlsValidationContextTrust.AcmMember | TlsValidationContextTrust.FileMember | TlsValidationContextTrust.SdsMember | TlsValidationContextTrust.$UnknownMember;
2756
2786
  export declare namespace TlsValidationContextTrust {
2757
2787
  /**
2758
- * <p>A reference to an object that represents a Transport Layer Security (TLS) validation context trust for an
2759
- * Certificate Manager certificate.</p>
2788
+ * <p>A reference to an object that represents a Transport Layer Security (TLS) validation context trust for an Certificate Manager certificate.</p>
2760
2789
  */
2761
2790
  interface AcmMember {
2762
2791
  acm: TlsValidationContextAcmTrust;
@@ -3309,7 +3338,7 @@ export declare namespace ListenerTimeout {
3309
3338
  const filterSensitiveLog: (obj: ListenerTimeout) => any;
3310
3339
  }
3311
3340
  /**
3312
- * <p>An object that represents an AWS Certicate Manager (ACM) certificate.</p>
3341
+ * <p>An object that represents an Certificate Manager certificate.</p>
3313
3342
  */
3314
3343
  export interface ListenerTlsAcmCertificate {
3315
3344
  /**
@@ -3329,7 +3358,7 @@ export declare namespace ListenerTlsAcmCertificate {
3329
3358
  export declare type ListenerTlsCertificate = ListenerTlsCertificate.AcmMember | ListenerTlsCertificate.FileMember | ListenerTlsCertificate.SdsMember | ListenerTlsCertificate.$UnknownMember;
3330
3359
  export declare namespace ListenerTlsCertificate {
3331
3360
  /**
3332
- * <p>A reference to an object that represents an AWS Certicate Manager (ACM) certificate.</p>
3361
+ * <p>A reference to an object that represents an Certificate Manager certificate.</p>
3333
3362
  */
3334
3363
  interface AcmMember {
3335
3364
  acm: ListenerTlsAcmCertificate;
@@ -3529,21 +3558,21 @@ export declare namespace Logging {
3529
3558
  const filterSensitiveLog: (obj: Logging) => any;
3530
3559
  }
3531
3560
  /**
3532
- * <p>An object that represents the Cloud Map attribute information for your virtual
3533
- * node.</p>
3561
+ * <p>An object that represents the Cloud Map attribute information for your
3562
+ * virtual node.</p>
3534
3563
  * <note>
3535
- * <p>AWS Cloud Map is not available in the eu-south-1 Region.</p>
3564
+ * <p>Cloud Map is not available in the eu-south-1 Region.</p>
3536
3565
  * </note>
3537
3566
  */
3538
3567
  export interface AwsCloudMapInstanceAttribute {
3539
3568
  /**
3540
- * <p>The name of an Cloud Map service instance attribute key. Any Cloud Map service
3541
- * instance that contains the specified key and value is returned.</p>
3569
+ * <p>The name of an Cloud Map service instance attribute key. Any Cloud Map service instance that contains the specified key and value is
3570
+ * returned.</p>
3542
3571
  */
3543
3572
  key: string | undefined;
3544
3573
  /**
3545
- * <p>The value of an Cloud Map service instance attribute key. Any Cloud Map service
3546
- * instance that contains the specified key and value is returned.</p>
3574
+ * <p>The value of an Cloud Map service instance attribute key. Any Cloud Map service instance that contains the specified key and value is
3575
+ * returned.</p>
3547
3576
  */
3548
3577
  value: string | undefined;
3549
3578
  }
@@ -3554,8 +3583,8 @@ export declare namespace AwsCloudMapInstanceAttribute {
3554
3583
  const filterSensitiveLog: (obj: AwsCloudMapInstanceAttribute) => any;
3555
3584
  }
3556
3585
  /**
3557
- * <p>An object that represents the Cloud Map service discovery information for your virtual
3558
- * node.</p>
3586
+ * <p>An object that represents the Cloud Map service discovery information for
3587
+ * your virtual node.</p>
3559
3588
  * <note>
3560
3589
  * <p>Cloud Map is not available in the eu-south-1 Region.</p>
3561
3590
  * </note>
@@ -3575,6 +3604,10 @@ export interface AwsCloudMapServiceDiscovery {
3575
3604
  * that match all of the specified key/value pairs will be returned.</p>
3576
3605
  */
3577
3606
  attributes?: AwsCloudMapInstanceAttribute[];
3607
+ /**
3608
+ * <p>The IP version to use to control traffic within the mesh.</p>
3609
+ */
3610
+ ipPreference?: IpPreference | string;
3578
3611
  }
3579
3612
  export declare namespace AwsCloudMapServiceDiscovery {
3580
3613
  /**
@@ -3599,6 +3632,10 @@ export interface DnsServiceDiscovery {
3599
3632
  * <p>Specifies the DNS response type for the virtual node.</p>
3600
3633
  */
3601
3634
  responseType?: DnsResponseType | string;
3635
+ /**
3636
+ * <p>The IP version to use to control traffic within the mesh.</p>
3637
+ */
3638
+ ipPreference?: IpPreference | string;
3602
3639
  }
3603
3640
  export declare namespace DnsServiceDiscovery {
3604
3641
  /**
@@ -3706,7 +3743,7 @@ export interface CreateVirtualNodeInput {
3706
3743
  */
3707
3744
  clientToken?: string;
3708
3745
  /**
3709
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then
3746
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then
3710
3747
  * the account that you specify must share the mesh with your account before you can create
3711
3748
  * the resource in the service mesh. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
3712
3749
  */
@@ -3797,7 +3834,7 @@ export interface DeleteVirtualNodeInput {
3797
3834
  */
3798
3835
  meshName: string | undefined;
3799
3836
  /**
3800
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
3837
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
3801
3838
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
3802
3839
  */
3803
3840
  meshOwner?: string;
@@ -3836,7 +3873,7 @@ export interface DescribeVirtualNodeInput {
3836
3873
  */
3837
3874
  meshName: string | undefined;
3838
3875
  /**
3839
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
3876
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
3840
3877
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
3841
3878
  */
3842
3879
  meshOwner?: string;
@@ -3889,7 +3926,7 @@ export interface ListVirtualNodesInput {
3889
3926
  */
3890
3927
  limit?: number;
3891
3928
  /**
3892
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
3929
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
3893
3930
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
3894
3931
  */
3895
3932
  meshOwner?: string;
@@ -3913,12 +3950,12 @@ export interface VirtualNodeRef {
3913
3950
  */
3914
3951
  virtualNodeName: string | undefined;
3915
3952
  /**
3916
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
3953
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
3917
3954
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
3918
3955
  */
3919
3956
  meshOwner: string | undefined;
3920
3957
  /**
3921
- * <p>The AWS IAM account ID of the resource owner. If the account ID is not your own, then it's
3958
+ * <p>The Amazon Web Services IAM account ID of the resource owner. If the account ID is not your own, then it's
3922
3959
  * the ID of the mesh owner or of another account that the mesh is shared with. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
3923
3960
  */
3924
3961
  resourceOwner: string | undefined;
@@ -3989,7 +4026,7 @@ export interface UpdateVirtualNodeInput {
3989
4026
  */
3990
4027
  clientToken?: string;
3991
4028
  /**
3992
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
4029
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
3993
4030
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
3994
4031
  */
3995
4032
  meshOwner?: string;
@@ -4075,7 +4112,7 @@ export interface CreateVirtualRouterInput {
4075
4112
  */
4076
4113
  clientToken?: string;
4077
4114
  /**
4078
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then
4115
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then
4079
4116
  * the account that you specify must share the mesh with your account before you can create
4080
4117
  * the resource in the service mesh. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
4081
4118
  */
@@ -4166,7 +4203,7 @@ export interface DeleteVirtualRouterInput {
4166
4203
  */
4167
4204
  meshName: string | undefined;
4168
4205
  /**
4169
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
4206
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
4170
4207
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
4171
4208
  */
4172
4209
  meshOwner?: string;
@@ -4205,7 +4242,7 @@ export interface DescribeVirtualRouterInput {
4205
4242
  */
4206
4243
  meshName: string | undefined;
4207
4244
  /**
4208
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
4245
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
4209
4246
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
4210
4247
  */
4211
4248
  meshOwner?: string;
@@ -4258,7 +4295,7 @@ export interface ListVirtualRoutersInput {
4258
4295
  */
4259
4296
  limit?: number;
4260
4297
  /**
4261
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
4298
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
4262
4299
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
4263
4300
  */
4264
4301
  meshOwner?: string;
@@ -4282,12 +4319,12 @@ export interface VirtualRouterRef {
4282
4319
  */
4283
4320
  virtualRouterName: string | undefined;
4284
4321
  /**
4285
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
4322
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
4286
4323
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
4287
4324
  */
4288
4325
  meshOwner: string | undefined;
4289
4326
  /**
4290
- * <p>The AWS IAM account ID of the resource owner. If the account ID is not your own, then it's
4327
+ * <p>The Amazon Web Services IAM account ID of the resource owner. If the account ID is not your own, then it's
4291
4328
  * the ID of the mesh owner or of another account that the mesh is shared with. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
4292
4329
  */
4293
4330
  resourceOwner: string | undefined;
@@ -4854,7 +4891,7 @@ export interface CreateRouteInput {
4854
4891
  */
4855
4892
  clientToken?: string;
4856
4893
  /**
4857
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then
4894
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then
4858
4895
  * the account that you specify must share the mesh with your account before you can create
4859
4896
  * the resource in the service mesh. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
4860
4897
  */
@@ -4953,7 +4990,7 @@ export interface DeleteRouteInput {
4953
4990
  */
4954
4991
  virtualRouterName: string | undefined;
4955
4992
  /**
4956
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
4993
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
4957
4994
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
4958
4995
  */
4959
4996
  meshOwner?: string;
@@ -4992,7 +5029,7 @@ export interface DescribeRouteInput {
4992
5029
  */
4993
5030
  meshName: string | undefined;
4994
5031
  /**
4995
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
5032
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
4996
5033
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
4997
5034
  */
4998
5035
  meshOwner?: string;
@@ -5053,7 +5090,7 @@ export interface ListRoutesInput {
5053
5090
  */
5054
5091
  limit?: number;
5055
5092
  /**
5056
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
5093
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
5057
5094
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
5058
5095
  */
5059
5096
  meshOwner?: string;
@@ -5081,12 +5118,12 @@ export interface RouteRef {
5081
5118
  */
5082
5119
  routeName: string | undefined;
5083
5120
  /**
5084
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
5121
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
5085
5122
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
5086
5123
  */
5087
5124
  meshOwner: string | undefined;
5088
5125
  /**
5089
- * <p>The AWS IAM account ID of the resource owner. If the account ID is not your own, then it's
5126
+ * <p>The Amazon Web Services IAM account ID of the resource owner. If the account ID is not your own, then it's
5090
5127
  * the ID of the mesh owner or of another account that the mesh is shared with. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
5091
5128
  */
5092
5129
  resourceOwner: string | undefined;
@@ -5161,7 +5198,7 @@ export interface UpdateRouteInput {
5161
5198
  */
5162
5199
  clientToken?: string;
5163
5200
  /**
5164
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
5201
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
5165
5202
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
5166
5203
  */
5167
5204
  meshOwner?: string;
@@ -5209,7 +5246,7 @@ export interface UpdateVirtualRouterInput {
5209
5246
  */
5210
5247
  clientToken?: string;
5211
5248
  /**
5212
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
5249
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
5213
5250
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
5214
5251
  */
5215
5252
  meshOwner?: string;
@@ -5307,8 +5344,8 @@ export declare namespace VirtualServiceProvider {
5307
5344
  */
5308
5345
  export interface VirtualServiceSpec {
5309
5346
  /**
5310
- * <p>The App Mesh object that is acting as the provider for a virtual service. You can specify
5311
- * a single virtual node or virtual router.</p>
5347
+ * <p>The App Mesh object that is acting as the provider for a virtual service. You
5348
+ * can specify a single virtual node or virtual router.</p>
5312
5349
  */
5313
5350
  provider?: VirtualServiceProvider;
5314
5351
  }
@@ -5347,7 +5384,7 @@ export interface CreateVirtualServiceInput {
5347
5384
  */
5348
5385
  clientToken?: string;
5349
5386
  /**
5350
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then
5387
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then
5351
5388
  * the account that you specify must share the mesh with your account before you can create
5352
5389
  * the resource in the service mesh. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
5353
5390
  */
@@ -5438,7 +5475,7 @@ export interface DeleteVirtualServiceInput {
5438
5475
  */
5439
5476
  meshName: string | undefined;
5440
5477
  /**
5441
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
5478
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
5442
5479
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
5443
5480
  */
5444
5481
  meshOwner?: string;
@@ -5477,7 +5514,7 @@ export interface DescribeVirtualServiceInput {
5477
5514
  */
5478
5515
  meshName: string | undefined;
5479
5516
  /**
5480
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
5517
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
5481
5518
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
5482
5519
  */
5483
5520
  meshOwner?: string;
@@ -5530,7 +5567,7 @@ export interface ListVirtualServicesInput {
5530
5567
  */
5531
5568
  limit?: number;
5532
5569
  /**
5533
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
5570
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
5534
5571
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
5535
5572
  */
5536
5573
  meshOwner?: string;
@@ -5554,12 +5591,12 @@ export interface VirtualServiceRef {
5554
5591
  */
5555
5592
  virtualServiceName: string | undefined;
5556
5593
  /**
5557
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
5594
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
5558
5595
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
5559
5596
  */
5560
5597
  meshOwner: string | undefined;
5561
5598
  /**
5562
- * <p>The AWS IAM account ID of the resource owner. If the account ID is not your own, then it's
5599
+ * <p>The Amazon Web Services IAM account ID of the resource owner. If the account ID is not your own, then it's
5563
5600
  * the ID of the mesh owner or of another account that the mesh is shared with. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
5564
5601
  */
5565
5602
  resourceOwner: string | undefined;
@@ -5631,7 +5668,7 @@ export interface UpdateVirtualServiceInput {
5631
5668
  */
5632
5669
  clientToken?: string;
5633
5670
  /**
5634
- * <p>The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's
5671
+ * <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's
5635
5672
  * the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>
5636
5673
  */
5637
5674
  meshOwner?: string;
@@ -134,10 +134,27 @@ export declare namespace EgressFilter {
134
134
 
135
135
  const filterSensitiveLog: (obj: EgressFilter) => any;
136
136
  }
137
+ export declare enum IpPreference {
138
+ IPv4_ONLY = "IPv4_ONLY",
139
+ IPv4_PREFERRED = "IPv4_PREFERRED",
140
+ IPv6_ONLY = "IPv6_ONLY",
141
+ IPv6_PREFERRED = "IPv6_PREFERRED"
142
+ }
143
+
144
+ export interface MeshServiceDiscovery {
145
+
146
+ ipPreference?: IpPreference | string;
147
+ }
148
+ export declare namespace MeshServiceDiscovery {
149
+
150
+ const filterSensitiveLog: (obj: MeshServiceDiscovery) => any;
151
+ }
137
152
 
138
153
  export interface MeshSpec {
139
154
 
140
155
  egressFilter?: EgressFilter;
156
+
157
+ serviceDiscovery?: MeshServiceDiscovery;
141
158
  }
142
159
  export declare namespace MeshSpec {
143
160
 
@@ -2164,6 +2181,8 @@ export interface AwsCloudMapServiceDiscovery {
2164
2181
  serviceName: string | undefined;
2165
2182
 
2166
2183
  attributes?: AwsCloudMapInstanceAttribute[];
2184
+
2185
+ ipPreference?: IpPreference | string;
2167
2186
  }
2168
2187
  export declare namespace AwsCloudMapServiceDiscovery {
2169
2188
 
@@ -2179,6 +2198,8 @@ export interface DnsServiceDiscovery {
2179
2198
  hostname: string | undefined;
2180
2199
 
2181
2200
  responseType?: DnsResponseType | string;
2201
+
2202
+ ipPreference?: IpPreference | string;
2182
2203
  }
2183
2204
  export declare namespace DnsServiceDiscovery {
2184
2205
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aws-sdk/client-app-mesh",
3
3
  "description": "AWS SDK for JavaScript App Mesh Client for Node.js, Browser and React Native",
4
- "version": "3.87.0",
4
+ "version": "3.95.0",
5
5
  "scripts": {
6
6
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
7
7
  "build:cjs": "tsc -p tsconfig.cjs.json",
@@ -18,9 +18,9 @@
18
18
  "dependencies": {
19
19
  "@aws-crypto/sha256-browser": "2.0.0",
20
20
  "@aws-crypto/sha256-js": "2.0.0",
21
- "@aws-sdk/client-sts": "3.87.0",
21
+ "@aws-sdk/client-sts": "3.95.0",
22
22
  "@aws-sdk/config-resolver": "3.80.0",
23
- "@aws-sdk/credential-provider-node": "3.87.0",
23
+ "@aws-sdk/credential-provider-node": "3.95.0",
24
24
  "@aws-sdk/fetch-http-handler": "3.78.0",
25
25
  "@aws-sdk/hash-node": "3.78.0",
26
26
  "@aws-sdk/invalid-dependency": "3.78.0",
@@ -33,7 +33,7 @@
33
33
  "@aws-sdk/middleware-stack": "3.78.0",
34
34
  "@aws-sdk/middleware-user-agent": "3.78.0",
35
35
  "@aws-sdk/node-config-provider": "3.80.0",
36
- "@aws-sdk/node-http-handler": "3.82.0",
36
+ "@aws-sdk/node-http-handler": "3.94.0",
37
37
  "@aws-sdk/protocol-http": "3.78.0",
38
38
  "@aws-sdk/smithy-client": "3.85.0",
39
39
  "@aws-sdk/types": "3.78.0",