@cdktf/provider-azurerm
Version:
Prebuilt azurerm Provider for Terraform CDK (cdktf)
1,271 lines (1,270 loc) • 254 kB
JavaScript
"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,