import { Command as $Command } from "@smithy/smithy-client"; import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { DeleteClusterSecurityGroupMessage } from "../models/models_0"; import type { RedshiftClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../RedshiftClient"; /** * @public */ export type { __MetadataBearer }; export { $Command }; /** * @public * * The input for {@link DeleteClusterSecurityGroupCommand}. */ export interface DeleteClusterSecurityGroupCommandInput extends DeleteClusterSecurityGroupMessage { } /** * @public * * The output of {@link DeleteClusterSecurityGroupCommand}. */ export interface DeleteClusterSecurityGroupCommandOutput extends __MetadataBearer { } declare const DeleteClusterSecurityGroupCommand_base: { new (input: DeleteClusterSecurityGroupCommandInput): import("@smithy/smithy-client").CommandImpl; new (input: DeleteClusterSecurityGroupCommandInput): import("@smithy/smithy-client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; }; /** *

Deletes an Amazon Redshift security group.

* *

You cannot delete a security group that is associated with any clusters. You * cannot delete the default security group.

*
*

* For information about managing security groups, go to * Amazon Redshift Cluster Security Groups in the * Amazon Redshift Cluster Management Guide.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { RedshiftClient, DeleteClusterSecurityGroupCommand } from "@aws-sdk/client-redshift"; // ES Modules import * // const { RedshiftClient, DeleteClusterSecurityGroupCommand } = require("@aws-sdk/client-redshift"); // CommonJS import * // import type { RedshiftClientConfig } from "@aws-sdk/client-redshift"; * const config = {}; // type is RedshiftClientConfig * const client = new RedshiftClient(config); * const input = { // DeleteClusterSecurityGroupMessage * ClusterSecurityGroupName: "STRING_VALUE", // required * }; * const command = new DeleteClusterSecurityGroupCommand(input); * const response = await client.send(command); * // {}; * * ``` * * @param DeleteClusterSecurityGroupCommandInput - {@link DeleteClusterSecurityGroupCommandInput} * @returns {@link DeleteClusterSecurityGroupCommandOutput} * @see {@link DeleteClusterSecurityGroupCommandInput} for command's `input` shape. * @see {@link DeleteClusterSecurityGroupCommandOutput} for command's `response` shape. * @see {@link RedshiftClientResolvedConfig | config} for RedshiftClient's `config` shape. * * @throws {@link ClusterSecurityGroupNotFoundFault} (client fault) *

The cluster security group name does not refer to an existing cluster security * group.

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

The state of the cluster security group is not available.

* * @throws {@link RedshiftServiceException} *

Base exception class for all service exceptions from Redshift service.

* * * @public */ export declare class DeleteClusterSecurityGroupCommand extends DeleteClusterSecurityGroupCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: DeleteClusterSecurityGroupMessage; output: {}; }; sdk: { input: DeleteClusterSecurityGroupCommandInput; output: DeleteClusterSecurityGroupCommandOutput; }; }; }