UNPKG

@cdktf/provider-azurerm

Version:

Prebuilt azurerm Provider for Terraform CDK (cdktf)

1,092 lines (1,091 loc) 249 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q; Object.defineProperty(exports, "__esModule", { value: true }); exports.KeyVaultCertificate = exports.KeyVaultCertificateTimeoutsOutputReference = exports.keyVaultCertificateTimeoutsToHclTerraform = exports.keyVaultCertificateTimeoutsToTerraform = exports.KeyVaultCertificateCertificatePolicyOutputReference = exports.keyVaultCertificateCertificatePolicyToHclTerraform = exports.keyVaultCertificateCertificatePolicyToTerraform = exports.KeyVaultCertificateCertificatePolicyX509CertificatePropertiesOutputReference = exports.keyVaultCertificateCertificatePolicyX509CertificatePropertiesToHclTerraform = exports.keyVaultCertificateCertificatePolicyX509CertificatePropertiesToTerraform = exports.KeyVaultCertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesOutputReference = exports.keyVaultCertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesToHclTerraform = exports.keyVaultCertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesToTerraform = exports.KeyVaultCertificateCertificatePolicySecretPropertiesOutputReference = exports.keyVaultCertificateCertificatePolicySecretPropertiesToHclTerraform = exports.keyVaultCertificateCertificatePolicySecretPropertiesToTerraform = exports.KeyVaultCertificateCertificatePolicyLifetimeActionList = exports.KeyVaultCertificateCertificatePolicyLifetimeActionOutputReference = exports.keyVaultCertificateCertificatePolicyLifetimeActionToHclTerraform = exports.keyVaultCertificateCertificatePolicyLifetimeActionToTerraform = exports.KeyVaultCertificateCertificatePolicyLifetimeActionTriggerOutputReference = exports.keyVaultCertificateCertificatePolicyLifetimeActionTriggerToHclTerraform = exports.keyVaultCertificateCertificatePolicyLifetimeActionTriggerToTerraform = exports.KeyVaultCertificateCertificatePolicyLifetimeActionActionOutputReference = exports.keyVaultCertificateCertificatePolicyLifetimeActionActionToHclTerraform = exports.keyVaultCertificateCertificatePolicyLifetimeActionActionToTerraform = exports.KeyVaultCertificateCertificatePolicyKeyPropertiesOutputReference = exports.keyVaultCertificateCertificatePolicyKeyPropertiesToHclTerraform = exports.keyVaultCertificateCertificatePolicyKeyPropertiesToTerraform = exports.KeyVaultCertificateCertificatePolicyIssuerParametersOutputReference = exports.keyVaultCertificateCertificatePolicyIssuerParametersToHclTerraform = exports.keyVaultCertificateCertificatePolicyIssuerParametersToTerraform = exports.KeyVaultCertificateCertificateOutputReference = exports.keyVaultCertificateCertificateToHclTerraform = exports.keyVaultCertificateCertificateToTerraform = exports.KeyVaultCertificateCertificateAttributeList = exports.KeyVaultCertificateCertificateAttributeOutputReference = exports.keyVaultCertificateCertificateAttributeToHclTerraform = exports.keyVaultCertificateCertificateAttributeToTerraform = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function keyVaultCertificateCertificateAttributeToTerraform(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 {}; } exports.keyVaultCertificateCertificateAttributeToTerraform = keyVaultCertificateCertificateAttributeToTerraform; function keyVaultCertificateCertificateAttributeToHclTerraform(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 = {}; return attrs; } exports.keyVaultCertificateCertificateAttributeToHclTerraform = keyVaultCertificateCertificateAttributeToHclTerraform; class KeyVaultCertificateCertificateAttributeOutputReference 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() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; } else { this.isEmptyObject = Object.keys(value).length === 0; } } // created - computed: true, optional: false, required: false get created() { return this.getStringAttribute('created'); } // enabled - computed: true, optional: false, required: false get enabled() { return this.getBooleanAttribute('enabled'); } // expires - computed: true, optional: false, required: false get expires() { return this.getStringAttribute('expires'); } // not_before - computed: true, optional: false, required: false get notBefore() { return this.getStringAttribute('not_before'); } // recovery_level - computed: true, optional: false, required: false get recoveryLevel() { return this.getStringAttribute('recovery_level'); } // updated - computed: true, optional: false, required: false get updated() { return this.getStringAttribute('updated'); } } exports.KeyVaultCertificateCertificateAttributeOutputReference = KeyVaultCertificateCertificateAttributeOutputReference; _a = JSII_RTTI_SYMBOL_1; KeyVaultCertificateCertificateAttributeOutputReference[_a] = { fqn: "@cdktf/provider-azurerm.keyVaultCertificate.KeyVaultCertificateCertificateAttributeOutputReference", version: "12.27.0" }; class KeyVaultCertificateCertificateAttributeList 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 KeyVaultCertificateCertificateAttributeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.KeyVaultCertificateCertificateAttributeList = KeyVaultCertificateCertificateAttributeList; _b = JSII_RTTI_SYMBOL_1; KeyVaultCertificateCertificateAttributeList[_b] = { fqn: "@cdktf/provider-azurerm.keyVaultCertificate.KeyVaultCertificateCertificateAttributeList", version: "12.27.0" }; function keyVaultCertificateCertificateToTerraform(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 { contents: cdktf.stringToTerraform(struct.contents), password: cdktf.stringToTerraform(struct.password), }; } exports.keyVaultCertificateCertificateToTerraform = keyVaultCertificateCertificateToTerraform; function keyVaultCertificateCertificateToHclTerraform(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 = { contents: { value: cdktf.stringToHclTerraform(struct.contents), isBlock: false, type: "simple", storageClassType: "string", }, password: { value: cdktf.stringToHclTerraform(struct.password), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.keyVaultCertificateCertificateToHclTerraform = keyVaultCertificateCertificateToHclTerraform; class KeyVaultCertificateCertificateOutputReference 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._contents !== undefined) { hasAnyValues = true; internalValueResult.contents = this._contents; } if (this._password !== undefined) { hasAnyValues = true; internalValueResult.password = this._password; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._contents = undefined; this._password = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._contents = value.contents; this._password = value.password; } } get contents() { return this.getStringAttribute('contents'); } set contents(value) { this._contents = value; } // Temporarily expose input value. Use with caution. get contentsInput() { return this._contents; } get password() { return this.getStringAttribute('password'); } set password(value) { this._password = value; } resetPassword() { this._password = undefined; } // Temporarily expose input value. Use with caution. get passwordInput() { return this._password; } } exports.KeyVaultCertificateCertificateOutputReference = KeyVaultCertificateCertificateOutputReference; _c = JSII_RTTI_SYMBOL_1; KeyVaultCertificateCertificateOutputReference[_c] = { fqn: "@cdktf/provider-azurerm.keyVaultCertificate.KeyVaultCertificateCertificateOutputReference", version: "12.27.0" }; function keyVaultCertificateCertificatePolicyIssuerParametersToTerraform(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 { name: cdktf.stringToTerraform(struct.name), }; } exports.keyVaultCertificateCertificatePolicyIssuerParametersToTerraform = keyVaultCertificateCertificatePolicyIssuerParametersToTerraform; function keyVaultCertificateCertificatePolicyIssuerParametersToHclTerraform(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 = { 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.keyVaultCertificateCertificatePolicyIssuerParametersToHclTerraform = keyVaultCertificateCertificatePolicyIssuerParametersToHclTerraform; class KeyVaultCertificateCertificatePolicyIssuerParametersOutputReference 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._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._name = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._name = value.name; } } 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.KeyVaultCertificateCertificatePolicyIssuerParametersOutputReference = KeyVaultCertificateCertificatePolicyIssuerParametersOutputReference; _d = JSII_RTTI_SYMBOL_1; KeyVaultCertificateCertificatePolicyIssuerParametersOutputReference[_d] = { fqn: "@cdktf/provider-azurerm.keyVaultCertificate.KeyVaultCertificateCertificatePolicyIssuerParametersOutputReference", version: "12.27.0" }; function keyVaultCertificateCertificatePolicyKeyPropertiesToTerraform(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 { curve: cdktf.stringToTerraform(struct.curve), exportable: cdktf.booleanToTerraform(struct.exportable), key_size: cdktf.numberToTerraform(struct.keySize), key_type: cdktf.stringToTerraform(struct.keyType), reuse_key: cdktf.booleanToTerraform(struct.reuseKey), }; } exports.keyVaultCertificateCertificatePolicyKeyPropertiesToTerraform = keyVaultCertificateCertificatePolicyKeyPropertiesToTerraform; function keyVaultCertificateCertificatePolicyKeyPropertiesToHclTerraform(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 = { curve: { value: cdktf.stringToHclTerraform(struct.curve), isBlock: false, type: "simple", storageClassType: "string", }, exportable: { value: cdktf.booleanToHclTerraform(struct.exportable), isBlock: false, type: "simple", storageClassType: "boolean", }, key_size: { value: cdktf.numberToHclTerraform(struct.keySize), isBlock: false, type: "simple", storageClassType: "number", }, key_type: { value: cdktf.stringToHclTerraform(struct.keyType), isBlock: false, type: "simple", storageClassType: "string", }, reuse_key: { value: cdktf.booleanToHclTerraform(struct.reuseKey), isBlock: false, type: "simple", storageClassType: "boolean", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.keyVaultCertificateCertificatePolicyKeyPropertiesToHclTerraform = keyVaultCertificateCertificatePolicyKeyPropertiesToHclTerraform; class KeyVaultCertificateCertificatePolicyKeyPropertiesOutputReference 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._curve !== undefined) { hasAnyValues = true; internalValueResult.curve = this._curve; } if (this._exportable !== undefined) { hasAnyValues = true; internalValueResult.exportable = this._exportable; } if (this._keySize !== undefined) { hasAnyValues = true; internalValueResult.keySize = this._keySize; } if (this._keyType !== undefined) { hasAnyValues = true; internalValueResult.keyType = this._keyType; } if (this._reuseKey !== undefined) { hasAnyValues = true; internalValueResult.reuseKey = this._reuseKey; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._curve = undefined; this._exportable = undefined; this._keySize = undefined; this._keyType = undefined; this._reuseKey = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._curve = value.curve; this._exportable = value.exportable; this._keySize = value.keySize; this._keyType = value.keyType; this._reuseKey = value.reuseKey; } } get curve() { return this.getStringAttribute('curve'); } set curve(value) { this._curve = value; } resetCurve() { this._curve = undefined; } // Temporarily expose input value. Use with caution. get curveInput() { return this._curve; } get exportable() { return this.getBooleanAttribute('exportable'); } set exportable(value) { this._exportable = value; } // Temporarily expose input value. Use with caution. get exportableInput() { return this._exportable; } get keySize() { return this.getNumberAttribute('key_size'); } set keySize(value) { this._keySize = value; } resetKeySize() { this._keySize = undefined; } // Temporarily expose input value. Use with caution. get keySizeInput() { return this._keySize; } get keyType() { return this.getStringAttribute('key_type'); } set keyType(value) { this._keyType = value; } // Temporarily expose input value. Use with caution. get keyTypeInput() { return this._keyType; } get reuseKey() { return this.getBooleanAttribute('reuse_key'); } set reuseKey(value) { this._reuseKey = value; } // Temporarily expose input value. Use with caution. get reuseKeyInput() { return this._reuseKey; } } exports.KeyVaultCertificateCertificatePolicyKeyPropertiesOutputReference = KeyVaultCertificateCertificatePolicyKeyPropertiesOutputReference; _e = JSII_RTTI_SYMBOL_1; KeyVaultCertificateCertificatePolicyKeyPropertiesOutputReference[_e] = { fqn: "@cdktf/provider-azurerm.keyVaultCertificate.KeyVaultCertificateCertificatePolicyKeyPropertiesOutputReference", version: "12.27.0" }; function keyVaultCertificateCertificatePolicyLifetimeActionActionToTerraform(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 { action_type: cdktf.stringToTerraform(struct.actionType), }; } exports.keyVaultCertificateCertificatePolicyLifetimeActionActionToTerraform = keyVaultCertificateCertificatePolicyLifetimeActionActionToTerraform; function keyVaultCertificateCertificatePolicyLifetimeActionActionToHclTerraform(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 = { action_type: { value: cdktf.stringToHclTerraform(struct.actionType), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.keyVaultCertificateCertificatePolicyLifetimeActionActionToHclTerraform = keyVaultCertificateCertificatePolicyLifetimeActionActionToHclTerraform; class KeyVaultCertificateCertificatePolicyLifetimeActionActionOutputReference 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._actionType !== undefined) { hasAnyValues = true; internalValueResult.actionType = this._actionType; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._actionType = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._actionType = value.actionType; } } get actionType() { return this.getStringAttribute('action_type'); } set actionType(value) { this._actionType = value; } // Temporarily expose input value. Use with caution. get actionTypeInput() { return this._actionType; } } exports.KeyVaultCertificateCertificatePolicyLifetimeActionActionOutputReference = KeyVaultCertificateCertificatePolicyLifetimeActionActionOutputReference; _f = JSII_RTTI_SYMBOL_1; KeyVaultCertificateCertificatePolicyLifetimeActionActionOutputReference[_f] = { fqn: "@cdktf/provider-azurerm.keyVaultCertificate.KeyVaultCertificateCertificatePolicyLifetimeActionActionOutputReference", version: "12.27.0" }; function keyVaultCertificateCertificatePolicyLifetimeActionTriggerToTerraform(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 { days_before_expiry: cdktf.numberToTerraform(struct.daysBeforeExpiry), lifetime_percentage: cdktf.numberToTerraform(struct.lifetimePercentage), }; } exports.keyVaultCertificateCertificatePolicyLifetimeActionTriggerToTerraform = keyVaultCertificateCertificatePolicyLifetimeActionTriggerToTerraform; function keyVaultCertificateCertificatePolicyLifetimeActionTriggerToHclTerraform(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 = { days_before_expiry: { value: cdktf.numberToHclTerraform(struct.daysBeforeExpiry), isBlock: false, type: "simple", storageClassType: "number", }, lifetime_percentage: { value: cdktf.numberToHclTerraform(struct.lifetimePercentage), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.keyVaultCertificateCertificatePolicyLifetimeActionTriggerToHclTerraform = keyVaultCertificateCertificatePolicyLifetimeActionTriggerToHclTerraform; class KeyVaultCertificateCertificatePolicyLifetimeActionTriggerOutputReference 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._daysBeforeExpiry !== undefined) { hasAnyValues = true; internalValueResult.daysBeforeExpiry = this._daysBeforeExpiry; } if (this._lifetimePercentage !== undefined) { hasAnyValues = true; internalValueResult.lifetimePercentage = this._lifetimePercentage; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._daysBeforeExpiry = undefined; this._lifetimePercentage = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._daysBeforeExpiry = value.daysBeforeExpiry; this._lifetimePercentage = value.lifetimePercentage; } } get daysBeforeExpiry() { return this.getNumberAttribute('days_before_expiry'); } set daysBeforeExpiry(value) { this._daysBeforeExpiry = value; } resetDaysBeforeExpiry() { this._daysBeforeExpiry = undefined; } // Temporarily expose input value. Use with caution. get daysBeforeExpiryInput() { return this._daysBeforeExpiry; } get lifetimePercentage() { return this.getNumberAttribute('lifetime_percentage'); } set lifetimePercentage(value) { this._lifetimePercentage = value; } resetLifetimePercentage() { this._lifetimePercentage = undefined; } // Temporarily expose input value. Use with caution. get lifetimePercentageInput() { return this._lifetimePercentage; } } exports.KeyVaultCertificateCertificatePolicyLifetimeActionTriggerOutputReference = KeyVaultCertificateCertificatePolicyLifetimeActionTriggerOutputReference; _g = JSII_RTTI_SYMBOL_1; KeyVaultCertificateCertificatePolicyLifetimeActionTriggerOutputReference[_g] = { fqn: "@cdktf/provider-azurerm.keyVaultCertificate.KeyVaultCertificateCertificatePolicyLifetimeActionTriggerOutputReference", version: "12.27.0" }; function keyVaultCertificateCertificatePolicyLifetimeActionToTerraform(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 { action: keyVaultCertificateCertificatePolicyLifetimeActionActionToTerraform(struct.action), trigger: keyVaultCertificateCertificatePolicyLifetimeActionTriggerToTerraform(struct.trigger), }; } exports.keyVaultCertificateCertificatePolicyLifetimeActionToTerraform = keyVaultCertificateCertificatePolicyLifetimeActionToTerraform; function keyVaultCertificateCertificatePolicyLifetimeActionToHclTerraform(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 = { action: { value: keyVaultCertificateCertificatePolicyLifetimeActionActionToHclTerraform(struct.action), isBlock: true, type: "list", storageClassType: "KeyVaultCertificateCertificatePolicyLifetimeActionActionList", }, trigger: { value: keyVaultCertificateCertificatePolicyLifetimeActionTriggerToHclTerraform(struct.trigger), isBlock: true, type: "list", storageClassType: "KeyVaultCertificateCertificatePolicyLifetimeActionTriggerList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.keyVaultCertificateCertificatePolicyLifetimeActionToHclTerraform = keyVaultCertificateCertificatePolicyLifetimeActionToHclTerraform; class KeyVaultCertificateCertificatePolicyLifetimeActionOutputReference 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; // action - computed: false, optional: false, required: true this._action = new KeyVaultCertificateCertificatePolicyLifetimeActionActionOutputReference(this, "action"); // trigger - computed: false, optional: false, required: true this._trigger = new KeyVaultCertificateCertificatePolicyLifetimeActionTriggerOutputReference(this, "trigger"); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._action?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.action = this._action?.internalValue; } if (this._trigger?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.trigger = this._trigger?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._action.internalValue = undefined; this._trigger.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; this._action.internalValue = value.action; this._trigger.internalValue = value.trigger; } } get action() { return this._action; } putAction(value) { this._action.internalValue = value; } // Temporarily expose input value. Use with caution. get actionInput() { return this._action.internalValue; } get trigger() { return this._trigger; } putTrigger(value) { this._trigger.internalValue = value; } // Temporarily expose input value. Use with caution. get triggerInput() { return this._trigger.internalValue; } } exports.KeyVaultCertificateCertificatePolicyLifetimeActionOutputReference = KeyVaultCertificateCertificatePolicyLifetimeActionOutputReference; _h = JSII_RTTI_SYMBOL_1; KeyVaultCertificateCertificatePolicyLifetimeActionOutputReference[_h] = { fqn: "@cdktf/provider-azurerm.keyVaultCertificate.KeyVaultCertificateCertificatePolicyLifetimeActionOutputReference", version: "12.27.0" }; class KeyVaultCertificateCertificatePolicyLifetimeActionList 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 KeyVaultCertificateCertificatePolicyLifetimeActionOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.KeyVaultCertificateCertificatePolicyLifetimeActionList = KeyVaultCertificateCertificatePolicyLifetimeActionList; _j = JSII_RTTI_SYMBOL_1; KeyVaultCertificateCertificatePolicyLifetimeActionList[_j] = { fqn: "@cdktf/provider-azurerm.keyVaultCertificate.KeyVaultCertificateCertificatePolicyLifetimeActionList", version: "12.27.0" }; function keyVaultCertificateCertificatePolicySecretPropertiesToTerraform(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 { content_type: cdktf.stringToTerraform(struct.contentType), }; } exports.keyVaultCertificateCertificatePolicySecretPropertiesToTerraform = keyVaultCertificateCertificatePolicySecretPropertiesToTerraform; function keyVaultCertificateCertificatePolicySecretPropertiesToHclTerraform(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 = { content_type: { value: cdktf.stringToHclTerraform(struct.contentType), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.keyVaultCertificateCertificatePolicySecretPropertiesToHclTerraform = keyVaultCertificateCertificatePolicySecretPropertiesToHclTerraform; class KeyVaultCertificateCertificatePolicySecretPropertiesOutputReference 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._contentType !== undefined) { hasAnyValues = true; internalValueResult.contentType = this._contentType; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._contentType = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._contentType = value.contentType; } } get contentType() { return this.getStringAttribute('content_type'); } set contentType(value) { this._contentType = value; } // Temporarily expose input value. Use with caution. get contentTypeInput() { return this._contentType; } } exports.KeyVaultCertificateCertificatePolicySecretPropertiesOutputReference = KeyVaultCertificateCertificatePolicySecretPropertiesOutputReference; _k = JSII_RTTI_SYMBOL_1; KeyVaultCertificateCertificatePolicySecretPropertiesOutputReference[_k] = { fqn: "@cdktf/provider-azurerm.keyVaultCertificate.KeyVaultCertificateCertificatePolicySecretPropertiesOutputReference", version: "12.27.0" }; function keyVaultCertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesToTerraform(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 { dns_names: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.dnsNames), emails: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.emails), upns: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.upns), }; } exports.keyVaultCertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesToTerraform = keyVaultCertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesToTerraform; function keyVaultCertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesToHclTerraform(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 = { dns_names: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.dnsNames), isBlock: false, type: "set", storageClassType: "stringList", }, emails: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.emails), isBlock: false, type: "set", storageClassType: "stringList", }, upns: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.upns), isBlock: false, type: "set", storageClassType: "stringList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.keyVaultCertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesToHclTerraform = keyVaultCertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesToHclTerraform; class KeyVaultCertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesOutputReference 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._dnsNames !== undefined) { hasAnyValues = true; internalValueResult.dnsNames = this._dnsNames; } if (this._emails !== undefined) { hasAnyValues = true; internalValueResult.emails = this._emails; } if (this._upns !== undefined) { hasAnyValues = true; internalValueResult.upns = this._upns; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._dnsNames = undefined; this._emails = undefined; this._upns = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._dnsNames = value.dnsNames; this._emails = value.emails; this._upns = value.upns; } } get dnsNames() { return cdktf.Fn.tolist(this.getListAttribute('dns_names')); } set dnsNames(value) { this._dnsNames = value; } resetDnsNames() { this._dnsNames = undefined; } // Temporarily expose input value. Use with caution. get dnsNamesInput() { return this._dnsNames; } get emails() { return cdktf.Fn.tolist(this.getListAttribute('emails')); } set emails(value) { this._emails = value; } resetEmails() { this._emails = undefined; } // Temporarily expose input value. Use with caution. get emailsInput() { return this._emails; } get upns() { return cdktf.Fn.tolist(this.getListAttribute('upns')); } set upns(value) { this._upns = value; } resetUpns() { this._upns = undefined; } // Temporarily expose input value. Use with caution. get upnsInput() { return this._upns; } } exports.KeyVaultCertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesOutputReference = KeyVaultCertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesOutputReference; _l = JSII_RTTI_SYMBOL_1; KeyVaultCertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesOutputReference[_l] = { fqn: "@cdktf/provider-azurerm.keyVaultCertificate.KeyVaultCertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesOutputReference", version: "12.27.0" }; function keyVaultCertificateCertificatePolicyX509CertificatePropertiesToTerraform(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 { extended_key_usage: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.extendedKeyUsage), key_usage: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.keyUsage), subject: cdktf.stringToTerraform(struct.subject), validity_in_months: cdktf.numberToTerraform(struct.validityInMonths), subject_alternative_names: keyVaultCertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesToTerraform(struct.subjectAlternativeNames), }; } exports.keyVaultCertificateCertificatePolicyX509CertificatePropertiesToTerraform = keyVaultCertificateCertificatePolicyX509CertificatePropertiesToTerraform; function keyVaultCertificateCertificatePolicyX509CertificatePropertiesToHclTerraform(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 = { extended_key_usage: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.extendedKeyUsage), isBlock: false, type: "list", storageClassType: "stringList", }, key_usage: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.keyUsage), isBlock: false, type: "set", storageClassType: "stringList", }, subject: { value: cdktf.stringToHclTerraform(struct.subject), isBlock: false, type: "simple", storageClassType: "string", }, validity_in_months: { value: cdktf.numberToHclTerraform(struct.validityInMonths), isBlock: false, type: "simple", storageClassType: "number", }, subject_alternative_names: { value: keyVaultCertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesToHclTerraform(struct.subjectAlternativeNames), isBlock: true, type: "list", storageClassType: "KeyVaultCertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.keyVaultCertificateCertificatePolicyX509CertificatePropertiesToHclTerraform = keyVaultCertificateCertificatePolicyX509CertificatePropertiesToHclTerraform; class KeyVaultCertificateCertificatePolicyX509CertificatePropertiesOutputReference 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; // subject_alternative_names - computed: false, optional: true, required: false this._subjectAlternativeNames = new KeyVaultCertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesOutputReference(this, "subject_alternative_names"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._extendedKeyUsage !== undefined) { hasAnyValues = true; internalValueResult.extendedKeyUsage = this._extendedKeyUsage; } if (this._keyUsage !== undefined) { hasAnyValues = true; internalValueResult.keyUsage = this._keyUsage; } if (this._subject !== undefined) { hasAnyValues = true; internalValueResult.subject = this._subject; } if (this._validityInMonths !== undefined) { hasAnyValues = true; internalValueResult.validityInMonths = this._validityInMonths; } if (this._subjectAlternativeNames?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.subjectAlternativeNames = this._subjectAlternativeNames?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._extendedKeyUsage = undefined; this._keyUsage = undefined; this._subject = undefined; this._validityInMonths = undefined; this._subjectAlternativeNames.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._extendedKeyUsage = value.extendedKeyUsage; this._keyUsage = value.keyUsage; this._subject = value.subject; this._validityInMonths = value.validityInMonths; this._subjectAlternativeNames.internalValue = value.subjectAlternativeNames; } } get extendedKeyUsage() { return this.getListAttribute('extended_key_usage'); } set extendedKeyUsage(value) { this._extendedKeyUsage = value; } resetExtendedKeyUsage() { this._extendedKeyUsage = undefined; } // Temporarily expose input value. Use with caution. get extendedKeyUsageInput() { return this._extendedKeyUsage; } get keyUsage() { return cdktf.Fn.tolist(this.getListAttribute('key_usage')); } set keyUsage(value) { this._keyUsage = value; } // Temporarily expose input value. Use with caution. get keyUsageInput() { return this._keyUsage; } get subject() { return this.getStringAttribute('subject');