import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { DeleteAutoScalingGroupType } from "../models/models_0"; /** * @public */ export type { __MetadataBearer }; /** * @public * * The input for {@link DeleteAutoScalingGroupCommand}. */ export interface DeleteAutoScalingGroupCommandInput extends DeleteAutoScalingGroupType { } /** * @public * * The output of {@link DeleteAutoScalingGroupCommand}. */ export interface DeleteAutoScalingGroupCommandOutput extends __MetadataBearer { } declare const DeleteAutoScalingGroupCommand_base: { new (input: DeleteAutoScalingGroupCommandInput): import("@smithy/core/client").CommandImpl; new (input: DeleteAutoScalingGroupCommandInput): import("@smithy/core/client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/types").EndpointParameterInstructions; }; /** *

Deletes the specified Auto Scaling group.

*

If the group has instances or scaling activities in progress, you must specify the * option to force the deletion in order for it to succeed. The force delete operation will * also terminate the EC2 instances. If the group has a warm pool, the force delete option * also deletes the warm pool.

*

To remove instances from the Auto Scaling group before deleting it, call the * DetachInstances API with the list of instances and the option to * decrement the desired capacity. This ensures that Amazon EC2 Auto Scaling does not launch replacement * instances.

*

To terminate all instances before deleting the Auto Scaling group, call the * UpdateAutoScalingGroup API and set the minimum size and desired capacity * of the Auto Scaling group to * zero.

*

If the group has scaling policies, deleting the group deletes the policies, the * underlying alarm actions, and any alarm that no longer has an associated action.

*

For more information, see Delete your Auto Scaling * infrastructure in the Amazon EC2 Auto Scaling User Guide.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { AutoScalingClient, DeleteAutoScalingGroupCommand } from "@aws-sdk/client-auto-scaling"; // ES Modules import * // const { AutoScalingClient, DeleteAutoScalingGroupCommand } = require("@aws-sdk/client-auto-scaling"); // CommonJS import * // import type { AutoScalingClientConfig } from "@aws-sdk/client-auto-scaling"; * const config = {}; // type is AutoScalingClientConfig * const client = new AutoScalingClient(config); * const input = { // DeleteAutoScalingGroupType * AutoScalingGroupName: "STRING_VALUE", // required * ForceDelete: true || false, * }; * const command = new DeleteAutoScalingGroupCommand(input); * const response = await client.send(command); * // {}; * * ``` * * @param DeleteAutoScalingGroupCommandInput - {@link DeleteAutoScalingGroupCommandInput} * @returns {@link DeleteAutoScalingGroupCommandOutput} * @see {@link DeleteAutoScalingGroupCommandInput} for command's `input` shape. * @see {@link DeleteAutoScalingGroupCommandOutput} for command's `response` shape. * @see {@link AutoScalingClientResolvedConfig | config} for AutoScalingClient's `config` shape. * * @throws {@link ResourceContentionFault} (server fault) *

You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling group, * instance, or load balancer).

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

The operation can't be performed because the resource is in use.

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

The operation can't be performed because there are scaling activities in * progress.

* * @throws {@link AutoScalingServiceException} *

Base exception class for all service exceptions from AutoScaling service.

* * * @example To delete an Auto Scaling group * ```javascript * // This example deletes the specified Auto Scaling group. * const input = { * AutoScalingGroupName: "my-auto-scaling-group" * }; * const command = new DeleteAutoScalingGroupCommand(input); * const response = await client.send(command); * /* response is * { /* metadata only *\/ } * *\/ * ``` * * @example To delete an Auto Scaling group and all its instances * ```javascript * // This example deletes the specified Auto Scaling group and all its instances. * const input = { * AutoScalingGroupName: "my-auto-scaling-group", * ForceDelete: true * }; * const command = new DeleteAutoScalingGroupCommand(input); * const response = await client.send(command); * /* response is * { /* metadata only *\/ } * *\/ * ``` * * @public */ export declare class DeleteAutoScalingGroupCommand extends DeleteAutoScalingGroupCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: DeleteAutoScalingGroupType; output: {}; }; sdk: { input: DeleteAutoScalingGroupCommandInput; output: DeleteAutoScalingGroupCommandOutput; }; }; }