import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { CreateReplicationConfigurationTemplateRequest, ReplicationConfigurationTemplate } from "../models/models_0"; /** * @public */ export type { __MetadataBearer }; /** * @public * * The input for {@link CreateReplicationConfigurationTemplateCommand}. */ export interface CreateReplicationConfigurationTemplateCommandInput extends CreateReplicationConfigurationTemplateRequest { } /** * @public * * The output of {@link CreateReplicationConfigurationTemplateCommand}. */ export interface CreateReplicationConfigurationTemplateCommandOutput extends ReplicationConfigurationTemplate, __MetadataBearer { } declare const CreateReplicationConfigurationTemplateCommand_base: { new (input: CreateReplicationConfigurationTemplateCommandInput): import("@smithy/core/client").CommandImpl; new (input: CreateReplicationConfigurationTemplateCommandInput): import("@smithy/core/client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/types").EndpointParameterInstructions; }; /** *

Creates a new ReplicationConfigurationTemplate.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { DrsClient, CreateReplicationConfigurationTemplateCommand } from "@aws-sdk/client-drs"; // ES Modules import * // const { DrsClient, CreateReplicationConfigurationTemplateCommand } = require("@aws-sdk/client-drs"); // CommonJS import * // import type { DrsClientConfig } from "@aws-sdk/client-drs"; * const config = {}; // type is DrsClientConfig * const client = new DrsClient(config); * const input = { // CreateReplicationConfigurationTemplateRequest * stagingAreaSubnetId: "STRING_VALUE", // required * associateDefaultSecurityGroup: true || false, * replicationServersSecurityGroupsIDs: [ // ReplicationServersSecurityGroupsIDs // required * "STRING_VALUE", * ], * replicationServerInstanceType: "STRING_VALUE", * useDedicatedReplicationServer: true || false, * defaultLargeStagingDiskType: "STRING_VALUE", * ebsEncryption: "STRING_VALUE", // required * ebsEncryptionKeyArn: "STRING_VALUE", * bandwidthThrottling: Number("long"), // required * dataPlaneRouting: "STRING_VALUE", * createPublicIP: true || false, * stagingAreaTags: { // TagsMap // required * "": "STRING_VALUE", * }, * pitPolicy: [ // PITPolicy // required * { // PITPolicyRule * ruleID: Number("long"), * units: "STRING_VALUE", // required * interval: Number("int"), // required * retentionDuration: Number("int"), // required * enabled: true || false, * }, * ], * tags: { * "": "STRING_VALUE", * }, * autoReplicateNewDisks: true || false, * internetProtocol: "STRING_VALUE", * }; * const command = new CreateReplicationConfigurationTemplateCommand(input); * const response = await client.send(command); * // { // ReplicationConfigurationTemplate * // replicationConfigurationTemplateID: "STRING_VALUE", // required * // arn: "STRING_VALUE", * // stagingAreaSubnetId: "STRING_VALUE", * // associateDefaultSecurityGroup: true || false, * // replicationServersSecurityGroupsIDs: [ // ReplicationServersSecurityGroupsIDs * // "STRING_VALUE", * // ], * // replicationServerInstanceType: "STRING_VALUE", * // useDedicatedReplicationServer: true || false, * // defaultLargeStagingDiskType: "STRING_VALUE", * // ebsEncryption: "STRING_VALUE", * // ebsEncryptionKeyArn: "STRING_VALUE", * // bandwidthThrottling: Number("long"), * // dataPlaneRouting: "STRING_VALUE", * // createPublicIP: true || false, * // stagingAreaTags: { // TagsMap * // "": "STRING_VALUE", * // }, * // tags: { * // "": "STRING_VALUE", * // }, * // pitPolicy: [ // PITPolicy * // { // PITPolicyRule * // ruleID: Number("long"), * // units: "STRING_VALUE", // required * // interval: Number("int"), // required * // retentionDuration: Number("int"), // required * // enabled: true || false, * // }, * // ], * // autoReplicateNewDisks: true || false, * // internetProtocol: "STRING_VALUE", * // }; * * ``` * * @param CreateReplicationConfigurationTemplateCommandInput - {@link CreateReplicationConfigurationTemplateCommandInput} * @returns {@link CreateReplicationConfigurationTemplateCommandOutput} * @see {@link CreateReplicationConfigurationTemplateCommandInput} for command's `input` shape. * @see {@link CreateReplicationConfigurationTemplateCommandOutput} for command's `response` shape. * @see {@link DrsClientResolvedConfig | config} for DrsClient's `config` shape. * * @throws {@link AccessDeniedException} (client fault) *

You do not have sufficient access to perform this action.

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

The request processing has failed because of an unknown error, exception or failure.

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

The request could not be completed because its exceeded the service quota.

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

The request was denied due to request throttling.

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

The account performing the request has not been initialized.

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

The input fails to satisfy the constraints specified by the AWS service.

* * @throws {@link DrsServiceException} *

Base exception class for all service exceptions from Drs service.

* * * @public */ export declare class CreateReplicationConfigurationTemplateCommand extends CreateReplicationConfigurationTemplateCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: CreateReplicationConfigurationTemplateRequest; output: ReplicationConfigurationTemplate; }; sdk: { input: CreateReplicationConfigurationTemplateCommandInput; output: CreateReplicationConfigurationTemplateCommandOutput; }; }; }