UNPKG

@cdktf/provider-azurerm

Version:

Prebuilt azurerm Provider for Terraform CDK (cdktf)

1,271 lines (1,270 loc) 254 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m; Object.defineProperty(exports, "__esModule", { value: true }); exports.LabServiceLab = exports.LabServiceLabVirtualMachineOutputReference = exports.labServiceLabVirtualMachineToHclTerraform = exports.labServiceLabVirtualMachineToTerraform = exports.LabServiceLabVirtualMachineSkuOutputReference = exports.labServiceLabVirtualMachineSkuToHclTerraform = exports.labServiceLabVirtualMachineSkuToTerraform = exports.LabServiceLabVirtualMachineNonAdminUserOutputReference = exports.labServiceLabVirtualMachineNonAdminUserToHclTerraform = exports.labServiceLabVirtualMachineNonAdminUserToTerraform = exports.LabServiceLabVirtualMachineImageReferenceOutputReference = exports.labServiceLabVirtualMachineImageReferenceToHclTerraform = exports.labServiceLabVirtualMachineImageReferenceToTerraform = exports.LabServiceLabVirtualMachineAdminUserOutputReference = exports.labServiceLabVirtualMachineAdminUserToHclTerraform = exports.labServiceLabVirtualMachineAdminUserToTerraform = exports.LabServiceLabTimeoutsOutputReference = exports.labServiceLabTimeoutsToHclTerraform = exports.labServiceLabTimeoutsToTerraform = exports.LabServiceLabSecurityOutputReference = exports.labServiceLabSecurityToHclTerraform = exports.labServiceLabSecurityToTerraform = exports.LabServiceLabRosterOutputReference = exports.labServiceLabRosterToHclTerraform = exports.labServiceLabRosterToTerraform = exports.LabServiceLabNetworkOutputReference = exports.labServiceLabNetworkToHclTerraform = exports.labServiceLabNetworkToTerraform = exports.LabServiceLabConnectionSettingOutputReference = exports.labServiceLabConnectionSettingToHclTerraform = exports.labServiceLabConnectionSettingToTerraform = exports.LabServiceLabAutoShutdownOutputReference = exports.labServiceLabAutoShutdownToHclTerraform = exports.labServiceLabAutoShutdownToTerraform = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function labServiceLabAutoShutdownToTerraform(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 { disconnect_delay: cdktf.stringToTerraform(struct.disconnectDelay), idle_delay: cdktf.stringToTerraform(struct.idleDelay), no_connect_delay: cdktf.stringToTerraform(struct.noConnectDelay), shutdown_on_idle: cdktf.stringToTerraform(struct.shutdownOnIdle), }; } exports.labServiceLabAutoShutdownToTerraform = labServiceLabAutoShutdownToTerraform; function labServiceLabAutoShutdownToHclTerraform(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 = { disconnect_delay: { value: cdktf.stringToHclTerraform(struct.disconnectDelay), isBlock: false, type: "simple", storageClassType: "string", }, idle_delay: { value: cdktf.stringToHclTerraform(struct.idleDelay), isBlock: false, type: "simple", storageClassType: "string", }, no_connect_delay: { value: cdktf.stringToHclTerraform(struct.noConnectDelay), isBlock: false, type: "simple", storageClassType: "string", }, shutdown_on_idle: { value: cdktf.stringToHclTerraform(struct.shutdownOnIdle), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.labServiceLabAutoShutdownToHclTerraform = labServiceLabAutoShutdownToHclTerraform; class LabServiceLabAutoShutdownOutputReference 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._disconnectDelay !== undefined) { hasAnyValues = true; internalValueResult.disconnectDelay = this._disconnectDelay; } if (this._idleDelay !== undefined) { hasAnyValues = true; internalValueResult.idleDelay = this._idleDelay; } if (this._noConnectDelay !== undefined) { hasAnyValues = true; internalValueResult.noConnectDelay = this._noConnectDelay; } if (this._shutdownOnIdle !== undefined) { hasAnyValues = true; internalValueResult.shutdownOnIdle = this._shutdownOnIdle; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._disconnectDelay = undefined; this._idleDelay = undefined; this._noConnectDelay = undefined; this._shutdownOnIdle = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._disconnectDelay = value.disconnectDelay; this._idleDelay = value.idleDelay; this._noConnectDelay = value.noConnectDelay; this._shutdownOnIdle = value.shutdownOnIdle; } } get disconnectDelay() { return this.getStringAttribute('disconnect_delay'); } set disconnectDelay(value) { this._disconnectDelay = value; } resetDisconnectDelay() { this._disconnectDelay = undefined; } // Temporarily expose input value. Use with caution. get disconnectDelayInput() { return this._disconnectDelay; } get idleDelay() { return this.getStringAttribute('idle_delay'); } set idleDelay(value) { this._idleDelay = value; } resetIdleDelay() { this._idleDelay = undefined; } // Temporarily expose input value. Use with caution. get idleDelayInput() { return this._idleDelay; } get noConnectDelay() { return this.getStringAttribute('no_connect_delay'); } set noConnectDelay(value) { this._noConnectDelay = value; } resetNoConnectDelay() { this._noConnectDelay = undefined; } // Temporarily expose input value. Use with caution. get noConnectDelayInput() { return this._noConnectDelay; } get shutdownOnIdle() { return this.getStringAttribute('shutdown_on_idle'); } set shutdownOnIdle(value) { this._shutdownOnIdle = value; } resetShutdownOnIdle() { this._shutdownOnIdle = undefined; } // Temporarily expose input value. Use with caution. get shutdownOnIdleInput() { return this._shutdownOnIdle; } } exports.LabServiceLabAutoShutdownOutputReference = LabServiceLabAutoShutdownOutputReference; _a = JSII_RTTI_SYMBOL_1; LabServiceLabAutoShutdownOutputReference[_a] = { fqn: "@cdktf/provider-azurerm.labServiceLab.LabServiceLabAutoShutdownOutputReference", version: "12.27.0" }; function labServiceLabConnectionSettingToTerraform(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 { client_rdp_access: cdktf.stringToTerraform(struct.clientRdpAccess), client_ssh_access: cdktf.stringToTerraform(struct.clientSshAccess), }; } exports.labServiceLabConnectionSettingToTerraform = labServiceLabConnectionSettingToTerraform; function labServiceLabConnectionSettingToHclTerraform(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 = { client_rdp_access: { value: cdktf.stringToHclTerraform(struct.clientRdpAccess), isBlock: false, type: "simple", storageClassType: "string", }, client_ssh_access: { value: cdktf.stringToHclTerraform(struct.clientSshAccess), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.labServiceLabConnectionSettingToHclTerraform = labServiceLabConnectionSettingToHclTerraform; class LabServiceLabConnectionSettingOutputReference 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._clientRdpAccess !== undefined) { hasAnyValues = true; internalValueResult.clientRdpAccess = this._clientRdpAccess; } if (this._clientSshAccess !== undefined) { hasAnyValues = true; internalValueResult.clientSshAccess = this._clientSshAccess; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._clientRdpAccess = undefined; this._clientSshAccess = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._clientRdpAccess = value.clientRdpAccess; this._clientSshAccess = value.clientSshAccess; } } get clientRdpAccess() { return this.getStringAttribute('client_rdp_access'); } set clientRdpAccess(value) { this._clientRdpAccess = value; } resetClientRdpAccess() { this._clientRdpAccess = undefined; } // Temporarily expose input value. Use with caution. get clientRdpAccessInput() { return this._clientRdpAccess; } get clientSshAccess() { return this.getStringAttribute('client_ssh_access'); } set clientSshAccess(value) { this._clientSshAccess = value; } resetClientSshAccess() { this._clientSshAccess = undefined; } // Temporarily expose input value. Use with caution. get clientSshAccessInput() { return this._clientSshAccess; } } exports.LabServiceLabConnectionSettingOutputReference = LabServiceLabConnectionSettingOutputReference; _b = JSII_RTTI_SYMBOL_1; LabServiceLabConnectionSettingOutputReference[_b] = { fqn: "@cdktf/provider-azurerm.labServiceLab.LabServiceLabConnectionSettingOutputReference", version: "12.27.0" }; function labServiceLabNetworkToTerraform(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 { subnet_id: cdktf.stringToTerraform(struct.subnetId), }; } exports.labServiceLabNetworkToTerraform = labServiceLabNetworkToTerraform; function labServiceLabNetworkToHclTerraform(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 = { subnet_id: { value: cdktf.stringToHclTerraform(struct.subnetId), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.labServiceLabNetworkToHclTerraform = labServiceLabNetworkToHclTerraform; class LabServiceLabNetworkOutputReference 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._subnetId !== undefined) { hasAnyValues = true; internalValueResult.subnetId = this._subnetId; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._subnetId = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._subnetId = value.subnetId; } } // load_balancer_id - computed: true, optional: false, required: false get loadBalancerId() { return this.getStringAttribute('load_balancer_id'); } // public_ip_id - computed: true, optional: false, required: false get publicIpId() { return this.getStringAttribute('public_ip_id'); } get subnetId() { return this.getStringAttribute('subnet_id'); } set subnetId(value) { this._subnetId = value; } resetSubnetId() { this._subnetId = undefined; } // Temporarily expose input value. Use with caution. get subnetIdInput() { return this._subnetId; } } exports.LabServiceLabNetworkOutputReference = LabServiceLabNetworkOutputReference; _c = JSII_RTTI_SYMBOL_1; LabServiceLabNetworkOutputReference[_c] = { fqn: "@cdktf/provider-azurerm.labServiceLab.LabServiceLabNetworkOutputReference", version: "12.27.0" }; function labServiceLabRosterToTerraform(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 { active_directory_group_id: cdktf.stringToTerraform(struct.activeDirectoryGroupId), lms_instance: cdktf.stringToTerraform(struct.lmsInstance), lti_client_id: cdktf.stringToTerraform(struct.ltiClientId), lti_context_id: cdktf.stringToTerraform(struct.ltiContextId), lti_roster_endpoint: cdktf.stringToTerraform(struct.ltiRosterEndpoint), }; } exports.labServiceLabRosterToTerraform = labServiceLabRosterToTerraform; function labServiceLabRosterToHclTerraform(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 = { active_directory_group_id: { value: cdktf.stringToHclTerraform(struct.activeDirectoryGroupId), isBlock: false, type: "simple", storageClassType: "string", }, lms_instance: { value: cdktf.stringToHclTerraform(struct.lmsInstance), isBlock: false, type: "simple", storageClassType: "string", }, lti_client_id: { value: cdktf.stringToHclTerraform(struct.ltiClientId), isBlock: false, type: "simple", storageClassType: "string", }, lti_context_id: { value: cdktf.stringToHclTerraform(struct.ltiContextId), isBlock: false, type: "simple", storageClassType: "string", }, lti_roster_endpoint: { value: cdktf.stringToHclTerraform(struct.ltiRosterEndpoint), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.labServiceLabRosterToHclTerraform = labServiceLabRosterToHclTerraform; class LabServiceLabRosterOutputReference 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._activeDirectoryGroupId !== undefined) { hasAnyValues = true; internalValueResult.activeDirectoryGroupId = this._activeDirectoryGroupId; } if (this._lmsInstance !== undefined) { hasAnyValues = true; internalValueResult.lmsInstance = this._lmsInstance; } if (this._ltiClientId !== undefined) { hasAnyValues = true; internalValueResult.ltiClientId = this._ltiClientId; } if (this._ltiContextId !== undefined) { hasAnyValues = true; internalValueResult.ltiContextId = this._ltiContextId; } if (this._ltiRosterEndpoint !== undefined) { hasAnyValues = true; internalValueResult.ltiRosterEndpoint = this._ltiRosterEndpoint; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._activeDirectoryGroupId = undefined; this._lmsInstance = undefined; this._ltiClientId = undefined; this._ltiContextId = undefined; this._ltiRosterEndpoint = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._activeDirectoryGroupId = value.activeDirectoryGroupId; this._lmsInstance = value.lmsInstance; this._ltiClientId = value.ltiClientId; this._ltiContextId = value.ltiContextId; this._ltiRosterEndpoint = value.ltiRosterEndpoint; } } get activeDirectoryGroupId() { return this.getStringAttribute('active_directory_group_id'); } set activeDirectoryGroupId(value) { this._activeDirectoryGroupId = value; } resetActiveDirectoryGroupId() { this._activeDirectoryGroupId = undefined; } // Temporarily expose input value. Use with caution. get activeDirectoryGroupIdInput() { return this._activeDirectoryGroupId; } get lmsInstance() { return this.getStringAttribute('lms_instance'); } set lmsInstance(value) { this._lmsInstance = value; } resetLmsInstance() { this._lmsInstance = undefined; } // Temporarily expose input value. Use with caution. get lmsInstanceInput() { return this._lmsInstance; } get ltiClientId() { return this.getStringAttribute('lti_client_id'); } set ltiClientId(value) { this._ltiClientId = value; } resetLtiClientId() { this._ltiClientId = undefined; } // Temporarily expose input value. Use with caution. get ltiClientIdInput() { return this._ltiClientId; } get ltiContextId() { return this.getStringAttribute('lti_context_id'); } set ltiContextId(value) { this._ltiContextId = value; } resetLtiContextId() { this._ltiContextId = undefined; } // Temporarily expose input value. Use with caution. get ltiContextIdInput() { return this._ltiContextId; } get ltiRosterEndpoint() { return this.getStringAttribute('lti_roster_endpoint'); } set ltiRosterEndpoint(value) { this._ltiRosterEndpoint = value; } resetLtiRosterEndpoint() { this._ltiRosterEndpoint = undefined; } // Temporarily expose input value. Use with caution. get ltiRosterEndpointInput() { return this._ltiRosterEndpoint; } } exports.LabServiceLabRosterOutputReference = LabServiceLabRosterOutputReference; _d = JSII_RTTI_SYMBOL_1; LabServiceLabRosterOutputReference[_d] = { fqn: "@cdktf/provider-azurerm.labServiceLab.LabServiceLabRosterOutputReference", version: "12.27.0" }; function labServiceLabSecurityToTerraform(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 { open_access_enabled: cdktf.booleanToTerraform(struct.openAccessEnabled), }; } exports.labServiceLabSecurityToTerraform = labServiceLabSecurityToTerraform; function labServiceLabSecurityToHclTerraform(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 = { open_access_enabled: { value: cdktf.booleanToHclTerraform(struct.openAccessEnabled), isBlock: false, type: "simple", storageClassType: "boolean", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.labServiceLabSecurityToHclTerraform = labServiceLabSecurityToHclTerraform; class LabServiceLabSecurityOutputReference 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._openAccessEnabled !== undefined) { hasAnyValues = true; internalValueResult.openAccessEnabled = this._openAccessEnabled; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._openAccessEnabled = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._openAccessEnabled = value.openAccessEnabled; } } get openAccessEnabled() { return this.getBooleanAttribute('open_access_enabled'); } set openAccessEnabled(value) { this._openAccessEnabled = value; } // Temporarily expose input value. Use with caution. get openAccessEnabledInput() { return this._openAccessEnabled; } // registration_code - computed: true, optional: false, required: false get registrationCode() { return this.getStringAttribute('registration_code'); } } exports.LabServiceLabSecurityOutputReference = LabServiceLabSecurityOutputReference; _e = JSII_RTTI_SYMBOL_1; LabServiceLabSecurityOutputReference[_e] = { fqn: "@cdktf/provider-azurerm.labServiceLab.LabServiceLabSecurityOutputReference", version: "12.27.0" }; function labServiceLabTimeoutsToTerraform(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), read: cdktf.stringToTerraform(struct.read), update: cdktf.stringToTerraform(struct.update), }; } exports.labServiceLabTimeoutsToTerraform = labServiceLabTimeoutsToTerraform; function labServiceLabTimeoutsToHclTerraform(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", }, read: { value: cdktf.stringToHclTerraform(struct.read), 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)); } exports.labServiceLabTimeoutsToHclTerraform = labServiceLabTimeoutsToHclTerraform; class LabServiceLabTimeoutsOutputReference 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._read !== undefined) { hasAnyValues = true; internalValueResult.read = this._read; } 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._read = 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._read = value.read; 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 read() { return this.getStringAttribute('read'); } set read(value) { this._read = value; } resetRead() { this._read = undefined; } // Temporarily expose input value. Use with caution. get readInput() { return this._read; } 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.LabServiceLabTimeoutsOutputReference = LabServiceLabTimeoutsOutputReference; _f = JSII_RTTI_SYMBOL_1; LabServiceLabTimeoutsOutputReference[_f] = { fqn: "@cdktf/provider-azurerm.labServiceLab.LabServiceLabTimeoutsOutputReference", version: "12.27.0" }; function labServiceLabVirtualMachineAdminUserToTerraform(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 { password: cdktf.stringToTerraform(struct.password), username: cdktf.stringToTerraform(struct.username), }; } exports.labServiceLabVirtualMachineAdminUserToTerraform = labServiceLabVirtualMachineAdminUserToTerraform; function labServiceLabVirtualMachineAdminUserToHclTerraform(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 = { password: { value: cdktf.stringToHclTerraform(struct.password), isBlock: false, type: "simple", storageClassType: "string", }, username: { value: cdktf.stringToHclTerraform(struct.username), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.labServiceLabVirtualMachineAdminUserToHclTerraform = labServiceLabVirtualMachineAdminUserToHclTerraform; class LabServiceLabVirtualMachineAdminUserOutputReference 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._password !== undefined) { hasAnyValues = true; internalValueResult.password = this._password; } if (this._username !== undefined) { hasAnyValues = true; internalValueResult.username = this._username; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._password = undefined; this._username = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._password = value.password; this._username = value.username; } } get password() { return this.getStringAttribute('password'); } set password(value) { this._password = value; } // Temporarily expose input value. Use with caution. get passwordInput() { return this._password; } get username() { return this.getStringAttribute('username'); } set username(value) { this._username = value; } // Temporarily expose input value. Use with caution. get usernameInput() { return this._username; } } exports.LabServiceLabVirtualMachineAdminUserOutputReference = LabServiceLabVirtualMachineAdminUserOutputReference; _g = JSII_RTTI_SYMBOL_1; LabServiceLabVirtualMachineAdminUserOutputReference[_g] = { fqn: "@cdktf/provider-azurerm.labServiceLab.LabServiceLabVirtualMachineAdminUserOutputReference", version: "12.27.0" }; function labServiceLabVirtualMachineImageReferenceToTerraform(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 { id: cdktf.stringToTerraform(struct.id), offer: cdktf.stringToTerraform(struct.offer), publisher: cdktf.stringToTerraform(struct.publisher), sku: cdktf.stringToTerraform(struct.sku), version: cdktf.stringToTerraform(struct.version), }; } exports.labServiceLabVirtualMachineImageReferenceToTerraform = labServiceLabVirtualMachineImageReferenceToTerraform; function labServiceLabVirtualMachineImageReferenceToHclTerraform(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 = { id: { value: cdktf.stringToHclTerraform(struct.id), isBlock: false, type: "simple", storageClassType: "string", }, offer: { value: cdktf.stringToHclTerraform(struct.offer), isBlock: false, type: "simple", storageClassType: "string", }, publisher: { value: cdktf.stringToHclTerraform(struct.publisher), isBlock: false, type: "simple", storageClassType: "string", }, sku: { value: cdktf.stringToHclTerraform(struct.sku), isBlock: false, type: "simple", storageClassType: "string", }, version: { value: cdktf.stringToHclTerraform(struct.version), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.labServiceLabVirtualMachineImageReferenceToHclTerraform = labServiceLabVirtualMachineImageReferenceToHclTerraform; class LabServiceLabVirtualMachineImageReferenceOutputReference 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._id !== undefined) { hasAnyValues = true; internalValueResult.id = this._id; } if (this._offer !== undefined) { hasAnyValues = true; internalValueResult.offer = this._offer; } if (this._publisher !== undefined) { hasAnyValues = true; internalValueResult.publisher = this._publisher; } if (this._sku !== undefined) { hasAnyValues = true; internalValueResult.sku = this._sku; } if (this._version !== undefined) { hasAnyValues = true; internalValueResult.version = this._version; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._id = undefined; this._offer = undefined; this._publisher = undefined; this._sku = undefined; this._version = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._id = value.id; this._offer = value.offer; this._publisher = value.publisher; this._sku = value.sku; this._version = value.version; } } get id() { return this.getStringAttribute('id'); } set id(value) { this._id = value; } resetId() { this._id = undefined; } // Temporarily expose input value. Use with caution. get idInput() { return this._id; } get offer() { return this.getStringAttribute('offer'); } set offer(value) { this._offer = value; } resetOffer() { this._offer = undefined; } // Temporarily expose input value. Use with caution. get offerInput() { return this._offer; } get publisher() { return this.getStringAttribute('publisher'); } set publisher(value) { this._publisher = value; } resetPublisher() { this._publisher = undefined; } // Temporarily expose input value. Use with caution. get publisherInput() { return this._publisher; } get sku() { return this.getStringAttribute('sku'); } set sku(value) { this._sku = value; } resetSku() { this._sku = undefined; } // Temporarily expose input value. Use with caution. get skuInput() { return this._sku; } get version() { return this.getStringAttribute('version'); } set version(value) { this._version = value; } resetVersion() { this._version = undefined; } // Temporarily expose input value. Use with caution. get versionInput() { return this._version; } } exports.LabServiceLabVirtualMachineImageReferenceOutputReference = LabServiceLabVirtualMachineImageReferenceOutputReference; _h = JSII_RTTI_SYMBOL_1; LabServiceLabVirtualMachineImageReferenceOutputReference[_h] = { fqn: "@cdktf/provider-azurerm.labServiceLab.LabServiceLabVirtualMachineImageReferenceOutputReference", version: "12.27.0" }; function labServiceLabVirtualMachineNonAdminUserToTerraform(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 { password: cdktf.stringToTerraform(struct.password), username: cdktf.stringToTerraform(struct.username), }; } exports.labServiceLabVirtualMachineNonAdminUserToTerraform = labServiceLabVirtualMachineNonAdminUserToTerraform; function labServiceLabVirtualMachineNonAdminUserToHclTerraform(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 = { password: { value: cdktf.stringToHclTerraform(struct.password), isBlock: false, type: "simple", storageClassType: "string", }, username: { value: cdktf.stringToHclTerraform(struct.username), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.labServiceLabVirtualMachineNonAdminUserToHclTerraform = labServiceLabVirtualMachineNonAdminUserToHclTerraform; class LabServiceLabVirtualMachineNonAdminUserOutputReference 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._password !== undefined) { hasAnyValues = true; internalValueResult.password = this._password; } if (this._username !== undefined) { hasAnyValues = true; internalValueResult.username = this._username; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._password = undefined; this._username = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._password = value.password; this._username = value.username; } } get password() { return this.getStringAttribute('password'); } set password(value) { this._password = value; } // Temporarily expose input value. Use with caution. get passwordInput() { return this._password; } get username() { return this.getStringAttribute('username'); } set username(value) { this._username = value; } // Temporarily expose input value. Use with caution. get usernameInput() { return this._username; } } exports.LabServiceLabVirtualMachineNonAdminUserOutputReference = LabServiceLabVirtualMachineNonAdminUserOutputReference; _j = JSII_RTTI_SYMBOL_1; LabServiceLabVirtualMachineNonAdminUserOutputReference[_j] = { fqn: "@cdktf/provider-azurerm.labServiceLab.LabServiceLabVirtualMachineNonAdminUserOutputReference", version: "12.27.0" }; function labServiceLabVirtualMachineSkuToTerraform(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 { capacity: cdktf.numberToTerraform(struct.capacity), name: cdktf.stringToTerraform(struct.name), }; } exports.labServiceLabVirtualMachineSkuToTerraform = labServiceLabVirtualMachineSkuToTerraform; function labServiceLabVirtualMachineSkuToHclTerraform(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 = { capacity: { value: cdktf.numberToHclTerraform(struct.capacity), isBlock: false, type: "simple", storageClassType: "number", }, name: { value: cdktf.stringToHclTerraform(struct.name), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.labServiceLabVirtualMachineSkuToHclTerraform = labServiceLabVirtualMachineSkuToHclTerraform; class LabServiceLabVirtualMachineSkuOutputReference 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._capacity !== undefined) { hasAnyValues = true; internalValueResult.capacity = this._capacity; } if (this._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._capacity = undefined; this._name = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._capacity = value.capacity; this._name = value.name; } } get capacity() { return this.getNumberAttribute('capacity'); } set capacity(value) { this._capacity = value; } // Temporarily expose input value. Use with caution. get capacityInput() { return this._capacity; } get name() { return this.getStringAttribute('name'); } set name(value) { this._name = value; } // Temporarily expose input value. Use with caution. get nameInput() { return this._name; } } exports.LabServiceLabVirtualMachineSkuOutputReference = LabServiceLabVirtualMachineSkuOutputReference; _k = JSII_RTTI_SYMBOL_1; LabServiceLabVirtualMachineSkuOutputReference[_k] = { fqn: "@cdktf/provider-azurerm.labServiceLab.LabServiceLabVirtualMachineSkuOutputReference", version: "12.27.0" }; function labServiceLabVirtualMachineToTerraform(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 { additional_capability_gpu_drivers_installed: cdktf.booleanToTerraform(struct.additionalCapabilityGpuDriversInstalled), create_option: cdktf.stringToTerraform(struct.createOption), shared_password_enabled: cdktf.booleanToTerraform(struct.sharedPasswordEnabled), usage_quota: cdktf.stringToTerraform(struct.usageQuota), admin_user: labServiceLabVirtualMachineAdminUserToTerraform(struct.adminUser), image_reference: labServiceLabVirtualMachineImageReferenceToTerraform(struct.imageReference), non_admin_user: labServiceLabVirtualMachineNonAdminUserToTerraform(struct.nonAdminUser), sku: labServiceLabVirtualMachineSkuToTerraform(struct.sku), }; } exports.labServiceLabVirtualMachineToTerraform = labServiceLabVirtualMachineToTerraform; function labServiceLabVirtualMachineToHclTerraform(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 = { additional_capability_gpu_drivers_installed: { value: cdktf.booleanToHclTerraform(struct.additionalCapabilityGpuDriversInstalled), isBlock: false, type: "simple", storageClassType: "boolean", }, create_option: { value: cdktf.stringToHclTerraform(struct.createOption), isBlock: false,