@cdktf/provider-azurerm
Version:
Prebuilt azurerm Provider for Terraform CDK (cdktf)
1,030 lines (1,029 loc) • 283 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
Object.defineProperty(exports, "__esModule", { value: true });
exports.SiteRecoveryReplicatedVm = exports.SiteRecoveryReplicatedVmTimeoutsOutputReference = exports.siteRecoveryReplicatedVmTimeoutsToHclTerraform = exports.siteRecoveryReplicatedVmTimeoutsToTerraform = exports.SiteRecoveryReplicatedVmUnmanagedDiskList = exports.SiteRecoveryReplicatedVmUnmanagedDiskOutputReference = exports.siteRecoveryReplicatedVmUnmanagedDiskToHclTerraform = exports.siteRecoveryReplicatedVmUnmanagedDiskToTerraform = exports.SiteRecoveryReplicatedVmNetworkInterfaceList = exports.SiteRecoveryReplicatedVmNetworkInterfaceOutputReference = exports.siteRecoveryReplicatedVmNetworkInterfaceToHclTerraform = exports.siteRecoveryReplicatedVmNetworkInterfaceToTerraform = exports.SiteRecoveryReplicatedVmManagedDiskList = exports.SiteRecoveryReplicatedVmManagedDiskOutputReference = exports.siteRecoveryReplicatedVmManagedDiskToHclTerraform = exports.siteRecoveryReplicatedVmManagedDiskToTerraform = exports.SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionList = exports.SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionOutputReference = exports.siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionToHclTerraform = exports.siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionToTerraform = exports.SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionKeyEncryptionKeyList = exports.SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutputReference = exports.siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionKeyEncryptionKeyToHclTerraform = exports.siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionKeyEncryptionKeyToTerraform = exports.SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionDiskEncryptionKeyList = exports.SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutputReference = exports.siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionDiskEncryptionKeyToHclTerraform = exports.siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionDiskEncryptionKeyToTerraform = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionDiskEncryptionKeyToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
secret_url: cdktf.stringToTerraform(struct.secretUrl),
vault_id: cdktf.stringToTerraform(struct.vaultId),
};
}
exports.siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionDiskEncryptionKeyToTerraform = siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionDiskEncryptionKeyToTerraform;
function siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionDiskEncryptionKeyToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
secret_url: {
value: cdktf.stringToHclTerraform(struct.secretUrl),
isBlock: false,
type: "simple",
storageClassType: "string",
},
vault_id: {
value: cdktf.stringToHclTerraform(struct.vaultId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionDiskEncryptionKeyToHclTerraform = siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionDiskEncryptionKeyToHclTerraform;
class SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._secretUrl !== undefined) {
hasAnyValues = true;
internalValueResult.secretUrl = this._secretUrl;
}
if (this._vaultId !== undefined) {
hasAnyValues = true;
internalValueResult.vaultId = this._vaultId;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._secretUrl = undefined;
this._vaultId = undefined;
}
else if (cdktf.Tokenization.isResolvable(value)) {
this.isEmptyObject = false;
this.resolvableValue = value;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this.resolvableValue = undefined;
this._secretUrl = value.secretUrl;
this._vaultId = value.vaultId;
}
}
get secretUrl() {
return this.getStringAttribute('secret_url');
}
set secretUrl(value) {
this._secretUrl = value;
}
resetSecretUrl() {
this._secretUrl = undefined;
}
// Temporarily expose input value. Use with caution.
get secretUrlInput() {
return this._secretUrl;
}
get vaultId() {
return this.getStringAttribute('vault_id');
}
set vaultId(value) {
this._vaultId = value;
}
resetVaultId() {
this._vaultId = undefined;
}
// Temporarily expose input value. Use with caution.
get vaultIdInput() {
return this._vaultId;
}
}
exports.SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutputReference = SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutputReference;
_a = JSII_RTTI_SYMBOL_1;
SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutputReference[_a] = { fqn: "@cdktf/provider-azurerm.siteRecoveryReplicatedVm.SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutputReference", version: "12.27.0" };
class SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionDiskEncryptionKeyList extends cdktf.ComplexList {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, wrapsSet) {
super(terraformResource, terraformAttribute, wrapsSet);
this.terraformResource = terraformResource;
this.terraformAttribute = terraformAttribute;
this.wrapsSet = wrapsSet;
}
/**
* @param index the index of the item to return
*/
get(index) {
return new SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionDiskEncryptionKeyOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionDiskEncryptionKeyList = SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionDiskEncryptionKeyList;
_b = JSII_RTTI_SYMBOL_1;
SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionDiskEncryptionKeyList[_b] = { fqn: "@cdktf/provider-azurerm.siteRecoveryReplicatedVm.SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionDiskEncryptionKeyList", version: "12.27.0" };
function siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionKeyEncryptionKeyToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
key_url: cdktf.stringToTerraform(struct.keyUrl),
vault_id: cdktf.stringToTerraform(struct.vaultId),
};
}
exports.siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionKeyEncryptionKeyToTerraform = siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionKeyEncryptionKeyToTerraform;
function siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionKeyEncryptionKeyToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
key_url: {
value: cdktf.stringToHclTerraform(struct.keyUrl),
isBlock: false,
type: "simple",
storageClassType: "string",
},
vault_id: {
value: cdktf.stringToHclTerraform(struct.vaultId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionKeyEncryptionKeyToHclTerraform = siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionKeyEncryptionKeyToHclTerraform;
class SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._keyUrl !== undefined) {
hasAnyValues = true;
internalValueResult.keyUrl = this._keyUrl;
}
if (this._vaultId !== undefined) {
hasAnyValues = true;
internalValueResult.vaultId = this._vaultId;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._keyUrl = undefined;
this._vaultId = undefined;
}
else if (cdktf.Tokenization.isResolvable(value)) {
this.isEmptyObject = false;
this.resolvableValue = value;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this.resolvableValue = undefined;
this._keyUrl = value.keyUrl;
this._vaultId = value.vaultId;
}
}
get keyUrl() {
return this.getStringAttribute('key_url');
}
set keyUrl(value) {
this._keyUrl = value;
}
resetKeyUrl() {
this._keyUrl = undefined;
}
// Temporarily expose input value. Use with caution.
get keyUrlInput() {
return this._keyUrl;
}
get vaultId() {
return this.getStringAttribute('vault_id');
}
set vaultId(value) {
this._vaultId = value;
}
resetVaultId() {
this._vaultId = undefined;
}
// Temporarily expose input value. Use with caution.
get vaultIdInput() {
return this._vaultId;
}
}
exports.SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutputReference = SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutputReference;
_c = JSII_RTTI_SYMBOL_1;
SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutputReference[_c] = { fqn: "@cdktf/provider-azurerm.siteRecoveryReplicatedVm.SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutputReference", version: "12.27.0" };
class SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionKeyEncryptionKeyList extends cdktf.ComplexList {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, wrapsSet) {
super(terraformResource, terraformAttribute, wrapsSet);
this.terraformResource = terraformResource;
this.terraformAttribute = terraformAttribute;
this.wrapsSet = wrapsSet;
}
/**
* @param index the index of the item to return
*/
get(index) {
return new SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionKeyEncryptionKeyOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionKeyEncryptionKeyList = SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionKeyEncryptionKeyList;
_d = JSII_RTTI_SYMBOL_1;
SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionKeyEncryptionKeyList[_d] = { fqn: "@cdktf/provider-azurerm.siteRecoveryReplicatedVm.SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionKeyEncryptionKeyList", version: "12.27.0" };
function siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
disk_encryption_key: cdktf.listMapper(siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionDiskEncryptionKeyToTerraform, false)(struct.diskEncryptionKey),
key_encryption_key: cdktf.listMapper(siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionKeyEncryptionKeyToTerraform, false)(struct.keyEncryptionKey),
};
}
exports.siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionToTerraform = siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionToTerraform;
function siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
disk_encryption_key: {
value: cdktf.listMapperHcl(siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionDiskEncryptionKeyToHclTerraform, false)(struct.diskEncryptionKey),
isBlock: true,
type: "list",
storageClassType: "SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionDiskEncryptionKeyList",
},
key_encryption_key: {
value: cdktf.listMapperHcl(siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionKeyEncryptionKeyToHclTerraform, false)(struct.keyEncryptionKey),
isBlock: true,
type: "list",
storageClassType: "SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionKeyEncryptionKeyList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionToHclTerraform = siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionToHclTerraform;
class SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
// disk_encryption_key - computed: true, optional: true, required: false
this._diskEncryptionKey = new SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionDiskEncryptionKeyList(this, "disk_encryption_key", false);
// key_encryption_key - computed: true, optional: true, required: false
this._keyEncryptionKey = new SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionKeyEncryptionKeyList(this, "key_encryption_key", false);
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._diskEncryptionKey?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.diskEncryptionKey = this._diskEncryptionKey?.internalValue;
}
if (this._keyEncryptionKey?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.keyEncryptionKey = this._keyEncryptionKey?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._diskEncryptionKey.internalValue = undefined;
this._keyEncryptionKey.internalValue = undefined;
}
else if (cdktf.Tokenization.isResolvable(value)) {
this.isEmptyObject = false;
this.resolvableValue = value;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this.resolvableValue = undefined;
this._diskEncryptionKey.internalValue = value.diskEncryptionKey;
this._keyEncryptionKey.internalValue = value.keyEncryptionKey;
}
}
get diskEncryptionKey() {
return this._diskEncryptionKey;
}
putDiskEncryptionKey(value) {
this._diskEncryptionKey.internalValue = value;
}
resetDiskEncryptionKey() {
this._diskEncryptionKey.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get diskEncryptionKeyInput() {
return this._diskEncryptionKey.internalValue;
}
get keyEncryptionKey() {
return this._keyEncryptionKey;
}
putKeyEncryptionKey(value) {
this._keyEncryptionKey.internalValue = value;
}
resetKeyEncryptionKey() {
this._keyEncryptionKey.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get keyEncryptionKeyInput() {
return this._keyEncryptionKey.internalValue;
}
}
exports.SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionOutputReference = SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionOutputReference;
_e = JSII_RTTI_SYMBOL_1;
SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionOutputReference[_e] = { fqn: "@cdktf/provider-azurerm.siteRecoveryReplicatedVm.SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionOutputReference", version: "12.27.0" };
class SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionList extends cdktf.ComplexList {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, wrapsSet) {
super(terraformResource, terraformAttribute, wrapsSet);
this.terraformResource = terraformResource;
this.terraformAttribute = terraformAttribute;
this.wrapsSet = wrapsSet;
}
/**
* @param index the index of the item to return
*/
get(index) {
return new SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionList = SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionList;
_f = JSII_RTTI_SYMBOL_1;
SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionList[_f] = { fqn: "@cdktf/provider-azurerm.siteRecoveryReplicatedVm.SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionList", version: "12.27.0" };
function siteRecoveryReplicatedVmManagedDiskToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
disk_id: struct.diskId === undefined ? null : cdktf.stringToTerraform(struct.diskId),
staging_storage_account_id: struct.stagingStorageAccountId === undefined ? null : cdktf.stringToTerraform(struct.stagingStorageAccountId),
target_disk_encryption: struct.targetDiskEncryption === undefined ? null : cdktf.listMapper(siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionToTerraform, false)(struct.targetDiskEncryption),
target_disk_encryption_set_id: struct.targetDiskEncryptionSetId === undefined ? null : cdktf.stringToTerraform(struct.targetDiskEncryptionSetId),
target_disk_type: struct.targetDiskType === undefined ? null : cdktf.stringToTerraform(struct.targetDiskType),
target_replica_disk_type: struct.targetReplicaDiskType === undefined ? null : cdktf.stringToTerraform(struct.targetReplicaDiskType),
target_resource_group_id: struct.targetResourceGroupId === undefined ? null : cdktf.stringToTerraform(struct.targetResourceGroupId),
};
}
exports.siteRecoveryReplicatedVmManagedDiskToTerraform = siteRecoveryReplicatedVmManagedDiskToTerraform;
function siteRecoveryReplicatedVmManagedDiskToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
disk_id: {
value: struct.diskId === undefined ? null : cdktf.stringToHclTerraform(struct.diskId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
staging_storage_account_id: {
value: struct.stagingStorageAccountId === undefined ? null : cdktf.stringToHclTerraform(struct.stagingStorageAccountId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
target_disk_encryption: {
value: struct.targetDiskEncryption === undefined ? null : cdktf.listMapperHcl(siteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionToHclTerraform, false)(struct.targetDiskEncryption),
isBlock: true,
type: "list",
storageClassType: "SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionList",
},
target_disk_encryption_set_id: {
value: struct.targetDiskEncryptionSetId === undefined ? null : cdktf.stringToHclTerraform(struct.targetDiskEncryptionSetId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
target_disk_type: {
value: struct.targetDiskType === undefined ? null : cdktf.stringToHclTerraform(struct.targetDiskType),
isBlock: false,
type: "simple",
storageClassType: "string",
},
target_replica_disk_type: {
value: struct.targetReplicaDiskType === undefined ? null : cdktf.stringToHclTerraform(struct.targetReplicaDiskType),
isBlock: false,
type: "simple",
storageClassType: "string",
},
target_resource_group_id: {
value: struct.targetResourceGroupId === undefined ? null : cdktf.stringToHclTerraform(struct.targetResourceGroupId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.siteRecoveryReplicatedVmManagedDiskToHclTerraform = siteRecoveryReplicatedVmManagedDiskToHclTerraform;
class SiteRecoveryReplicatedVmManagedDiskOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
// target_disk_encryption - computed: true, optional: true, required: false
this._targetDiskEncryption = new SiteRecoveryReplicatedVmManagedDiskTargetDiskEncryptionList(this, "target_disk_encryption", false);
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._diskId !== undefined) {
hasAnyValues = true;
internalValueResult.diskId = this._diskId;
}
if (this._stagingStorageAccountId !== undefined) {
hasAnyValues = true;
internalValueResult.stagingStorageAccountId = this._stagingStorageAccountId;
}
if (this._targetDiskEncryption?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.targetDiskEncryption = this._targetDiskEncryption?.internalValue;
}
if (this._targetDiskEncryptionSetId !== undefined) {
hasAnyValues = true;
internalValueResult.targetDiskEncryptionSetId = this._targetDiskEncryptionSetId;
}
if (this._targetDiskType !== undefined) {
hasAnyValues = true;
internalValueResult.targetDiskType = this._targetDiskType;
}
if (this._targetReplicaDiskType !== undefined) {
hasAnyValues = true;
internalValueResult.targetReplicaDiskType = this._targetReplicaDiskType;
}
if (this._targetResourceGroupId !== undefined) {
hasAnyValues = true;
internalValueResult.targetResourceGroupId = this._targetResourceGroupId;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._diskId = undefined;
this._stagingStorageAccountId = undefined;
this._targetDiskEncryption.internalValue = undefined;
this._targetDiskEncryptionSetId = undefined;
this._targetDiskType = undefined;
this._targetReplicaDiskType = undefined;
this._targetResourceGroupId = undefined;
}
else if (cdktf.Tokenization.isResolvable(value)) {
this.isEmptyObject = false;
this.resolvableValue = value;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this.resolvableValue = undefined;
this._diskId = value.diskId;
this._stagingStorageAccountId = value.stagingStorageAccountId;
this._targetDiskEncryption.internalValue = value.targetDiskEncryption;
this._targetDiskEncryptionSetId = value.targetDiskEncryptionSetId;
this._targetDiskType = value.targetDiskType;
this._targetReplicaDiskType = value.targetReplicaDiskType;
this._targetResourceGroupId = value.targetResourceGroupId;
}
}
get diskId() {
return this.getStringAttribute('disk_id');
}
set diskId(value) {
this._diskId = value;
}
resetDiskId() {
this._diskId = undefined;
}
// Temporarily expose input value. Use with caution.
get diskIdInput() {
return this._diskId;
}
get stagingStorageAccountId() {
return this.getStringAttribute('staging_storage_account_id');
}
set stagingStorageAccountId(value) {
this._stagingStorageAccountId = value;
}
resetStagingStorageAccountId() {
this._stagingStorageAccountId = undefined;
}
// Temporarily expose input value. Use with caution.
get stagingStorageAccountIdInput() {
return this._stagingStorageAccountId;
}
get targetDiskEncryption() {
return this._targetDiskEncryption;
}
putTargetDiskEncryption(value) {
this._targetDiskEncryption.internalValue = value;
}
resetTargetDiskEncryption() {
this._targetDiskEncryption.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get targetDiskEncryptionInput() {
return this._targetDiskEncryption.internalValue;
}
get targetDiskEncryptionSetId() {
return this.getStringAttribute('target_disk_encryption_set_id');
}
set targetDiskEncryptionSetId(value) {
this._targetDiskEncryptionSetId = value;
}
resetTargetDiskEncryptionSetId() {
this._targetDiskEncryptionSetId = undefined;
}
// Temporarily expose input value. Use with caution.
get targetDiskEncryptionSetIdInput() {
return this._targetDiskEncryptionSetId;
}
get targetDiskType() {
return this.getStringAttribute('target_disk_type');
}
set targetDiskType(value) {
this._targetDiskType = value;
}
resetTargetDiskType() {
this._targetDiskType = undefined;
}
// Temporarily expose input value. Use with caution.
get targetDiskTypeInput() {
return this._targetDiskType;
}
get targetReplicaDiskType() {
return this.getStringAttribute('target_replica_disk_type');
}
set targetReplicaDiskType(value) {
this._targetReplicaDiskType = value;
}
resetTargetReplicaDiskType() {
this._targetReplicaDiskType = undefined;
}
// Temporarily expose input value. Use with caution.
get targetReplicaDiskTypeInput() {
return this._targetReplicaDiskType;
}
get targetResourceGroupId() {
return this.getStringAttribute('target_resource_group_id');
}
set targetResourceGroupId(value) {
this._targetResourceGroupId = value;
}
resetTargetResourceGroupId() {
this._targetResourceGroupId = undefined;
}
// Temporarily expose input value. Use with caution.
get targetResourceGroupIdInput() {
return this._targetResourceGroupId;
}
}
exports.SiteRecoveryReplicatedVmManagedDiskOutputReference = SiteRecoveryReplicatedVmManagedDiskOutputReference;
_g = JSII_RTTI_SYMBOL_1;
SiteRecoveryReplicatedVmManagedDiskOutputReference[_g] = { fqn: "@cdktf/provider-azurerm.siteRecoveryReplicatedVm.SiteRecoveryReplicatedVmManagedDiskOutputReference", version: "12.27.0" };
class SiteRecoveryReplicatedVmManagedDiskList extends cdktf.ComplexList {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, wrapsSet) {
super(terraformResource, terraformAttribute, wrapsSet);
this.terraformResource = terraformResource;
this.terraformAttribute = terraformAttribute;
this.wrapsSet = wrapsSet;
}
/**
* @param index the index of the item to return
*/
get(index) {
return new SiteRecoveryReplicatedVmManagedDiskOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.SiteRecoveryReplicatedVmManagedDiskList = SiteRecoveryReplicatedVmManagedDiskList;
_h = JSII_RTTI_SYMBOL_1;
SiteRecoveryReplicatedVmManagedDiskList[_h] = { fqn: "@cdktf/provider-azurerm.siteRecoveryReplicatedVm.SiteRecoveryReplicatedVmManagedDiskList", version: "12.27.0" };
function siteRecoveryReplicatedVmNetworkInterfaceToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
failover_test_public_ip_address_id: cdktf.stringToTerraform(struct.failoverTestPublicIpAddressId),
failover_test_static_ip: cdktf.stringToTerraform(struct.failoverTestStaticIp),
failover_test_subnet_name: cdktf.stringToTerraform(struct.failoverTestSubnetName),
is_primary: cdktf.booleanToTerraform(struct.isPrimary),
recovery_public_ip_address_id: struct.recoveryPublicIpAddressId === undefined ? null : cdktf.stringToTerraform(struct.recoveryPublicIpAddressId),
source_network_interface_id: struct.sourceNetworkInterfaceId === undefined ? null : cdktf.stringToTerraform(struct.sourceNetworkInterfaceId),
target_static_ip: struct.targetStaticIp === undefined ? null : cdktf.stringToTerraform(struct.targetStaticIp),
target_subnet_name: struct.targetSubnetName === undefined ? null : cdktf.stringToTerraform(struct.targetSubnetName),
};
}
exports.siteRecoveryReplicatedVmNetworkInterfaceToTerraform = siteRecoveryReplicatedVmNetworkInterfaceToTerraform;
function siteRecoveryReplicatedVmNetworkInterfaceToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
failover_test_public_ip_address_id: {
value: cdktf.stringToHclTerraform(struct.failoverTestPublicIpAddressId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
failover_test_static_ip: {
value: cdktf.stringToHclTerraform(struct.failoverTestStaticIp),
isBlock: false,
type: "simple",
storageClassType: "string",
},
failover_test_subnet_name: {
value: cdktf.stringToHclTerraform(struct.failoverTestSubnetName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
is_primary: {
value: cdktf.booleanToHclTerraform(struct.isPrimary),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
recovery_public_ip_address_id: {
value: struct.recoveryPublicIpAddressId === undefined ? null : cdktf.stringToHclTerraform(struct.recoveryPublicIpAddressId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
source_network_interface_id: {
value: struct.sourceNetworkInterfaceId === undefined ? null : cdktf.stringToHclTerraform(struct.sourceNetworkInterfaceId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
target_static_ip: {
value: struct.targetStaticIp === undefined ? null : cdktf.stringToHclTerraform(struct.targetStaticIp),
isBlock: false,
type: "simple",
storageClassType: "string",
},
target_subnet_name: {
value: struct.targetSubnetName === undefined ? null : cdktf.stringToHclTerraform(struct.targetSubnetName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.siteRecoveryReplicatedVmNetworkInterfaceToHclTerraform = siteRecoveryReplicatedVmNetworkInterfaceToHclTerraform;
class SiteRecoveryReplicatedVmNetworkInterfaceOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._failoverTestPublicIpAddressId !== undefined) {
hasAnyValues = true;
internalValueResult.failoverTestPublicIpAddressId = this._failoverTestPublicIpAddressId;
}
if (this._failoverTestStaticIp !== undefined) {
hasAnyValues = true;
internalValueResult.failoverTestStaticIp = this._failoverTestStaticIp;
}
if (this._failoverTestSubnetName !== undefined) {
hasAnyValues = true;
internalValueResult.failoverTestSubnetName = this._failoverTestSubnetName;
}
if (this._isPrimary !== undefined) {
hasAnyValues = true;
internalValueResult.isPrimary = this._isPrimary;
}
if (this._recoveryPublicIpAddressId !== undefined) {
hasAnyValues = true;
internalValueResult.recoveryPublicIpAddressId = this._recoveryPublicIpAddressId;
}
if (this._sourceNetworkInterfaceId !== undefined) {
hasAnyValues = true;
internalValueResult.sourceNetworkInterfaceId = this._sourceNetworkInterfaceId;
}
if (this._targetStaticIp !== undefined) {
hasAnyValues = true;
internalValueResult.targetStaticIp = this._targetStaticIp;
}
if (this._targetSubnetName !== undefined) {
hasAnyValues = true;
internalValueResult.targetSubnetName = this._targetSubnetName;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._failoverTestPublicIpAddressId = undefined;
this._failoverTestStaticIp = undefined;
this._failoverTestSubnetName = undefined;
this._isPrimary = undefined;
this._recoveryPublicIpAddressId = undefined;
this._sourceNetworkInterfaceId = undefined;
this._targetStaticIp = undefined;
this._targetSubnetName = undefined;
}
else if (cdktf.Tokenization.isResolvable(value)) {
this.isEmptyObject = false;
this.resolvableValue = value;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this.resolvableValue = undefined;
this._failoverTestPublicIpAddressId = value.failoverTestPublicIpAddressId;
this._failoverTestStaticIp = value.failoverTestStaticIp;
this._failoverTestSubnetName = value.failoverTestSubnetName;
this._isPrimary = value.isPrimary;
this._recoveryPublicIpAddressId = value.recoveryPublicIpAddressId;
this._sourceNetworkInterfaceId = value.sourceNetworkInterfaceId;
this._targetStaticIp = value.targetStaticIp;
this._targetSubnetName = value.targetSubnetName;
}
}
get failoverTestPublicIpAddressId() {
return this.getStringAttribute('failover_test_public_ip_address_id');
}
set failoverTestPublicIpAddressId(value) {
this._failoverTestPublicIpAddressId = value;
}
resetFailoverTestPublicIpAddressId() {
this._failoverTestPublicIpAddressId = undefined;
}
// Temporarily expose input value. Use with caution.
get failoverTestPublicIpAddressIdInput() {
return this._failoverTestPublicIpAddressId;
}
get failoverTestStaticIp() {
return this.getStringAttribute('failover_test_static_ip');
}
set failoverTestStaticIp(value) {
this._failoverTestStaticIp = value;
}
resetFailoverTestStaticIp() {
this._failoverTestStaticIp = undefined;
}
// Temporarily expose input value. Use with caution.
get failoverTestStaticIpInput() {
return this._failoverTestStaticIp;
}
get failoverTestSubnetName() {
return this.getStringAttribute('failover_test_subnet_name');
}
set failoverTestSubnetName(value) {
this._failoverTestSubnetName = value;
}
resetFailoverTestSubnetName() {
this._failoverTestSubnetName = undefined;
}
// Temporarily expose input value. Use with caution.
get failoverTestSubnetNameInput() {
return this._failoverTestSubnetName;
}
get isPrimary() {
return this.getBooleanAttribute('is_primary');
}
set isPrimary(value) {
this._isPrimary = value;
}
resetIsPrimary() {
this._isPrimary = undefined;
}
// Temporarily expose input value. Use with caution.
get isPrimaryInput() {
return this._isPrimary;
}
get recoveryPublicIpAddressId() {
return this.getStringAttribute('recovery_public_ip_address_id');
}
set recoveryPublicIpAddressId(value) {
this._recoveryPublicIpAddressId = value;
}
resetRecoveryPublicIpAddressId() {
this._recoveryPublicIpAddressId = undefined;
}
// Temporarily expose input value. Use with caution.
get recoveryPublicIpAddressIdInput() {
return this._recoveryPublicIpAddressId;
}
get sourceNetworkInterfaceId() {
return this.getStringAttribute('source_network_interface_id');
}
set sourceNetworkInterfaceId(value) {
this._sourceNetworkInterfaceId = value;
}
resetSourceNetworkInterfaceId() {
this._sourceNetworkInterfaceId = undefined;
}
// Temporarily expose input value. Use with caution.
get sourceNetworkInterfaceIdInput() {
return this._sourceNetworkInterfaceId;
}
get targetStaticIp() {
return this.getStringAttribute('target_static_ip');
}
set targetStaticIp(value) {
this._targetStaticIp = value;
}
resetTargetStaticIp() {
this._targetStaticIp = undefined;
}
// Temporarily expose input value. Use with caution.
get targetStaticIpInput() {
return this._targetStaticIp;
}
get targetSubnetName() {
return this.getStringAttribute('target_subnet_name');
}
set targetSubnetName(value) {
this._targetSubnetName = value;
}
resetTargetSubnetName() {
this._targetSubnetName = undefined;
}
// Temporarily expose input value. Use with caution.
get targetSubnetNameInput() {
return this._targetSubnetName;
}
}
exports.SiteRecoveryReplicatedVmNetworkInterfaceOutputReference = SiteRecoveryReplicatedVmNetworkInterfaceOutputReference;
_j = JSII_RTTI_SYMBOL_1;
SiteRecoveryReplicatedVmNetworkInterfaceOutputReference[_j] = { fqn: "@cdktf/provider-azurerm.siteRecoveryReplicatedVm.SiteRecoveryReplicatedVmNetworkInterfaceOutputReference", version: "12.27.0" };
class SiteRecoveryReplicatedVmNetworkInterfaceList extends cdktf.ComplexList {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, wrapsSet) {
super(terraformResource, terraformAttribute, wrapsSet);
this.terraformResource = terraformResource;
this.terraformAttribute = terraformAttribute;
this.wrapsSet = wrapsSet;
}
/**
* @param index the index of the item to return
*/
get(index) {
return new SiteRecoveryReplicatedVmNetworkInterfaceOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.SiteRecoveryReplicatedVmNetworkInterfaceList = SiteRecoveryReplicatedVmNetworkInterfaceList;
_k = JSII_RTTI_SYMBOL_1;
SiteRecoveryReplicatedVmNetworkInterfaceList[_k] = { fqn: "@cdktf/provider-azurerm.siteRecoveryReplicatedVm.SiteRecoveryReplicatedVmNetworkInterfaceList", version: "12.27.0" };
function siteRecoveryReplicatedVmUnmanagedDiskToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
disk_uri: cdktf.stringToTerraform(struct.diskUri),
staging_storage_account_id: cdktf.stringToTerraform(struct.stagingStorageAccountId),
target_storage_account_id: cdktf.stringToTerraform(struct.targetStorageAccountId),
};
}
exports.siteRecoveryReplicatedVmUnmanagedDiskToTerraform = siteRecoveryReplicatedVmUnmanagedDiskToTerraform;
function siteRecoveryReplicatedVmUnmanagedDiskToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
disk_uri: {
value: cdktf.stringToHclTerraform(struct.diskUri),
isBlock: false,
type: "simple",
storageClassType: "string",
},
staging_storage_account_id: {
value: cdktf.stringToHclTerraform(struct.stagingStorageAccountId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
target_storage_account_id: {
value: cdktf.stringToHclTerraform(struct.targetStorageAccountId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.siteRecoveryReplicatedVmUnmanagedDiskToHclTerraform = siteRecoveryReplicatedVmUnmanagedDiskToHclTerraform;
class SiteRecoveryReplicatedVmUnmanagedDiskOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
}