import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { DeleteGatewayInput, DeleteGatewayOutput } from "../models/models_0"; /** * @public */ export type { __MetadataBearer }; /** * @public * * The input for {@link DeleteGatewayCommand}. */ export interface DeleteGatewayCommandInput extends DeleteGatewayInput { } /** * @public * * The output of {@link DeleteGatewayCommand}. */ export interface DeleteGatewayCommandOutput extends DeleteGatewayOutput, __MetadataBearer { } declare const DeleteGatewayCommand_base: { new (input: DeleteGatewayCommandInput): import("@smithy/core/client").CommandImpl; new (input: DeleteGatewayCommandInput): import("@smithy/core/client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/types").EndpointParameterInstructions; }; /** *

Deletes a gateway. To specify which gateway to delete, use the Amazon Resource Name * (ARN) of the gateway in your request. The operation deletes the gateway; however, it does * not delete the gateway virtual machine (VM) from your host computer.

*

After you delete a gateway, you cannot reactivate it. Completed snapshots of the gateway * volumes are not deleted upon deleting the gateway, however, pending snapshots will not * complete. After you delete a gateway, your next step is to remove it from your * environment.

* *

You no longer pay software charges after the gateway is deleted; however, your * existing Amazon EBS snapshots persist and you will continue to be billed for these * snapshots. You can choose to remove all remaining Amazon EBS snapshots by canceling your * Amazon EC2 subscription.  If you prefer not to cancel your Amazon EC2 subscription, you * can delete your snapshots using the Amazon EC2 console. For more information, see the * Storage Gateway detail * page.

*
* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { StorageGatewayClient, DeleteGatewayCommand } from "@aws-sdk/client-storage-gateway"; // ES Modules import * // const { StorageGatewayClient, DeleteGatewayCommand } = require("@aws-sdk/client-storage-gateway"); // CommonJS import * // import type { StorageGatewayClientConfig } from "@aws-sdk/client-storage-gateway"; * const config = {}; // type is StorageGatewayClientConfig * const client = new StorageGatewayClient(config); * const input = { // DeleteGatewayInput * GatewayARN: "STRING_VALUE", // required * }; * const command = new DeleteGatewayCommand(input); * const response = await client.send(command); * // { // DeleteGatewayOutput * // GatewayARN: "STRING_VALUE", * // }; * * ``` * * @param DeleteGatewayCommandInput - {@link DeleteGatewayCommandInput} * @returns {@link DeleteGatewayCommandOutput} * @see {@link DeleteGatewayCommandInput} for command's `input` shape. * @see {@link DeleteGatewayCommandOutput} for command's `response` shape. * @see {@link StorageGatewayClientResolvedConfig | config} for StorageGatewayClient's `config` shape. * * @throws {@link InternalServerError} (server fault) *

An internal server error has occurred during the request. For more information, see the * error and message fields.

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

An exception occurred because an invalid gateway request was issued to the service. For * more information, see the error and message fields.

* * @throws {@link StorageGatewayServiceException} *

Base exception class for all service exceptions from StorageGateway service.

* * * @example To delete a gatgeway * ```javascript * // This operation deletes the gateway, but not the gateway's VM from the host computer. * const input = { * GatewayARN: "arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B" * }; * const command = new DeleteGatewayCommand(input); * const response = await client.send(command); * /* response is * { * GatewayARN: "arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B" * } * *\/ * ``` * * @public */ export declare class DeleteGatewayCommand extends DeleteGatewayCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: DeleteGatewayInput; output: DeleteGatewayOutput; }; sdk: { input: DeleteGatewayCommandInput; output: DeleteGatewayCommandOutput; }; }; }