import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { ApplySecurityGroupsToLoadBalancerInput, ApplySecurityGroupsToLoadBalancerOutput } from "../models/models_0"; /** * @public */ export type { __MetadataBearer }; /** * @public * * The input for {@link ApplySecurityGroupsToLoadBalancerCommand}. */ export interface ApplySecurityGroupsToLoadBalancerCommandInput extends ApplySecurityGroupsToLoadBalancerInput { } /** * @public * * The output of {@link ApplySecurityGroupsToLoadBalancerCommand}. */ export interface ApplySecurityGroupsToLoadBalancerCommandOutput extends ApplySecurityGroupsToLoadBalancerOutput, __MetadataBearer { } declare const ApplySecurityGroupsToLoadBalancerCommand_base: { new (input: ApplySecurityGroupsToLoadBalancerCommandInput): import("@smithy/core/client").CommandImpl; new (input: ApplySecurityGroupsToLoadBalancerCommandInput): import("@smithy/core/client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/types").EndpointParameterInstructions; }; /** *

Associates one or more security groups with your load balancer in a virtual private cloud (VPC). The specified security groups override the previously associated security groups.

*

For more information, see Security Groups for Load Balancers in a VPC * in the Classic Load Balancers Guide.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { ElasticLoadBalancingClient, ApplySecurityGroupsToLoadBalancerCommand } from "@aws-sdk/client-elastic-load-balancing"; // ES Modules import * // const { ElasticLoadBalancingClient, ApplySecurityGroupsToLoadBalancerCommand } = require("@aws-sdk/client-elastic-load-balancing"); // CommonJS import * // import type { ElasticLoadBalancingClientConfig } from "@aws-sdk/client-elastic-load-balancing"; * const config = {}; // type is ElasticLoadBalancingClientConfig * const client = new ElasticLoadBalancingClient(config); * const input = { // ApplySecurityGroupsToLoadBalancerInput * LoadBalancerName: "STRING_VALUE", // required * SecurityGroups: [ // SecurityGroups // required * "STRING_VALUE", * ], * }; * const command = new ApplySecurityGroupsToLoadBalancerCommand(input); * const response = await client.send(command); * // { // ApplySecurityGroupsToLoadBalancerOutput * // SecurityGroups: [ // SecurityGroups * // "STRING_VALUE", * // ], * // }; * * ``` * * @param ApplySecurityGroupsToLoadBalancerCommandInput - {@link ApplySecurityGroupsToLoadBalancerCommandInput} * @returns {@link ApplySecurityGroupsToLoadBalancerCommandOutput} * @see {@link ApplySecurityGroupsToLoadBalancerCommandInput} for command's `input` shape. * @see {@link ApplySecurityGroupsToLoadBalancerCommandOutput} for command's `response` shape. * @see {@link ElasticLoadBalancingClientResolvedConfig | config} for ElasticLoadBalancingClient's `config` shape. * * @throws {@link AccessPointNotFoundException} (client fault) *

The specified load balancer does not exist.

* * @throws {@link InvalidConfigurationRequestException} (client fault) *

The requested configuration change is not valid.

* * @throws {@link InvalidSecurityGroupException} (client fault) *

One or more of the specified security groups do not exist.

* * @throws {@link ElasticLoadBalancingServiceException} *

Base exception class for all service exceptions from ElasticLoadBalancing service.

* * * @example To associate a security group with a load balancer in a VPC * ```javascript * // This example associates a security group with the specified load balancer in a VPC. * const input = { * LoadBalancerName: "my-load-balancer", * SecurityGroups: [ * "sg-fc448899" * ] * }; * const command = new ApplySecurityGroupsToLoadBalancerCommand(input); * const response = await client.send(command); * /* response is * { * SecurityGroups: [ * "sg-fc448899" * ] * } * *\/ * ``` * * @public */ export declare class ApplySecurityGroupsToLoadBalancerCommand extends ApplySecurityGroupsToLoadBalancerCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: ApplySecurityGroupsToLoadBalancerInput; output: ApplySecurityGroupsToLoadBalancerOutput; }; sdk: { input: ApplySecurityGroupsToLoadBalancerCommandInput; output: ApplySecurityGroupsToLoadBalancerCommandOutput; }; }; }