import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { RemoveEndpointsRequest } from "../models/models_0"; /** * @public */ export type { __MetadataBearer }; /** * @public * * The input for {@link RemoveEndpointsCommand}. */ export interface RemoveEndpointsCommandInput extends RemoveEndpointsRequest { } /** * @public * * The output of {@link RemoveEndpointsCommand}. */ export interface RemoveEndpointsCommandOutput extends __MetadataBearer { } declare const RemoveEndpointsCommand_base: { new (input: RemoveEndpointsCommandInput): import("@smithy/core/client").CommandImpl; new (input: RemoveEndpointsCommandInput): import("@smithy/core/client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/types").EndpointParameterInstructions; }; /** *

Remove endpoints from an endpoint group.

*

The RemoveEndpoints API operation is the recommended option for removing endpoints. The alternative is to remove * endpoints by updating an endpoint group by using the * UpdateEndpointGroup * API operation. There are two advantages to using AddEndpoints to remove endpoints instead:

* * @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { GlobalAcceleratorClient, RemoveEndpointsCommand } from "@aws-sdk/client-global-accelerator"; // ES Modules import * // const { GlobalAcceleratorClient, RemoveEndpointsCommand } = 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 = { // RemoveEndpointsRequest * EndpointIdentifiers: [ // EndpointIdentifiers // required * { // EndpointIdentifier * EndpointId: "STRING_VALUE", // required * ClientIPPreservationEnabled: true || false, * }, * ], * EndpointGroupArn: "STRING_VALUE", // required * }; * const command = new RemoveEndpointsCommand(input); * const response = await client.send(command); * // {}; * * ``` * * @param RemoveEndpointsCommandInput - {@link RemoveEndpointsCommandInput} * @returns {@link RemoveEndpointsCommandOutput} * @see {@link RemoveEndpointsCommandInput} for command's `input` shape. * @see {@link RemoveEndpointsCommandOutput} for command's `response` shape. * @see {@link GlobalAcceleratorClientResolvedConfig | config} for GlobalAcceleratorClient's `config` shape. * * @throws {@link AccessDeniedException} (client fault) *

You don't have access permission.

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

The endpoint group that you specified doesn't exist.

* * @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 RemoveEndpointsCommand extends RemoveEndpointsCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: RemoveEndpointsRequest; output: {}; }; sdk: { input: RemoveEndpointsCommandInput; output: RemoveEndpointsCommandOutput; }; }; }