@cdktf/provider-google
Version:
Prebuilt google Provider for Terraform CDK (cdktf)
999 lines (998 loc) • 225 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
Object.defineProperty(exports, "__esModule", { value: true });
exports.MigrationCenterPreferenceSet = exports.MigrationCenterPreferenceSetVirtualMachinePreferencesOutputReference = exports.MigrationCenterPreferenceSetVirtualMachinePreferencesVmwareEnginePreferencesOutputReference = exports.MigrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesOutputReference = exports.MigrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesNodeTypesList = exports.MigrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesNodeTypesOutputReference = exports.MigrationCenterPreferenceSetVirtualMachinePreferencesRegionPreferencesOutputReference = exports.MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesOutputReference = exports.MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesOutputReference = exports.MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesAllowedMachineSeriesList = exports.MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesAllowedMachineSeriesOutputReference = exports.MigrationCenterPreferenceSetTimeoutsOutputReference = void 0;
exports.migrationCenterPreferenceSetTimeoutsToTerraform = migrationCenterPreferenceSetTimeoutsToTerraform;
exports.migrationCenterPreferenceSetTimeoutsToHclTerraform = migrationCenterPreferenceSetTimeoutsToHclTerraform;
exports.migrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesAllowedMachineSeriesToTerraform = migrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesAllowedMachineSeriesToTerraform;
exports.migrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesAllowedMachineSeriesToHclTerraform = migrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesAllowedMachineSeriesToHclTerraform;
exports.migrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesToTerraform = migrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesToTerraform;
exports.migrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesToHclTerraform = migrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesToHclTerraform;
exports.migrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesToTerraform = migrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesToTerraform;
exports.migrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesToHclTerraform = migrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesToHclTerraform;
exports.migrationCenterPreferenceSetVirtualMachinePreferencesRegionPreferencesToTerraform = migrationCenterPreferenceSetVirtualMachinePreferencesRegionPreferencesToTerraform;
exports.migrationCenterPreferenceSetVirtualMachinePreferencesRegionPreferencesToHclTerraform = migrationCenterPreferenceSetVirtualMachinePreferencesRegionPreferencesToHclTerraform;
exports.migrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesNodeTypesToTerraform = migrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesNodeTypesToTerraform;
exports.migrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesNodeTypesToHclTerraform = migrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesNodeTypesToHclTerraform;
exports.migrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesToTerraform = migrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesToTerraform;
exports.migrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesToHclTerraform = migrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesToHclTerraform;
exports.migrationCenterPreferenceSetVirtualMachinePreferencesVmwareEnginePreferencesToTerraform = migrationCenterPreferenceSetVirtualMachinePreferencesVmwareEnginePreferencesToTerraform;
exports.migrationCenterPreferenceSetVirtualMachinePreferencesVmwareEnginePreferencesToHclTerraform = migrationCenterPreferenceSetVirtualMachinePreferencesVmwareEnginePreferencesToHclTerraform;
exports.migrationCenterPreferenceSetVirtualMachinePreferencesToTerraform = migrationCenterPreferenceSetVirtualMachinePreferencesToTerraform;
exports.migrationCenterPreferenceSetVirtualMachinePreferencesToHclTerraform = migrationCenterPreferenceSetVirtualMachinePreferencesToHclTerraform;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function migrationCenterPreferenceSetTimeoutsToTerraform(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 {
create: cdktf.stringToTerraform(struct.create),
delete: cdktf.stringToTerraform(struct.delete),
update: cdktf.stringToTerraform(struct.update),
};
}
function migrationCenterPreferenceSetTimeoutsToHclTerraform(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 = {
create: {
value: cdktf.stringToHclTerraform(struct.create),
isBlock: false,
type: "simple",
storageClassType: "string",
},
delete: {
value: cdktf.stringToHclTerraform(struct.delete),
isBlock: false,
type: "simple",
storageClassType: "string",
},
update: {
value: cdktf.stringToHclTerraform(struct.update),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class MigrationCenterPreferenceSetTimeoutsOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false);
this.isEmptyObject = false;
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._create !== undefined) {
hasAnyValues = true;
internalValueResult.create = this._create;
}
if (this._delete !== undefined) {
hasAnyValues = true;
internalValueResult.delete = this._delete;
}
if (this._update !== undefined) {
hasAnyValues = true;
internalValueResult.update = this._update;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._create = undefined;
this._delete = undefined;
this._update = 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._create = value.create;
this._delete = value.delete;
this._update = value.update;
}
}
get create() {
return this.getStringAttribute('create');
}
set create(value) {
this._create = value;
}
resetCreate() {
this._create = undefined;
}
// Temporarily expose input value. Use with caution.
get createInput() {
return this._create;
}
get delete() {
return this.getStringAttribute('delete');
}
set delete(value) {
this._delete = value;
}
resetDelete() {
this._delete = undefined;
}
// Temporarily expose input value. Use with caution.
get deleteInput() {
return this._delete;
}
get update() {
return this.getStringAttribute('update');
}
set update(value) {
this._update = value;
}
resetUpdate() {
this._update = undefined;
}
// Temporarily expose input value. Use with caution.
get updateInput() {
return this._update;
}
}
exports.MigrationCenterPreferenceSetTimeoutsOutputReference = MigrationCenterPreferenceSetTimeoutsOutputReference;
_a = JSII_RTTI_SYMBOL_1;
MigrationCenterPreferenceSetTimeoutsOutputReference[_a] = { fqn: "@cdktf/provider-google.migrationCenterPreferenceSet.MigrationCenterPreferenceSetTimeoutsOutputReference", version: "14.35.0" };
function migrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesAllowedMachineSeriesToTerraform(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 {
code: cdktf.stringToTerraform(struct.code),
};
}
function migrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesAllowedMachineSeriesToHclTerraform(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 = {
code: {
value: cdktf.stringToHclTerraform(struct.code),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesAllowedMachineSeriesOutputReference 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._code !== undefined) {
hasAnyValues = true;
internalValueResult.code = this._code;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._code = 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._code = value.code;
}
}
get code() {
return this.getStringAttribute('code');
}
set code(value) {
this._code = value;
}
resetCode() {
this._code = undefined;
}
// Temporarily expose input value. Use with caution.
get codeInput() {
return this._code;
}
}
exports.MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesAllowedMachineSeriesOutputReference = MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesAllowedMachineSeriesOutputReference;
_b = JSII_RTTI_SYMBOL_1;
MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesAllowedMachineSeriesOutputReference[_b] = { fqn: "@cdktf/provider-google.migrationCenterPreferenceSet.MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesAllowedMachineSeriesOutputReference", version: "14.35.0" };
class MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesAllowedMachineSeriesList 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 MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesAllowedMachineSeriesOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesAllowedMachineSeriesList = MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesAllowedMachineSeriesList;
_c = JSII_RTTI_SYMBOL_1;
MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesAllowedMachineSeriesList[_c] = { fqn: "@cdktf/provider-google.migrationCenterPreferenceSet.MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesAllowedMachineSeriesList", version: "14.35.0" };
function migrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesToTerraform(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 {
allowed_machine_series: cdktf.listMapper(migrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesAllowedMachineSeriesToTerraform, true)(struct.allowedMachineSeries),
};
}
function migrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesToHclTerraform(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 = {
allowed_machine_series: {
value: cdktf.listMapperHcl(migrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesAllowedMachineSeriesToHclTerraform, true)(struct.allowedMachineSeries),
isBlock: true,
type: "list",
storageClassType: "MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesAllowedMachineSeriesList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
// allowed_machine_series - computed: false, optional: true, required: false
this._allowedMachineSeries = new MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesAllowedMachineSeriesList(this, "allowed_machine_series", false);
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._allowedMachineSeries?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.allowedMachineSeries = this._allowedMachineSeries?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._allowedMachineSeries.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._allowedMachineSeries.internalValue = value.allowedMachineSeries;
}
}
get allowedMachineSeries() {
return this._allowedMachineSeries;
}
putAllowedMachineSeries(value) {
this._allowedMachineSeries.internalValue = value;
}
resetAllowedMachineSeries() {
this._allowedMachineSeries.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get allowedMachineSeriesInput() {
return this._allowedMachineSeries.internalValue;
}
}
exports.MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesOutputReference = MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesOutputReference;
_d = JSII_RTTI_SYMBOL_1;
MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesOutputReference[_d] = { fqn: "@cdktf/provider-google.migrationCenterPreferenceSet.MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesOutputReference", version: "14.35.0" };
function migrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesToTerraform(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 {
license_type: cdktf.stringToTerraform(struct.licenseType),
machine_preferences: migrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesToTerraform(struct.machinePreferences),
};
}
function migrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesToHclTerraform(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 = {
license_type: {
value: cdktf.stringToHclTerraform(struct.licenseType),
isBlock: false,
type: "simple",
storageClassType: "string",
},
machine_preferences: {
value: migrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesToHclTerraform(struct.machinePreferences),
isBlock: true,
type: "list",
storageClassType: "MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
// machine_preferences - computed: false, optional: true, required: false
this._machinePreferences = new MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesMachinePreferencesOutputReference(this, "machine_preferences");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._licenseType !== undefined) {
hasAnyValues = true;
internalValueResult.licenseType = this._licenseType;
}
if (this._machinePreferences?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.machinePreferences = this._machinePreferences?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._licenseType = undefined;
this._machinePreferences.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._licenseType = value.licenseType;
this._machinePreferences.internalValue = value.machinePreferences;
}
}
get licenseType() {
return this.getStringAttribute('license_type');
}
set licenseType(value) {
this._licenseType = value;
}
resetLicenseType() {
this._licenseType = undefined;
}
// Temporarily expose input value. Use with caution.
get licenseTypeInput() {
return this._licenseType;
}
get machinePreferences() {
return this._machinePreferences;
}
putMachinePreferences(value) {
this._machinePreferences.internalValue = value;
}
resetMachinePreferences() {
this._machinePreferences.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get machinePreferencesInput() {
return this._machinePreferences.internalValue;
}
}
exports.MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesOutputReference = MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesOutputReference;
_e = JSII_RTTI_SYMBOL_1;
MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesOutputReference[_e] = { fqn: "@cdktf/provider-google.migrationCenterPreferenceSet.MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesOutputReference", version: "14.35.0" };
function migrationCenterPreferenceSetVirtualMachinePreferencesRegionPreferencesToTerraform(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 {
preferred_regions: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.preferredRegions),
};
}
function migrationCenterPreferenceSetVirtualMachinePreferencesRegionPreferencesToHclTerraform(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 = {
preferred_regions: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.preferredRegions),
isBlock: false,
type: "list",
storageClassType: "stringList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class MigrationCenterPreferenceSetVirtualMachinePreferencesRegionPreferencesOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._preferredRegions !== undefined) {
hasAnyValues = true;
internalValueResult.preferredRegions = this._preferredRegions;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._preferredRegions = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._preferredRegions = value.preferredRegions;
}
}
get preferredRegions() {
return this.getListAttribute('preferred_regions');
}
set preferredRegions(value) {
this._preferredRegions = value;
}
resetPreferredRegions() {
this._preferredRegions = undefined;
}
// Temporarily expose input value. Use with caution.
get preferredRegionsInput() {
return this._preferredRegions;
}
}
exports.MigrationCenterPreferenceSetVirtualMachinePreferencesRegionPreferencesOutputReference = MigrationCenterPreferenceSetVirtualMachinePreferencesRegionPreferencesOutputReference;
_f = JSII_RTTI_SYMBOL_1;
MigrationCenterPreferenceSetVirtualMachinePreferencesRegionPreferencesOutputReference[_f] = { fqn: "@cdktf/provider-google.migrationCenterPreferenceSet.MigrationCenterPreferenceSetVirtualMachinePreferencesRegionPreferencesOutputReference", version: "14.35.0" };
function migrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesNodeTypesToTerraform(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 {
node_name: cdktf.stringToTerraform(struct.nodeName),
};
}
function migrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesNodeTypesToHclTerraform(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 = {
node_name: {
value: cdktf.stringToHclTerraform(struct.nodeName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class MigrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesNodeTypesOutputReference 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._nodeName !== undefined) {
hasAnyValues = true;
internalValueResult.nodeName = this._nodeName;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._nodeName = 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._nodeName = value.nodeName;
}
}
get nodeName() {
return this.getStringAttribute('node_name');
}
set nodeName(value) {
this._nodeName = value;
}
resetNodeName() {
this._nodeName = undefined;
}
// Temporarily expose input value. Use with caution.
get nodeNameInput() {
return this._nodeName;
}
}
exports.MigrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesNodeTypesOutputReference = MigrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesNodeTypesOutputReference;
_g = JSII_RTTI_SYMBOL_1;
MigrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesNodeTypesOutputReference[_g] = { fqn: "@cdktf/provider-google.migrationCenterPreferenceSet.MigrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesNodeTypesOutputReference", version: "14.35.0" };
class MigrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesNodeTypesList 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 MigrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesNodeTypesOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.MigrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesNodeTypesList = MigrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesNodeTypesList;
_h = JSII_RTTI_SYMBOL_1;
MigrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesNodeTypesList[_h] = { fqn: "@cdktf/provider-google.migrationCenterPreferenceSet.MigrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesNodeTypesList", version: "14.35.0" };
function migrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesToTerraform(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 {
commitment_plan: cdktf.stringToTerraform(struct.commitmentPlan),
cpu_overcommit_ratio: cdktf.numberToTerraform(struct.cpuOvercommitRatio),
host_maintenance_policy: cdktf.stringToTerraform(struct.hostMaintenancePolicy),
node_types: cdktf.listMapper(migrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesNodeTypesToTerraform, true)(struct.nodeTypes),
};
}
function migrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesToHclTerraform(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 = {
commitment_plan: {
value: cdktf.stringToHclTerraform(struct.commitmentPlan),
isBlock: false,
type: "simple",
storageClassType: "string",
},
cpu_overcommit_ratio: {
value: cdktf.numberToHclTerraform(struct.cpuOvercommitRatio),
isBlock: false,
type: "simple",
storageClassType: "number",
},
host_maintenance_policy: {
value: cdktf.stringToHclTerraform(struct.hostMaintenancePolicy),
isBlock: false,
type: "simple",
storageClassType: "string",
},
node_types: {
value: cdktf.listMapperHcl(migrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesNodeTypesToHclTerraform, true)(struct.nodeTypes),
isBlock: true,
type: "list",
storageClassType: "MigrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesNodeTypesList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class MigrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
// node_types - computed: false, optional: true, required: false
this._nodeTypes = new MigrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesNodeTypesList(this, "node_types", false);
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._commitmentPlan !== undefined) {
hasAnyValues = true;
internalValueResult.commitmentPlan = this._commitmentPlan;
}
if (this._cpuOvercommitRatio !== undefined) {
hasAnyValues = true;
internalValueResult.cpuOvercommitRatio = this._cpuOvercommitRatio;
}
if (this._hostMaintenancePolicy !== undefined) {
hasAnyValues = true;
internalValueResult.hostMaintenancePolicy = this._hostMaintenancePolicy;
}
if (this._nodeTypes?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.nodeTypes = this._nodeTypes?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._commitmentPlan = undefined;
this._cpuOvercommitRatio = undefined;
this._hostMaintenancePolicy = undefined;
this._nodeTypes.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._commitmentPlan = value.commitmentPlan;
this._cpuOvercommitRatio = value.cpuOvercommitRatio;
this._hostMaintenancePolicy = value.hostMaintenancePolicy;
this._nodeTypes.internalValue = value.nodeTypes;
}
}
get commitmentPlan() {
return this.getStringAttribute('commitment_plan');
}
set commitmentPlan(value) {
this._commitmentPlan = value;
}
resetCommitmentPlan() {
this._commitmentPlan = undefined;
}
// Temporarily expose input value. Use with caution.
get commitmentPlanInput() {
return this._commitmentPlan;
}
get cpuOvercommitRatio() {
return this.getNumberAttribute('cpu_overcommit_ratio');
}
set cpuOvercommitRatio(value) {
this._cpuOvercommitRatio = value;
}
resetCpuOvercommitRatio() {
this._cpuOvercommitRatio = undefined;
}
// Temporarily expose input value. Use with caution.
get cpuOvercommitRatioInput() {
return this._cpuOvercommitRatio;
}
get hostMaintenancePolicy() {
return this.getStringAttribute('host_maintenance_policy');
}
set hostMaintenancePolicy(value) {
this._hostMaintenancePolicy = value;
}
resetHostMaintenancePolicy() {
this._hostMaintenancePolicy = undefined;
}
// Temporarily expose input value. Use with caution.
get hostMaintenancePolicyInput() {
return this._hostMaintenancePolicy;
}
get nodeTypes() {
return this._nodeTypes;
}
putNodeTypes(value) {
this._nodeTypes.internalValue = value;
}
resetNodeTypes() {
this._nodeTypes.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get nodeTypesInput() {
return this._nodeTypes.internalValue;
}
}
exports.MigrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesOutputReference = MigrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesOutputReference;
_j = JSII_RTTI_SYMBOL_1;
MigrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesOutputReference[_j] = { fqn: "@cdktf/provider-google.migrationCenterPreferenceSet.MigrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesOutputReference", version: "14.35.0" };
function migrationCenterPreferenceSetVirtualMachinePreferencesVmwareEnginePreferencesToTerraform(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 {
commitment_plan: cdktf.stringToTerraform(struct.commitmentPlan),
cpu_overcommit_ratio: cdktf.numberToTerraform(struct.cpuOvercommitRatio),
memory_overcommit_ratio: cdktf.numberToTerraform(struct.memoryOvercommitRatio),
storage_deduplication_compression_ratio: cdktf.numberToTerraform(struct.storageDeduplicationCompressionRatio),
};
}
function migrationCenterPreferenceSetVirtualMachinePreferencesVmwareEnginePreferencesToHclTerraform(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 = {
commitment_plan: {
value: cdktf.stringToHclTerraform(struct.commitmentPlan),
isBlock: false,
type: "simple",
storageClassType: "string",
},
cpu_overcommit_ratio: {
value: cdktf.numberToHclTerraform(struct.cpuOvercommitRatio),
isBlock: false,
type: "simple",
storageClassType: "number",
},
memory_overcommit_ratio: {
value: cdktf.numberToHclTerraform(struct.memoryOvercommitRatio),
isBlock: false,
type: "simple",
storageClassType: "number",
},
storage_deduplication_compression_ratio: {
value: cdktf.numberToHclTerraform(struct.storageDeduplicationCompressionRatio),
isBlock: false,
type: "simple",
storageClassType: "number",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class MigrationCenterPreferenceSetVirtualMachinePreferencesVmwareEnginePreferencesOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._commitmentPlan !== undefined) {
hasAnyValues = true;
internalValueResult.commitmentPlan = this._commitmentPlan;
}
if (this._cpuOvercommitRatio !== undefined) {
hasAnyValues = true;
internalValueResult.cpuOvercommitRatio = this._cpuOvercommitRatio;
}
if (this._memoryOvercommitRatio !== undefined) {
hasAnyValues = true;
internalValueResult.memoryOvercommitRatio = this._memoryOvercommitRatio;
}
if (this._storageDeduplicationCompressionRatio !== undefined) {
hasAnyValues = true;
internalValueResult.storageDeduplicationCompressionRatio = this._storageDeduplicationCompressionRatio;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._commitmentPlan = undefined;
this._cpuOvercommitRatio = undefined;
this._memoryOvercommitRatio = undefined;
this._storageDeduplicationCompressionRatio = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._commitmentPlan = value.commitmentPlan;
this._cpuOvercommitRatio = value.cpuOvercommitRatio;
this._memoryOvercommitRatio = value.memoryOvercommitRatio;
this._storageDeduplicationCompressionRatio = value.storageDeduplicationCompressionRatio;
}
}
get commitmentPlan() {
return this.getStringAttribute('commitment_plan');
}
set commitmentPlan(value) {
this._commitmentPlan = value;
}
resetCommitmentPlan() {
this._commitmentPlan = undefined;
}
// Temporarily expose input value. Use with caution.
get commitmentPlanInput() {
return this._commitmentPlan;
}
get cpuOvercommitRatio() {
return this.getNumberAttribute('cpu_overcommit_ratio');
}
set cpuOvercommitRatio(value) {
this._cpuOvercommitRatio = value;
}
resetCpuOvercommitRatio() {
this._cpuOvercommitRatio = undefined;
}
// Temporarily expose input value. Use with caution.
get cpuOvercommitRatioInput() {
return this._cpuOvercommitRatio;
}
get memoryOvercommitRatio() {
return this.getNumberAttribute('memory_overcommit_ratio');
}
set memoryOvercommitRatio(value) {
this._memoryOvercommitRatio = value;
}
resetMemoryOvercommitRatio() {
this._memoryOvercommitRatio = undefined;
}
// Temporarily expose input value. Use with caution.
get memoryOvercommitRatioInput() {
return this._memoryOvercommitRatio;
}
get storageDeduplicationCompressionRatio() {
return this.getNumberAttribute('storage_deduplication_compression_ratio');
}
set storageDeduplicationCompressionRatio(value) {
this._storageDeduplicationCompressionRatio = value;
}
resetStorageDeduplicationCompressionRatio() {
this._storageDeduplicationCompressionRatio = undefined;
}
// Temporarily expose input value. Use with caution.
get storageDeduplicationCompressionRatioInput() {
return this._storageDeduplicationCompressionRatio;
}
}
exports.MigrationCenterPreferenceSetVirtualMachinePreferencesVmwareEnginePreferencesOutputReference = MigrationCenterPreferenceSetVirtualMachinePreferencesVmwareEnginePreferencesOutputReference;
_k = JSII_RTTI_SYMBOL_1;
MigrationCenterPreferenceSetVirtualMachinePreferencesVmwareEnginePreferencesOutputReference[_k] = { fqn: "@cdktf/provider-google.migrationCenterPreferenceSet.MigrationCenterPreferenceSetVirtualMachinePreferencesVmwareEnginePreferencesOutputReference", version: "14.35.0" };
function migrationCenterPreferenceSetVirtualMachinePreferencesToTerraform(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 {
commitment_plan: cdktf.stringToTerraform(struct.commitmentPlan),
sizing_optimization_strategy: cdktf.stringToTerraform(struct.sizingOptimizationStrategy),
target_product: cdktf.stringToTerraform(struct.targetProduct),
compute_engine_preferences: migrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesToTerraform(struct.computeEnginePreferences),
region_preferences: migrationCenterPreferenceSetVirtualMachinePreferencesRegionPreferencesToTerraform(struct.regionPreferences),
sole_tenancy_preferences: migrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesToTerraform(struct.soleTenancyPreferences),
vmware_engine_preferences: migrationCenterPreferenceSetVirtualMachinePreferencesVmwareEnginePreferencesToTerraform(struct.vmwareEnginePreferences),
};
}
function migrationCenterPreferenceSetVirtualMachinePreferencesToHclTerraform(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 = {
commitment_plan: {
value: cdktf.stringToHclTerraform(struct.commitmentPlan),
isBlock: false,
type: "simple",
storageClassType: "string",
},
sizing_optimization_strategy: {
value: cdktf.stringToHclTerraform(struct.sizingOptimizationStrategy),
isBlock: false,
type: "simple",
storageClassType: "string",
},
target_product: {
value: cdktf.stringToHclTerraform(struct.targetProduct),
isBlock: false,
type: "simple",
storageClassType: "string",
},
compute_engine_preferences: {
value: migrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesToHclTerraform(struct.computeEnginePreferences),
isBlock: true,
type: "list",
storageClassType: "MigrationCenterPreferenceSetVirtualMachinePreferencesComputeEnginePreferencesList",
},
region_preferences: {
value: migrationCenterPreferenceSetVirtualMachinePreferencesRegionPreferencesToHclTerraform(struct.regionPreferences),
isBlock: true,
type: "list",
storageClassType: "MigrationCenterPreferenceSetVirtualMachinePreferencesRegionPreferencesList",
},
sole_tenancy_preferences: {
value: migrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesToHclTerraform(struct.soleTenancyPreferences),
isBlock: true,
type: "list",
storageClassType: "MigrationCenterPreferenceSetVirtualMachinePreferencesSoleTenancyPreferencesList",
},
vmware_engine_preferences: {
value: migrationCenterPreferenceSetVirtualMachinePreferencesVmwareEnginePreferencesToHclTerraform(struct.vmwareEnginePreferences),
isBlock: true,
type: "list",
storageClassType: "MigrationCenterPreferenceSetVirtualMachinePreferencesVmwareEnginePreferencesList",
},