import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { CreateHsmRequest, CreateHsmResponse } from "../models/models_0"; /** * @public */ export type { __MetadataBearer }; /** * @public * * The input for {@link CreateHsmCommand}. */ export interface CreateHsmCommandInput extends CreateHsmRequest { } /** * @public * * The output of {@link CreateHsmCommand}. */ export interface CreateHsmCommandOutput extends CreateHsmResponse, __MetadataBearer { } declare const CreateHsmCommand_base: { new (input: CreateHsmCommandInput): import("@smithy/core/client").CommandImpl; new (input: CreateHsmCommandInput): import("@smithy/core/client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/types").EndpointParameterInstructions; }; /** *

Creates a new hardware security module (HSM) in the specified CloudHSM * cluster.

*

* Cross-account use: No. You cannot perform this operation on an CloudHSM cluster in a different Amazon Web Service account.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { CloudHSMV2Client, CreateHsmCommand } from "@aws-sdk/client-cloudhsm-v2"; // ES Modules import * // const { CloudHSMV2Client, CreateHsmCommand } = require("@aws-sdk/client-cloudhsm-v2"); // CommonJS import * // import type { CloudHSMV2ClientConfig } from "@aws-sdk/client-cloudhsm-v2"; * const config = {}; // type is CloudHSMV2ClientConfig * const client = new CloudHSMV2Client(config); * const input = { // CreateHsmRequest * ClusterId: "STRING_VALUE", // required * AvailabilityZone: "STRING_VALUE", // required * IpAddress: "STRING_VALUE", * }; * const command = new CreateHsmCommand(input); * const response = await client.send(command); * // { // CreateHsmResponse * // Hsm: { // Hsm * // AvailabilityZone: "STRING_VALUE", * // ClusterId: "STRING_VALUE", * // SubnetId: "STRING_VALUE", * // EniId: "STRING_VALUE", * // EniIp: "STRING_VALUE", * // EniIpV6: "STRING_VALUE", * // HsmId: "STRING_VALUE", // required * // HsmType: "STRING_VALUE", * // State: "CREATE_IN_PROGRESS" || "ACTIVE" || "DEGRADED" || "DELETE_IN_PROGRESS" || "DELETED", * // StateMessage: "STRING_VALUE", * // }, * // }; * * ``` * * @param CreateHsmCommandInput - {@link CreateHsmCommandInput} * @returns {@link CreateHsmCommandOutput} * @see {@link CreateHsmCommandInput} for command's `input` shape. * @see {@link CreateHsmCommandOutput} for command's `response` shape. * @see {@link CloudHSMV2ClientResolvedConfig | config} for CloudHSMV2Client's `config` shape. * * @throws {@link CloudHsmAccessDeniedException} (client fault) *

The request was rejected because the requester does not have permission to perform the * requested operation.

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

The request was rejected because of an CloudHSM internal failure. The request can * be retried.

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

The request was rejected because it is not a valid request.

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

The request was rejected because it refers to a resource that cannot be * found.

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

The request was rejected because an error occurred.

* * @throws {@link CloudHSMV2ServiceException} *

Base exception class for all service exceptions from CloudHSMV2 service.

* * * @public */ export declare class CreateHsmCommand extends CreateHsmCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: CreateHsmRequest; output: CreateHsmResponse; }; sdk: { input: CreateHsmCommandInput; output: CreateHsmCommandOutput; }; }; }