💾 Archived View for gmi.noulin.net › gitRepositories › git-off › file › src › node_modules › aws-sdk… captured on 2024-09-29 at 00:41:27. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2023-01-29)

-=-=-=-=-=-=-

git-off

Log

Files

Refs

README

elb.d.ts (69116B)

     1 import {Request} from '../lib/request';
     2 import {Response} from '../lib/response';
     3 import {AWSError} from '../lib/error';
     4 import {Service} from '../lib/service';
     5 import {ServiceConfigurationOptions} from '../lib/service';
     6 import {ConfigBase as Config} from '../lib/config';
     7 interface Blob {}
     8 declare class ELB extends Service {
     9   /**
    10    * Constructs a service object. This object has one method for each API operation.
    11    */
    12   constructor(options?: ELB.Types.ClientConfiguration)
    13   config: Config & ELB.Types.ClientConfiguration;
    14   /**
    15    * Adds the specified tags to the specified load balancer. Each load balancer can have a maximum of 10 tags. Each tag consists of a key and an optional value. If a tag with the same key is already associated with the load balancer, AddTags updates its value. For more information, see Tag Your Classic Load Balancer in the Classic Load Balancers Guide.
    16    */
    17   addTags(params: ELB.Types.AddTagsInput, callback?: (err: AWSError, data: ELB.Types.AddTagsOutput) => void): Request<ELB.Types.AddTagsOutput, AWSError>;
    18   /**
    19    * Adds the specified tags to the specified load balancer. Each load balancer can have a maximum of 10 tags. Each tag consists of a key and an optional value. If a tag with the same key is already associated with the load balancer, AddTags updates its value. For more information, see Tag Your Classic Load Balancer in the Classic Load Balancers Guide.
    20    */
    21   addTags(callback?: (err: AWSError, data: ELB.Types.AddTagsOutput) => void): Request<ELB.Types.AddTagsOutput, AWSError>;
    22   /**
    23    * Associates one or more security groups with your load balancer in a virtual private cloud (VPC). The specified security groups override the previously associated security groups. For more information, see Security Groups for Load Balancers in a VPC in the Classic Load Balancers Guide.
    24    */
    25   applySecurityGroupsToLoadBalancer(params: ELB.Types.ApplySecurityGroupsToLoadBalancerInput, callback?: (err: AWSError, data: ELB.Types.ApplySecurityGroupsToLoadBalancerOutput) => void): Request<ELB.Types.ApplySecurityGroupsToLoadBalancerOutput, AWSError>;
    26   /**
    27    * Associates one or more security groups with your load balancer in a virtual private cloud (VPC). The specified security groups override the previously associated security groups. For more information, see Security Groups for Load Balancers in a VPC in the Classic Load Balancers Guide.
    28    */
    29   applySecurityGroupsToLoadBalancer(callback?: (err: AWSError, data: ELB.Types.ApplySecurityGroupsToLoadBalancerOutput) => void): Request<ELB.Types.ApplySecurityGroupsToLoadBalancerOutput, AWSError>;
    30   /**
    31    * Adds one or more subnets to the set of configured subnets for the specified load balancer. The load balancer evenly distributes requests across all registered subnets. For more information, see Add or Remove Subnets for Your Load Balancer in a VPC in the Classic Load Balancers Guide.
    32    */
    33   attachLoadBalancerToSubnets(params: ELB.Types.AttachLoadBalancerToSubnetsInput, callback?: (err: AWSError, data: ELB.Types.AttachLoadBalancerToSubnetsOutput) => void): Request<ELB.Types.AttachLoadBalancerToSubnetsOutput, AWSError>;
    34   /**
    35    * Adds one or more subnets to the set of configured subnets for the specified load balancer. The load balancer evenly distributes requests across all registered subnets. For more information, see Add or Remove Subnets for Your Load Balancer in a VPC in the Classic Load Balancers Guide.
    36    */
    37   attachLoadBalancerToSubnets(callback?: (err: AWSError, data: ELB.Types.AttachLoadBalancerToSubnetsOutput) => void): Request<ELB.Types.AttachLoadBalancerToSubnetsOutput, AWSError>;
    38   /**
    39    * Specifies the health check settings to use when evaluating the health state of your EC2 instances. For more information, see Configure Health Checks for Your Load Balancer in the Classic Load Balancers Guide.
    40    */
    41   configureHealthCheck(params: ELB.Types.ConfigureHealthCheckInput, callback?: (err: AWSError, data: ELB.Types.ConfigureHealthCheckOutput) => void): Request<ELB.Types.ConfigureHealthCheckOutput, AWSError>;
    42   /**
    43    * Specifies the health check settings to use when evaluating the health state of your EC2 instances. For more information, see Configure Health Checks for Your Load Balancer in the Classic Load Balancers Guide.
    44    */
    45   configureHealthCheck(callback?: (err: AWSError, data: ELB.Types.ConfigureHealthCheckOutput) => void): Request<ELB.Types.ConfigureHealthCheckOutput, AWSError>;
    46   /**
    47    * Generates a stickiness policy with sticky session lifetimes that follow that of an application-generated cookie. This policy can be associated only with HTTP/HTTPS listeners. This policy is similar to the policy created by CreateLBCookieStickinessPolicy, except that the lifetime of the special Elastic Load Balancing cookie, AWSELB, follows the lifetime of the application-generated cookie specified in the policy configuration. The load balancer only inserts a new stickiness cookie when the application response includes a new application cookie. If the application cookie is explicitly removed or expires, the session stops being sticky until a new application cookie is issued. For more information, see Application-Controlled Session Stickiness in the Classic Load Balancers Guide.
    48    */
    49   createAppCookieStickinessPolicy(params: ELB.Types.CreateAppCookieStickinessPolicyInput, callback?: (err: AWSError, data: ELB.Types.CreateAppCookieStickinessPolicyOutput) => void): Request<ELB.Types.CreateAppCookieStickinessPolicyOutput, AWSError>;
    50   /**
    51    * Generates a stickiness policy with sticky session lifetimes that follow that of an application-generated cookie. This policy can be associated only with HTTP/HTTPS listeners. This policy is similar to the policy created by CreateLBCookieStickinessPolicy, except that the lifetime of the special Elastic Load Balancing cookie, AWSELB, follows the lifetime of the application-generated cookie specified in the policy configuration. The load balancer only inserts a new stickiness cookie when the application response includes a new application cookie. If the application cookie is explicitly removed or expires, the session stops being sticky until a new application cookie is issued. For more information, see Application-Controlled Session Stickiness in the Classic Load Balancers Guide.
    52    */
    53   createAppCookieStickinessPolicy(callback?: (err: AWSError, data: ELB.Types.CreateAppCookieStickinessPolicyOutput) => void): Request<ELB.Types.CreateAppCookieStickinessPolicyOutput, AWSError>;
    54   /**
    55    * Generates a stickiness policy with sticky session lifetimes controlled by the lifetime of the browser (user-agent) or a specified expiration period. This policy can be associated only with HTTP/HTTPS listeners. When a load balancer implements this policy, the load balancer uses a special cookie to track the instance for each request. When the load balancer receives a request, it first checks to see if this cookie is present in the request. If so, the load balancer sends the request to the application server specified in the cookie. If not, the load balancer sends the request to a server that is chosen based on the existing load-balancing algorithm. A cookie is inserted into the response for binding subsequent requests from the same user to that server. The validity of the cookie is based on the cookie expiration time, which is specified in the policy configuration. For more information, see Duration-Based Session Stickiness in the Classic Load Balancers Guide.
    56    */
    57   createLBCookieStickinessPolicy(params: ELB.Types.CreateLBCookieStickinessPolicyInput, callback?: (err: AWSError, data: ELB.Types.CreateLBCookieStickinessPolicyOutput) => void): Request<ELB.Types.CreateLBCookieStickinessPolicyOutput, AWSError>;
    58   /**
    59    * Generates a stickiness policy with sticky session lifetimes controlled by the lifetime of the browser (user-agent) or a specified expiration period. This policy can be associated only with HTTP/HTTPS listeners. When a load balancer implements this policy, the load balancer uses a special cookie to track the instance for each request. When the load balancer receives a request, it first checks to see if this cookie is present in the request. If so, the load balancer sends the request to the application server specified in the cookie. If not, the load balancer sends the request to a server that is chosen based on the existing load-balancing algorithm. A cookie is inserted into the response for binding subsequent requests from the same user to that server. The validity of the cookie is based on the cookie expiration time, which is specified in the policy configuration. For more information, see Duration-Based Session Stickiness in the Classic Load Balancers Guide.
    60    */
    61   createLBCookieStickinessPolicy(callback?: (err: AWSError, data: ELB.Types.CreateLBCookieStickinessPolicyOutput) => void): Request<ELB.Types.CreateLBCookieStickinessPolicyOutput, AWSError>;
    62   /**
    63    * Creates a Classic load balancer. You can add listeners, security groups, subnets, and tags when you create your load balancer, or you can add them later using CreateLoadBalancerListeners, ApplySecurityGroupsToLoadBalancer, AttachLoadBalancerToSubnets, and AddTags. To describe your current load balancers, see DescribeLoadBalancers. When you are finished with a load balancer, you can delete it using DeleteLoadBalancer. You can create up to 20 load balancers per region per account. You can request an increase for the number of load balancers for your account. For more information, see Limits for Your Classic Load Balancer in the Classic Load Balancers Guide.
    64    */
    65   createLoadBalancer(params: ELB.Types.CreateAccessPointInput, callback?: (err: AWSError, data: ELB.Types.CreateAccessPointOutput) => void): Request<ELB.Types.CreateAccessPointOutput, AWSError>;
    66   /**
    67    * Creates a Classic load balancer. You can add listeners, security groups, subnets, and tags when you create your load balancer, or you can add them later using CreateLoadBalancerListeners, ApplySecurityGroupsToLoadBalancer, AttachLoadBalancerToSubnets, and AddTags. To describe your current load balancers, see DescribeLoadBalancers. When you are finished with a load balancer, you can delete it using DeleteLoadBalancer. You can create up to 20 load balancers per region per account. You can request an increase for the number of load balancers for your account. For more information, see Limits for Your Classic Load Balancer in the Classic Load Balancers Guide.
    68    */
    69   createLoadBalancer(callback?: (err: AWSError, data: ELB.Types.CreateAccessPointOutput) => void): Request<ELB.Types.CreateAccessPointOutput, AWSError>;
    70   /**
    71    * Creates one or more listeners for the specified load balancer. If a listener with the specified port does not already exist, it is created; otherwise, the properties of the new listener must match the properties of the existing listener. For more information, see Listeners for Your Classic Load Balancer in the Classic Load Balancers Guide.
    72    */
    73   createLoadBalancerListeners(params: ELB.Types.CreateLoadBalancerListenerInput, callback?: (err: AWSError, data: ELB.Types.CreateLoadBalancerListenerOutput) => void): Request<ELB.Types.CreateLoadBalancerListenerOutput, AWSError>;
    74   /**
    75    * Creates one or more listeners for the specified load balancer. If a listener with the specified port does not already exist, it is created; otherwise, the properties of the new listener must match the properties of the existing listener. For more information, see Listeners for Your Classic Load Balancer in the Classic Load Balancers Guide.
    76    */
    77   createLoadBalancerListeners(callback?: (err: AWSError, data: ELB.Types.CreateLoadBalancerListenerOutput) => void): Request<ELB.Types.CreateLoadBalancerListenerOutput, AWSError>;
    78   /**
    79    * Creates a policy with the specified attributes for the specified load balancer. Policies are settings that are saved for your load balancer and that can be applied to the listener or the application server, depending on the policy type.
    80    */
    81   createLoadBalancerPolicy(params: ELB.Types.CreateLoadBalancerPolicyInput, callback?: (err: AWSError, data: ELB.Types.CreateLoadBalancerPolicyOutput) => void): Request<ELB.Types.CreateLoadBalancerPolicyOutput, AWSError>;
    82   /**
    83    * Creates a policy with the specified attributes for the specified load balancer. Policies are settings that are saved for your load balancer and that can be applied to the listener or the application server, depending on the policy type.
    84    */
    85   createLoadBalancerPolicy(callback?: (err: AWSError, data: ELB.Types.CreateLoadBalancerPolicyOutput) => void): Request<ELB.Types.CreateLoadBalancerPolicyOutput, AWSError>;
    86   /**
    87    * Deletes the specified load balancer. If you are attempting to recreate a load balancer, you must reconfigure all settings. The DNS name associated with a deleted load balancer are no longer usable. The name and associated DNS record of the deleted load balancer no longer exist and traffic sent to any of its IP addresses is no longer delivered to your instances. If the load balancer does not exist or has already been deleted, the call to DeleteLoadBalancer still succeeds.
    88    */
    89   deleteLoadBalancer(params: ELB.Types.DeleteAccessPointInput, callback?: (err: AWSError, data: ELB.Types.DeleteAccessPointOutput) => void): Request<ELB.Types.DeleteAccessPointOutput, AWSError>;
    90   /**
    91    * Deletes the specified load balancer. If you are attempting to recreate a load balancer, you must reconfigure all settings. The DNS name associated with a deleted load balancer are no longer usable. The name and associated DNS record of the deleted load balancer no longer exist and traffic sent to any of its IP addresses is no longer delivered to your instances. If the load balancer does not exist or has already been deleted, the call to DeleteLoadBalancer still succeeds.
    92    */
    93   deleteLoadBalancer(callback?: (err: AWSError, data: ELB.Types.DeleteAccessPointOutput) => void): Request<ELB.Types.DeleteAccessPointOutput, AWSError>;
    94   /**
    95    * Deletes the specified listeners from the specified load balancer.
    96    */
    97   deleteLoadBalancerListeners(params: ELB.Types.DeleteLoadBalancerListenerInput, callback?: (err: AWSError, data: ELB.Types.DeleteLoadBalancerListenerOutput) => void): Request<ELB.Types.DeleteLoadBalancerListenerOutput, AWSError>;
    98   /**
    99    * Deletes the specified listeners from the specified load balancer.
   100    */
   101   deleteLoadBalancerListeners(callback?: (err: AWSError, data: ELB.Types.DeleteLoadBalancerListenerOutput) => void): Request<ELB.Types.DeleteLoadBalancerListenerOutput, AWSError>;
   102   /**
   103    * Deletes the specified policy from the specified load balancer. This policy must not be enabled for any listeners.
   104    */
   105   deleteLoadBalancerPolicy(params: ELB.Types.DeleteLoadBalancerPolicyInput, callback?: (err: AWSError, data: ELB.Types.DeleteLoadBalancerPolicyOutput) => void): Request<ELB.Types.DeleteLoadBalancerPolicyOutput, AWSError>;
   106   /**
   107    * Deletes the specified policy from the specified load balancer. This policy must not be enabled for any listeners.
   108    */
   109   deleteLoadBalancerPolicy(callback?: (err: AWSError, data: ELB.Types.DeleteLoadBalancerPolicyOutput) => void): Request<ELB.Types.DeleteLoadBalancerPolicyOutput, AWSError>;
   110   /**
   111    * Deregisters the specified instances from the specified load balancer. After the instance is deregistered, it no longer receives traffic from the load balancer. You can use DescribeLoadBalancers to verify that the instance is deregistered from the load balancer. For more information, see Register or De-Register EC2 Instances in the Classic Load Balancers Guide.
   112    */
   113   deregisterInstancesFromLoadBalancer(params: ELB.Types.DeregisterEndPointsInput, callback?: (err: AWSError, data: ELB.Types.DeregisterEndPointsOutput) => void): Request<ELB.Types.DeregisterEndPointsOutput, AWSError>;
   114   /**
   115    * Deregisters the specified instances from the specified load balancer. After the instance is deregistered, it no longer receives traffic from the load balancer. You can use DescribeLoadBalancers to verify that the instance is deregistered from the load balancer. For more information, see Register or De-Register EC2 Instances in the Classic Load Balancers Guide.
   116    */
   117   deregisterInstancesFromLoadBalancer(callback?: (err: AWSError, data: ELB.Types.DeregisterEndPointsOutput) => void): Request<ELB.Types.DeregisterEndPointsOutput, AWSError>;
   118   /**
   119    * Describes the state of the specified instances with respect to the specified load balancer. If no instances are specified, the call describes the state of all instances that are currently registered with the load balancer. If instances are specified, their state is returned even if they are no longer registered with the load balancer. The state of terminated instances is not returned.
   120    */
   121   describeInstanceHealth(params: ELB.Types.DescribeEndPointStateInput, callback?: (err: AWSError, data: ELB.Types.DescribeEndPointStateOutput) => void): Request<ELB.Types.DescribeEndPointStateOutput, AWSError>;
   122   /**
   123    * Describes the state of the specified instances with respect to the specified load balancer. If no instances are specified, the call describes the state of all instances that are currently registered with the load balancer. If instances are specified, their state is returned even if they are no longer registered with the load balancer. The state of terminated instances is not returned.
   124    */
   125   describeInstanceHealth(callback?: (err: AWSError, data: ELB.Types.DescribeEndPointStateOutput) => void): Request<ELB.Types.DescribeEndPointStateOutput, AWSError>;
   126   /**
   127    * Describes the attributes for the specified load balancer.
   128    */
   129   describeLoadBalancerAttributes(params: ELB.Types.DescribeLoadBalancerAttributesInput, callback?: (err: AWSError, data: ELB.Types.DescribeLoadBalancerAttributesOutput) => void): Request<ELB.Types.DescribeLoadBalancerAttributesOutput, AWSError>;
   130   /**
   131    * Describes the attributes for the specified load balancer.
   132    */
   133   describeLoadBalancerAttributes(callback?: (err: AWSError, data: ELB.Types.DescribeLoadBalancerAttributesOutput) => void): Request<ELB.Types.DescribeLoadBalancerAttributesOutput, AWSError>;
   134   /**
   135    * Describes the specified policies. If you specify a load balancer name, the action returns the descriptions of all policies created for the load balancer. If you specify a policy name associated with your load balancer, the action returns the description of that policy. If you don't specify a load balancer name, the action returns descriptions of the specified sample policies, or descriptions of all sample policies. The names of the sample policies have the ELBSample- prefix.
   136    */
   137   describeLoadBalancerPolicies(params: ELB.Types.DescribeLoadBalancerPoliciesInput, callback?: (err: AWSError, data: ELB.Types.DescribeLoadBalancerPoliciesOutput) => void): Request<ELB.Types.DescribeLoadBalancerPoliciesOutput, AWSError>;
   138   /**
   139    * Describes the specified policies. If you specify a load balancer name, the action returns the descriptions of all policies created for the load balancer. If you specify a policy name associated with your load balancer, the action returns the description of that policy. If you don't specify a load balancer name, the action returns descriptions of the specified sample policies, or descriptions of all sample policies. The names of the sample policies have the ELBSample- prefix.
   140    */
   141   describeLoadBalancerPolicies(callback?: (err: AWSError, data: ELB.Types.DescribeLoadBalancerPoliciesOutput) => void): Request<ELB.Types.DescribeLoadBalancerPoliciesOutput, AWSError>;
   142   /**
   143    * Describes the specified load balancer policy types or all load balancer policy types. The description of each type indicates how it can be used. For example, some policies can be used only with layer 7 listeners, some policies can be used only with layer 4 listeners, and some policies can be used only with your EC2 instances. You can use CreateLoadBalancerPolicy to create a policy configuration for any of these policy types. Then, depending on the policy type, use either SetLoadBalancerPoliciesOfListener or SetLoadBalancerPoliciesForBackendServer to set the policy.
   144    */
   145   describeLoadBalancerPolicyTypes(params: ELB.Types.DescribeLoadBalancerPolicyTypesInput, callback?: (err: AWSError, data: ELB.Types.DescribeLoadBalancerPolicyTypesOutput) => void): Request<ELB.Types.DescribeLoadBalancerPolicyTypesOutput, AWSError>;
   146   /**
   147    * Describes the specified load balancer policy types or all load balancer policy types. The description of each type indicates how it can be used. For example, some policies can be used only with layer 7 listeners, some policies can be used only with layer 4 listeners, and some policies can be used only with your EC2 instances. You can use CreateLoadBalancerPolicy to create a policy configuration for any of these policy types. Then, depending on the policy type, use either SetLoadBalancerPoliciesOfListener or SetLoadBalancerPoliciesForBackendServer to set the policy.
   148    */
   149   describeLoadBalancerPolicyTypes(callback?: (err: AWSError, data: ELB.Types.DescribeLoadBalancerPolicyTypesOutput) => void): Request<ELB.Types.DescribeLoadBalancerPolicyTypesOutput, AWSError>;
   150   /**
   151    * Describes the specified the load balancers. If no load balancers are specified, the call describes all of your load balancers.
   152    */
   153   describeLoadBalancers(params: ELB.Types.DescribeAccessPointsInput, callback?: (err: AWSError, data: ELB.Types.DescribeAccessPointsOutput) => void): Request<ELB.Types.DescribeAccessPointsOutput, AWSError>;
   154   /**
   155    * Describes the specified the load balancers. If no load balancers are specified, the call describes all of your load balancers.
   156    */
   157   describeLoadBalancers(callback?: (err: AWSError, data: ELB.Types.DescribeAccessPointsOutput) => void): Request<ELB.Types.DescribeAccessPointsOutput, AWSError>;
   158   /**
   159    * Describes the tags associated with the specified load balancers.
   160    */
   161   describeTags(params: ELB.Types.DescribeTagsInput, callback?: (err: AWSError, data: ELB.Types.DescribeTagsOutput) => void): Request<ELB.Types.DescribeTagsOutput, AWSError>;
   162   /**
   163    * Describes the tags associated with the specified load balancers.
   164    */
   165   describeTags(callback?: (err: AWSError, data: ELB.Types.DescribeTagsOutput) => void): Request<ELB.Types.DescribeTagsOutput, AWSError>;
   166   /**
   167    * Removes the specified subnets from the set of configured subnets for the load balancer. After a subnet is removed, all EC2 instances registered with the load balancer in the removed subnet go into the OutOfService state. Then, the load balancer balances the traffic among the remaining routable subnets.
   168    */
   169   detachLoadBalancerFromSubnets(params: ELB.Types.DetachLoadBalancerFromSubnetsInput, callback?: (err: AWSError, data: ELB.Types.DetachLoadBalancerFromSubnetsOutput) => void): Request<ELB.Types.DetachLoadBalancerFromSubnetsOutput, AWSError>;
   170   /**
   171    * Removes the specified subnets from the set of configured subnets for the load balancer. After a subnet is removed, all EC2 instances registered with the load balancer in the removed subnet go into the OutOfService state. Then, the load balancer balances the traffic among the remaining routable subnets.
   172    */
   173   detachLoadBalancerFromSubnets(callback?: (err: AWSError, data: ELB.Types.DetachLoadBalancerFromSubnetsOutput) => void): Request<ELB.Types.DetachLoadBalancerFromSubnetsOutput, AWSError>;
   174   /**
   175    * Removes the specified Availability Zones from the set of Availability Zones for the specified load balancer. There must be at least one Availability Zone registered with a load balancer at all times. After an Availability Zone is removed, all instances registered with the load balancer that are in the removed Availability Zone go into the OutOfService state. Then, the load balancer attempts to equally balance the traffic among its remaining Availability Zones. For more information, see Add or Remove Availability Zones in the Classic Load Balancers Guide.
   176    */
   177   disableAvailabilityZonesForLoadBalancer(params: ELB.Types.RemoveAvailabilityZonesInput, callback?: (err: AWSError, data: ELB.Types.RemoveAvailabilityZonesOutput) => void): Request<ELB.Types.RemoveAvailabilityZonesOutput, AWSError>;
   178   /**
   179    * Removes the specified Availability Zones from the set of Availability Zones for the specified load balancer. There must be at least one Availability Zone registered with a load balancer at all times. After an Availability Zone is removed, all instances registered with the load balancer that are in the removed Availability Zone go into the OutOfService state. Then, the load balancer attempts to equally balance the traffic among its remaining Availability Zones. For more information, see Add or Remove Availability Zones in the Classic Load Balancers Guide.
   180    */
   181   disableAvailabilityZonesForLoadBalancer(callback?: (err: AWSError, data: ELB.Types.RemoveAvailabilityZonesOutput) => void): Request<ELB.Types.RemoveAvailabilityZonesOutput, AWSError>;
   182   /**
   183    * Adds the specified Availability Zones to the set of Availability Zones for the specified load balancer. The load balancer evenly distributes requests across all its registered Availability Zones that contain instances. For more information, see Add or Remove Availability Zones in the Classic Load Balancers Guide.
   184    */
   185   enableAvailabilityZonesForLoadBalancer(params: ELB.Types.AddAvailabilityZonesInput, callback?: (err: AWSError, data: ELB.Types.AddAvailabilityZonesOutput) => void): Request<ELB.Types.AddAvailabilityZonesOutput, AWSError>;
   186   /**
   187    * Adds the specified Availability Zones to the set of Availability Zones for the specified load balancer. The load balancer evenly distributes requests across all its registered Availability Zones that contain instances. For more information, see Add or Remove Availability Zones in the Classic Load Balancers Guide.
   188    */
   189   enableAvailabilityZonesForLoadBalancer(callback?: (err: AWSError, data: ELB.Types.AddAvailabilityZonesOutput) => void): Request<ELB.Types.AddAvailabilityZonesOutput, AWSError>;
   190   /**
   191    * Modifies the attributes of the specified load balancer. You can modify the load balancer attributes, such as AccessLogs, ConnectionDraining, and CrossZoneLoadBalancing by either enabling or disabling them. Or, you can modify the load balancer attribute ConnectionSettings by specifying an idle connection timeout value for your load balancer. For more information, see the following in the Classic Load Balancers Guide:    Cross-Zone Load Balancing     Connection Draining     Access Logs     Idle Connection Timeout   
   192    */
   193   modifyLoadBalancerAttributes(params: ELB.Types.ModifyLoadBalancerAttributesInput, callback?: (err: AWSError, data: ELB.Types.ModifyLoadBalancerAttributesOutput) => void): Request<ELB.Types.ModifyLoadBalancerAttributesOutput, AWSError>;
   194   /**
   195    * Modifies the attributes of the specified load balancer. You can modify the load balancer attributes, such as AccessLogs, ConnectionDraining, and CrossZoneLoadBalancing by either enabling or disabling them. Or, you can modify the load balancer attribute ConnectionSettings by specifying an idle connection timeout value for your load balancer. For more information, see the following in the Classic Load Balancers Guide:    Cross-Zone Load Balancing     Connection Draining     Access Logs     Idle Connection Timeout   
   196    */
   197   modifyLoadBalancerAttributes(callback?: (err: AWSError, data: ELB.Types.ModifyLoadBalancerAttributesOutput) => void): Request<ELB.Types.ModifyLoadBalancerAttributesOutput, AWSError>;
   198   /**
   199    * Adds the specified instances to the specified load balancer. The instance must be a running instance in the same network as the load balancer (EC2-Classic or the same VPC). If you have EC2-Classic instances and a load balancer in a VPC with ClassicLink enabled, you can link the EC2-Classic instances to that VPC and then register the linked EC2-Classic instances with the load balancer in the VPC. Note that RegisterInstanceWithLoadBalancer completes when the request has been registered. Instance registration takes a little time to complete. To check the state of the registered instances, use DescribeLoadBalancers or DescribeInstanceHealth. After the instance is registered, it starts receiving traffic and requests from the load balancer. Any instance that is not in one of the Availability Zones registered for the load balancer is moved to the OutOfService state. If an Availability Zone is added to the load balancer later, any instances registered with the load balancer move to the InService state. To deregister instances from a load balancer, use DeregisterInstancesFromLoadBalancer. For more information, see Register or De-Register EC2 Instances in the Classic Load Balancers Guide.
   200    */
   201   registerInstancesWithLoadBalancer(params: ELB.Types.RegisterEndPointsInput, callback?: (err: AWSError, data: ELB.Types.RegisterEndPointsOutput) => void): Request<ELB.Types.RegisterEndPointsOutput, AWSError>;
   202   /**
   203    * Adds the specified instances to the specified load balancer. The instance must be a running instance in the same network as the load balancer (EC2-Classic or the same VPC). If you have EC2-Classic instances and a load balancer in a VPC with ClassicLink enabled, you can link the EC2-Classic instances to that VPC and then register the linked EC2-Classic instances with the load balancer in the VPC. Note that RegisterInstanceWithLoadBalancer completes when the request has been registered. Instance registration takes a little time to complete. To check the state of the registered instances, use DescribeLoadBalancers or DescribeInstanceHealth. After the instance is registered, it starts receiving traffic and requests from the load balancer. Any instance that is not in one of the Availability Zones registered for the load balancer is moved to the OutOfService state. If an Availability Zone is added to the load balancer later, any instances registered with the load balancer move to the InService state. To deregister instances from a load balancer, use DeregisterInstancesFromLoadBalancer. For more information, see Register or De-Register EC2 Instances in the Classic Load Balancers Guide.
   204    */
   205   registerInstancesWithLoadBalancer(callback?: (err: AWSError, data: ELB.Types.RegisterEndPointsOutput) => void): Request<ELB.Types.RegisterEndPointsOutput, AWSError>;
   206   /**
   207    * Removes one or more tags from the specified load balancer.
   208    */
   209   removeTags(params: ELB.Types.RemoveTagsInput, callback?: (err: AWSError, data: ELB.Types.RemoveTagsOutput) => void): Request<ELB.Types.RemoveTagsOutput, AWSError>;
   210   /**
   211    * Removes one or more tags from the specified load balancer.
   212    */
   213   removeTags(callback?: (err: AWSError, data: ELB.Types.RemoveTagsOutput) => void): Request<ELB.Types.RemoveTagsOutput, AWSError>;
   214   /**
   215    * Sets the certificate that terminates the specified listener's SSL connections. The specified certificate replaces any prior certificate that was used on the same load balancer and port. For more information about updating your SSL certificate, see Replace the SSL Certificate for Your Load Balancer in the Classic Load Balancers Guide.
   216    */
   217   setLoadBalancerListenerSSLCertificate(params: ELB.Types.SetLoadBalancerListenerSSLCertificateInput, callback?: (err: AWSError, data: ELB.Types.SetLoadBalancerListenerSSLCertificateOutput) => void): Request<ELB.Types.SetLoadBalancerListenerSSLCertificateOutput, AWSError>;
   218   /**
   219    * Sets the certificate that terminates the specified listener's SSL connections. The specified certificate replaces any prior certificate that was used on the same load balancer and port. For more information about updating your SSL certificate, see Replace the SSL Certificate for Your Load Balancer in the Classic Load Balancers Guide.
   220    */
   221   setLoadBalancerListenerSSLCertificate(callback?: (err: AWSError, data: ELB.Types.SetLoadBalancerListenerSSLCertificateOutput) => void): Request<ELB.Types.SetLoadBalancerListenerSSLCertificateOutput, AWSError>;
   222   /**
   223    * Replaces the set of policies associated with the specified port on which the EC2 instance is listening with a new set of policies. At this time, only the back-end server authentication policy type can be applied to the instance ports; this policy type is composed of multiple public key policies. Each time you use SetLoadBalancerPoliciesForBackendServer to enable the policies, use the PolicyNames parameter to list the policies that you want to enable. You can use DescribeLoadBalancers or DescribeLoadBalancerPolicies to verify that the policy is associated with the EC2 instance. For more information about enabling back-end instance authentication, see Configure Back-end Instance Authentication in the Classic Load Balancers Guide. For more information about Proxy Protocol, see Configure Proxy Protocol Support in the Classic Load Balancers Guide.
   224    */
   225   setLoadBalancerPoliciesForBackendServer(params: ELB.Types.SetLoadBalancerPoliciesForBackendServerInput, callback?: (err: AWSError, data: ELB.Types.SetLoadBalancerPoliciesForBackendServerOutput) => void): Request<ELB.Types.SetLoadBalancerPoliciesForBackendServerOutput, AWSError>;
   226   /**
   227    * Replaces the set of policies associated with the specified port on which the EC2 instance is listening with a new set of policies. At this time, only the back-end server authentication policy type can be applied to the instance ports; this policy type is composed of multiple public key policies. Each time you use SetLoadBalancerPoliciesForBackendServer to enable the policies, use the PolicyNames parameter to list the policies that you want to enable. You can use DescribeLoadBalancers or DescribeLoadBalancerPolicies to verify that the policy is associated with the EC2 instance. For more information about enabling back-end instance authentication, see Configure Back-end Instance Authentication in the Classic Load Balancers Guide. For more information about Proxy Protocol, see Configure Proxy Protocol Support in the Classic Load Balancers Guide.
   228    */
   229   setLoadBalancerPoliciesForBackendServer(callback?: (err: AWSError, data: ELB.Types.SetLoadBalancerPoliciesForBackendServerOutput) => void): Request<ELB.Types.SetLoadBalancerPoliciesForBackendServerOutput, AWSError>;
   230   /**
   231    * Replaces the current set of policies for the specified load balancer port with the specified set of policies. To enable back-end server authentication, use SetLoadBalancerPoliciesForBackendServer. For more information about setting policies, see Update the SSL Negotiation Configuration, Duration-Based Session Stickiness, and Application-Controlled Session Stickiness in the Classic Load Balancers Guide.
   232    */
   233   setLoadBalancerPoliciesOfListener(params: ELB.Types.SetLoadBalancerPoliciesOfListenerInput, callback?: (err: AWSError, data: ELB.Types.SetLoadBalancerPoliciesOfListenerOutput) => void): Request<ELB.Types.SetLoadBalancerPoliciesOfListenerOutput, AWSError>;
   234   /**
   235    * Replaces the current set of policies for the specified load balancer port with the specified set of policies. To enable back-end server authentication, use SetLoadBalancerPoliciesForBackendServer. For more information about setting policies, see Update the SSL Negotiation Configuration, Duration-Based Session Stickiness, and Application-Controlled Session Stickiness in the Classic Load Balancers Guide.
   236    */
   237   setLoadBalancerPoliciesOfListener(callback?: (err: AWSError, data: ELB.Types.SetLoadBalancerPoliciesOfListenerOutput) => void): Request<ELB.Types.SetLoadBalancerPoliciesOfListenerOutput, AWSError>;
   238   /**
   239    * Waits for the instanceDeregistered state by periodically calling the underlying ELB.describeInstanceHealthoperation every 15 seconds (at most 40 times).
   240    */
   241   waitFor(state: "instanceDeregistered", params: ELB.Types.DescribeEndPointStateInput, callback?: (err: AWSError, data: ELB.Types.DescribeEndPointStateOutput) => void): Request<ELB.Types.DescribeEndPointStateOutput, AWSError>;
   242   /**
   243    * Waits for the instanceDeregistered state by periodically calling the underlying ELB.describeInstanceHealthoperation every 15 seconds (at most 40 times).
   244    */
   245   waitFor(state: "instanceDeregistered", callback?: (err: AWSError, data: ELB.Types.DescribeEndPointStateOutput) => void): Request<ELB.Types.DescribeEndPointStateOutput, AWSError>;
   246   /**
   247    * Waits for the anyInstanceInService state by periodically calling the underlying ELB.describeInstanceHealthoperation every 15 seconds (at most 40 times).
   248    */
   249   waitFor(state: "anyInstanceInService", params: ELB.Types.DescribeEndPointStateInput, callback?: (err: AWSError, data: ELB.Types.DescribeEndPointStateOutput) => void): Request<ELB.Types.DescribeEndPointStateOutput, AWSError>;
   250   /**
   251    * Waits for the anyInstanceInService state by periodically calling the underlying ELB.describeInstanceHealthoperation every 15 seconds (at most 40 times).
   252    */
   253   waitFor(state: "anyInstanceInService", callback?: (err: AWSError, data: ELB.Types.DescribeEndPointStateOutput) => void): Request<ELB.Types.DescribeEndPointStateOutput, AWSError>;
   254   /**
   255    * Waits for the instanceInService state by periodically calling the underlying ELB.describeInstanceHealthoperation every 15 seconds (at most 40 times).
   256    */
   257   waitFor(state: "instanceInService", params: ELB.Types.DescribeEndPointStateInput, callback?: (err: AWSError, data: ELB.Types.DescribeEndPointStateOutput) => void): Request<ELB.Types.DescribeEndPointStateOutput, AWSError>;
   258   /**
   259    * Waits for the instanceInService state by periodically calling the underlying ELB.describeInstanceHealthoperation every 15 seconds (at most 40 times).
   260    */
   261   waitFor(state: "instanceInService", callback?: (err: AWSError, data: ELB.Types.DescribeEndPointStateOutput) => void): Request<ELB.Types.DescribeEndPointStateOutput, AWSError>;
   262 }
   263 declare namespace ELB.Types {
   264   export interface AccessLog {
   265     /**
   266      * Specifies whether access logs are enabled for the load balancer.
   267      */
   268     Enabled: AccessLogEnabled;
   269     /**
   270      * The name of the Amazon S3 bucket where the access logs are stored.
   271      */
   272     S3BucketName?: S3BucketName;
   273     /**
   274      * The interval for publishing the access logs. You can specify an interval of either 5 minutes or 60 minutes. Default: 60 minutes
   275      */
   276     EmitInterval?: AccessLogInterval;
   277     /**
   278      * The logical hierarchy you created for your Amazon S3 bucket, for example my-bucket-prefix/prod. If the prefix is not provided, the log is placed at the root level of the bucket.
   279      */
   280     S3BucketPrefix?: AccessLogPrefix;
   281   }
   282   export type AccessLogEnabled = boolean;
   283   export type AccessLogInterval = number;
   284   export type AccessLogPrefix = string;
   285   export type AccessPointName = string;
   286   export type AccessPointPort = number;
   287   export interface AddAvailabilityZonesInput {
   288     /**
   289      * The name of the load balancer.
   290      */
   291     LoadBalancerName: AccessPointName;
   292     /**
   293      * The Availability Zones. These must be in the same region as the load balancer.
   294      */
   295     AvailabilityZones: AvailabilityZones;
   296   }
   297   export interface AddAvailabilityZonesOutput {
   298     /**
   299      * The updated list of Availability Zones for the load balancer.
   300      */
   301     AvailabilityZones?: AvailabilityZones;
   302   }
   303   export interface AddTagsInput {
   304     /**
   305      * The name of the load balancer. You can specify one load balancer only.
   306      */
   307     LoadBalancerNames: LoadBalancerNames;
   308     /**
   309      * The tags.
   310      */
   311     Tags: TagList;
   312   }
   313   export interface AddTagsOutput {
   314   }
   315   export interface AdditionalAttribute {
   316     /**
   317      * This parameter is reserved.
   318      */
   319     Key?: AdditionalAttributeKey;
   320     /**
   321      * This parameter is reserved.
   322      */
   323     Value?: AdditionalAttributeValue;
   324   }
   325   export type AdditionalAttributeKey = string;
   326   export type AdditionalAttributeValue = string;
   327   export type AdditionalAttributes = AdditionalAttribute[];
   328   export type AppCookieStickinessPolicies = AppCookieStickinessPolicy[];
   329   export interface AppCookieStickinessPolicy {
   330     /**
   331      * The mnemonic name for the policy being created. The name must be unique within a set of policies for this load balancer.
   332      */
   333     PolicyName?: PolicyName;
   334     /**
   335      * The name of the application cookie used for stickiness.
   336      */
   337     CookieName?: CookieName;
   338   }
   339   export interface ApplySecurityGroupsToLoadBalancerInput {
   340     /**
   341      * The name of the load balancer.
   342      */
   343     LoadBalancerName: AccessPointName;
   344     /**
   345      * The IDs of the security groups to associate with the load balancer. Note that you cannot specify the name of the security group.
   346      */
   347     SecurityGroups: SecurityGroups;
   348   }
   349   export interface ApplySecurityGroupsToLoadBalancerOutput {
   350     /**
   351      * The IDs of the security groups associated with the load balancer.
   352      */
   353     SecurityGroups?: SecurityGroups;
   354   }
   355   export interface AttachLoadBalancerToSubnetsInput {
   356     /**
   357      * The name of the load balancer.
   358      */
   359     LoadBalancerName: AccessPointName;
   360     /**
   361      * The IDs of the subnets to add. You can add only one subnet per Availability Zone.
   362      */
   363     Subnets: Subnets;
   364   }
   365   export interface AttachLoadBalancerToSubnetsOutput {
   366     /**
   367      * The IDs of the subnets attached to the load balancer.
   368      */
   369     Subnets?: Subnets;
   370   }
   371   export type AttributeName = string;
   372   export type AttributeType = string;
   373   export type AttributeValue = string;
   374   export type AvailabilityZone = string;
   375   export type AvailabilityZones = AvailabilityZone[];
   376   export interface BackendServerDescription {
   377     /**
   378      * The port on which the EC2 instance is listening.
   379      */
   380     InstancePort?: InstancePort;
   381     /**
   382      * The names of the policies enabled for the EC2 instance.
   383      */
   384     PolicyNames?: PolicyNames;
   385   }
   386   export type BackendServerDescriptions = BackendServerDescription[];
   387   export type Cardinality = string;
   388   export interface ConfigureHealthCheckInput {
   389     /**
   390      * The name of the load balancer.
   391      */
   392     LoadBalancerName: AccessPointName;
   393     /**
   394      * The configuration information.
   395      */
   396     HealthCheck: HealthCheck;
   397   }
   398   export interface ConfigureHealthCheckOutput {
   399     /**
   400      * The updated health check.
   401      */
   402     HealthCheck?: HealthCheck;
   403   }
   404   export interface ConnectionDraining {
   405     /**
   406      * Specifies whether connection draining is enabled for the load balancer.
   407      */
   408     Enabled: ConnectionDrainingEnabled;
   409     /**
   410      * The maximum time, in seconds, to keep the existing connections open before deregistering the instances.
   411      */
   412     Timeout?: ConnectionDrainingTimeout;
   413   }
   414   export type ConnectionDrainingEnabled = boolean;
   415   export type ConnectionDrainingTimeout = number;
   416   export interface ConnectionSettings {
   417     /**
   418      * The time, in seconds, that the connection is allowed to be idle (no data has been sent over the connection) before it is closed by the load balancer.
   419      */
   420     IdleTimeout: IdleTimeout;
   421   }
   422   export type CookieExpirationPeriod = number;
   423   export type CookieName = string;
   424   export interface CreateAccessPointInput {
   425     /**
   426      * The name of the load balancer. This name must be unique within your set of load balancers for the region, must have a maximum of 32 characters, must contain only alphanumeric characters or hyphens, and cannot begin or end with a hyphen.
   427      */
   428     LoadBalancerName: AccessPointName;
   429     /**
   430      * The listeners. For more information, see Listeners for Your Classic Load Balancer in the Classic Load Balancers Guide.
   431      */
   432     Listeners: Listeners;
   433     /**
   434      * One or more Availability Zones from the same region as the load balancer. You must specify at least one Availability Zone. You can add more Availability Zones after you create the load balancer using EnableAvailabilityZonesForLoadBalancer.
   435      */
   436     AvailabilityZones?: AvailabilityZones;
   437     /**
   438      * The IDs of the subnets in your VPC to attach to the load balancer. Specify one subnet per Availability Zone specified in AvailabilityZones.
   439      */
   440     Subnets?: Subnets;
   441     /**
   442      * The IDs of the security groups to assign to the load balancer.
   443      */
   444     SecurityGroups?: SecurityGroups;
   445     /**
   446      * The type of a load balancer. Valid only for load balancers in a VPC. By default, Elastic Load Balancing creates an Internet-facing load balancer with a DNS name that resolves to public IP addresses. For more information about Internet-facing and Internal load balancers, see Load Balancer Scheme in the Elastic Load Balancing User Guide. Specify internal to create a load balancer with a DNS name that resolves to private IP addresses.
   447      */
   448     Scheme?: LoadBalancerScheme;
   449     /**
   450      * A list of tags to assign to the load balancer. For more information about tagging your load balancer, see Tag Your Classic Load Balancer in the Classic Load Balancers Guide.
   451      */
   452     Tags?: TagList;
   453   }
   454   export interface CreateAccessPointOutput {
   455     /**
   456      * The DNS name of the load balancer.
   457      */
   458     DNSName?: DNSName;
   459   }
   460   export interface CreateAppCookieStickinessPolicyInput {
   461     /**
   462      * The name of the load balancer.
   463      */
   464     LoadBalancerName: AccessPointName;
   465     /**
   466      * The name of the policy being created. Policy names must consist of alphanumeric characters and dashes (-). This name must be unique within the set of policies for this load balancer.
   467      */
   468     PolicyName: PolicyName;
   469     /**
   470      * The name of the application cookie used for stickiness.
   471      */
   472     CookieName: CookieName;
   473   }
   474   export interface CreateAppCookieStickinessPolicyOutput {
   475   }
   476   export interface CreateLBCookieStickinessPolicyInput {
   477     /**
   478      * The name of the load balancer.
   479      */
   480     LoadBalancerName: AccessPointName;
   481     /**
   482      * The name of the policy being created. Policy names must consist of alphanumeric characters and dashes (-). This name must be unique within the set of policies for this load balancer.
   483      */
   484     PolicyName: PolicyName;
   485     /**
   486      * The time period, in seconds, after which the cookie should be considered stale. If you do not specify this parameter, the default value is 0, which indicates that the sticky session should last for the duration of the browser session.
   487      */
   488     CookieExpirationPeriod?: CookieExpirationPeriod;
   489   }
   490   export interface CreateLBCookieStickinessPolicyOutput {
   491   }
   492   export interface CreateLoadBalancerListenerInput {
   493     /**
   494      * The name of the load balancer.
   495      */
   496     LoadBalancerName: AccessPointName;
   497     /**
   498      * The listeners.
   499      */
   500     Listeners: Listeners;
   501   }
   502   export interface CreateLoadBalancerListenerOutput {
   503   }
   504   export interface CreateLoadBalancerPolicyInput {
   505     /**
   506      * The name of the load balancer.
   507      */
   508     LoadBalancerName: AccessPointName;
   509     /**
   510      * The name of the load balancer policy to be created. This name must be unique within the set of policies for this load balancer.
   511      */
   512     PolicyName: PolicyName;
   513     /**
   514      * The name of the base policy type. To get the list of policy types, use DescribeLoadBalancerPolicyTypes.
   515      */
   516     PolicyTypeName: PolicyTypeName;
   517     /**
   518      * The policy attributes.
   519      */
   520     PolicyAttributes?: PolicyAttributes;
   521   }
   522   export interface CreateLoadBalancerPolicyOutput {
   523   }
   524   export type CreatedTime = Date;
   525   export interface CrossZoneLoadBalancing {
   526     /**
   527      * Specifies whether cross-zone load balancing is enabled for the load balancer.
   528      */
   529     Enabled: CrossZoneLoadBalancingEnabled;
   530   }
   531   export type CrossZoneLoadBalancingEnabled = boolean;
   532   export type DNSName = string;
   533   export type DefaultValue = string;
   534   export interface DeleteAccessPointInput {
   535     /**
   536      * The name of the load balancer.
   537      */
   538     LoadBalancerName: AccessPointName;
   539   }
   540   export interface DeleteAccessPointOutput {
   541   }
   542   export interface DeleteLoadBalancerListenerInput {
   543     /**
   544      * The name of the load balancer.
   545      */
   546     LoadBalancerName: AccessPointName;
   547     /**
   548      * The client port numbers of the listeners.
   549      */
   550     LoadBalancerPorts: Ports;
   551   }
   552   export interface DeleteLoadBalancerListenerOutput {
   553   }
   554   export interface DeleteLoadBalancerPolicyInput {
   555     /**
   556      * The name of the load balancer.
   557      */
   558     LoadBalancerName: AccessPointName;
   559     /**
   560      * The name of the policy.
   561      */
   562     PolicyName: PolicyName;
   563   }
   564   export interface DeleteLoadBalancerPolicyOutput {
   565   }
   566   export interface DeregisterEndPointsInput {
   567     /**
   568      * The name of the load balancer.
   569      */
   570     LoadBalancerName: AccessPointName;
   571     /**
   572      * The IDs of the instances.
   573      */
   574     Instances: Instances;
   575   }
   576   export interface DeregisterEndPointsOutput {
   577     /**
   578      * The remaining instances registered with the load balancer.
   579      */
   580     Instances?: Instances;
   581   }
   582   export interface DescribeAccessPointsInput {
   583     /**
   584      * The names of the load balancers.
   585      */
   586     LoadBalancerNames?: LoadBalancerNames;
   587     /**
   588      * The marker for the next set of results. (You received this marker from a previous call.)
   589      */
   590     Marker?: Marker;
   591     /**
   592      * The maximum number of results to return with this call (a number from 1 to 400). The default is 400.
   593      */
   594     PageSize?: PageSize;
   595   }
   596   export interface DescribeAccessPointsOutput {
   597     /**
   598      * Information about the load balancers.
   599      */
   600     LoadBalancerDescriptions?: LoadBalancerDescriptions;
   601     /**
   602      * The marker to use when requesting the next set of results. If there are no additional results, the string is empty.
   603      */
   604     NextMarker?: Marker;
   605   }
   606   export interface DescribeEndPointStateInput {
   607     /**
   608      * The name of the load balancer.
   609      */
   610     LoadBalancerName: AccessPointName;
   611     /**
   612      * The IDs of the instances.
   613      */
   614     Instances?: Instances;
   615   }
   616   export interface DescribeEndPointStateOutput {
   617     /**
   618      * Information about the health of the instances.
   619      */
   620     InstanceStates?: InstanceStates;
   621   }
   622   export interface DescribeLoadBalancerAttributesInput {
   623     /**
   624      * The name of the load balancer.
   625      */
   626     LoadBalancerName: AccessPointName;
   627   }
   628   export interface DescribeLoadBalancerAttributesOutput {
   629     /**
   630      * Information about the load balancer attributes.
   631      */
   632     LoadBalancerAttributes?: LoadBalancerAttributes;
   633   }
   634   export interface DescribeLoadBalancerPoliciesInput {
   635     /**
   636      * The name of the load balancer.
   637      */
   638     LoadBalancerName?: AccessPointName;
   639     /**
   640      * The names of the policies.
   641      */
   642     PolicyNames?: PolicyNames;
   643   }
   644   export interface DescribeLoadBalancerPoliciesOutput {
   645     /**
   646      * Information about the policies.
   647      */
   648     PolicyDescriptions?: PolicyDescriptions;
   649   }
   650   export interface DescribeLoadBalancerPolicyTypesInput {
   651     /**
   652      * The names of the policy types. If no names are specified, describes all policy types defined by Elastic Load Balancing.
   653      */
   654     PolicyTypeNames?: PolicyTypeNames;
   655   }
   656   export interface DescribeLoadBalancerPolicyTypesOutput {
   657     /**
   658      * Information about the policy types.
   659      */
   660     PolicyTypeDescriptions?: PolicyTypeDescriptions;
   661   }
   662   export interface DescribeTagsInput {
   663     /**
   664      * The names of the load balancers.
   665      */
   666     LoadBalancerNames: LoadBalancerNamesMax20;
   667   }
   668   export interface DescribeTagsOutput {
   669     /**
   670      * Information about the tags.
   671      */
   672     TagDescriptions?: TagDescriptions;
   673   }
   674   export type Description = string;
   675   export interface DetachLoadBalancerFromSubnetsInput {
   676     /**
   677      * The name of the load balancer.
   678      */
   679     LoadBalancerName: AccessPointName;
   680     /**
   681      * The IDs of the subnets.
   682      */
   683     Subnets: Subnets;
   684   }
   685   export interface DetachLoadBalancerFromSubnetsOutput {
   686     /**
   687      * The IDs of the remaining subnets for the load balancer.
   688      */
   689     Subnets?: Subnets;
   690   }
   691   export type EndPointPort = number;
   692   export interface HealthCheck {
   693     /**
   694      * The instance being checked. The protocol is either TCP, HTTP, HTTPS, or SSL. The range of valid ports is one (1) through 65535. TCP is the default, specified as a TCP: port pair, for example "TCP:5000". In this case, a health check simply attempts to open a TCP connection to the instance on the specified port. Failure to connect within the configured timeout is considered unhealthy. SSL is also specified as SSL: port pair, for example, SSL:5000. For HTTP/HTTPS, you must include a ping path in the string. HTTP is specified as a HTTP:port;/;PathToPing; grouping, for example "HTTP:80/weather/us/wa/seattle". In this case, a HTTP GET request is issued to the instance on the given port and path. Any answer other than "200 OK" within the timeout period is considered unhealthy. The total length of the HTTP ping target must be 1024 16-bit Unicode characters or less.
   695      */
   696     Target: HealthCheckTarget;
   697     /**
   698      * The approximate interval, in seconds, between health checks of an individual instance.
   699      */
   700     Interval: HealthCheckInterval;
   701     /**
   702      * The amount of time, in seconds, during which no response means a failed health check. This value must be less than the Interval value.
   703      */
   704     Timeout: HealthCheckTimeout;
   705     /**
   706      * The number of consecutive health check failures required before moving the instance to the Unhealthy state.
   707      */
   708     UnhealthyThreshold: UnhealthyThreshold;
   709     /**
   710      * The number of consecutive health checks successes required before moving the instance to the Healthy state.
   711      */
   712     HealthyThreshold: HealthyThreshold;
   713   }
   714   export type HealthCheckInterval = number;
   715   export type HealthCheckTarget = string;
   716   export type HealthCheckTimeout = number;
   717   export type HealthyThreshold = number;
   718   export type IdleTimeout = number;
   719   export interface Instance {
   720     /**
   721      * The instance ID.
   722      */
   723     InstanceId?: InstanceId;
   724   }
   725   export type InstanceId = string;
   726   export type InstancePort = number;
   727   export interface InstanceState {
   728     /**
   729      * The ID of the instance.
   730      */
   731     InstanceId?: InstanceId;
   732     /**
   733      * The current state of the instance. Valid values: InService | OutOfService | Unknown 
   734      */
   735     State?: State;
   736     /**
   737      * Information about the cause of OutOfService instances. Specifically, whether the cause is Elastic Load Balancing or the instance. Valid values: ELB | Instance | N/A 
   738      */
   739     ReasonCode?: ReasonCode;
   740     /**
   741      * A description of the instance state. This string can contain one or more of the following messages.    N/A     A transient error occurred. Please try again later.     Instance has failed at least the UnhealthyThreshold number of health checks consecutively.     Instance has not passed the configured HealthyThreshold number of health checks consecutively.     Instance registration is still in progress.     Instance is in the EC2 Availability Zone for which LoadBalancer is not configured to route traffic to.     Instance is not currently registered with the LoadBalancer.     Instance deregistration currently in progress.     Disable Availability Zone is currently in progress.     Instance is in pending state.     Instance is in stopped state.     Instance is in terminated state.   
   742      */
   743     Description?: Description;
   744   }
   745   export type InstanceStates = InstanceState[];
   746   export type Instances = Instance[];
   747   export type LBCookieStickinessPolicies = LBCookieStickinessPolicy[];
   748   export interface LBCookieStickinessPolicy {
   749     /**
   750      * The name of the policy. This name must be unique within the set of policies for this load balancer.
   751      */
   752     PolicyName?: PolicyName;
   753     /**
   754      * The time period, in seconds, after which the cookie should be considered stale. If this parameter is not specified, the stickiness session lasts for the duration of the browser session.
   755      */
   756     CookieExpirationPeriod?: CookieExpirationPeriod;
   757   }
   758   export interface Listener {
   759     /**
   760      * The load balancer transport protocol to use for routing: HTTP, HTTPS, TCP, or SSL.
   761      */
   762     Protocol: Protocol;
   763     /**
   764      * The port on which the load balancer is listening. On EC2-VPC, you can specify any port from the range 1-65535. On EC2-Classic, you can specify any port from the following list: 25, 80, 443, 465, 587, 1024-65535.
   765      */
   766     LoadBalancerPort: AccessPointPort;
   767     /**
   768      * The protocol to use for routing traffic to instances: HTTP, HTTPS, TCP, or SSL. If the front-end protocol is HTTP, HTTPS, TCP, or SSL, InstanceProtocol must be at the same protocol. If there is another listener with the same InstancePort whose InstanceProtocol is secure, (HTTPS or SSL), the listener's InstanceProtocol must also be secure. If there is another listener with the same InstancePort whose InstanceProtocol is HTTP or TCP, the listener's InstanceProtocol must be HTTP or TCP.
   769      */
   770     InstanceProtocol?: Protocol;
   771     /**
   772      * The port on which the instance is listening.
   773      */
   774     InstancePort: InstancePort;
   775     /**
   776      * The Amazon Resource Name (ARN) of the server certificate.
   777      */
   778     SSLCertificateId?: SSLCertificateId;
   779   }
   780   export interface ListenerDescription {
   781     Listener?: Listener;
   782     /**
   783      * The policies. If there are no policies enabled, the list is empty.
   784      */
   785     PolicyNames?: PolicyNames;
   786   }
   787   export type ListenerDescriptions = ListenerDescription[];
   788   export type Listeners = Listener[];
   789   export interface LoadBalancerAttributes {
   790     /**
   791      * If enabled, the load balancer routes the request traffic evenly across all instances regardless of the Availability Zones. For more information, see Configure Cross-Zone Load Balancing in the Classic Load Balancers Guide.
   792      */
   793     CrossZoneLoadBalancing?: CrossZoneLoadBalancing;
   794     /**
   795      * If enabled, the load balancer captures detailed information of all requests and delivers the information to the Amazon S3 bucket that you specify. For more information, see Enable Access Logs in the Classic Load Balancers Guide.
   796      */
   797     AccessLog?: AccessLog;
   798     /**
   799      * If enabled, the load balancer allows existing requests to complete before the load balancer shifts traffic away from a deregistered or unhealthy instance. For more information, see Configure Connection Draining in the Classic Load Balancers Guide.
   800      */
   801     ConnectionDraining?: ConnectionDraining;
   802     /**
   803      * If enabled, the load balancer allows the connections to remain idle (no data is sent over the connection) for the specified duration. By default, Elastic Load Balancing maintains a 60-second idle connection timeout for both front-end and back-end connections of your load balancer. For more information, see Configure Idle Connection Timeout in the Classic Load Balancers Guide.
   804      */
   805     ConnectionSettings?: ConnectionSettings;
   806     /**
   807      * This parameter is reserved.
   808      */
   809     AdditionalAttributes?: AdditionalAttributes;
   810   }
   811   export interface LoadBalancerDescription {
   812     /**
   813      * The name of the load balancer.
   814      */
   815     LoadBalancerName?: AccessPointName;
   816     /**
   817      * The DNS name of the load balancer.
   818      */
   819     DNSName?: DNSName;
   820     /**
   821      * The DNS name of the load balancer. For more information, see Configure a Custom Domain Name in the Classic Load Balancers Guide.
   822      */
   823     CanonicalHostedZoneName?: DNSName;
   824     /**
   825      * The ID of the Amazon Route 53 hosted zone for the load balancer.
   826      */
   827     CanonicalHostedZoneNameID?: DNSName;
   828     /**
   829      * The listeners for the load balancer.
   830      */
   831     ListenerDescriptions?: ListenerDescriptions;
   832     /**
   833      * The policies defined for the load balancer.
   834      */
   835     Policies?: Policies;
   836     /**
   837      * Information about your EC2 instances.
   838      */
   839     BackendServerDescriptions?: BackendServerDescriptions;
   840     /**
   841      * The Availability Zones for the load balancer.
   842      */
   843     AvailabilityZones?: AvailabilityZones;
   844     /**
   845      * The IDs of the subnets for the load balancer.
   846      */
   847     Subnets?: Subnets;
   848     /**
   849      * The ID of the VPC for the load balancer.
   850      */
   851     VPCId?: VPCId;
   852     /**
   853      * The IDs of the instances for the load balancer.
   854      */
   855     Instances?: Instances;
   856     /**
   857      * Information about the health checks conducted on the load balancer.
   858      */
   859     HealthCheck?: HealthCheck;
   860     /**
   861      * The security group for the load balancer, which you can use as part of your inbound rules for your registered instances. To only allow traffic from load balancers, add a security group rule that specifies this source security group as the inbound source.
   862      */
   863     SourceSecurityGroup?: SourceSecurityGroup;
   864     /**
   865      * The security groups for the load balancer. Valid only for load balancers in a VPC.
   866      */
   867     SecurityGroups?: SecurityGroups;
   868     /**
   869      * The date and time the load balancer was created.
   870      */
   871     CreatedTime?: CreatedTime;
   872     /**
   873      * The type of load balancer. Valid only for load balancers in a VPC. If Scheme is internet-facing, the load balancer has a public DNS name that resolves to a public IP address. If Scheme is internal, the load balancer has a public DNS name that resolves to a private IP address.
   874      */
   875     Scheme?: LoadBalancerScheme;
   876   }
   877   export type LoadBalancerDescriptions = LoadBalancerDescription[];
   878   export type LoadBalancerNames = AccessPointName[];
   879   export type LoadBalancerNamesMax20 = AccessPointName[];
   880   export type LoadBalancerScheme = string;
   881   export type Marker = string;
   882   export interface ModifyLoadBalancerAttributesInput {
   883     /**
   884      * The name of the load balancer.
   885      */
   886     LoadBalancerName: AccessPointName;
   887     /**
   888      * The attributes of the load balancer.
   889      */
   890     LoadBalancerAttributes: LoadBalancerAttributes;
   891   }
   892   export interface ModifyLoadBalancerAttributesOutput {
   893     /**
   894      * The name of the load balancer.
   895      */
   896     LoadBalancerName?: AccessPointName;
   897     LoadBalancerAttributes?: LoadBalancerAttributes;
   898   }
   899   export type PageSize = number;
   900   export interface Policies {
   901     /**
   902      * The stickiness policies created using CreateAppCookieStickinessPolicy.
   903      */
   904     AppCookieStickinessPolicies?: AppCookieStickinessPolicies;
   905     /**
   906      * The stickiness policies created using CreateLBCookieStickinessPolicy.
   907      */
   908     LBCookieStickinessPolicies?: LBCookieStickinessPolicies;
   909     /**
   910      * The policies other than the stickiness policies.
   911      */
   912     OtherPolicies?: PolicyNames;
   913   }
   914   export interface PolicyAttribute {
   915     /**
   916      * The name of the attribute.
   917      */
   918     AttributeName?: AttributeName;
   919     /**
   920      * The value of the attribute.
   921      */
   922     AttributeValue?: AttributeValue;
   923   }
   924   export interface PolicyAttributeDescription {
   925     /**
   926      * The name of the attribute.
   927      */
   928     AttributeName?: AttributeName;
   929     /**
   930      * The value of the attribute.
   931      */
   932     AttributeValue?: AttributeValue;
   933   }
   934   export type PolicyAttributeDescriptions = PolicyAttributeDescription[];
   935   export interface PolicyAttributeTypeDescription {
   936     /**
   937      * The name of the attribute.
   938      */
   939     AttributeName?: AttributeName;
   940     /**
   941      * The type of the attribute. For example, Boolean or Integer.
   942      */
   943     AttributeType?: AttributeType;
   944     /**
   945      * A description of the attribute.
   946      */
   947     Description?: Description;
   948     /**
   949      * The default value of the attribute, if applicable.
   950      */
   951     DefaultValue?: DefaultValue;
   952     /**
   953      * The cardinality of the attribute. Valid values:   ONE(1) : Single value required   ZERO_OR_ONE(0..1) : Up to one value is allowed   ZERO_OR_MORE(0..*) : Optional. Multiple values are allowed   ONE_OR_MORE(1..*0) : Required. Multiple values are allowed  
   954      */
   955     Cardinality?: Cardinality;
   956   }
   957   export type PolicyAttributeTypeDescriptions = PolicyAttributeTypeDescription[];
   958   export type PolicyAttributes = PolicyAttribute[];
   959   export interface PolicyDescription {
   960     /**
   961      * The name of the policy.
   962      */
   963     PolicyName?: PolicyName;
   964     /**
   965      * The name of the policy type.
   966      */
   967     PolicyTypeName?: PolicyTypeName;
   968     /**
   969      * The policy attributes.
   970      */
   971     PolicyAttributeDescriptions?: PolicyAttributeDescriptions;
   972   }
   973   export type PolicyDescriptions = PolicyDescription[];
   974   export type PolicyName = string;
   975   export type PolicyNames = PolicyName[];
   976   export interface PolicyTypeDescription {
   977     /**
   978      * The name of the policy type.
   979      */
   980     PolicyTypeName?: PolicyTypeName;
   981     /**
   982      * A description of the policy type.
   983      */
   984     Description?: Description;
   985     /**
   986      * The description of the policy attributes associated with the policies defined by Elastic Load Balancing.
   987      */
   988     PolicyAttributeTypeDescriptions?: PolicyAttributeTypeDescriptions;
   989   }
   990   export type PolicyTypeDescriptions = PolicyTypeDescription[];
   991   export type PolicyTypeName = string;
   992   export type PolicyTypeNames = PolicyTypeName[];
   993   export type Ports = AccessPointPort[];
   994   export type Protocol = string;
   995   export type ReasonCode = string;
   996   export interface RegisterEndPointsInput {
   997     /**
   998      * The name of the load balancer.
   999      */
  1000     LoadBalancerName: AccessPointName;
  1001     /**
  1002      * The IDs of the instances.
  1003      */
  1004     Instances: Instances;
  1005   }
  1006   export interface RegisterEndPointsOutput {
  1007     /**
  1008      * The updated list of instances for the load balancer.
  1009      */
  1010     Instances?: Instances;
  1011   }
  1012   export interface RemoveAvailabilityZonesInput {
  1013     /**
  1014      * The name of the load balancer.
  1015      */
  1016     LoadBalancerName: AccessPointName;
  1017     /**
  1018      * The Availability Zones.
  1019      */
  1020     AvailabilityZones: AvailabilityZones;
  1021   }
  1022   export interface RemoveAvailabilityZonesOutput {
  1023     /**
  1024      * The remaining Availability Zones for the load balancer.
  1025      */
  1026     AvailabilityZones?: AvailabilityZones;
  1027   }
  1028   export interface RemoveTagsInput {
  1029     /**
  1030      * The name of the load balancer. You can specify a maximum of one load balancer name.
  1031      */
  1032     LoadBalancerNames: LoadBalancerNames;
  1033     /**
  1034      * The list of tag keys to remove.
  1035      */
  1036     Tags: TagKeyList;
  1037   }
  1038   export interface RemoveTagsOutput {
  1039   }
  1040   export type S3BucketName = string;
  1041   export type SSLCertificateId = string;
  1042   export type SecurityGroupId = string;
  1043   export type SecurityGroupName = string;
  1044   export type SecurityGroupOwnerAlias = string;
  1045   export type SecurityGroups = SecurityGroupId[];
  1046   export interface SetLoadBalancerListenerSSLCertificateInput {
  1047     /**
  1048      * The name of the load balancer.
  1049      */
  1050     LoadBalancerName: AccessPointName;
  1051     /**
  1052      * The port that uses the specified SSL certificate.
  1053      */
  1054     LoadBalancerPort: AccessPointPort;
  1055     /**
  1056      * The Amazon Resource Name (ARN) of the SSL certificate.
  1057      */
  1058     SSLCertificateId: SSLCertificateId;
  1059   }
  1060   export interface SetLoadBalancerListenerSSLCertificateOutput {
  1061   }
  1062   export interface SetLoadBalancerPoliciesForBackendServerInput {
  1063     /**
  1064      * The name of the load balancer.
  1065      */
  1066     LoadBalancerName: AccessPointName;
  1067     /**
  1068      * The port number associated with the EC2 instance.
  1069      */
  1070     InstancePort: EndPointPort;
  1071     /**
  1072      * The names of the policies. If the list is empty, then all current polices are removed from the EC2 instance.
  1073      */
  1074     PolicyNames: PolicyNames;
  1075   }
  1076   export interface SetLoadBalancerPoliciesForBackendServerOutput {
  1077   }
  1078   export interface SetLoadBalancerPoliciesOfListenerInput {
  1079     /**
  1080      * The name of the load balancer.
  1081      */
  1082     LoadBalancerName: AccessPointName;
  1083     /**
  1084      * The external port of the load balancer.
  1085      */
  1086     LoadBalancerPort: AccessPointPort;
  1087     /**
  1088      * The names of the policies. This list must include all policies to be enabled. If you omit a policy that is currently enabled, it is disabled. If the list is empty, all current policies are disabled.
  1089      */
  1090     PolicyNames: PolicyNames;
  1091   }
  1092   export interface SetLoadBalancerPoliciesOfListenerOutput {
  1093   }
  1094   export interface SourceSecurityGroup {
  1095     /**
  1096      * The owner of the security group.
  1097      */
  1098     OwnerAlias?: SecurityGroupOwnerAlias;
  1099     /**
  1100      * The name of the security group.
  1101      */
  1102     GroupName?: SecurityGroupName;
  1103   }
  1104   export type State = string;
  1105   export type SubnetId = string;
  1106   export type Subnets = SubnetId[];
  1107   export interface Tag {
  1108     /**
  1109      * The key of the tag.
  1110      */
  1111     Key: TagKey;
  1112     /**
  1113      * The value of the tag.
  1114      */
  1115     Value?: TagValue;
  1116   }
  1117   export interface TagDescription {
  1118     /**
  1119      * The name of the load balancer.
  1120      */
  1121     LoadBalancerName?: AccessPointName;
  1122     /**
  1123      * The tags.
  1124      */
  1125     Tags?: TagList;
  1126   }
  1127   export type TagDescriptions = TagDescription[];
  1128   export type TagKey = string;
  1129   export type TagKeyList = TagKeyOnly[];
  1130   export interface TagKeyOnly {
  1131     /**
  1132      * The name of the key.
  1133      */
  1134     Key?: TagKey;
  1135   }
  1136   export type TagList = Tag[];
  1137   export type TagValue = string;
  1138   export type UnhealthyThreshold = number;
  1139   export type VPCId = string;
  1140   /**
  1141    * A string in YYYY-MM-DD format that represents the latest possible API version that can be used in this service. Specify 'latest' to use the latest possible version.
  1142    */
  1143   export type apiVersion = "2012-06-01"|"latest"|string;
  1144   export interface ClientApiVersions {
  1145     /**
  1146      * A string in YYYY-MM-DD format that represents the latest possible API version that can be used in this service. Specify 'latest' to use the latest possible version.
  1147      */
  1148     apiVersion?: apiVersion;
  1149   }
  1150   export type ClientConfiguration = ServiceConfigurationOptions & ClientApiVersions;
  1151 }
  1152 export = ELB;