import { type HostHeaderInputConfig, type HostHeaderResolvedConfig } from "@aws-sdk/middleware-host-header"; import { type UserAgentInputConfig, type UserAgentResolvedConfig } from "@aws-sdk/middleware-user-agent"; import { type RegionInputConfig, type RegionResolvedConfig } from "@smithy/config-resolver"; import { type EndpointInputConfig, type EndpointResolvedConfig } from "@smithy/middleware-endpoint"; import { type RetryInputConfig, type RetryResolvedConfig } from "@smithy/middleware-retry"; import type { HttpHandlerUserInput as __HttpHandlerUserInput } from "@smithy/protocol-http"; import { type DefaultsMode as __DefaultsMode, type SmithyConfiguration as __SmithyConfiguration, type SmithyResolvedConfiguration as __SmithyResolvedConfiguration, Client as __Client } from "@smithy/smithy-client"; import type { AwsCredentialIdentityProvider, BodyLengthCalculator as __BodyLengthCalculator, CheckOptionalClientConfig as __CheckOptionalClientConfig, ChecksumConstructor as __ChecksumConstructor, Decoder as __Decoder, Encoder as __Encoder, HashConstructor as __HashConstructor, HttpHandlerOptions as __HttpHandlerOptions, Logger as __Logger, Provider as __Provider, StreamCollector as __StreamCollector, UrlParser as __UrlParser, UserAgent as __UserAgent } from "@smithy/types"; import { type HttpAuthSchemeInputConfig, type HttpAuthSchemeResolvedConfig } from "./auth/httpAuthSchemeProvider"; import type { AddListenerCertificatesCommandInput, AddListenerCertificatesCommandOutput } from "./commands/AddListenerCertificatesCommand"; import type { AddTagsCommandInput, AddTagsCommandOutput } from "./commands/AddTagsCommand"; import type { AddTrustStoreRevocationsCommandInput, AddTrustStoreRevocationsCommandOutput } from "./commands/AddTrustStoreRevocationsCommand"; import type { CreateListenerCommandInput, CreateListenerCommandOutput } from "./commands/CreateListenerCommand"; import type { CreateLoadBalancerCommandInput, CreateLoadBalancerCommandOutput } from "./commands/CreateLoadBalancerCommand"; import type { CreateRuleCommandInput, CreateRuleCommandOutput } from "./commands/CreateRuleCommand"; import type { CreateTargetGroupCommandInput, CreateTargetGroupCommandOutput } from "./commands/CreateTargetGroupCommand"; import type { CreateTrustStoreCommandInput, CreateTrustStoreCommandOutput } from "./commands/CreateTrustStoreCommand"; import type { DeleteListenerCommandInput, DeleteListenerCommandOutput } from "./commands/DeleteListenerCommand"; import type { DeleteLoadBalancerCommandInput, DeleteLoadBalancerCommandOutput } from "./commands/DeleteLoadBalancerCommand"; import type { DeleteRuleCommandInput, DeleteRuleCommandOutput } from "./commands/DeleteRuleCommand"; import type { DeleteSharedTrustStoreAssociationCommandInput, DeleteSharedTrustStoreAssociationCommandOutput } from "./commands/DeleteSharedTrustStoreAssociationCommand"; import type { DeleteTargetGroupCommandInput, DeleteTargetGroupCommandOutput } from "./commands/DeleteTargetGroupCommand"; import type { DeleteTrustStoreCommandInput, DeleteTrustStoreCommandOutput } from "./commands/DeleteTrustStoreCommand"; import type { DeregisterTargetsCommandInput, DeregisterTargetsCommandOutput } from "./commands/DeregisterTargetsCommand"; import type { DescribeAccountLimitsCommandInput, DescribeAccountLimitsCommandOutput } from "./commands/DescribeAccountLimitsCommand"; import type { DescribeCapacityReservationCommandInput, DescribeCapacityReservationCommandOutput } from "./commands/DescribeCapacityReservationCommand"; import type { DescribeListenerAttributesCommandInput, DescribeListenerAttributesCommandOutput } from "./commands/DescribeListenerAttributesCommand"; import type { DescribeListenerCertificatesCommandInput, DescribeListenerCertificatesCommandOutput } from "./commands/DescribeListenerCertificatesCommand"; import type { DescribeListenersCommandInput, DescribeListenersCommandOutput } from "./commands/DescribeListenersCommand"; import type { DescribeLoadBalancerAttributesCommandInput, DescribeLoadBalancerAttributesCommandOutput } from "./commands/DescribeLoadBalancerAttributesCommand"; import type { DescribeLoadBalancersCommandInput, DescribeLoadBalancersCommandOutput } from "./commands/DescribeLoadBalancersCommand"; import type { DescribeRulesCommandInput, DescribeRulesCommandOutput } from "./commands/DescribeRulesCommand"; import type { DescribeSSLPoliciesCommandInput, DescribeSSLPoliciesCommandOutput } from "./commands/DescribeSSLPoliciesCommand"; import type { DescribeTagsCommandInput, DescribeTagsCommandOutput } from "./commands/DescribeTagsCommand"; import type { DescribeTargetGroupAttributesCommandInput, DescribeTargetGroupAttributesCommandOutput } from "./commands/DescribeTargetGroupAttributesCommand"; import type { DescribeTargetGroupsCommandInput, DescribeTargetGroupsCommandOutput } from "./commands/DescribeTargetGroupsCommand"; import type { DescribeTargetHealthCommandInput, DescribeTargetHealthCommandOutput } from "./commands/DescribeTargetHealthCommand"; import type { DescribeTrustStoreAssociationsCommandInput, DescribeTrustStoreAssociationsCommandOutput } from "./commands/DescribeTrustStoreAssociationsCommand"; import type { DescribeTrustStoreRevocationsCommandInput, DescribeTrustStoreRevocationsCommandOutput } from "./commands/DescribeTrustStoreRevocationsCommand"; import type { DescribeTrustStoresCommandInput, DescribeTrustStoresCommandOutput } from "./commands/DescribeTrustStoresCommand"; import type { GetResourcePolicyCommandInput, GetResourcePolicyCommandOutput } from "./commands/GetResourcePolicyCommand"; import type { GetTrustStoreCaCertificatesBundleCommandInput, GetTrustStoreCaCertificatesBundleCommandOutput } from "./commands/GetTrustStoreCaCertificatesBundleCommand"; import type { GetTrustStoreRevocationContentCommandInput, GetTrustStoreRevocationContentCommandOutput } from "./commands/GetTrustStoreRevocationContentCommand"; import type { ModifyCapacityReservationCommandInput, ModifyCapacityReservationCommandOutput } from "./commands/ModifyCapacityReservationCommand"; import type { ModifyIpPoolsCommandInput, ModifyIpPoolsCommandOutput } from "./commands/ModifyIpPoolsCommand"; import type { ModifyListenerAttributesCommandInput, ModifyListenerAttributesCommandOutput } from "./commands/ModifyListenerAttributesCommand"; import type { ModifyListenerCommandInput, ModifyListenerCommandOutput } from "./commands/ModifyListenerCommand"; import type { ModifyLoadBalancerAttributesCommandInput, ModifyLoadBalancerAttributesCommandOutput } from "./commands/ModifyLoadBalancerAttributesCommand"; import type { ModifyRuleCommandInput, ModifyRuleCommandOutput } from "./commands/ModifyRuleCommand"; import type { ModifyTargetGroupAttributesCommandInput, ModifyTargetGroupAttributesCommandOutput } from "./commands/ModifyTargetGroupAttributesCommand"; import type { ModifyTargetGroupCommandInput, ModifyTargetGroupCommandOutput } from "./commands/ModifyTargetGroupCommand"; import type { ModifyTrustStoreCommandInput, ModifyTrustStoreCommandOutput } from "./commands/ModifyTrustStoreCommand"; import type { RegisterTargetsCommandInput, RegisterTargetsCommandOutput } from "./commands/RegisterTargetsCommand"; import type { RemoveListenerCertificatesCommandInput, RemoveListenerCertificatesCommandOutput } from "./commands/RemoveListenerCertificatesCommand"; import type { RemoveTagsCommandInput, RemoveTagsCommandOutput } from "./commands/RemoveTagsCommand"; import type { RemoveTrustStoreRevocationsCommandInput, RemoveTrustStoreRevocationsCommandOutput } from "./commands/RemoveTrustStoreRevocationsCommand"; import type { SetIpAddressTypeCommandInput, SetIpAddressTypeCommandOutput } from "./commands/SetIpAddressTypeCommand"; import type { SetRulePrioritiesCommandInput, SetRulePrioritiesCommandOutput } from "./commands/SetRulePrioritiesCommand"; import type { SetSecurityGroupsCommandInput, SetSecurityGroupsCommandOutput } from "./commands/SetSecurityGroupsCommand"; import type { SetSubnetsCommandInput, SetSubnetsCommandOutput } from "./commands/SetSubnetsCommand"; import { type ClientInputEndpointParameters, type ClientResolvedEndpointParameters, type EndpointParameters } from "./endpoint/EndpointParameters"; import { type RuntimeExtension, type RuntimeExtensionsConfig } from "./runtimeExtensions"; export { __Client }; /** * @public */ export type ServiceInputTypes = AddListenerCertificatesCommandInput | AddTagsCommandInput | AddTrustStoreRevocationsCommandInput | CreateListenerCommandInput | CreateLoadBalancerCommandInput | CreateRuleCommandInput | CreateTargetGroupCommandInput | CreateTrustStoreCommandInput | DeleteListenerCommandInput | DeleteLoadBalancerCommandInput | DeleteRuleCommandInput | DeleteSharedTrustStoreAssociationCommandInput | DeleteTargetGroupCommandInput | DeleteTrustStoreCommandInput | DeregisterTargetsCommandInput | DescribeAccountLimitsCommandInput | DescribeCapacityReservationCommandInput | DescribeListenerAttributesCommandInput | DescribeListenerCertificatesCommandInput | DescribeListenersCommandInput | DescribeLoadBalancerAttributesCommandInput | DescribeLoadBalancersCommandInput | DescribeRulesCommandInput | DescribeSSLPoliciesCommandInput | DescribeTagsCommandInput | DescribeTargetGroupAttributesCommandInput | DescribeTargetGroupsCommandInput | DescribeTargetHealthCommandInput | DescribeTrustStoreAssociationsCommandInput | DescribeTrustStoreRevocationsCommandInput | DescribeTrustStoresCommandInput | GetResourcePolicyCommandInput | GetTrustStoreCaCertificatesBundleCommandInput | GetTrustStoreRevocationContentCommandInput | ModifyCapacityReservationCommandInput | ModifyIpPoolsCommandInput | ModifyListenerAttributesCommandInput | ModifyListenerCommandInput | ModifyLoadBalancerAttributesCommandInput | ModifyRuleCommandInput | ModifyTargetGroupAttributesCommandInput | ModifyTargetGroupCommandInput | ModifyTrustStoreCommandInput | RegisterTargetsCommandInput | RemoveListenerCertificatesCommandInput | RemoveTagsCommandInput | RemoveTrustStoreRevocationsCommandInput | SetIpAddressTypeCommandInput | SetRulePrioritiesCommandInput | SetSecurityGroupsCommandInput | SetSubnetsCommandInput; /** * @public */ export type ServiceOutputTypes = AddListenerCertificatesCommandOutput | AddTagsCommandOutput | AddTrustStoreRevocationsCommandOutput | CreateListenerCommandOutput | CreateLoadBalancerCommandOutput | CreateRuleCommandOutput | CreateTargetGroupCommandOutput | CreateTrustStoreCommandOutput | DeleteListenerCommandOutput | DeleteLoadBalancerCommandOutput | DeleteRuleCommandOutput | DeleteSharedTrustStoreAssociationCommandOutput | DeleteTargetGroupCommandOutput | DeleteTrustStoreCommandOutput | DeregisterTargetsCommandOutput | DescribeAccountLimitsCommandOutput | DescribeCapacityReservationCommandOutput | DescribeListenerAttributesCommandOutput | DescribeListenerCertificatesCommandOutput | DescribeListenersCommandOutput | DescribeLoadBalancerAttributesCommandOutput | DescribeLoadBalancersCommandOutput | DescribeRulesCommandOutput | DescribeSSLPoliciesCommandOutput | DescribeTagsCommandOutput | DescribeTargetGroupAttributesCommandOutput | DescribeTargetGroupsCommandOutput | DescribeTargetHealthCommandOutput | DescribeTrustStoreAssociationsCommandOutput | DescribeTrustStoreRevocationsCommandOutput | DescribeTrustStoresCommandOutput | GetResourcePolicyCommandOutput | GetTrustStoreCaCertificatesBundleCommandOutput | GetTrustStoreRevocationContentCommandOutput | ModifyCapacityReservationCommandOutput | ModifyIpPoolsCommandOutput | ModifyListenerAttributesCommandOutput | ModifyListenerCommandOutput | ModifyLoadBalancerAttributesCommandOutput | ModifyRuleCommandOutput | ModifyTargetGroupAttributesCommandOutput | ModifyTargetGroupCommandOutput | ModifyTrustStoreCommandOutput | RegisterTargetsCommandOutput | RemoveListenerCertificatesCommandOutput | RemoveTagsCommandOutput | RemoveTrustStoreRevocationsCommandOutput | SetIpAddressTypeCommandOutput | SetRulePrioritiesCommandOutput | SetSecurityGroupsCommandOutput | SetSubnetsCommandOutput; /** * @public */ export interface ClientDefaults extends Partial<__SmithyConfiguration<__HttpHandlerOptions>> { /** * The HTTP handler to use or its constructor options. Fetch in browser and Https in Nodejs. */ requestHandler?: __HttpHandlerUserInput; /** * A constructor for a class implementing the {@link @smithy/types#ChecksumConstructor} interface * that computes the SHA-256 HMAC or checksum of a string or binary buffer. * @internal */ sha256?: __ChecksumConstructor | __HashConstructor; /** * The function that will be used to convert strings into HTTP endpoints. * @internal */ urlParser?: __UrlParser; /** * A function that can calculate the length of a request body. * @internal */ bodyLengthChecker?: __BodyLengthCalculator; /** * A function that converts a stream into an array of bytes. * @internal */ streamCollector?: __StreamCollector; /** * The function that will be used to convert a base64-encoded string to a byte array. * @internal */ base64Decoder?: __Decoder; /** * The function that will be used to convert binary data to a base64-encoded string. * @internal */ base64Encoder?: __Encoder; /** * The function that will be used to convert a UTF8-encoded string to a byte array. * @internal */ utf8Decoder?: __Decoder; /** * The function that will be used to convert binary data to a UTF-8 encoded string. * @internal */ utf8Encoder?: __Encoder; /** * The runtime environment. * @internal */ runtime?: string; /** * Disable dynamically changing the endpoint of the client based on the hostPrefix * trait of an operation. */ disableHostPrefix?: boolean; /** * Unique service identifier. * @internal */ serviceId?: string; /** * Enables IPv6/IPv4 dualstack endpoint. */ useDualstackEndpoint?: boolean | __Provider; /** * Enables FIPS compatible endpoints. */ useFipsEndpoint?: boolean | __Provider; /** * The AWS region to which this client will send requests */ region?: string | __Provider; /** * Setting a client profile is similar to setting a value for the * AWS_PROFILE environment variable. Setting a profile on a client * in code only affects the single client instance, unlike AWS_PROFILE. * * When set, and only for environments where an AWS configuration * file exists, fields configurable by this file will be retrieved * from the specified profile within that file. * Conflicting code configuration and environment variables will * still have higher priority. * * For client credential resolution that involves checking the AWS * configuration file, the client's profile (this value) will be * used unless a different profile is set in the credential * provider options. * */ profile?: string; /** * The provider populating default tracking information to be sent with `user-agent`, `x-amz-user-agent` header * @internal */ defaultUserAgentProvider?: __Provider<__UserAgent>; /** * Default credentials provider; Not available in browser runtime. * @deprecated * @internal */ credentialDefaultProvider?: (input: any) => AwsCredentialIdentityProvider; /** * Value for how many times a request will be made at most in case of retry. */ maxAttempts?: number | __Provider; /** * Specifies which retry algorithm to use. * @see https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-smithy-util-retry/Enum/RETRY_MODES/ * */ retryMode?: string | __Provider; /** * Optional logger for logging debug/info/warn/error. */ logger?: __Logger; /** * Optional extensions */ extensions?: RuntimeExtension[]; /** * The {@link @smithy/smithy-client#DefaultsMode} that will be used to determine how certain default configuration options are resolved in the SDK. */ defaultsMode?: __DefaultsMode | __Provider<__DefaultsMode>; } /** * @public */ export type ElasticLoadBalancingV2ClientConfigType = Partial<__SmithyConfiguration<__HttpHandlerOptions>> & ClientDefaults & UserAgentInputConfig & RetryInputConfig & RegionInputConfig & HostHeaderInputConfig & EndpointInputConfig & HttpAuthSchemeInputConfig & ClientInputEndpointParameters; /** * @public * * The configuration interface of ElasticLoadBalancingV2Client class constructor that set the region, credentials and other options. */ export interface ElasticLoadBalancingV2ClientConfig extends ElasticLoadBalancingV2ClientConfigType { } /** * @public */ export type ElasticLoadBalancingV2ClientResolvedConfigType = __SmithyResolvedConfiguration<__HttpHandlerOptions> & Required & RuntimeExtensionsConfig & UserAgentResolvedConfig & RetryResolvedConfig & RegionResolvedConfig & HostHeaderResolvedConfig & EndpointResolvedConfig & HttpAuthSchemeResolvedConfig & ClientResolvedEndpointParameters; /** * @public * * The resolved configuration interface of ElasticLoadBalancingV2Client class. This is resolved and normalized from the {@link ElasticLoadBalancingV2ClientConfig | constructor configuration interface}. */ export interface ElasticLoadBalancingV2ClientResolvedConfig extends ElasticLoadBalancingV2ClientResolvedConfigType { } /** * Elastic Load Balancing *

A load balancer distributes incoming traffic across targets, such as your EC2 instances. * This enables you to increase the availability of your application. The load balancer also * monitors the health of its registered targets and ensures that it routes traffic only to * healthy targets. You configure your load balancer to accept incoming traffic by specifying one * or more listeners, which are configured with a protocol and port number for connections from * clients to the load balancer. You configure a target group with a protocol and port number for * connections from the load balancer to the targets, and with health check settings to be used * when checking the health status of the targets.

*

Elastic Load Balancing supports the following types of load balancers: Application Load * Balancers, Network Load Balancers, Gateway Load Balancers, and Classic Load Balancers. This * reference covers the following load balancer types:

*
    *
  • *

    Application Load Balancer - Operates at the application layer (layer 7) and supports * HTTP and HTTPS.

    *
  • *
  • *

    Network Load Balancer - Operates at the transport layer (layer 4) and supports TCP, * TLS, UDP, and QUIC.

    *
  • *
  • *

    Gateway Load Balancer - Operates at the network layer (layer 3).

    *
  • *
*

For more information, see the Elastic Load Balancing User * Guide.

*

All Elastic Load Balancing operations are idempotent, which means that they complete at * most one time. If you repeat an operation, it succeeds.

* @public */ export declare class ElasticLoadBalancingV2Client extends __Client<__HttpHandlerOptions, ServiceInputTypes, ServiceOutputTypes, ElasticLoadBalancingV2ClientResolvedConfig> { /** * The resolved configuration of ElasticLoadBalancingV2Client class. This is resolved and normalized from the {@link ElasticLoadBalancingV2ClientConfig | constructor configuration interface}. */ readonly config: ElasticLoadBalancingV2ClientResolvedConfig; constructor(...[configuration]: __CheckOptionalClientConfig); /** * Destroy underlying resources, like sockets. It's usually not necessary to do this. * However in Node.js, it's best to explicitly shut down the client's agent when it is no longer needed. * Otherwise, sockets might stay open for quite a long time before the server terminates them. */ destroy(): void; }