@aws-sdk/client-elastic-load-balancing-v2 3.288.0 → 3.290.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/dist-types/commands/AddListenerCertificatesCommand.d.ts +10 -0
  2. package/dist-types/commands/AddTagsCommand.d.ts +42 -0
  3. package/dist-types/commands/CreateListenerCommand.d.ts +144 -0
  4. package/dist-types/commands/CreateLoadBalancerCommand.d.ts +137 -0
  5. package/dist-types/commands/CreateRuleCommand.d.ts +101 -0
  6. package/dist-types/commands/CreateTargetGroupCommand.d.ts +51 -0
  7. package/dist-types/commands/DeleteListenerCommand.d.ts +18 -0
  8. package/dist-types/commands/DeleteLoadBalancerCommand.d.ts +21 -0
  9. package/dist-types/commands/DeleteRuleCommand.d.ts +18 -0
  10. package/dist-types/commands/DeleteTargetGroupCommand.d.ts +15 -0
  11. package/dist-types/commands/DeregisterTargetsCommand.d.ts +24 -0
  12. package/dist-types/commands/DescribeAccountLimitsCommand.d.ts +1 -0
  13. package/dist-types/commands/DescribeListenerCertificatesCommand.d.ts +4 -0
  14. package/dist-types/commands/DescribeListenersCommand.d.ts +41 -0
  15. package/dist-types/commands/DescribeLoadBalancerAttributesCommand.d.ts +41 -0
  16. package/dist-types/commands/DescribeLoadBalancersCommand.d.ts +49 -0
  17. package/dist-types/commands/DescribeRulesCommand.d.ts +48 -0
  18. package/dist-types/commands/DescribeSSLPoliciesCommand.d.ts +109 -0
  19. package/dist-types/commands/DescribeTagsCommand.d.ts +45 -0
  20. package/dist-types/commands/DescribeTargetGroupAttributesCommand.d.ts +37 -0
  21. package/dist-types/commands/DescribeTargetGroupsCommand.d.ts +46 -0
  22. package/dist-types/commands/DescribeTargetHealthCommand.d.ts +83 -0
  23. package/dist-types/commands/ModifyListenerCommand.d.ts +130 -0
  24. package/dist-types/commands/ModifyLoadBalancerAttributesCommand.d.ts +144 -0
  25. package/dist-types/commands/ModifyRuleCommand.d.ts +81 -0
  26. package/dist-types/commands/ModifyTargetGroupAttributesCommand.d.ts +46 -0
  27. package/dist-types/commands/ModifyTargetGroupCommand.d.ts +45 -0
  28. package/dist-types/commands/RegisterTargetsCommand.d.ts +55 -0
  29. package/dist-types/commands/RemoveListenerCertificatesCommand.d.ts +7 -0
  30. package/dist-types/commands/RemoveTagsCommand.d.ts +33 -0
  31. package/dist-types/commands/SetIpAddressTypeCommand.d.ts +10 -0
  32. package/dist-types/commands/SetRulePrioritiesCommand.d.ts +51 -0
  33. package/dist-types/commands/SetSecurityGroupsCommand.d.ts +31 -0
  34. package/dist-types/commands/SetSubnetsCommand.d.ts +48 -0
  35. package/package.json +30 -30
@@ -35,6 +35,16 @@ export interface AddListenerCertificatesCommandOutput extends AddListenerCertifi
35
35
  * @see {@link AddListenerCertificatesCommandOutput} for command's `response` shape.
36
36
  * @see {@link ElasticLoadBalancingV2ClientResolvedConfig | config} for ElasticLoadBalancingV2Client's `config` shape.
37
37
  *
38
+ * @throws {@link CertificateNotFoundException} (client fault)
39
+ * <p>The specified certificate does not exist.</p>
40
+ *
41
+ * @throws {@link ListenerNotFoundException} (client fault)
42
+ * <p>The specified listener does not exist.</p>
43
+ *
44
+ * @throws {@link TooManyCertificatesException} (client fault)
45
+ * <p>You've reached the limit on the number of certificates per load balancer.</p>
46
+ *
47
+ *
38
48
  */
39
49
  export declare class AddListenerCertificatesCommand extends $Command<AddListenerCertificatesCommandInput, AddListenerCertificatesCommandOutput, ElasticLoadBalancingV2ClientResolvedConfig> {
40
50
  readonly input: AddListenerCertificatesCommandInput;
@@ -33,6 +33,48 @@ export interface AddTagsCommandOutput extends AddTagsOutput, __MetadataBearer {
33
33
  * @see {@link AddTagsCommandOutput} for command's `response` shape.
34
34
  * @see {@link ElasticLoadBalancingV2ClientResolvedConfig | config} for ElasticLoadBalancingV2Client's `config` shape.
35
35
  *
36
+ * @throws {@link DuplicateTagKeysException} (client fault)
37
+ * <p>A tag key was specified more than once.</p>
38
+ *
39
+ * @throws {@link ListenerNotFoundException} (client fault)
40
+ * <p>The specified listener does not exist.</p>
41
+ *
42
+ * @throws {@link LoadBalancerNotFoundException} (client fault)
43
+ * <p>The specified load balancer does not exist.</p>
44
+ *
45
+ * @throws {@link RuleNotFoundException} (client fault)
46
+ * <p>The specified rule does not exist.</p>
47
+ *
48
+ * @throws {@link TargetGroupNotFoundException} (client fault)
49
+ * <p>The specified target group does not exist.</p>
50
+ *
51
+ * @throws {@link TooManyTagsException} (client fault)
52
+ * <p>You've reached the limit on the number of tags per load balancer.</p>
53
+ *
54
+ *
55
+ * @example To add tags to a load balancer
56
+ * ```javascript
57
+ * // This example adds the specified tags to the specified load balancer.
58
+ * const input = {
59
+ * "ResourceArns": [
60
+ * "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188"
61
+ * ],
62
+ * "Tags": [
63
+ * {
64
+ * "Key": "project",
65
+ * "Value": "lima"
66
+ * },
67
+ * {
68
+ * "Key": "department",
69
+ * "Value": "digital-media"
70
+ * }
71
+ * ]
72
+ * };
73
+ * const command = new AddTagsCommand(input);
74
+ * await client.send(command);
75
+ * // example id: elbv2-add-tags-1
76
+ * ```
77
+ *
36
78
  */
37
79
  export declare class AddTagsCommand extends $Command<AddTagsCommandInput, AddTagsCommandOutput, ElasticLoadBalancingV2ClientResolvedConfig> {
38
80
  readonly input: AddTagsCommandInput;
@@ -53,6 +53,150 @@ export interface CreateListenerCommandOutput extends CreateListenerOutput, __Met
53
53
  * @see {@link CreateListenerCommandOutput} for command's `response` shape.
54
54
  * @see {@link ElasticLoadBalancingV2ClientResolvedConfig | config} for ElasticLoadBalancingV2Client's `config` shape.
55
55
  *
56
+ * @throws {@link ALPNPolicyNotSupportedException} (client fault)
57
+ * <p>The specified ALPN policy is not supported.</p>
58
+ *
59
+ * @throws {@link CertificateNotFoundException} (client fault)
60
+ * <p>The specified certificate does not exist.</p>
61
+ *
62
+ * @throws {@link DuplicateListenerException} (client fault)
63
+ * <p>A listener with the specified port already exists.</p>
64
+ *
65
+ * @throws {@link IncompatibleProtocolsException} (client fault)
66
+ * <p>The specified configuration is not valid with this protocol.</p>
67
+ *
68
+ * @throws {@link InvalidConfigurationRequestException} (client fault)
69
+ * <p>The requested configuration is not valid.</p>
70
+ *
71
+ * @throws {@link InvalidLoadBalancerActionException} (client fault)
72
+ * <p>The requested action is not valid.</p>
73
+ *
74
+ * @throws {@link LoadBalancerNotFoundException} (client fault)
75
+ * <p>The specified load balancer does not exist.</p>
76
+ *
77
+ * @throws {@link SSLPolicyNotFoundException} (client fault)
78
+ * <p>The specified SSL policy does not exist.</p>
79
+ *
80
+ * @throws {@link TargetGroupAssociationLimitException} (client fault)
81
+ * <p>You've reached the limit on the number of load balancers per target group.</p>
82
+ *
83
+ * @throws {@link TargetGroupNotFoundException} (client fault)
84
+ * <p>The specified target group does not exist.</p>
85
+ *
86
+ * @throws {@link TooManyActionsException} (client fault)
87
+ * <p>You've reached the limit on the number of actions per rule.</p>
88
+ *
89
+ * @throws {@link TooManyCertificatesException} (client fault)
90
+ * <p>You've reached the limit on the number of certificates per load balancer.</p>
91
+ *
92
+ * @throws {@link TooManyListenersException} (client fault)
93
+ * <p>You've reached the limit on the number of listeners per load balancer.</p>
94
+ *
95
+ * @throws {@link TooManyRegistrationsForTargetIdException} (client fault)
96
+ * <p>You've reached the limit on the number of times a target can be registered with a load
97
+ * balancer.</p>
98
+ *
99
+ * @throws {@link TooManyTagsException} (client fault)
100
+ * <p>You've reached the limit on the number of tags per load balancer.</p>
101
+ *
102
+ * @throws {@link TooManyTargetsException} (client fault)
103
+ * <p>You've reached the limit on the number of targets.</p>
104
+ *
105
+ * @throws {@link TooManyUniqueTargetGroupsPerLoadBalancerException} (client fault)
106
+ * <p>You've reached the limit on the number of unique target groups per load balancer across
107
+ * all listeners. If a target group is used by multiple actions for a load balancer, it is
108
+ * counted as only one use.</p>
109
+ *
110
+ * @throws {@link UnsupportedProtocolException} (client fault)
111
+ * <p>The specified protocol is not supported.</p>
112
+ *
113
+ *
114
+ * @example To create an HTTP listener
115
+ * ```javascript
116
+ * // This example creates an HTTP listener for the specified load balancer that forwards requests to the specified target group.
117
+ * const input = {
118
+ * "DefaultActions": [
119
+ * {
120
+ * "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067",
121
+ * "Type": "forward"
122
+ * }
123
+ * ],
124
+ * "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188",
125
+ * "Port": 80,
126
+ * "Protocol": "HTTP"
127
+ * };
128
+ * const command = new CreateListenerCommand(input);
129
+ * const response = await client.send(command);
130
+ * /* response ==
131
+ * {
132
+ * "Listeners": [
133
+ * {
134
+ * "DefaultActions": [
135
+ * {
136
+ * "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067",
137
+ * "Type": "forward"
138
+ * }
139
+ * ],
140
+ * "ListenerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2",
141
+ * "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188",
142
+ * "Port": 80,
143
+ * "Protocol": "HTTP"
144
+ * }
145
+ * ]
146
+ * }
147
+ * *\/
148
+ * // example id: elbv2-create-listener-1
149
+ * ```
150
+ *
151
+ * @example To create an HTTPS listener
152
+ * ```javascript
153
+ * // This example creates an HTTPS listener for the specified load balancer that forwards requests to the specified target group. Note that you must specify an SSL certificate for an HTTPS listener. You can create and manage certificates using AWS Certificate Manager (ACM). Alternatively, you can create a certificate using SSL/TLS tools, get the certificate signed by a certificate authority (CA), and upload the certificate to AWS Identity and Access Management (IAM).
154
+ * const input = {
155
+ * "Certificates": [
156
+ * {
157
+ * "CertificateArn": "arn:aws:iam::123456789012:server-certificate/my-server-cert"
158
+ * }
159
+ * ],
160
+ * "DefaultActions": [
161
+ * {
162
+ * "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067",
163
+ * "Type": "forward"
164
+ * }
165
+ * ],
166
+ * "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188",
167
+ * "Port": 443,
168
+ * "Protocol": "HTTPS",
169
+ * "SslPolicy": "ELBSecurityPolicy-2015-05"
170
+ * };
171
+ * const command = new CreateListenerCommand(input);
172
+ * const response = await client.send(command);
173
+ * /* response ==
174
+ * {
175
+ * "Listeners": [
176
+ * {
177
+ * "Certificates": [
178
+ * {
179
+ * "CertificateArn": "arn:aws:iam::123456789012:server-certificate/my-server-cert"
180
+ * }
181
+ * ],
182
+ * "DefaultActions": [
183
+ * {
184
+ * "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067",
185
+ * "Type": "forward"
186
+ * }
187
+ * ],
188
+ * "ListenerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2",
189
+ * "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188",
190
+ * "Port": 443,
191
+ * "Protocol": "HTTPS",
192
+ * "SslPolicy": "ELBSecurityPolicy-2015-05"
193
+ * }
194
+ * ]
195
+ * }
196
+ * *\/
197
+ * // example id: elbv2-create-listener-2
198
+ * ```
199
+ *
56
200
  */
57
201
  export declare class CreateListenerCommand extends $Command<CreateListenerCommandInput, CreateListenerCommandOutput, ElasticLoadBalancingV2ClientResolvedConfig> {
58
202
  readonly input: CreateListenerCommandInput;
@@ -52,6 +52,143 @@ export interface CreateLoadBalancerCommandOutput extends CreateLoadBalancerOutpu
52
52
  * @see {@link CreateLoadBalancerCommandOutput} for command's `response` shape.
53
53
  * @see {@link ElasticLoadBalancingV2ClientResolvedConfig | config} for ElasticLoadBalancingV2Client's `config` shape.
54
54
  *
55
+ * @throws {@link AllocationIdNotFoundException} (client fault)
56
+ * <p>The specified allocation ID does not exist.</p>
57
+ *
58
+ * @throws {@link AvailabilityZoneNotSupportedException} (client fault)
59
+ * <p>The specified Availability Zone is not supported.</p>
60
+ *
61
+ * @throws {@link DuplicateLoadBalancerNameException} (client fault)
62
+ * <p>A load balancer with the specified name already exists.</p>
63
+ *
64
+ * @throws {@link DuplicateTagKeysException} (client fault)
65
+ * <p>A tag key was specified more than once.</p>
66
+ *
67
+ * @throws {@link InvalidConfigurationRequestException} (client fault)
68
+ * <p>The requested configuration is not valid.</p>
69
+ *
70
+ * @throws {@link InvalidSchemeException} (client fault)
71
+ * <p>The requested scheme is not valid.</p>
72
+ *
73
+ * @throws {@link InvalidSecurityGroupException} (client fault)
74
+ * <p>The specified security group does not exist.</p>
75
+ *
76
+ * @throws {@link InvalidSubnetException} (client fault)
77
+ * <p>The specified subnet is out of available addresses.</p>
78
+ *
79
+ * @throws {@link OperationNotPermittedException} (client fault)
80
+ * <p>This operation is not allowed.</p>
81
+ *
82
+ * @throws {@link ResourceInUseException} (client fault)
83
+ * <p>A specified resource is in use.</p>
84
+ *
85
+ * @throws {@link SubnetNotFoundException} (client fault)
86
+ * <p>The specified subnet does not exist.</p>
87
+ *
88
+ * @throws {@link TooManyLoadBalancersException} (client fault)
89
+ * <p>You've reached the limit on the number of load balancers for your Amazon Web Services
90
+ * account.</p>
91
+ *
92
+ * @throws {@link TooManyTagsException} (client fault)
93
+ * <p>You've reached the limit on the number of tags per load balancer.</p>
94
+ *
95
+ *
96
+ * @example To create an Internet-facing load balancer
97
+ * ```javascript
98
+ * // This example creates an Internet-facing load balancer and enables the Availability Zones for the specified subnets.
99
+ * const input = {
100
+ * "Name": "my-load-balancer",
101
+ * "Subnets": [
102
+ * "subnet-b7d581c0",
103
+ * "subnet-8360a9e7"
104
+ * ]
105
+ * };
106
+ * const command = new CreateLoadBalancerCommand(input);
107
+ * const response = await client.send(command);
108
+ * /* response ==
109
+ * {
110
+ * "LoadBalancers": [
111
+ * {
112
+ * "AvailabilityZones": [
113
+ * {
114
+ * "SubnetId": "subnet-8360a9e7",
115
+ * "ZoneName": "us-west-2a"
116
+ * },
117
+ * {
118
+ * "SubnetId": "subnet-b7d581c0",
119
+ * "ZoneName": "us-west-2b"
120
+ * }
121
+ * ],
122
+ * "CanonicalHostedZoneId": "Z2P70J7EXAMPLE",
123
+ * "CreatedTime": "2016-03-25T21:26:12.920Z",
124
+ * "DNSName": "my-load-balancer-424835706.us-west-2.elb.amazonaws.com",
125
+ * "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188",
126
+ * "LoadBalancerName": "my-load-balancer",
127
+ * "Scheme": "internet-facing",
128
+ * "SecurityGroups": [
129
+ * "sg-5943793c"
130
+ * ],
131
+ * "State": {
132
+ * "Code": "provisioning"
133
+ * },
134
+ * "Type": "application",
135
+ * "VpcId": "vpc-3ac0fb5f"
136
+ * }
137
+ * ]
138
+ * }
139
+ * *\/
140
+ * // example id: elbv2-create-load-balancer-1
141
+ * ```
142
+ *
143
+ * @example To create an internal load balancer
144
+ * ```javascript
145
+ * // This example creates an internal load balancer and enables the Availability Zones for the specified subnets.
146
+ * const input = {
147
+ * "Name": "my-internal-load-balancer",
148
+ * "Scheme": "internal",
149
+ * "SecurityGroups": [],
150
+ * "Subnets": [
151
+ * "subnet-b7d581c0",
152
+ * "subnet-8360a9e7"
153
+ * ]
154
+ * };
155
+ * const command = new CreateLoadBalancerCommand(input);
156
+ * const response = await client.send(command);
157
+ * /* response ==
158
+ * {
159
+ * "LoadBalancers": [
160
+ * {
161
+ * "AvailabilityZones": [
162
+ * {
163
+ * "SubnetId": "subnet-8360a9e7",
164
+ * "ZoneName": "us-west-2a"
165
+ * },
166
+ * {
167
+ * "SubnetId": "subnet-b7d581c0",
168
+ * "ZoneName": "us-west-2b"
169
+ * }
170
+ * ],
171
+ * "CanonicalHostedZoneId": "Z2P70J7EXAMPLE",
172
+ * "CreatedTime": "2016-03-25T21:29:48.850Z",
173
+ * "DNSName": "internal-my-internal-load-balancer-1529930873.us-west-2.elb.amazonaws.com",
174
+ * "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-internal-load-balancer/5b49b8d4303115c2",
175
+ * "LoadBalancerName": "my-internal-load-balancer",
176
+ * "Scheme": "internal",
177
+ * "SecurityGroups": [
178
+ * "sg-5943793c"
179
+ * ],
180
+ * "State": {
181
+ * "Code": "provisioning"
182
+ * },
183
+ * "Type": "application",
184
+ * "VpcId": "vpc-3ac0fb5f"
185
+ * }
186
+ * ]
187
+ * }
188
+ * *\/
189
+ * // example id: elbv2-create-load-balancer-2
190
+ * ```
191
+ *
55
192
  */
56
193
  export declare class CreateLoadBalancerCommand extends $Command<CreateLoadBalancerCommandInput, CreateLoadBalancerCommandOutput, ElasticLoadBalancingV2ClientResolvedConfig> {
57
194
  readonly input: CreateLoadBalancerCommandInput;
@@ -34,6 +34,107 @@ export interface CreateRuleCommandOutput extends CreateRuleOutput, __MetadataBea
34
34
  * @see {@link CreateRuleCommandOutput} for command's `response` shape.
35
35
  * @see {@link ElasticLoadBalancingV2ClientResolvedConfig | config} for ElasticLoadBalancingV2Client's `config` shape.
36
36
  *
37
+ * @throws {@link IncompatibleProtocolsException} (client fault)
38
+ * <p>The specified configuration is not valid with this protocol.</p>
39
+ *
40
+ * @throws {@link InvalidConfigurationRequestException} (client fault)
41
+ * <p>The requested configuration is not valid.</p>
42
+ *
43
+ * @throws {@link InvalidLoadBalancerActionException} (client fault)
44
+ * <p>The requested action is not valid.</p>
45
+ *
46
+ * @throws {@link ListenerNotFoundException} (client fault)
47
+ * <p>The specified listener does not exist.</p>
48
+ *
49
+ * @throws {@link PriorityInUseException} (client fault)
50
+ * <p>The specified priority is in use.</p>
51
+ *
52
+ * @throws {@link TargetGroupAssociationLimitException} (client fault)
53
+ * <p>You've reached the limit on the number of load balancers per target group.</p>
54
+ *
55
+ * @throws {@link TargetGroupNotFoundException} (client fault)
56
+ * <p>The specified target group does not exist.</p>
57
+ *
58
+ * @throws {@link TooManyActionsException} (client fault)
59
+ * <p>You've reached the limit on the number of actions per rule.</p>
60
+ *
61
+ * @throws {@link TooManyRegistrationsForTargetIdException} (client fault)
62
+ * <p>You've reached the limit on the number of times a target can be registered with a load
63
+ * balancer.</p>
64
+ *
65
+ * @throws {@link TooManyRulesException} (client fault)
66
+ * <p>You've reached the limit on the number of rules per load balancer.</p>
67
+ *
68
+ * @throws {@link TooManyTagsException} (client fault)
69
+ * <p>You've reached the limit on the number of tags per load balancer.</p>
70
+ *
71
+ * @throws {@link TooManyTargetGroupsException} (client fault)
72
+ * <p>You've reached the limit on the number of target groups for your Amazon Web Services
73
+ * account.</p>
74
+ *
75
+ * @throws {@link TooManyTargetsException} (client fault)
76
+ * <p>You've reached the limit on the number of targets.</p>
77
+ *
78
+ * @throws {@link TooManyUniqueTargetGroupsPerLoadBalancerException} (client fault)
79
+ * <p>You've reached the limit on the number of unique target groups per load balancer across
80
+ * all listeners. If a target group is used by multiple actions for a load balancer, it is
81
+ * counted as only one use.</p>
82
+ *
83
+ * @throws {@link UnsupportedProtocolException} (client fault)
84
+ * <p>The specified protocol is not supported.</p>
85
+ *
86
+ *
87
+ * @example To create a rule
88
+ * ```javascript
89
+ * // This example creates a rule that forwards requests to the specified target group if the URL contains the specified pattern (for example, /img/*).
90
+ * const input = {
91
+ * "Actions": [
92
+ * {
93
+ * "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067",
94
+ * "Type": "forward"
95
+ * }
96
+ * ],
97
+ * "Conditions": [
98
+ * {
99
+ * "Field": "path-pattern",
100
+ * "Values": [
101
+ * "/img/*"
102
+ * ]
103
+ * }
104
+ * ],
105
+ * "ListenerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2",
106
+ * "Priority": 10
107
+ * };
108
+ * const command = new CreateRuleCommand(input);
109
+ * const response = await client.send(command);
110
+ * /* response ==
111
+ * {
112
+ * "Rules": [
113
+ * {
114
+ * "Actions": [
115
+ * {
116
+ * "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067",
117
+ * "Type": "forward"
118
+ * }
119
+ * ],
120
+ * "Conditions": [
121
+ * {
122
+ * "Field": "path-pattern",
123
+ * "Values": [
124
+ * "/img/*"
125
+ * ]
126
+ * }
127
+ * ],
128
+ * "IsDefault": false,
129
+ * "Priority": "10",
130
+ * "RuleArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener-rule/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2/9683b2d02a6cabee"
131
+ * }
132
+ * ]
133
+ * }
134
+ * *\/
135
+ * // example id: elbv2-create-rule-1
136
+ * ```
137
+ *
37
138
  */
38
139
  export declare class CreateRuleCommand extends $Command<CreateRuleCommandInput, CreateRuleCommandOutput, ElasticLoadBalancingV2ClientResolvedConfig> {
39
140
  readonly input: CreateRuleCommandInput;
@@ -52,6 +52,57 @@ export interface CreateTargetGroupCommandOutput extends CreateTargetGroupOutput,
52
52
  * @see {@link CreateTargetGroupCommandOutput} for command's `response` shape.
53
53
  * @see {@link ElasticLoadBalancingV2ClientResolvedConfig | config} for ElasticLoadBalancingV2Client's `config` shape.
54
54
  *
55
+ * @throws {@link DuplicateTargetGroupNameException} (client fault)
56
+ * <p>A target group with the specified name already exists.</p>
57
+ *
58
+ * @throws {@link InvalidConfigurationRequestException} (client fault)
59
+ * <p>The requested configuration is not valid.</p>
60
+ *
61
+ * @throws {@link TooManyTagsException} (client fault)
62
+ * <p>You've reached the limit on the number of tags per load balancer.</p>
63
+ *
64
+ * @throws {@link TooManyTargetGroupsException} (client fault)
65
+ * <p>You've reached the limit on the number of target groups for your Amazon Web Services
66
+ * account.</p>
67
+ *
68
+ *
69
+ * @example To create a target group
70
+ * ```javascript
71
+ * // This example creates a target group that you can use to route traffic to targets using HTTP on port 80. This target group uses the default health check configuration.
72
+ * const input = {
73
+ * "Name": "my-targets",
74
+ * "Port": 80,
75
+ * "Protocol": "HTTP",
76
+ * "VpcId": "vpc-3ac0fb5f"
77
+ * };
78
+ * const command = new CreateTargetGroupCommand(input);
79
+ * const response = await client.send(command);
80
+ * /* response ==
81
+ * {
82
+ * "TargetGroups": [
83
+ * {
84
+ * "HealthCheckIntervalSeconds": 30,
85
+ * "HealthCheckPath": "/",
86
+ * "HealthCheckPort": "traffic-port",
87
+ * "HealthCheckProtocol": "HTTP",
88
+ * "HealthCheckTimeoutSeconds": 5,
89
+ * "HealthyThresholdCount": 5,
90
+ * "Matcher": {
91
+ * "HttpCode": "200"
92
+ * },
93
+ * "Port": 80,
94
+ * "Protocol": "HTTP",
95
+ * "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067",
96
+ * "TargetGroupName": "my-targets",
97
+ * "UnhealthyThresholdCount": 2,
98
+ * "VpcId": "vpc-3ac0fb5f"
99
+ * }
100
+ * ]
101
+ * }
102
+ * *\/
103
+ * // example id: elbv2-create-target-group-1
104
+ * ```
105
+ *
55
106
  */
56
107
  export declare class CreateTargetGroupCommand extends $Command<CreateTargetGroupCommandInput, CreateTargetGroupCommandOutput, ElasticLoadBalancingV2ClientResolvedConfig> {
57
108
  readonly input: CreateTargetGroupCommandInput;
@@ -31,6 +31,24 @@ export interface DeleteListenerCommandOutput extends DeleteListenerOutput, __Met
31
31
  * @see {@link DeleteListenerCommandOutput} for command's `response` shape.
32
32
  * @see {@link ElasticLoadBalancingV2ClientResolvedConfig | config} for ElasticLoadBalancingV2Client's `config` shape.
33
33
  *
34
+ * @throws {@link ListenerNotFoundException} (client fault)
35
+ * <p>The specified listener does not exist.</p>
36
+ *
37
+ * @throws {@link ResourceInUseException} (client fault)
38
+ * <p>A specified resource is in use.</p>
39
+ *
40
+ *
41
+ * @example To delete a listener
42
+ * ```javascript
43
+ * // This example deletes the specified listener.
44
+ * const input = {
45
+ * "ListenerArn": "arn:aws:elasticloadbalancing:ua-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2"
46
+ * };
47
+ * const command = new DeleteListenerCommand(input);
48
+ * await client.send(command);
49
+ * // example id: elbv2-delete-listener-1
50
+ * ```
51
+ *
34
52
  */
35
53
  export declare class DeleteListenerCommand extends $Command<DeleteListenerCommandInput, DeleteListenerCommandOutput, ElasticLoadBalancingV2ClientResolvedConfig> {
36
54
  readonly input: DeleteListenerCommandInput;
@@ -35,6 +35,27 @@ export interface DeleteLoadBalancerCommandOutput extends DeleteLoadBalancerOutpu
35
35
  * @see {@link DeleteLoadBalancerCommandOutput} for command's `response` shape.
36
36
  * @see {@link ElasticLoadBalancingV2ClientResolvedConfig | config} for ElasticLoadBalancingV2Client's `config` shape.
37
37
  *
38
+ * @throws {@link LoadBalancerNotFoundException} (client fault)
39
+ * <p>The specified load balancer does not exist.</p>
40
+ *
41
+ * @throws {@link OperationNotPermittedException} (client fault)
42
+ * <p>This operation is not allowed.</p>
43
+ *
44
+ * @throws {@link ResourceInUseException} (client fault)
45
+ * <p>A specified resource is in use.</p>
46
+ *
47
+ *
48
+ * @example To delete a load balancer
49
+ * ```javascript
50
+ * // This example deletes the specified load balancer.
51
+ * const input = {
52
+ * "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188"
53
+ * };
54
+ * const command = new DeleteLoadBalancerCommand(input);
55
+ * await client.send(command);
56
+ * // example id: elbv2-delete-load-balancer-1
57
+ * ```
58
+ *
38
59
  */
39
60
  export declare class DeleteLoadBalancerCommand extends $Command<DeleteLoadBalancerCommandInput, DeleteLoadBalancerCommandOutput, ElasticLoadBalancingV2ClientResolvedConfig> {
40
61
  readonly input: DeleteLoadBalancerCommandInput;
@@ -30,6 +30,24 @@ export interface DeleteRuleCommandOutput extends DeleteRuleOutput, __MetadataBea
30
30
  * @see {@link DeleteRuleCommandOutput} for command's `response` shape.
31
31
  * @see {@link ElasticLoadBalancingV2ClientResolvedConfig | config} for ElasticLoadBalancingV2Client's `config` shape.
32
32
  *
33
+ * @throws {@link OperationNotPermittedException} (client fault)
34
+ * <p>This operation is not allowed.</p>
35
+ *
36
+ * @throws {@link RuleNotFoundException} (client fault)
37
+ * <p>The specified rule does not exist.</p>
38
+ *
39
+ *
40
+ * @example To delete a rule
41
+ * ```javascript
42
+ * // This example deletes the specified rule.
43
+ * const input = {
44
+ * "RuleArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener-rule/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2/1291d13826f405c3"
45
+ * };
46
+ * const command = new DeleteRuleCommand(input);
47
+ * await client.send(command);
48
+ * // example id: elbv2-delete-rule-1
49
+ * ```
50
+ *
33
51
  */
34
52
  export declare class DeleteRuleCommand extends $Command<DeleteRuleCommandInput, DeleteRuleCommandOutput, ElasticLoadBalancingV2ClientResolvedConfig> {
35
53
  readonly input: DeleteRuleCommandInput;
@@ -33,6 +33,21 @@ export interface DeleteTargetGroupCommandOutput extends DeleteTargetGroupOutput,
33
33
  * @see {@link DeleteTargetGroupCommandOutput} for command's `response` shape.
34
34
  * @see {@link ElasticLoadBalancingV2ClientResolvedConfig | config} for ElasticLoadBalancingV2Client's `config` shape.
35
35
  *
36
+ * @throws {@link ResourceInUseException} (client fault)
37
+ * <p>A specified resource is in use.</p>
38
+ *
39
+ *
40
+ * @example To delete a target group
41
+ * ```javascript
42
+ * // This example deletes the specified target group.
43
+ * const input = {
44
+ * "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067"
45
+ * };
46
+ * const command = new DeleteTargetGroupCommand(input);
47
+ * await client.send(command);
48
+ * // example id: elbv2-delete-target-group-1
49
+ * ```
50
+ *
36
51
  */
37
52
  export declare class DeleteTargetGroupCommand extends $Command<DeleteTargetGroupCommandInput, DeleteTargetGroupCommandOutput, ElasticLoadBalancingV2ClientResolvedConfig> {
38
53
  readonly input: DeleteTargetGroupCommandInput;
@@ -30,6 +30,30 @@ export interface DeregisterTargetsCommandOutput extends DeregisterTargetsOutput,
30
30
  * @see {@link DeregisterTargetsCommandOutput} for command's `response` shape.
31
31
  * @see {@link ElasticLoadBalancingV2ClientResolvedConfig | config} for ElasticLoadBalancingV2Client's `config` shape.
32
32
  *
33
+ * @throws {@link InvalidTargetException} (client fault)
34
+ * <p>The specified target does not exist, is not in the same VPC as the target group, or has an
35
+ * unsupported instance type.</p>
36
+ *
37
+ * @throws {@link TargetGroupNotFoundException} (client fault)
38
+ * <p>The specified target group does not exist.</p>
39
+ *
40
+ *
41
+ * @example To deregister a target from a target group
42
+ * ```javascript
43
+ * // This example deregisters the specified instance from the specified target group.
44
+ * const input = {
45
+ * "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067",
46
+ * "Targets": [
47
+ * {
48
+ * "Id": "i-0f76fade"
49
+ * }
50
+ * ]
51
+ * };
52
+ * const command = new DeregisterTargetsCommand(input);
53
+ * await client.send(command);
54
+ * // example id: elbv2-deregister-targets-1
55
+ * ```
56
+ *
33
57
  */
34
58
  export declare class DeregisterTargetsCommand extends $Command<DeregisterTargetsCommandInput, DeregisterTargetsCommandOutput, ElasticLoadBalancingV2ClientResolvedConfig> {
35
59
  readonly input: DeregisterTargetsCommandInput;
@@ -51,6 +51,7 @@ export interface DescribeAccountLimitsCommandOutput extends DescribeAccountLimit
51
51
  * @see {@link DescribeAccountLimitsCommandOutput} for command's `response` shape.
52
52
  * @see {@link ElasticLoadBalancingV2ClientResolvedConfig | config} for ElasticLoadBalancingV2Client's `config` shape.
53
53
  *
54
+ *
54
55
  */
55
56
  export declare class DescribeAccountLimitsCommand extends $Command<DescribeAccountLimitsCommandInput, DescribeAccountLimitsCommandOutput, ElasticLoadBalancingV2ClientResolvedConfig> {
56
57
  readonly input: DescribeAccountLimitsCommandInput;