elbv2.d.ts (59722B)
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 ELBv2 extends Service { 9 /** 10 * Constructs a service object. This object has one method for each API operation. 11 */ 12 constructor(options?: ELBv2.Types.ClientConfiguration) 13 config: Config & ELBv2.Types.ClientConfiguration; 14 /** 15 * Adds the specified tags to the specified resource. You can tag your Application Load Balancers and your target groups. Each tag consists of a key and an optional value. If a resource already has a tag with the same key, AddTags updates its value. To list the current tags for your resources, use DescribeTags. To remove tags from your resources, use RemoveTags. 16 */ 17 addTags(params: ELBv2.Types.AddTagsInput, callback?: (err: AWSError, data: ELBv2.Types.AddTagsOutput) => void): Request<ELBv2.Types.AddTagsOutput, AWSError>; 18 /** 19 * Adds the specified tags to the specified resource. You can tag your Application Load Balancers and your target groups. Each tag consists of a key and an optional value. If a resource already has a tag with the same key, AddTags updates its value. To list the current tags for your resources, use DescribeTags. To remove tags from your resources, use RemoveTags. 20 */ 21 addTags(callback?: (err: AWSError, data: ELBv2.Types.AddTagsOutput) => void): Request<ELBv2.Types.AddTagsOutput, AWSError>; 22 /** 23 * Creates a listener for the specified Application Load Balancer. You can create up to 10 listeners per load balancer. To update a listener, use ModifyListener. When you are finished with a listener, you can delete it using DeleteListener. If you are finished with both the listener and the load balancer, you can delete them both using DeleteLoadBalancer. For more information, see Listeners for Your Application Load Balancers in the Application Load Balancers Guide. 24 */ 25 createListener(params: ELBv2.Types.CreateListenerInput, callback?: (err: AWSError, data: ELBv2.Types.CreateListenerOutput) => void): Request<ELBv2.Types.CreateListenerOutput, AWSError>; 26 /** 27 * Creates a listener for the specified Application Load Balancer. You can create up to 10 listeners per load balancer. To update a listener, use ModifyListener. When you are finished with a listener, you can delete it using DeleteListener. If you are finished with both the listener and the load balancer, you can delete them both using DeleteLoadBalancer. For more information, see Listeners for Your Application Load Balancers in the Application Load Balancers Guide. 28 */ 29 createListener(callback?: (err: AWSError, data: ELBv2.Types.CreateListenerOutput) => void): Request<ELBv2.Types.CreateListenerOutput, AWSError>; 30 /** 31 * Creates an Application Load Balancer. To create listeners for your load balancer, use CreateListener. You can add security groups, subnets, and tags when you create your load balancer, or you can add them later using SetSecurityGroups, SetSubnets, 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 Application Load Balancer in the Application Load Balancers Guide. For more information, see Application Load Balancers in the Application Load Balancers Guide. 32 */ 33 createLoadBalancer(params: ELBv2.Types.CreateLoadBalancerInput, callback?: (err: AWSError, data: ELBv2.Types.CreateLoadBalancerOutput) => void): Request<ELBv2.Types.CreateLoadBalancerOutput, AWSError>; 34 /** 35 * Creates an Application Load Balancer. To create listeners for your load balancer, use CreateListener. You can add security groups, subnets, and tags when you create your load balancer, or you can add them later using SetSecurityGroups, SetSubnets, 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 Application Load Balancer in the Application Load Balancers Guide. For more information, see Application Load Balancers in the Application Load Balancers Guide. 36 */ 37 createLoadBalancer(callback?: (err: AWSError, data: ELBv2.Types.CreateLoadBalancerOutput) => void): Request<ELBv2.Types.CreateLoadBalancerOutput, AWSError>; 38 /** 39 * Creates a rule for the specified listener. Each rule can have one action and one condition. Rules are evaluated in priority order, from the lowest value to the highest value. When the condition for a rule is met, the specified action is taken. If no conditions are met, the default action for the default rule is taken. For more information, see Listener Rules in the Application Load Balancers Guide. To view your current rules, use DescribeRules. To update a rule, use ModifyRule. To set the priorities of your rules, use SetRulePriorities. To delete a rule, use DeleteRule. 40 */ 41 createRule(params: ELBv2.Types.CreateRuleInput, callback?: (err: AWSError, data: ELBv2.Types.CreateRuleOutput) => void): Request<ELBv2.Types.CreateRuleOutput, AWSError>; 42 /** 43 * Creates a rule for the specified listener. Each rule can have one action and one condition. Rules are evaluated in priority order, from the lowest value to the highest value. When the condition for a rule is met, the specified action is taken. If no conditions are met, the default action for the default rule is taken. For more information, see Listener Rules in the Application Load Balancers Guide. To view your current rules, use DescribeRules. To update a rule, use ModifyRule. To set the priorities of your rules, use SetRulePriorities. To delete a rule, use DeleteRule. 44 */ 45 createRule(callback?: (err: AWSError, data: ELBv2.Types.CreateRuleOutput) => void): Request<ELBv2.Types.CreateRuleOutput, AWSError>; 46 /** 47 * Creates a target group. To register targets with the target group, use RegisterTargets. To update the health check settings for the target group, use ModifyTargetGroup. To monitor the health of targets in the target group, use DescribeTargetHealth. To route traffic to the targets in a target group, specify the target group in an action using CreateListener or CreateRule. To delete a target group, use DeleteTargetGroup. For more information, see Target Groups for Your Application Load Balancers in the Application Load Balancers Guide. 48 */ 49 createTargetGroup(params: ELBv2.Types.CreateTargetGroupInput, callback?: (err: AWSError, data: ELBv2.Types.CreateTargetGroupOutput) => void): Request<ELBv2.Types.CreateTargetGroupOutput, AWSError>; 50 /** 51 * Creates a target group. To register targets with the target group, use RegisterTargets. To update the health check settings for the target group, use ModifyTargetGroup. To monitor the health of targets in the target group, use DescribeTargetHealth. To route traffic to the targets in a target group, specify the target group in an action using CreateListener or CreateRule. To delete a target group, use DeleteTargetGroup. For more information, see Target Groups for Your Application Load Balancers in the Application Load Balancers Guide. 52 */ 53 createTargetGroup(callback?: (err: AWSError, data: ELBv2.Types.CreateTargetGroupOutput) => void): Request<ELBv2.Types.CreateTargetGroupOutput, AWSError>; 54 /** 55 * Deletes the specified listener. Alternatively, your listener is deleted when you delete the load balancer it is attached to using DeleteLoadBalancer. 56 */ 57 deleteListener(params: ELBv2.Types.DeleteListenerInput, callback?: (err: AWSError, data: ELBv2.Types.DeleteListenerOutput) => void): Request<ELBv2.Types.DeleteListenerOutput, AWSError>; 58 /** 59 * Deletes the specified listener. Alternatively, your listener is deleted when you delete the load balancer it is attached to using DeleteLoadBalancer. 60 */ 61 deleteListener(callback?: (err: AWSError, data: ELBv2.Types.DeleteListenerOutput) => void): Request<ELBv2.Types.DeleteListenerOutput, AWSError>; 62 /** 63 * Deletes the specified Application Load Balancer and its attached listeners. You can't delete a load balancer if deletion protection is enabled. If the load balancer does not exist or has already been deleted, the call succeeds. Deleting a load balancer does not affect its registered targets. For example, your EC2 instances continue to run and are still registered to their target groups. If you no longer need these EC2 instances, you can stop or terminate them. 64 */ 65 deleteLoadBalancer(params: ELBv2.Types.DeleteLoadBalancerInput, callback?: (err: AWSError, data: ELBv2.Types.DeleteLoadBalancerOutput) => void): Request<ELBv2.Types.DeleteLoadBalancerOutput, AWSError>; 66 /** 67 * Deletes the specified Application Load Balancer and its attached listeners. You can't delete a load balancer if deletion protection is enabled. If the load balancer does not exist or has already been deleted, the call succeeds. Deleting a load balancer does not affect its registered targets. For example, your EC2 instances continue to run and are still registered to their target groups. If you no longer need these EC2 instances, you can stop or terminate them. 68 */ 69 deleteLoadBalancer(callback?: (err: AWSError, data: ELBv2.Types.DeleteLoadBalancerOutput) => void): Request<ELBv2.Types.DeleteLoadBalancerOutput, AWSError>; 70 /** 71 * Deletes the specified rule. 72 */ 73 deleteRule(params: ELBv2.Types.DeleteRuleInput, callback?: (err: AWSError, data: ELBv2.Types.DeleteRuleOutput) => void): Request<ELBv2.Types.DeleteRuleOutput, AWSError>; 74 /** 75 * Deletes the specified rule. 76 */ 77 deleteRule(callback?: (err: AWSError, data: ELBv2.Types.DeleteRuleOutput) => void): Request<ELBv2.Types.DeleteRuleOutput, AWSError>; 78 /** 79 * Deletes the specified target group. You can delete a target group if it is not referenced by any actions. Deleting a target group also deletes any associated health checks. 80 */ 81 deleteTargetGroup(params: ELBv2.Types.DeleteTargetGroupInput, callback?: (err: AWSError, data: ELBv2.Types.DeleteTargetGroupOutput) => void): Request<ELBv2.Types.DeleteTargetGroupOutput, AWSError>; 82 /** 83 * Deletes the specified target group. You can delete a target group if it is not referenced by any actions. Deleting a target group also deletes any associated health checks. 84 */ 85 deleteTargetGroup(callback?: (err: AWSError, data: ELBv2.Types.DeleteTargetGroupOutput) => void): Request<ELBv2.Types.DeleteTargetGroupOutput, AWSError>; 86 /** 87 * Deregisters the specified targets from the specified target group. After the targets are deregistered, they no longer receive traffic from the load balancer. 88 */ 89 deregisterTargets(params: ELBv2.Types.DeregisterTargetsInput, callback?: (err: AWSError, data: ELBv2.Types.DeregisterTargetsOutput) => void): Request<ELBv2.Types.DeregisterTargetsOutput, AWSError>; 90 /** 91 * Deregisters the specified targets from the specified target group. After the targets are deregistered, they no longer receive traffic from the load balancer. 92 */ 93 deregisterTargets(callback?: (err: AWSError, data: ELBv2.Types.DeregisterTargetsOutput) => void): Request<ELBv2.Types.DeregisterTargetsOutput, AWSError>; 94 /** 95 * Describes the specified listeners or the listeners for the specified Application Load Balancer. You must specify either a load balancer or one or more listeners. 96 */ 97 describeListeners(params: ELBv2.Types.DescribeListenersInput, callback?: (err: AWSError, data: ELBv2.Types.DescribeListenersOutput) => void): Request<ELBv2.Types.DescribeListenersOutput, AWSError>; 98 /** 99 * Describes the specified listeners or the listeners for the specified Application Load Balancer. You must specify either a load balancer or one or more listeners. 100 */ 101 describeListeners(callback?: (err: AWSError, data: ELBv2.Types.DescribeListenersOutput) => void): Request<ELBv2.Types.DescribeListenersOutput, AWSError>; 102 /** 103 * Describes the attributes for the specified Application Load Balancer. 104 */ 105 describeLoadBalancerAttributes(params: ELBv2.Types.DescribeLoadBalancerAttributesInput, callback?: (err: AWSError, data: ELBv2.Types.DescribeLoadBalancerAttributesOutput) => void): Request<ELBv2.Types.DescribeLoadBalancerAttributesOutput, AWSError>; 106 /** 107 * Describes the attributes for the specified Application Load Balancer. 108 */ 109 describeLoadBalancerAttributes(callback?: (err: AWSError, data: ELBv2.Types.DescribeLoadBalancerAttributesOutput) => void): Request<ELBv2.Types.DescribeLoadBalancerAttributesOutput, AWSError>; 110 /** 111 * Describes the specified Application Load Balancers or all of your Application Load Balancers. To describe the listeners for a load balancer, use DescribeListeners. To describe the attributes for a load balancer, use DescribeLoadBalancerAttributes. 112 */ 113 describeLoadBalancers(params: ELBv2.Types.DescribeLoadBalancersInput, callback?: (err: AWSError, data: ELBv2.Types.DescribeLoadBalancersOutput) => void): Request<ELBv2.Types.DescribeLoadBalancersOutput, AWSError>; 114 /** 115 * Describes the specified Application Load Balancers or all of your Application Load Balancers. To describe the listeners for a load balancer, use DescribeListeners. To describe the attributes for a load balancer, use DescribeLoadBalancerAttributes. 116 */ 117 describeLoadBalancers(callback?: (err: AWSError, data: ELBv2.Types.DescribeLoadBalancersOutput) => void): Request<ELBv2.Types.DescribeLoadBalancersOutput, AWSError>; 118 /** 119 * Describes the specified rules or the rules for the specified listener. You must specify either a listener or one or more rules. 120 */ 121 describeRules(params: ELBv2.Types.DescribeRulesInput, callback?: (err: AWSError, data: ELBv2.Types.DescribeRulesOutput) => void): Request<ELBv2.Types.DescribeRulesOutput, AWSError>; 122 /** 123 * Describes the specified rules or the rules for the specified listener. You must specify either a listener or one or more rules. 124 */ 125 describeRules(callback?: (err: AWSError, data: ELBv2.Types.DescribeRulesOutput) => void): Request<ELBv2.Types.DescribeRulesOutput, AWSError>; 126 /** 127 * Describes the specified policies or all policies used for SSL negotiation. Note that the only supported policy at this time is ELBSecurityPolicy-2015-05. 128 */ 129 describeSSLPolicies(params: ELBv2.Types.DescribeSSLPoliciesInput, callback?: (err: AWSError, data: ELBv2.Types.DescribeSSLPoliciesOutput) => void): Request<ELBv2.Types.DescribeSSLPoliciesOutput, AWSError>; 130 /** 131 * Describes the specified policies or all policies used for SSL negotiation. Note that the only supported policy at this time is ELBSecurityPolicy-2015-05. 132 */ 133 describeSSLPolicies(callback?: (err: AWSError, data: ELBv2.Types.DescribeSSLPoliciesOutput) => void): Request<ELBv2.Types.DescribeSSLPoliciesOutput, AWSError>; 134 /** 135 * Describes the tags for the specified resources. 136 */ 137 describeTags(params: ELBv2.Types.DescribeTagsInput, callback?: (err: AWSError, data: ELBv2.Types.DescribeTagsOutput) => void): Request<ELBv2.Types.DescribeTagsOutput, AWSError>; 138 /** 139 * Describes the tags for the specified resources. 140 */ 141 describeTags(callback?: (err: AWSError, data: ELBv2.Types.DescribeTagsOutput) => void): Request<ELBv2.Types.DescribeTagsOutput, AWSError>; 142 /** 143 * Describes the attributes for the specified target group. 144 */ 145 describeTargetGroupAttributes(params: ELBv2.Types.DescribeTargetGroupAttributesInput, callback?: (err: AWSError, data: ELBv2.Types.DescribeTargetGroupAttributesOutput) => void): Request<ELBv2.Types.DescribeTargetGroupAttributesOutput, AWSError>; 146 /** 147 * Describes the attributes for the specified target group. 148 */ 149 describeTargetGroupAttributes(callback?: (err: AWSError, data: ELBv2.Types.DescribeTargetGroupAttributesOutput) => void): Request<ELBv2.Types.DescribeTargetGroupAttributesOutput, AWSError>; 150 /** 151 * Describes the specified target groups or all of your target groups. By default, all target groups are described. Alternatively, you can specify one of the following to filter the results: the ARN of the load balancer, the names of one or more target groups, or the ARNs of one or more target groups. To describe the targets for a target group, use DescribeTargetHealth. To describe the attributes of a target group, use DescribeTargetGroupAttributes. 152 */ 153 describeTargetGroups(params: ELBv2.Types.DescribeTargetGroupsInput, callback?: (err: AWSError, data: ELBv2.Types.DescribeTargetGroupsOutput) => void): Request<ELBv2.Types.DescribeTargetGroupsOutput, AWSError>; 154 /** 155 * Describes the specified target groups or all of your target groups. By default, all target groups are described. Alternatively, you can specify one of the following to filter the results: the ARN of the load balancer, the names of one or more target groups, or the ARNs of one or more target groups. To describe the targets for a target group, use DescribeTargetHealth. To describe the attributes of a target group, use DescribeTargetGroupAttributes. 156 */ 157 describeTargetGroups(callback?: (err: AWSError, data: ELBv2.Types.DescribeTargetGroupsOutput) => void): Request<ELBv2.Types.DescribeTargetGroupsOutput, AWSError>; 158 /** 159 * Describes the health of the specified targets or all of your targets. 160 */ 161 describeTargetHealth(params: ELBv2.Types.DescribeTargetHealthInput, callback?: (err: AWSError, data: ELBv2.Types.DescribeTargetHealthOutput) => void): Request<ELBv2.Types.DescribeTargetHealthOutput, AWSError>; 162 /** 163 * Describes the health of the specified targets or all of your targets. 164 */ 165 describeTargetHealth(callback?: (err: AWSError, data: ELBv2.Types.DescribeTargetHealthOutput) => void): Request<ELBv2.Types.DescribeTargetHealthOutput, AWSError>; 166 /** 167 * Modifies the specified properties of the specified listener. Any properties that you do not specify retain their current values. However, changing the protocol from HTTPS to HTTP removes the security policy and SSL certificate properties. If you change the protocol from HTTP to HTTPS, you must add the security policy. 168 */ 169 modifyListener(params: ELBv2.Types.ModifyListenerInput, callback?: (err: AWSError, data: ELBv2.Types.ModifyListenerOutput) => void): Request<ELBv2.Types.ModifyListenerOutput, AWSError>; 170 /** 171 * Modifies the specified properties of the specified listener. Any properties that you do not specify retain their current values. However, changing the protocol from HTTPS to HTTP removes the security policy and SSL certificate properties. If you change the protocol from HTTP to HTTPS, you must add the security policy. 172 */ 173 modifyListener(callback?: (err: AWSError, data: ELBv2.Types.ModifyListenerOutput) => void): Request<ELBv2.Types.ModifyListenerOutput, AWSError>; 174 /** 175 * Modifies the specified attributes of the specified Application Load Balancer. If any of the specified attributes can't be modified as requested, the call fails. Any existing attributes that you do not modify retain their current values. 176 */ 177 modifyLoadBalancerAttributes(params: ELBv2.Types.ModifyLoadBalancerAttributesInput, callback?: (err: AWSError, data: ELBv2.Types.ModifyLoadBalancerAttributesOutput) => void): Request<ELBv2.Types.ModifyLoadBalancerAttributesOutput, AWSError>; 178 /** 179 * Modifies the specified attributes of the specified Application Load Balancer. If any of the specified attributes can't be modified as requested, the call fails. Any existing attributes that you do not modify retain their current values. 180 */ 181 modifyLoadBalancerAttributes(callback?: (err: AWSError, data: ELBv2.Types.ModifyLoadBalancerAttributesOutput) => void): Request<ELBv2.Types.ModifyLoadBalancerAttributesOutput, AWSError>; 182 /** 183 * Modifies the specified rule. Any existing properties that you do not modify retain their current values. To modify the default action, use ModifyListener. 184 */ 185 modifyRule(params: ELBv2.Types.ModifyRuleInput, callback?: (err: AWSError, data: ELBv2.Types.ModifyRuleOutput) => void): Request<ELBv2.Types.ModifyRuleOutput, AWSError>; 186 /** 187 * Modifies the specified rule. Any existing properties that you do not modify retain their current values. To modify the default action, use ModifyListener. 188 */ 189 modifyRule(callback?: (err: AWSError, data: ELBv2.Types.ModifyRuleOutput) => void): Request<ELBv2.Types.ModifyRuleOutput, AWSError>; 190 /** 191 * Modifies the health checks used when evaluating the health state of the targets in the specified target group. To monitor the health of the targets, use DescribeTargetHealth. 192 */ 193 modifyTargetGroup(params: ELBv2.Types.ModifyTargetGroupInput, callback?: (err: AWSError, data: ELBv2.Types.ModifyTargetGroupOutput) => void): Request<ELBv2.Types.ModifyTargetGroupOutput, AWSError>; 194 /** 195 * Modifies the health checks used when evaluating the health state of the targets in the specified target group. To monitor the health of the targets, use DescribeTargetHealth. 196 */ 197 modifyTargetGroup(callback?: (err: AWSError, data: ELBv2.Types.ModifyTargetGroupOutput) => void): Request<ELBv2.Types.ModifyTargetGroupOutput, AWSError>; 198 /** 199 * Modifies the specified attributes of the specified target group. 200 */ 201 modifyTargetGroupAttributes(params: ELBv2.Types.ModifyTargetGroupAttributesInput, callback?: (err: AWSError, data: ELBv2.Types.ModifyTargetGroupAttributesOutput) => void): Request<ELBv2.Types.ModifyTargetGroupAttributesOutput, AWSError>; 202 /** 203 * Modifies the specified attributes of the specified target group. 204 */ 205 modifyTargetGroupAttributes(callback?: (err: AWSError, data: ELBv2.Types.ModifyTargetGroupAttributesOutput) => void): Request<ELBv2.Types.ModifyTargetGroupAttributesOutput, AWSError>; 206 /** 207 * Registers the specified targets with the specified target group. By default, the load balancer routes requests to registered targets using the protocol and port number for the target group. Alternatively, you can override the port for a target when you register it. The target must be in the virtual private cloud (VPC) that you specified for the target group. If the target is an EC2 instance, it can't be in the stopped or running state when you register it. To remove a target from a target group, use DeregisterTargets. 208 */ 209 registerTargets(params: ELBv2.Types.RegisterTargetsInput, callback?: (err: AWSError, data: ELBv2.Types.RegisterTargetsOutput) => void): Request<ELBv2.Types.RegisterTargetsOutput, AWSError>; 210 /** 211 * Registers the specified targets with the specified target group. By default, the load balancer routes requests to registered targets using the protocol and port number for the target group. Alternatively, you can override the port for a target when you register it. The target must be in the virtual private cloud (VPC) that you specified for the target group. If the target is an EC2 instance, it can't be in the stopped or running state when you register it. To remove a target from a target group, use DeregisterTargets. 212 */ 213 registerTargets(callback?: (err: AWSError, data: ELBv2.Types.RegisterTargetsOutput) => void): Request<ELBv2.Types.RegisterTargetsOutput, AWSError>; 214 /** 215 * Removes the specified tags from the specified resource. To list the current tags for your resources, use DescribeTags. 216 */ 217 removeTags(params: ELBv2.Types.RemoveTagsInput, callback?: (err: AWSError, data: ELBv2.Types.RemoveTagsOutput) => void): Request<ELBv2.Types.RemoveTagsOutput, AWSError>; 218 /** 219 * Removes the specified tags from the specified resource. To list the current tags for your resources, use DescribeTags. 220 */ 221 removeTags(callback?: (err: AWSError, data: ELBv2.Types.RemoveTagsOutput) => void): Request<ELBv2.Types.RemoveTagsOutput, AWSError>; 222 /** 223 * Sets the priorities of the specified rules. You can reorder the rules as long as there are no priority conflicts in the new order. Any existing rules that you do not specify retain their current priority. 224 */ 225 setRulePriorities(params: ELBv2.Types.SetRulePrioritiesInput, callback?: (err: AWSError, data: ELBv2.Types.SetRulePrioritiesOutput) => void): Request<ELBv2.Types.SetRulePrioritiesOutput, AWSError>; 226 /** 227 * Sets the priorities of the specified rules. You can reorder the rules as long as there are no priority conflicts in the new order. Any existing rules that you do not specify retain their current priority. 228 */ 229 setRulePriorities(callback?: (err: AWSError, data: ELBv2.Types.SetRulePrioritiesOutput) => void): Request<ELBv2.Types.SetRulePrioritiesOutput, AWSError>; 230 /** 231 * Associates the specified security groups with the specified load balancer. The specified security groups override the previously associated security groups. 232 */ 233 setSecurityGroups(params: ELBv2.Types.SetSecurityGroupsInput, callback?: (err: AWSError, data: ELBv2.Types.SetSecurityGroupsOutput) => void): Request<ELBv2.Types.SetSecurityGroupsOutput, AWSError>; 234 /** 235 * Associates the specified security groups with the specified load balancer. The specified security groups override the previously associated security groups. 236 */ 237 setSecurityGroups(callback?: (err: AWSError, data: ELBv2.Types.SetSecurityGroupsOutput) => void): Request<ELBv2.Types.SetSecurityGroupsOutput, AWSError>; 238 /** 239 * Enables the Availability Zone for the specified subnets for the specified load balancer. The specified subnets replace the previously enabled subnets. 240 */ 241 setSubnets(params: ELBv2.Types.SetSubnetsInput, callback?: (err: AWSError, data: ELBv2.Types.SetSubnetsOutput) => void): Request<ELBv2.Types.SetSubnetsOutput, AWSError>; 242 /** 243 * Enables the Availability Zone for the specified subnets for the specified load balancer. The specified subnets replace the previously enabled subnets. 244 */ 245 setSubnets(callback?: (err: AWSError, data: ELBv2.Types.SetSubnetsOutput) => void): Request<ELBv2.Types.SetSubnetsOutput, AWSError>; 246 } 247 declare namespace ELBv2.Types { 248 export interface Action { 249 /** 250 * The type of action. 251 */ 252 Type: ActionTypeEnum; 253 /** 254 * The Amazon Resource Name (ARN) of the target group. 255 */ 256 TargetGroupArn: TargetGroupArn; 257 } 258 export type ActionTypeEnum = "forward"|string; 259 export type Actions = Action[]; 260 export interface AddTagsInput { 261 /** 262 * The Amazon Resource Name (ARN) of the resource. 263 */ 264 ResourceArns: ResourceArns; 265 /** 266 * The tags. Each resource can have a maximum of 10 tags. 267 */ 268 Tags: TagList; 269 } 270 export interface AddTagsOutput { 271 } 272 export interface AvailabilityZone { 273 /** 274 * The name of the Availability Zone. 275 */ 276 ZoneName?: ZoneName; 277 /** 278 * The ID of the subnet. 279 */ 280 SubnetId?: SubnetId; 281 } 282 export type AvailabilityZones = AvailabilityZone[]; 283 export type CanonicalHostedZoneId = string; 284 export interface Certificate { 285 /** 286 * The Amazon Resource Name (ARN) of the certificate. 287 */ 288 CertificateArn?: CertificateArn; 289 } 290 export type CertificateArn = string; 291 export type CertificateList = Certificate[]; 292 export interface Cipher { 293 /** 294 * The name of the cipher. 295 */ 296 Name?: CipherName; 297 /** 298 * The priority of the cipher. 299 */ 300 Priority?: CipherPriority; 301 } 302 export type CipherName = string; 303 export type CipherPriority = number; 304 export type Ciphers = Cipher[]; 305 export type ConditionFieldName = string; 306 export interface CreateListenerInput { 307 /** 308 * The Amazon Resource Name (ARN) of the load balancer. 309 */ 310 LoadBalancerArn: LoadBalancerArn; 311 /** 312 * The protocol for connections from clients to the load balancer. 313 */ 314 Protocol: ProtocolEnum; 315 /** 316 * The port on which the load balancer is listening. 317 */ 318 Port: Port; 319 /** 320 * The security policy that defines which ciphers and protocols are supported. The default is the current predefined security policy. 321 */ 322 SslPolicy?: SslPolicyName; 323 /** 324 * The SSL server certificate. You must provide exactly one certificate if the protocol is HTTPS. 325 */ 326 Certificates?: CertificateList; 327 /** 328 * The default action for the listener. 329 */ 330 DefaultActions: Actions; 331 } 332 export interface CreateListenerOutput { 333 /** 334 * Information about the listener. 335 */ 336 Listeners?: Listeners; 337 } 338 export interface CreateLoadBalancerInput { 339 /** 340 * The name of the load balancer. This name must be unique within your AWS account, can have a maximum of 32 characters, must contain only alphanumeric characters or hyphens, and must not begin or end with a hyphen. 341 */ 342 Name: LoadBalancerName; 343 /** 344 * The IDs of the subnets to attach to the load balancer. You can specify only one subnet per Availability Zone. You must specify subnets from at least two Availability Zones. 345 */ 346 Subnets: Subnets; 347 /** 348 * The IDs of the security groups to assign to the load balancer. 349 */ 350 SecurityGroups?: SecurityGroups; 351 /** 352 * The nodes of an Internet-facing load balancer have public IP addresses. The DNS name of an Internet-facing load balancer is publicly resolvable to the public IP addresses of the nodes. Therefore, Internet-facing load balancers can route requests from clients over the Internet. The nodes of an internal load balancer have only private IP addresses. The DNS name of an internal load balancer is publicly resolvable to the private IP addresses of the nodes. Therefore, internal load balancers can only route requests from clients with access to the VPC for the load balancer. The default is an Internet-facing load balancer. 353 */ 354 Scheme?: LoadBalancerSchemeEnum; 355 /** 356 * One or more tags to assign to the load balancer. 357 */ 358 Tags?: TagList; 359 } 360 export interface CreateLoadBalancerOutput { 361 /** 362 * Information about the load balancer. 363 */ 364 LoadBalancers?: LoadBalancers; 365 } 366 export interface CreateRuleInput { 367 /** 368 * The Amazon Resource Name (ARN) of the listener. 369 */ 370 ListenerArn: ListenerArn; 371 /** 372 * A condition. Each condition has the field path-pattern and specifies one path pattern. A path pattern is case sensitive, can be up to 255 characters in length, and can contain any of the following characters: A-Z, a-z, 0-9 _ - . $ / ~ " ' @ : + & (using &amp;) * (matches 0 or more characters) ? (matches exactly 1 character) 373 */ 374 Conditions: RuleConditionList; 375 /** 376 * The priority for the rule. A listener can't have multiple rules with the same priority. 377 */ 378 Priority: RulePriority; 379 /** 380 * An action. Each action has the type forward and specifies a target group. 381 */ 382 Actions: Actions; 383 } 384 export interface CreateRuleOutput { 385 /** 386 * Information about the rule. 387 */ 388 Rules?: Rules; 389 } 390 export interface CreateTargetGroupInput { 391 /** 392 * The name of the target group. 393 */ 394 Name: TargetGroupName; 395 /** 396 * The protocol to use for routing traffic to the targets. 397 */ 398 Protocol: ProtocolEnum; 399 /** 400 * The port on which the targets receive traffic. This port is used unless you specify a port override when registering the target. 401 */ 402 Port: Port; 403 /** 404 * The identifier of the virtual private cloud (VPC). 405 */ 406 VpcId: VpcId; 407 /** 408 * The protocol the load balancer uses when performing health checks on targets. The default is the HTTP protocol. 409 */ 410 HealthCheckProtocol?: ProtocolEnum; 411 /** 412 * The port the load balancer uses when performing health checks on targets. The default is traffic-port, which indicates the port on which each target receives traffic from the load balancer. 413 */ 414 HealthCheckPort?: HealthCheckPort; 415 /** 416 * The ping path that is the destination on the targets for health checks. The default is /. 417 */ 418 HealthCheckPath?: Path; 419 /** 420 * The approximate amount of time, in seconds, between health checks of an individual target. The default is 30 seconds. 421 */ 422 HealthCheckIntervalSeconds?: HealthCheckIntervalSeconds; 423 /** 424 * The amount of time, in seconds, during which no response from a target means a failed health check. The default is 5 seconds. 425 */ 426 HealthCheckTimeoutSeconds?: HealthCheckTimeoutSeconds; 427 /** 428 * The number of consecutive health checks successes required before considering an unhealthy target healthy. The default is 5. 429 */ 430 HealthyThresholdCount?: HealthCheckThresholdCount; 431 /** 432 * The number of consecutive health check failures required before considering a target unhealthy. The default is 2. 433 */ 434 UnhealthyThresholdCount?: HealthCheckThresholdCount; 435 /** 436 * The HTTP codes to use when checking for a successful response from a target. The default is 200. 437 */ 438 Matcher?: Matcher; 439 } 440 export interface CreateTargetGroupOutput { 441 /** 442 * Information about the target group. 443 */ 444 TargetGroups?: TargetGroups; 445 } 446 export type CreatedTime = Date; 447 export type DNSName = string; 448 export interface DeleteListenerInput { 449 /** 450 * The Amazon Resource Name (ARN) of the listener. 451 */ 452 ListenerArn: ListenerArn; 453 } 454 export interface DeleteListenerOutput { 455 } 456 export interface DeleteLoadBalancerInput { 457 /** 458 * The Amazon Resource Name (ARN) of the load balancer. 459 */ 460 LoadBalancerArn: LoadBalancerArn; 461 } 462 export interface DeleteLoadBalancerOutput { 463 } 464 export interface DeleteRuleInput { 465 /** 466 * The Amazon Resource Name (ARN) of the rule. 467 */ 468 RuleArn: RuleArn; 469 } 470 export interface DeleteRuleOutput { 471 } 472 export interface DeleteTargetGroupInput { 473 /** 474 * The Amazon Resource Name (ARN) of the target group. 475 */ 476 TargetGroupArn: TargetGroupArn; 477 } 478 export interface DeleteTargetGroupOutput { 479 } 480 export interface DeregisterTargetsInput { 481 /** 482 * The Amazon Resource Name (ARN) of the target group. 483 */ 484 TargetGroupArn: TargetGroupArn; 485 /** 486 * The targets. If you specified a port override when you registered a target, you must specify both the target ID and the port when you deregister it. 487 */ 488 Targets: TargetDescriptions; 489 } 490 export interface DeregisterTargetsOutput { 491 } 492 export interface DescribeListenersInput { 493 /** 494 * The Amazon Resource Name (ARN) of the load balancer. 495 */ 496 LoadBalancerArn?: LoadBalancerArn; 497 /** 498 * The Amazon Resource Names (ARN) of the listeners. 499 */ 500 ListenerArns?: ListenerArns; 501 /** 502 * The marker for the next set of results. (You received this marker from a previous call.) 503 */ 504 Marker?: Marker; 505 /** 506 * The maximum number of results to return with this call. 507 */ 508 PageSize?: PageSize; 509 } 510 export interface DescribeListenersOutput { 511 /** 512 * Information about the listeners. 513 */ 514 Listeners?: Listeners; 515 /** 516 * The marker to use when requesting the next set of results. If there are no additional results, the string is empty. 517 */ 518 NextMarker?: Marker; 519 } 520 export interface DescribeLoadBalancerAttributesInput { 521 /** 522 * The Amazon Resource Name (ARN) of the load balancer. 523 */ 524 LoadBalancerArn: LoadBalancerArn; 525 } 526 export interface DescribeLoadBalancerAttributesOutput { 527 /** 528 * Information about the load balancer attributes. 529 */ 530 Attributes?: LoadBalancerAttributes; 531 } 532 export interface DescribeLoadBalancersInput { 533 /** 534 * The Amazon Resource Names (ARN) of the load balancers. 535 */ 536 LoadBalancerArns?: LoadBalancerArns; 537 /** 538 * The names of the load balancers. 539 */ 540 Names?: LoadBalancerNames; 541 /** 542 * The marker for the next set of results. (You received this marker from a previous call.) 543 */ 544 Marker?: Marker; 545 /** 546 * The maximum number of results to return with this call. 547 */ 548 PageSize?: PageSize; 549 } 550 export interface DescribeLoadBalancersOutput { 551 /** 552 * Information about the load balancers. 553 */ 554 LoadBalancers?: LoadBalancers; 555 /** 556 * The marker to use when requesting the next set of results. If there are no additional results, the string is empty. 557 */ 558 NextMarker?: Marker; 559 } 560 export interface DescribeRulesInput { 561 /** 562 * The Amazon Resource Name (ARN) of the listener. 563 */ 564 ListenerArn?: ListenerArn; 565 /** 566 * The Amazon Resource Names (ARN) of the rules. 567 */ 568 RuleArns?: RuleArns; 569 } 570 export interface DescribeRulesOutput { 571 /** 572 * Information about the rules. 573 */ 574 Rules?: Rules; 575 } 576 export interface DescribeSSLPoliciesInput { 577 /** 578 * The names of the policies. 579 */ 580 Names?: SslPolicyNames; 581 /** 582 * The marker for the next set of results. (You received this marker from a previous call.) 583 */ 584 Marker?: Marker; 585 /** 586 * The maximum number of results to return with this call. 587 */ 588 PageSize?: PageSize; 589 } 590 export interface DescribeSSLPoliciesOutput { 591 /** 592 * Information about the policies. 593 */ 594 SslPolicies?: SslPolicies; 595 /** 596 * The marker to use when requesting the next set of results. If there are no additional results, the string is empty. 597 */ 598 NextMarker?: Marker; 599 } 600 export interface DescribeTagsInput { 601 /** 602 * The Amazon Resource Names (ARN) of the resources. 603 */ 604 ResourceArns: ResourceArns; 605 } 606 export interface DescribeTagsOutput { 607 /** 608 * Information about the tags. 609 */ 610 TagDescriptions?: TagDescriptions; 611 } 612 export interface DescribeTargetGroupAttributesInput { 613 /** 614 * The Amazon Resource Name (ARN) of the target group. 615 */ 616 TargetGroupArn: TargetGroupArn; 617 } 618 export interface DescribeTargetGroupAttributesOutput { 619 /** 620 * Information about the target group attributes 621 */ 622 Attributes?: TargetGroupAttributes; 623 } 624 export interface DescribeTargetGroupsInput { 625 /** 626 * The Amazon Resource Name (ARN) of the load balancer. 627 */ 628 LoadBalancerArn?: LoadBalancerArn; 629 /** 630 * The Amazon Resource Names (ARN) of the target groups. 631 */ 632 TargetGroupArns?: TargetGroupArns; 633 /** 634 * The names of the target groups. 635 */ 636 Names?: TargetGroupNames; 637 /** 638 * The marker for the next set of results. (You received this marker from a previous call.) 639 */ 640 Marker?: Marker; 641 /** 642 * The maximum number of results to return with this call. 643 */ 644 PageSize?: PageSize; 645 } 646 export interface DescribeTargetGroupsOutput { 647 /** 648 * Information about the target groups. 649 */ 650 TargetGroups?: TargetGroups; 651 /** 652 * The marker to use when requesting the next set of results. If there are no additional results, the string is empty. 653 */ 654 NextMarker?: Marker; 655 } 656 export interface DescribeTargetHealthInput { 657 /** 658 * The Amazon Resource Name (ARN) of the target group. 659 */ 660 TargetGroupArn: TargetGroupArn; 661 /** 662 * The targets. 663 */ 664 Targets?: TargetDescriptions; 665 } 666 export interface DescribeTargetHealthOutput { 667 /** 668 * Information about the health of the targets. 669 */ 670 TargetHealthDescriptions?: TargetHealthDescriptions; 671 } 672 export type Description = string; 673 export type HealthCheckIntervalSeconds = number; 674 export type HealthCheckPort = string; 675 export type HealthCheckThresholdCount = number; 676 export type HealthCheckTimeoutSeconds = number; 677 export type HttpCode = string; 678 export type IsDefault = boolean; 679 export type ListOfString = StringValue[]; 680 export interface Listener { 681 /** 682 * The Amazon Resource Name (ARN) of the listener. 683 */ 684 ListenerArn?: ListenerArn; 685 /** 686 * The Amazon Resource Name (ARN) of the load balancer. 687 */ 688 LoadBalancerArn?: LoadBalancerArn; 689 /** 690 * The port on which the load balancer is listening. 691 */ 692 Port?: Port; 693 /** 694 * The protocol for connections from clients to the load balancer. 695 */ 696 Protocol?: ProtocolEnum; 697 /** 698 * The SSL server certificate. You must provide a certificate if the protocol is HTTPS. 699 */ 700 Certificates?: CertificateList; 701 /** 702 * The security policy that defines which ciphers and protocols are supported. The default is the current predefined security policy. 703 */ 704 SslPolicy?: SslPolicyName; 705 /** 706 * The default actions for the listener. 707 */ 708 DefaultActions?: Actions; 709 } 710 export type ListenerArn = string; 711 export type ListenerArns = ListenerArn[]; 712 export type Listeners = Listener[]; 713 export interface LoadBalancer { 714 /** 715 * The Amazon Resource Name (ARN) of the load balancer. 716 */ 717 LoadBalancerArn?: LoadBalancerArn; 718 /** 719 * The public DNS name of the load balancer. 720 */ 721 DNSName?: DNSName; 722 /** 723 * The ID of the Amazon Route 53 hosted zone associated with the load balancer. 724 */ 725 CanonicalHostedZoneId?: CanonicalHostedZoneId; 726 /** 727 * The date and time the load balancer was created. 728 */ 729 CreatedTime?: CreatedTime; 730 /** 731 * The name of the load balancer. 732 */ 733 LoadBalancerName?: LoadBalancerName; 734 /** 735 * The nodes of an Internet-facing load balancer have public IP addresses. The DNS name of an Internet-facing load balancer is publicly resolvable to the public IP addresses of the nodes. Therefore, Internet-facing load balancers can route requests from clients over the Internet. The nodes of an internal load balancer have only private IP addresses. The DNS name of an internal load balancer is publicly resolvable to the private IP addresses of the nodes. Therefore, internal load balancers can only route requests from clients with access to the VPC for the load balancer. 736 */ 737 Scheme?: LoadBalancerSchemeEnum; 738 /** 739 * The ID of the VPC for the load balancer. 740 */ 741 VpcId?: VpcId; 742 /** 743 * The state of the load balancer. 744 */ 745 State?: LoadBalancerState; 746 /** 747 * The type of load balancer. 748 */ 749 Type?: LoadBalancerTypeEnum; 750 /** 751 * The Availability Zones for the load balancer. 752 */ 753 AvailabilityZones?: AvailabilityZones; 754 /** 755 * The IDs of the security groups for the load balancer. 756 */ 757 SecurityGroups?: SecurityGroups; 758 } 759 export type LoadBalancerArn = string; 760 export type LoadBalancerArns = LoadBalancerArn[]; 761 export interface LoadBalancerAttribute { 762 /** 763 * The name of the attribute. access_logs.s3.enabled - Indicates whether access logs stored in Amazon S3 are enabled. The value is true or false. access_logs.s3.bucket - The name of the S3 bucket for the access logs. This attribute is required if access logs in Amazon S3 are enabled. The bucket must exist in the same region as the load balancer and have a bucket policy that grants Elastic Load Balancing permission to write to the bucket. access_logs.s3.prefix - The prefix for the location in the S3 bucket. If you don't specify a prefix, the access logs are stored in the root of the bucket. deletion_protection.enabled - Indicates whether deletion protection is enabled. The value is true or false. idle_timeout.timeout_seconds - The idle timeout value, in seconds. The valid range is 1-3600. The default is 60 seconds. 764 */ 765 Key?: LoadBalancerAttributeKey; 766 /** 767 * The value of the attribute. 768 */ 769 Value?: LoadBalancerAttributeValue; 770 } 771 export type LoadBalancerAttributeKey = string; 772 export type LoadBalancerAttributeValue = string; 773 export type LoadBalancerAttributes = LoadBalancerAttribute[]; 774 export type LoadBalancerName = string; 775 export type LoadBalancerNames = LoadBalancerName[]; 776 export type LoadBalancerSchemeEnum = "internet-facing"|"internal"|string; 777 export interface LoadBalancerState { 778 /** 779 * The state code. The initial state of the load balancer is provisioning. After the load balancer is fully set up and ready to route traffic, its state is active. If the load balancer could not be set up, its state is failed. 780 */ 781 Code?: LoadBalancerStateEnum; 782 /** 783 * A description of the state. 784 */ 785 Reason?: StateReason; 786 } 787 export type LoadBalancerStateEnum = "active"|"provisioning"|"failed"|string; 788 export type LoadBalancerTypeEnum = "application"|string; 789 export type LoadBalancers = LoadBalancer[]; 790 export type Marker = string; 791 export interface Matcher { 792 /** 793 * The HTTP codes. The default value is 200. You can specify multiple values (for example, "200,202") or a range of values (for example, "200-299"). 794 */ 795 HttpCode: HttpCode; 796 } 797 export interface ModifyListenerInput { 798 /** 799 * The Amazon Resource Name (ARN) of the listener. 800 */ 801 ListenerArn: ListenerArn; 802 /** 803 * The port for connections from clients to the load balancer. 804 */ 805 Port?: Port; 806 /** 807 * The protocol for connections from clients to the load balancer. 808 */ 809 Protocol?: ProtocolEnum; 810 /** 811 * The security policy that defines which ciphers and protocols are supported. 812 */ 813 SslPolicy?: SslPolicyName; 814 /** 815 * The SSL server certificate. 816 */ 817 Certificates?: CertificateList; 818 /** 819 * The default actions. 820 */ 821 DefaultActions?: Actions; 822 } 823 export interface ModifyListenerOutput { 824 /** 825 * Information about the modified listeners. 826 */ 827 Listeners?: Listeners; 828 } 829 export interface ModifyLoadBalancerAttributesInput { 830 /** 831 * The Amazon Resource Name (ARN) of the load balancer. 832 */ 833 LoadBalancerArn: LoadBalancerArn; 834 /** 835 * The load balancer attributes. 836 */ 837 Attributes: LoadBalancerAttributes; 838 } 839 export interface ModifyLoadBalancerAttributesOutput { 840 /** 841 * Information about the load balancer attributes. 842 */ 843 Attributes?: LoadBalancerAttributes; 844 } 845 export interface ModifyRuleInput { 846 /** 847 * The Amazon Resource Name (ARN) of the rule. 848 */ 849 RuleArn: RuleArn; 850 /** 851 * The conditions. 852 */ 853 Conditions?: RuleConditionList; 854 /** 855 * The actions. 856 */ 857 Actions?: Actions; 858 } 859 export interface ModifyRuleOutput { 860 /** 861 * Information about the rule. 862 */ 863 Rules?: Rules; 864 } 865 export interface ModifyTargetGroupAttributesInput { 866 /** 867 * The Amazon Resource Name (ARN) of the target group. 868 */ 869 TargetGroupArn: TargetGroupArn; 870 /** 871 * The attributes. 872 */ 873 Attributes: TargetGroupAttributes; 874 } 875 export interface ModifyTargetGroupAttributesOutput { 876 /** 877 * Information about the attributes. 878 */ 879 Attributes?: TargetGroupAttributes; 880 } 881 export interface ModifyTargetGroupInput { 882 /** 883 * The Amazon Resource Name (ARN) of the target group. 884 */ 885 TargetGroupArn: TargetGroupArn; 886 /** 887 * The protocol to use to connect with the target. 888 */ 889 HealthCheckProtocol?: ProtocolEnum; 890 /** 891 * The port to use to connect with the target. 892 */ 893 HealthCheckPort?: HealthCheckPort; 894 /** 895 * The ping path that is the destination for the health check request. 896 */ 897 HealthCheckPath?: Path; 898 /** 899 * The approximate amount of time, in seconds, between health checks of an individual target. 900 */ 901 HealthCheckIntervalSeconds?: HealthCheckIntervalSeconds; 902 /** 903 * The amount of time, in seconds, during which no response means a failed health check. 904 */ 905 HealthCheckTimeoutSeconds?: HealthCheckTimeoutSeconds; 906 /** 907 * The number of consecutive health checks successes required before considering an unhealthy target healthy. 908 */ 909 HealthyThresholdCount?: HealthCheckThresholdCount; 910 /** 911 * The number of consecutive health check failures required before considering the target unhealthy. 912 */ 913 UnhealthyThresholdCount?: HealthCheckThresholdCount; 914 /** 915 * The HTTP codes to use when checking for a successful response from a target. 916 */ 917 Matcher?: Matcher; 918 } 919 export interface ModifyTargetGroupOutput { 920 /** 921 * Information about the target group. 922 */ 923 TargetGroups?: TargetGroups; 924 } 925 export type PageSize = number; 926 export type Path = string; 927 export type Port = number; 928 export type ProtocolEnum = "HTTP"|"HTTPS"|string; 929 export interface RegisterTargetsInput { 930 /** 931 * The Amazon Resource Name (ARN) of the target group. 932 */ 933 TargetGroupArn: TargetGroupArn; 934 /** 935 * The targets. The default port for a target is the port for the target group. You can specify a port override. If a target is already registered, you can register it again using a different port. 936 */ 937 Targets: TargetDescriptions; 938 } 939 export interface RegisterTargetsOutput { 940 } 941 export interface RemoveTagsInput { 942 /** 943 * The Amazon Resource Name (ARN) of the resource. 944 */ 945 ResourceArns: ResourceArns; 946 /** 947 * The tag keys for the tags to remove. 948 */ 949 TagKeys: TagKeys; 950 } 951 export interface RemoveTagsOutput { 952 } 953 export type ResourceArn = string; 954 export type ResourceArns = ResourceArn[]; 955 export interface Rule { 956 /** 957 * The Amazon Resource Name (ARN) of the rule. 958 */ 959 RuleArn?: RuleArn; 960 /** 961 * The priority. 962 */ 963 Priority?: String; 964 /** 965 * The conditions. 966 */ 967 Conditions?: RuleConditionList; 968 /** 969 * The actions. 970 */ 971 Actions?: Actions; 972 /** 973 * Indicates whether this is the default rule. 974 */ 975 IsDefault?: IsDefault; 976 } 977 export type RuleArn = string; 978 export type RuleArns = RuleArn[]; 979 export interface RuleCondition { 980 /** 981 * The only possible value is path-pattern. 982 */ 983 Field?: ConditionFieldName; 984 /** 985 * The path pattern. You can specify a single path pattern. A path pattern is case sensitive, can be up to 255 characters in length, and can contain any of the following characters: A-Z, a-z, 0-9 _ - . $ / ~ " ' @ : + & (using &amp;) * (matches 0 or more characters) ? (matches exactly 1 character) 986 */ 987 Values?: ListOfString; 988 } 989 export type RuleConditionList = RuleCondition[]; 990 export type RulePriority = number; 991 export type RulePriorityList = RulePriorityPair[]; 992 export interface RulePriorityPair { 993 /** 994 * The Amazon Resource Name (ARN) of the rule. 995 */ 996 RuleArn?: RuleArn; 997 /** 998 * The rule priority. 999 */ 1000 Priority?: RulePriority; 1001 } 1002 export type Rules = Rule[]; 1003 export type SecurityGroupId = string; 1004 export type SecurityGroups = SecurityGroupId[]; 1005 export interface SetRulePrioritiesInput { 1006 /** 1007 * The rule priorities. 1008 */ 1009 RulePriorities: RulePriorityList; 1010 } 1011 export interface SetRulePrioritiesOutput { 1012 /** 1013 * Information about the rules. 1014 */ 1015 Rules?: Rules; 1016 } 1017 export interface SetSecurityGroupsInput { 1018 /** 1019 * The Amazon Resource Name (ARN) of the load balancer. 1020 */ 1021 LoadBalancerArn: LoadBalancerArn; 1022 /** 1023 * The IDs of the security groups. 1024 */ 1025 SecurityGroups: SecurityGroups; 1026 } 1027 export interface SetSecurityGroupsOutput { 1028 /** 1029 * The IDs of the security groups associated with the load balancer. 1030 */ 1031 SecurityGroupIds?: SecurityGroups; 1032 } 1033 export interface SetSubnetsInput { 1034 /** 1035 * The Amazon Resource Name (ARN) of the load balancer. 1036 */ 1037 LoadBalancerArn: LoadBalancerArn; 1038 /** 1039 * The IDs of the subnets. You must specify at least two subnets. You can add only one subnet per Availability Zone. 1040 */ 1041 Subnets: Subnets; 1042 } 1043 export interface SetSubnetsOutput { 1044 /** 1045 * Information about the subnet and Availability Zone. 1046 */ 1047 AvailabilityZones?: AvailabilityZones; 1048 } 1049 export type SslPolicies = SslPolicy[]; 1050 export interface SslPolicy { 1051 /** 1052 * The protocols. 1053 */ 1054 SslProtocols?: SslProtocols; 1055 /** 1056 * The ciphers. 1057 */ 1058 Ciphers?: Ciphers; 1059 /** 1060 * The name of the policy. 1061 */ 1062 Name?: SslPolicyName; 1063 } 1064 export type SslPolicyName = string; 1065 export type SslPolicyNames = SslPolicyName[]; 1066 export type SslProtocol = string; 1067 export type SslProtocols = SslProtocol[]; 1068 export type StateReason = string; 1069 export type String = string; 1070 export type StringValue = string; 1071 export type SubnetId = string; 1072 export type Subnets = SubnetId[]; 1073 export interface Tag { 1074 /** 1075 * The key of the tag. 1076 */ 1077 Key: TagKey; 1078 /** 1079 * The value of the tag. 1080 */ 1081 Value?: TagValue; 1082 } 1083 export interface TagDescription { 1084 /** 1085 * The Amazon Resource Name (ARN) of the resource. 1086 */ 1087 ResourceArn?: ResourceArn; 1088 /** 1089 * Information about the tags. 1090 */ 1091 Tags?: TagList; 1092 } 1093 export type TagDescriptions = TagDescription[]; 1094 export type TagKey = string; 1095 export type TagKeys = TagKey[]; 1096 export type TagList = Tag[]; 1097 export type TagValue = string; 1098 export interface TargetDescription { 1099 /** 1100 * The ID of the target. 1101 */ 1102 Id: TargetId; 1103 /** 1104 * The port on which the target is listening. 1105 */ 1106 Port?: Port; 1107 } 1108 export type TargetDescriptions = TargetDescription[]; 1109 export interface TargetGroup { 1110 /** 1111 * The Amazon Resource Name (ARN) of the target group. 1112 */ 1113 TargetGroupArn?: TargetGroupArn; 1114 /** 1115 * The name of the target group. 1116 */ 1117 TargetGroupName?: TargetGroupName; 1118 /** 1119 * The protocol to use for routing traffic to the targets. 1120 */ 1121 Protocol?: ProtocolEnum; 1122 /** 1123 * The port on which the targets are listening. 1124 */ 1125 Port?: Port; 1126 /** 1127 * The ID of the VPC for the targets. 1128 */ 1129 VpcId?: VpcId; 1130 /** 1131 * The protocol to use to connect with the target. 1132 */ 1133 HealthCheckProtocol?: ProtocolEnum; 1134 /** 1135 * The port to use to connect with the target. 1136 */ 1137 HealthCheckPort?: HealthCheckPort; 1138 /** 1139 * The approximate amount of time, in seconds, between health checks of an individual target. 1140 */ 1141 HealthCheckIntervalSeconds?: HealthCheckIntervalSeconds; 1142 /** 1143 * The amount of time, in seconds, during which no response means a failed health check. 1144 */ 1145 HealthCheckTimeoutSeconds?: HealthCheckTimeoutSeconds; 1146 /** 1147 * The number of consecutive health checks successes required before considering an unhealthy target healthy. 1148 */ 1149 HealthyThresholdCount?: HealthCheckThresholdCount; 1150 /** 1151 * The number of consecutive health check failures required before considering the target unhealthy. 1152 */ 1153 UnhealthyThresholdCount?: HealthCheckThresholdCount; 1154 /** 1155 * The destination for the health check request. 1156 */ 1157 HealthCheckPath?: Path; 1158 /** 1159 * The HTTP codes to use when checking for a successful response from a target. 1160 */ 1161 Matcher?: Matcher; 1162 /** 1163 * The Amazon Resource Names (ARN) of the load balancers that route traffic to this target group. 1164 */ 1165 LoadBalancerArns?: LoadBalancerArns; 1166 } 1167 export type TargetGroupArn = string; 1168 export type TargetGroupArns = TargetGroupArn[]; 1169 export interface TargetGroupAttribute { 1170 /** 1171 * The name of the attribute. deregistration_delay.timeout_seconds - The amount time for Elastic Load Balancing to wait before changing the state of a deregistering target from draining to unused. The range is 0-3600 seconds. The default value is 300 seconds. stickiness.enabled - Indicates whether sticky sessions are enabled. The value is true or false. stickiness.type - The type of sticky sessions. The possible value is lb_cookie. stickiness.lb_cookie.duration_seconds - The time period, in seconds, during which requests from a client should be routed to the same target. After this time period expires, the load balancer-generated cookie is considered stale. The range is 1 second to 1 week (604800 seconds). The default value is 1 day (86400 seconds). 1172 */ 1173 Key?: TargetGroupAttributeKey; 1174 /** 1175 * The value of the attribute. 1176 */ 1177 Value?: TargetGroupAttributeValue; 1178 } 1179 export type TargetGroupAttributeKey = string; 1180 export type TargetGroupAttributeValue = string; 1181 export type TargetGroupAttributes = TargetGroupAttribute[]; 1182 export type TargetGroupName = string; 1183 export type TargetGroupNames = TargetGroupName[]; 1184 export type TargetGroups = TargetGroup[]; 1185 export interface TargetHealth { 1186 /** 1187 * The state of the target. 1188 */ 1189 State?: TargetHealthStateEnum; 1190 /** 1191 * The reason code. If the target state is healthy, a reason code is not provided. If the target state is initial, the reason code can be one of the following values: Elb.RegistrationInProgress - The target is in the process of being registered with the load balancer. Elb.InitialHealthChecking - The load balancer is still sending the target the minimum number of health checks required to determine its health status. If the target state is unhealthy, the reason code can be one of the following values: Target.ResponseCodeMismatch - The health checks did not return an expected HTTP code. Target.Timeout - The health check requests timed out. Target.FailedHealthChecks - The health checks failed because the connection to the target timed out, the target response was malformed, or the target failed the health check for an unknown reason. Elb.InternalError - The health checks failed due to an internal error. If the target state is unused, the reason code can be one of the following values: Target.NotRegistered - The target is not registered with the target group. Target.NotInUse - The target group is not used by any load balancer or the target is in an Availability Zone that is not enabled for its load balancer. Target.InvalidState - The target is in the stopped or terminated state. If the target state is draining, the reason code can be the following value: Target.DeregistrationInProgress - The target is in the process of being deregistered and the deregistration delay period has not expired. 1192 */ 1193 Reason?: TargetHealthReasonEnum; 1194 /** 1195 * A description of the target health that provides additional details. If the state is healthy, a description is not provided. 1196 */ 1197 Description?: Description; 1198 } 1199 export interface TargetHealthDescription { 1200 /** 1201 * The description of the target. 1202 */ 1203 Target?: TargetDescription; 1204 /** 1205 * The port to use to connect with the target. 1206 */ 1207 HealthCheckPort?: HealthCheckPort; 1208 /** 1209 * The health information for the target. 1210 */ 1211 TargetHealth?: TargetHealth; 1212 } 1213 export type TargetHealthDescriptions = TargetHealthDescription[]; 1214 export type TargetHealthReasonEnum = "Elb.RegistrationInProgress"|"Elb.InitialHealthChecking"|"Target.ResponseCodeMismatch"|"Target.Timeout"|"Target.FailedHealthChecks"|"Target.NotRegistered"|"Target.NotInUse"|"Target.DeregistrationInProgress"|"Target.InvalidState"|"Elb.InternalError"|string; 1215 export type TargetHealthStateEnum = "initial"|"healthy"|"unhealthy"|"unused"|"draining"|string; 1216 export type TargetId = string; 1217 export type VpcId = string; 1218 export type ZoneName = string; 1219 /** 1220 * 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. 1221 */ 1222 export type apiVersion = "2015-12-01"|"latest"|string; 1223 export interface ClientApiVersions { 1224 /** 1225 * 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. 1226 */ 1227 apiVersion?: apiVersion; 1228 } 1229 export type ClientConfiguration = ServiceConfigurationOptions & ClientApiVersions; 1230 } 1231 export = ELBv2;