import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { DeleteCustomRoutingAcceleratorRequest } from "../models/models_0"; /** * @public */ export type { __MetadataBearer }; /** * @public * * The input for {@link DeleteCustomRoutingAcceleratorCommand}. */ export interface DeleteCustomRoutingAcceleratorCommandInput extends DeleteCustomRoutingAcceleratorRequest { } /** * @public * * The output of {@link DeleteCustomRoutingAcceleratorCommand}. */ export interface DeleteCustomRoutingAcceleratorCommandOutput extends __MetadataBearer { } declare const DeleteCustomRoutingAcceleratorCommand_base: { new (input: DeleteCustomRoutingAcceleratorCommandInput): import("@smithy/core/client").CommandImpl; new (input: DeleteCustomRoutingAcceleratorCommandInput): import("@smithy/core/client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/types").EndpointParameterInstructions; }; /** *

Delete a custom routing accelerator. Before you can delete an accelerator, you must disable it and remove all dependent resources * (listeners and endpoint groups). To disable the accelerator, update the accelerator to set Enabled to false.

* *

When you create a custom routing accelerator, by default, Global Accelerator provides you with a set of two static IP addresses. *

*

The IP * addresses are assigned to your accelerator for as long as it exists, even if you disable the accelerator and * it no longer accepts or routes traffic. However, when you delete an accelerator, you lose the * static IP addresses that are assigned to the accelerator, so you can no longer route traffic by using them. * As a best practice, ensure that you have permissions in place to avoid inadvertently deleting accelerators. You * can use IAM policies with Global Accelerator to limit the users who have permissions to delete an accelerator. For more information, * see Identity and access management in * the Global Accelerator Developer Guide.

*
* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { GlobalAcceleratorClient, DeleteCustomRoutingAcceleratorCommand } from "@aws-sdk/client-global-accelerator"; // ES Modules import * // const { GlobalAcceleratorClient, DeleteCustomRoutingAcceleratorCommand } = require("@aws-sdk/client-global-accelerator"); // CommonJS import * // import type { GlobalAcceleratorClientConfig } from "@aws-sdk/client-global-accelerator"; * const config = {}; // type is GlobalAcceleratorClientConfig * const client = new GlobalAcceleratorClient(config); * const input = { // DeleteCustomRoutingAcceleratorRequest * AcceleratorArn: "STRING_VALUE", // required * }; * const command = new DeleteCustomRoutingAcceleratorCommand(input); * const response = await client.send(command); * // {}; * * ``` * * @param DeleteCustomRoutingAcceleratorCommandInput - {@link DeleteCustomRoutingAcceleratorCommandInput} * @returns {@link DeleteCustomRoutingAcceleratorCommandOutput} * @see {@link DeleteCustomRoutingAcceleratorCommandInput} for command's `input` shape. * @see {@link DeleteCustomRoutingAcceleratorCommandOutput} for command's `response` shape. * @see {@link GlobalAcceleratorClientResolvedConfig | config} for GlobalAcceleratorClient's `config` shape. * * @throws {@link AcceleratorNotDisabledException} (client fault) *

The accelerator that you specified could not be disabled.

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

The accelerator that you specified doesn't exist.

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

The accelerator that you specified has a listener associated with it. You must remove all dependent resources from an * accelerator before you can delete it.

* * @throws {@link InternalServiceErrorException} (server fault) *

There was an internal error for Global Accelerator.

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

An argument that you specified is invalid.

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

There's already a transaction in progress. Another transaction can't be processed.

* * @throws {@link GlobalAcceleratorServiceException} *

Base exception class for all service exceptions from GlobalAccelerator service.

* * * @public */ export declare class DeleteCustomRoutingAcceleratorCommand extends DeleteCustomRoutingAcceleratorCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: DeleteCustomRoutingAcceleratorRequest; output: {}; }; sdk: { input: DeleteCustomRoutingAcceleratorCommandInput; output: DeleteCustomRoutingAcceleratorCommandOutput; }; }; }