import * as cdk from "../../core/lib"; import * as constructs from "constructs"; import * as cfn_parse from "../../core/lib/helpers-internal"; import { ILaunchConfigurationTemplateRef, IRecoveryPlanRef, IReplicationConfigurationTemplateRef, ISourceNetworkRef, LaunchConfigurationTemplateReference, RecoveryPlanReference, ReplicationConfigurationTemplateReference, SourceNetworkReference } from "../../interfaces/generated/aws-drs-interfaces.generated"; /** * Account level Launch Configuration Template for AWS Elastic Disaster Recovery. * * @cloudformationResource AWS::DRS::LaunchConfigurationTemplate * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-launchconfigurationtemplate.html */ export declare class CfnLaunchConfigurationTemplate extends cdk.CfnResource implements cdk.IInspectable, ILaunchConfigurationTemplateRef, cdk.ITaggableV2 { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME: string; /** * Build a CfnLaunchConfigurationTemplate from CloudFormation properties * * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnLaunchConfigurationTemplate; /** * Checks whether the given object is a CfnLaunchConfigurationTemplate */ static isCfnLaunchConfigurationTemplate(x: any): x is CfnLaunchConfigurationTemplate; static arnForLaunchConfigurationTemplate(resource: ILaunchConfigurationTemplateRef): string; /** * Tag Manager which manages the tags for this resource */ readonly cdkTagManager: cdk.TagManager; /** * Copy private IP. */ private _copyPrivateIp?; /** * Copy tags. */ private _copyTags?; /** * S3 bucket ARN to export Source Network templates. */ private _exportBucketArn?; /** * Launch disposition. */ private _launchDisposition?; /** * DRS will set the 'launch into instance ID' of any source server when performing a drill, recovery or failback to the previous region or availability zone, using the instance ID of the source instance. */ private _launchIntoSourceInstance?; /** * Configuration of a machine's license. */ private _licensing?; /** * Whether we want to activate post-launch actions. */ private _postLaunchEnabled?; /** * A set of tags associated with the Launch Configuration Template. */ private _tags?; /** * Target instance type right-sizing method. */ private _targetInstanceTypeRightSizingMethod?; protected readonly cfnPropertyNames: Record; /** * Create a new `AWS::DRS::LaunchConfigurationTemplate`. * * @param scope Scope in which this resource is defined * @param id Construct identifier for this resource (unique in its scope) * @param props Resource properties */ constructor(scope: constructs.Construct, id: string, props?: CfnLaunchConfigurationTemplateProps); get launchConfigurationTemplateRef(): LaunchConfigurationTemplateReference; /** * Copy private IP. */ get copyPrivateIp(): boolean | cdk.IResolvable | undefined; /** * Copy private IP. */ set copyPrivateIp(value: boolean | cdk.IResolvable | undefined); /** * Copy tags. */ get copyTags(): boolean | cdk.IResolvable | undefined; /** * Copy tags. */ set copyTags(value: boolean | cdk.IResolvable | undefined); /** * S3 bucket ARN to export Source Network templates. */ get exportBucketArn(): string | undefined; /** * S3 bucket ARN to export Source Network templates. */ set exportBucketArn(value: string | undefined); /** * Launch disposition. */ get launchDisposition(): string | undefined; /** * Launch disposition. */ set launchDisposition(value: string | undefined); /** * DRS will set the 'launch into instance ID' of any source server when performing a drill, recovery or failback to the previous region or availability zone, using the instance ID of the source instance. */ get launchIntoSourceInstance(): boolean | cdk.IResolvable | undefined; /** * DRS will set the 'launch into instance ID' of any source server when performing a drill, recovery or failback to the previous region or availability zone, using the instance ID of the source instance. */ set launchIntoSourceInstance(value: boolean | cdk.IResolvable | undefined); /** * Configuration of a machine's license. */ get licensing(): cdk.IResolvable | CfnLaunchConfigurationTemplate.LicensingProperty | undefined; /** * Configuration of a machine's license. */ set licensing(value: cdk.IResolvable | CfnLaunchConfigurationTemplate.LicensingProperty | undefined); /** * Whether we want to activate post-launch actions. */ get postLaunchEnabled(): boolean | cdk.IResolvable | undefined; /** * Whether we want to activate post-launch actions. */ set postLaunchEnabled(value: boolean | cdk.IResolvable | undefined); /** * A set of tags associated with the Launch Configuration Template. */ get tags(): Array | undefined; /** * A set of tags associated with the Launch Configuration Template. */ set tags(value: Array | undefined); /** * Target instance type right-sizing method. */ get targetInstanceTypeRightSizingMethod(): string | undefined; /** * Target instance type right-sizing method. */ set targetInstanceTypeRightSizingMethod(value: string | undefined); /** * ARN of the Launch Configuration Template. * * @cloudformationAttribute Arn */ get attrArn(): string; /** * ID of the Launch Configuration Template. * * @cloudformationAttribute LaunchConfigurationTemplateID */ get attrLaunchConfigurationTemplateId(): string; protected get cfnProperties(): Record; /** * Examines the CloudFormation resource and discloses attributes * * @param inspector tree inspector to collect and process attributes */ inspect(inspector: cdk.TreeInspector): void; protected renderProperties(props: Record): Record; } export declare namespace CfnLaunchConfigurationTemplate { /** * Configuration of a machine's license. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-drs-launchconfigurationtemplate-licensing.html */ interface LicensingProperty { /** * Whether to enable Bring your own license or not. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-drs-launchconfigurationtemplate-licensing.html#cfn-drs-launchconfigurationtemplate-licensing-osbyol */ readonly osByol?: boolean | cdk.IResolvable; } } /** * Properties for defining a `CfnLaunchConfigurationTemplate` * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-launchconfigurationtemplate.html */ export interface CfnLaunchConfigurationTemplateProps { /** * Copy private IP. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-launchconfigurationtemplate.html#cfn-drs-launchconfigurationtemplate-copyprivateip */ readonly copyPrivateIp?: boolean | cdk.IResolvable; /** * Copy tags. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-launchconfigurationtemplate.html#cfn-drs-launchconfigurationtemplate-copytags */ readonly copyTags?: boolean | cdk.IResolvable; /** * S3 bucket ARN to export Source Network templates. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-launchconfigurationtemplate.html#cfn-drs-launchconfigurationtemplate-exportbucketarn */ readonly exportBucketArn?: string; /** * Launch disposition. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-launchconfigurationtemplate.html#cfn-drs-launchconfigurationtemplate-launchdisposition */ readonly launchDisposition?: string; /** * DRS will set the 'launch into instance ID' of any source server when performing a drill, recovery or failback to the previous region or availability zone, using the instance ID of the source instance. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-launchconfigurationtemplate.html#cfn-drs-launchconfigurationtemplate-launchintosourceinstance */ readonly launchIntoSourceInstance?: boolean | cdk.IResolvable; /** * Configuration of a machine's license. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-launchconfigurationtemplate.html#cfn-drs-launchconfigurationtemplate-licensing */ readonly licensing?: cdk.IResolvable | CfnLaunchConfigurationTemplate.LicensingProperty; /** * Whether we want to activate post-launch actions. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-launchconfigurationtemplate.html#cfn-drs-launchconfigurationtemplate-postlaunchenabled */ readonly postLaunchEnabled?: boolean | cdk.IResolvable; /** * A set of tags associated with the Launch Configuration Template. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-launchconfigurationtemplate.html#cfn-drs-launchconfigurationtemplate-tags */ readonly tags?: Array; /** * Target instance type right-sizing method. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-launchconfigurationtemplate.html#cfn-drs-launchconfigurationtemplate-targetinstancetyperightsizingmethod */ readonly targetInstanceTypeRightSizingMethod?: string; } /** * A Recovery Plan orchestrates multi-server disaster recovery in AWS Elastic Disaster Recovery. * * @cloudformationResource AWS::DRS::RecoveryPlan * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-recoveryplan.html */ export declare class CfnRecoveryPlan extends cdk.CfnResource implements cdk.IInspectable, IRecoveryPlanRef, cdk.ITaggableV2 { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME: string; /** * Build a CfnRecoveryPlan from CloudFormation properties * * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnRecoveryPlan; /** * Checks whether the given object is a CfnRecoveryPlan */ static isCfnRecoveryPlan(x: any): x is CfnRecoveryPlan; static arnForRecoveryPlan(resource: IRecoveryPlanRef): string; /** * Tag Manager which manages the tags for this resource */ readonly cdkTagManager: cdk.TagManager; /** * The description of the Recovery Plan. */ private _description?; /** * The name of the Recovery Plan. */ private _name; /** * The tags associated with the Recovery Plan. */ private _tags?; protected readonly cfnPropertyNames: Record; /** * Create a new `AWS::DRS::RecoveryPlan`. * * @param scope Scope in which this resource is defined * @param id Construct identifier for this resource (unique in its scope) * @param props Resource properties */ constructor(scope: constructs.Construct, id: string, props: CfnRecoveryPlanProps); get recoveryPlanRef(): RecoveryPlanReference; /** * The description of the Recovery Plan. */ get description(): string | undefined; /** * The description of the Recovery Plan. */ set description(value: string | undefined); /** * The name of the Recovery Plan. */ get name(): string; /** * The name of the Recovery Plan. */ set name(value: string); /** * The tags associated with the Recovery Plan. */ get tags(): Array | undefined; /** * The tags associated with the Recovery Plan. */ set tags(value: Array | undefined); /** * The ARN of the Recovery Plan. * * @cloudformationAttribute Arn */ get attrArn(): string; /** * The timestamp when the Recovery Plan was created. * * @cloudformationAttribute CreatedAt */ get attrCreatedAt(): string; /** * The ID of the Recovery Plan. * * @cloudformationAttribute RecoveryPlanID */ get attrRecoveryPlanId(): string; /** * The status of the Recovery Plan. ACTIVE means executable. INVALID means the plan has no SERVER type steps and cannot be executed. * * @cloudformationAttribute Status */ get attrStatus(): string; /** * The timestamp when the Recovery Plan was last updated. * * @cloudformationAttribute UpdatedAt */ get attrUpdatedAt(): string; protected get cfnProperties(): Record; /** * Examines the CloudFormation resource and discloses attributes * * @param inspector tree inspector to collect and process attributes */ inspect(inspector: cdk.TreeInspector): void; protected renderProperties(props: Record): Record; } /** * Properties for defining a `CfnRecoveryPlan` * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-recoveryplan.html */ export interface CfnRecoveryPlanProps { /** * The description of the Recovery Plan. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-recoveryplan.html#cfn-drs-recoveryplan-description */ readonly description?: string; /** * The name of the Recovery Plan. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-recoveryplan.html#cfn-drs-recoveryplan-name */ readonly name: string; /** * The tags associated with the Recovery Plan. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-recoveryplan.html#cfn-drs-recoveryplan-tags */ readonly tags?: Array; } /** * A replication configuration template for AWS Elastic Disaster Recovery Service. * * @cloudformationResource AWS::DRS::ReplicationConfigurationTemplate * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-replicationconfigurationtemplate.html */ export declare class CfnReplicationConfigurationTemplate extends cdk.CfnResource implements cdk.IInspectable, IReplicationConfigurationTemplateRef, cdk.ITaggableV2 { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME: string; /** * Build a CfnReplicationConfigurationTemplate from CloudFormation properties * * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnReplicationConfigurationTemplate; /** * Checks whether the given object is a CfnReplicationConfigurationTemplate */ static isCfnReplicationConfigurationTemplate(x: any): x is CfnReplicationConfigurationTemplate; static arnForReplicationConfigurationTemplate(resource: IReplicationConfigurationTemplateRef): string; /** * Whether to associate the default Elastic Disaster Recovery Security group with the Replication Configuration Template. */ private _associateDefaultSecurityGroup?; /** * Whether to allow the AWS replication agent to automatically replicate newly added disks. */ private _autoReplicateNewDisks?; /** * Configure bandwidth throttling for the outbound data transfer rate of the Source Server in Mbps. */ private _bandwidthThrottling; /** * Tag Manager which manages the tags for this resource */ readonly cdkTagManager: cdk.TagManager; /** * Whether to create a Public IP for the Recovery Instance by default. */ private _createPublicIp?; /** * The data plane routing mechanism that will be used for replication. */ private _dataPlaneRouting?; /** * The Staging Disk EBS volume type to be used during replication. */ private _defaultLargeStagingDiskType?; /** * The type of EBS encryption to be used during replication. */ private _ebsEncryption; /** * The ARN of the EBS encryption key to be used during replication. */ private _ebsEncryptionKeyArn?; /** * Which version of the Internet Protocol to use for replication of data. */ private _internetProtocol?; /** * The Point in time (PIT) policy to manage snapshots taken during replication. */ private _pitPolicy; /** * The instance type to be used for the replication server. */ private _replicationServerInstanceType?; /** * The security group IDs that will be used by the replication server. */ private _replicationServersSecurityGroupsIDs; /** * The subnet to be used by the replication staging area. */ private _stagingAreaSubnetId; /** * A set of tags to be associated with all resources created in the replication staging area: EC2 replication server, EBS volumes, EBS snapshots, etc. */ private _stagingAreaTags; /** * A set of tags to be associated with the Replication Configuration Template resource. */ private _tags?; /** * Whether to use a dedicated Replication Server in the replication staging area. */ private _useDedicatedReplicationServer?; protected readonly cfnPropertyNames: Record; /** * Create a new `AWS::DRS::ReplicationConfigurationTemplate`. * * @param scope Scope in which this resource is defined * @param id Construct identifier for this resource (unique in its scope) * @param props Resource properties */ constructor(scope: constructs.Construct, id: string, props: CfnReplicationConfigurationTemplateProps); get replicationConfigurationTemplateRef(): ReplicationConfigurationTemplateReference; /** * Whether to associate the default Elastic Disaster Recovery Security group with the Replication Configuration Template. */ get associateDefaultSecurityGroup(): boolean | cdk.IResolvable | undefined; /** * Whether to associate the default Elastic Disaster Recovery Security group with the Replication Configuration Template. */ set associateDefaultSecurityGroup(value: boolean | cdk.IResolvable | undefined); /** * Whether to allow the AWS replication agent to automatically replicate newly added disks. */ get autoReplicateNewDisks(): boolean | cdk.IResolvable | undefined; /** * Whether to allow the AWS replication agent to automatically replicate newly added disks. */ set autoReplicateNewDisks(value: boolean | cdk.IResolvable | undefined); /** * Configure bandwidth throttling for the outbound data transfer rate of the Source Server in Mbps. */ get bandwidthThrottling(): number; /** * Configure bandwidth throttling for the outbound data transfer rate of the Source Server in Mbps. */ set bandwidthThrottling(value: number); /** * Whether to create a Public IP for the Recovery Instance by default. */ get createPublicIp(): boolean | cdk.IResolvable | undefined; /** * Whether to create a Public IP for the Recovery Instance by default. */ set createPublicIp(value: boolean | cdk.IResolvable | undefined); /** * The data plane routing mechanism that will be used for replication. */ get dataPlaneRouting(): string | undefined; /** * The data plane routing mechanism that will be used for replication. */ set dataPlaneRouting(value: string | undefined); /** * The Staging Disk EBS volume type to be used during replication. */ get defaultLargeStagingDiskType(): string | undefined; /** * The Staging Disk EBS volume type to be used during replication. */ set defaultLargeStagingDiskType(value: string | undefined); /** * The type of EBS encryption to be used during replication. */ get ebsEncryption(): string; /** * The type of EBS encryption to be used during replication. */ set ebsEncryption(value: string); /** * The ARN of the EBS encryption key to be used during replication. */ get ebsEncryptionKeyArn(): string | undefined; /** * The ARN of the EBS encryption key to be used during replication. */ set ebsEncryptionKeyArn(value: string | undefined); /** * Which version of the Internet Protocol to use for replication of data. */ get internetProtocol(): string | undefined; /** * Which version of the Internet Protocol to use for replication of data. */ set internetProtocol(value: string | undefined); /** * The Point in time (PIT) policy to manage snapshots taken during replication. */ get pitPolicy(): Array | cdk.IResolvable; /** * The Point in time (PIT) policy to manage snapshots taken during replication. */ set pitPolicy(value: Array | cdk.IResolvable); /** * The instance type to be used for the replication server. */ get replicationServerInstanceType(): string | undefined; /** * The instance type to be used for the replication server. */ set replicationServerInstanceType(value: string | undefined); /** * The security group IDs that will be used by the replication server. */ get replicationServersSecurityGroupsIDs(): Array; /** * The security group IDs that will be used by the replication server. */ set replicationServersSecurityGroupsIDs(value: Array); /** * The subnet to be used by the replication staging area. */ get stagingAreaSubnetId(): string; /** * The subnet to be used by the replication staging area. */ set stagingAreaSubnetId(value: string); /** * A set of tags to be associated with all resources created in the replication staging area: EC2 replication server, EBS volumes, EBS snapshots, etc. */ get stagingAreaTags(): cdk.IResolvable | Record; /** * A set of tags to be associated with all resources created in the replication staging area: EC2 replication server, EBS volumes, EBS snapshots, etc. */ set stagingAreaTags(value: cdk.IResolvable | Record); /** * A set of tags to be associated with the Replication Configuration Template resource. */ get tags(): Array | undefined; /** * A set of tags to be associated with the Replication Configuration Template resource. */ set tags(value: Array | undefined); /** * Whether to use a dedicated Replication Server in the replication staging area. */ get useDedicatedReplicationServer(): boolean | cdk.IResolvable | undefined; /** * Whether to use a dedicated Replication Server in the replication staging area. */ set useDedicatedReplicationServer(value: boolean | cdk.IResolvable | undefined); /** * The Replication Configuration Template ARN. * * @cloudformationAttribute Arn */ get attrArn(): string; /** * The Replication Configuration Template ID. * * @cloudformationAttribute ReplicationConfigurationTemplateID */ get attrReplicationConfigurationTemplateId(): string; protected get cfnProperties(): Record; /** * Examines the CloudFormation resource and discloses attributes * * @param inspector tree inspector to collect and process attributes */ inspect(inspector: cdk.TreeInspector): void; protected renderProperties(props: Record): Record; } export declare namespace CfnReplicationConfigurationTemplate { /** * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-drs-replicationconfigurationtemplate-pitpolicyrule.html */ interface PITPolicyRuleProperty { /** * Whether this rule is enabled or not. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-drs-replicationconfigurationtemplate-pitpolicyrule.html#cfn-drs-replicationconfigurationtemplate-pitpolicyrule-enabled */ readonly enabled?: boolean | cdk.IResolvable; /** * How often, in the chosen units, a snapshot should be taken. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-drs-replicationconfigurationtemplate-pitpolicyrule.html#cfn-drs-replicationconfigurationtemplate-pitpolicyrule-interval */ readonly interval: number; /** * The duration to retain a snapshot for, in the chosen units. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-drs-replicationconfigurationtemplate-pitpolicyrule.html#cfn-drs-replicationconfigurationtemplate-pitpolicyrule-retentionduration */ readonly retentionDuration: number; /** * The ID of the rule. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-drs-replicationconfigurationtemplate-pitpolicyrule.html#cfn-drs-replicationconfigurationtemplate-pitpolicyrule-ruleid */ readonly ruleId?: number; /** * The units used to measure the interval and retentionDuration. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-drs-replicationconfigurationtemplate-pitpolicyrule.html#cfn-drs-replicationconfigurationtemplate-pitpolicyrule-units */ readonly units: string; } } /** * Properties for defining a `CfnReplicationConfigurationTemplate` * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-replicationconfigurationtemplate.html */ export interface CfnReplicationConfigurationTemplateProps { /** * Whether to associate the default Elastic Disaster Recovery Security group with the Replication Configuration Template. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-replicationconfigurationtemplate.html#cfn-drs-replicationconfigurationtemplate-associatedefaultsecuritygroup */ readonly associateDefaultSecurityGroup?: boolean | cdk.IResolvable; /** * Whether to allow the AWS replication agent to automatically replicate newly added disks. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-replicationconfigurationtemplate.html#cfn-drs-replicationconfigurationtemplate-autoreplicatenewdisks */ readonly autoReplicateNewDisks?: boolean | cdk.IResolvable; /** * Configure bandwidth throttling for the outbound data transfer rate of the Source Server in Mbps. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-replicationconfigurationtemplate.html#cfn-drs-replicationconfigurationtemplate-bandwidththrottling */ readonly bandwidthThrottling: number; /** * Whether to create a Public IP for the Recovery Instance by default. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-replicationconfigurationtemplate.html#cfn-drs-replicationconfigurationtemplate-createpublicip */ readonly createPublicIp?: boolean | cdk.IResolvable; /** * The data plane routing mechanism that will be used for replication. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-replicationconfigurationtemplate.html#cfn-drs-replicationconfigurationtemplate-dataplanerouting */ readonly dataPlaneRouting?: string; /** * The Staging Disk EBS volume type to be used during replication. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-replicationconfigurationtemplate.html#cfn-drs-replicationconfigurationtemplate-defaultlargestagingdisktype */ readonly defaultLargeStagingDiskType?: string; /** * The type of EBS encryption to be used during replication. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-replicationconfigurationtemplate.html#cfn-drs-replicationconfigurationtemplate-ebsencryption */ readonly ebsEncryption: string; /** * The ARN of the EBS encryption key to be used during replication. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-replicationconfigurationtemplate.html#cfn-drs-replicationconfigurationtemplate-ebsencryptionkeyarn */ readonly ebsEncryptionKeyArn?: string; /** * Which version of the Internet Protocol to use for replication of data. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-replicationconfigurationtemplate.html#cfn-drs-replicationconfigurationtemplate-internetprotocol */ readonly internetProtocol?: string; /** * The Point in time (PIT) policy to manage snapshots taken during replication. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-replicationconfigurationtemplate.html#cfn-drs-replicationconfigurationtemplate-pitpolicy */ readonly pitPolicy: Array | cdk.IResolvable; /** * The instance type to be used for the replication server. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-replicationconfigurationtemplate.html#cfn-drs-replicationconfigurationtemplate-replicationserverinstancetype */ readonly replicationServerInstanceType?: string; /** * The security group IDs that will be used by the replication server. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-replicationconfigurationtemplate.html#cfn-drs-replicationconfigurationtemplate-replicationserverssecuritygroupsids */ readonly replicationServersSecurityGroupsIDs: Array; /** * The subnet to be used by the replication staging area. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-replicationconfigurationtemplate.html#cfn-drs-replicationconfigurationtemplate-stagingareasubnetid */ readonly stagingAreaSubnetId: string; /** * A set of tags to be associated with all resources created in the replication staging area: EC2 replication server, EBS volumes, EBS snapshots, etc. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-replicationconfigurationtemplate.html#cfn-drs-replicationconfigurationtemplate-stagingareatags */ readonly stagingAreaTags: cdk.IResolvable | Record; /** * A set of tags to be associated with the Replication Configuration Template resource. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-replicationconfigurationtemplate.html#cfn-drs-replicationconfigurationtemplate-tags */ readonly tags?: Array; /** * Whether to use a dedicated Replication Server in the replication staging area. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-replicationconfigurationtemplate.html#cfn-drs-replicationconfigurationtemplate-usededicatedreplicationserver */ readonly useDedicatedReplicationServer?: boolean | cdk.IResolvable; } /** * A Source Network resource represents a VPC that is protected by AWS Elastic Disaster Recovery. * * @cloudformationResource AWS::DRS::SourceNetwork * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-sourcenetwork.html */ export declare class CfnSourceNetwork extends cdk.CfnResource implements cdk.IInspectable, ISourceNetworkRef, cdk.ITaggableV2 { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME: string; /** * Build a CfnSourceNetwork from CloudFormation properties * * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnSourceNetwork; /** * Checks whether the given object is a CfnSourceNetwork */ static isCfnSourceNetwork(x: any): x is CfnSourceNetwork; static arnForSourceNetwork(resource: ISourceNetworkRef): string; /** * Tag Manager which manages the tags for this resource */ readonly cdkTagManager: cdk.TagManager; /** * The account ID containing the VPC to protect. */ private _originAccountId; /** * The region containing the VPC to protect. */ private _originRegion; /** * A set of tags associated with the Source Network. */ private _tags?; /** * The VPC ID to protect. */ private _vpcId; protected readonly cfnPropertyNames: Record; /** * Create a new `AWS::DRS::SourceNetwork`. * * @param scope Scope in which this resource is defined * @param id Construct identifier for this resource (unique in its scope) * @param props Resource properties */ constructor(scope: constructs.Construct, id: string, props: CfnSourceNetworkProps); get sourceNetworkRef(): SourceNetworkReference; /** * The account ID containing the VPC to protect. */ get originAccountId(): string; /** * The account ID containing the VPC to protect. */ set originAccountId(value: string); /** * The region containing the VPC to protect. */ get originRegion(): string; /** * The region containing the VPC to protect. */ set originRegion(value: string); /** * A set of tags associated with the Source Network. */ get tags(): Array | undefined; /** * A set of tags associated with the Source Network. */ set tags(value: Array | undefined); /** * The VPC ID to protect. */ get vpcId(): string; /** * The VPC ID to protect. */ set vpcId(value: string); /** * The ARN of the Source Network. * * @cloudformationAttribute Arn */ get attrArn(): string; /** * The ID of the Source Network. * * @cloudformationAttribute SourceNetworkID */ get attrSourceNetworkId(): string; protected get cfnProperties(): Record; /** * Examines the CloudFormation resource and discloses attributes * * @param inspector tree inspector to collect and process attributes */ inspect(inspector: cdk.TreeInspector): void; protected renderProperties(props: Record): Record; } /** * Properties for defining a `CfnSourceNetwork` * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-sourcenetwork.html */ export interface CfnSourceNetworkProps { /** * The account ID containing the VPC to protect. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-sourcenetwork.html#cfn-drs-sourcenetwork-originaccountid */ readonly originAccountId: string; /** * The region containing the VPC to protect. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-sourcenetwork.html#cfn-drs-sourcenetwork-originregion */ readonly originRegion: string; /** * A set of tags associated with the Source Network. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-sourcenetwork.html#cfn-drs-sourcenetwork-tags */ readonly tags?: Array; /** * The VPC ID to protect. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-drs-sourcenetwork.html#cfn-drs-sourcenetwork-vpcid */ readonly vpcId: string; } export type { ILaunchConfigurationTemplateRef, LaunchConfigurationTemplateReference }; export type { IRecoveryPlanRef, RecoveryPlanReference }; export type { IReplicationConfigurationTemplateRef, ReplicationConfigurationTemplateReference }; export type { ISourceNetworkRef, SourceNetworkReference };