UNPKG

@cdktf/provider-azurerm

Version:

Prebuilt azurerm Provider for Terraform CDK (cdktf)

1,003 lines 789 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24; Object.defineProperty(exports, "__esModule", { value: true }); exports.cdnFrontdoorRuleConditionsRemoteAddressConditionToHclTerraform = exports.cdnFrontdoorRuleConditionsRemoteAddressConditionToTerraform = exports.CdnFrontdoorRuleConditionsQueryStringConditionList = exports.CdnFrontdoorRuleConditionsQueryStringConditionOutputReference = exports.cdnFrontdoorRuleConditionsQueryStringConditionToHclTerraform = exports.cdnFrontdoorRuleConditionsQueryStringConditionToTerraform = exports.CdnFrontdoorRuleConditionsPostArgsConditionList = exports.CdnFrontdoorRuleConditionsPostArgsConditionOutputReference = exports.cdnFrontdoorRuleConditionsPostArgsConditionToHclTerraform = exports.cdnFrontdoorRuleConditionsPostArgsConditionToTerraform = exports.CdnFrontdoorRuleConditionsIsDeviceConditionList = exports.CdnFrontdoorRuleConditionsIsDeviceConditionOutputReference = exports.cdnFrontdoorRuleConditionsIsDeviceConditionToHclTerraform = exports.cdnFrontdoorRuleConditionsIsDeviceConditionToTerraform = exports.CdnFrontdoorRuleConditionsHttpVersionConditionList = exports.CdnFrontdoorRuleConditionsHttpVersionConditionOutputReference = exports.cdnFrontdoorRuleConditionsHttpVersionConditionToHclTerraform = exports.cdnFrontdoorRuleConditionsHttpVersionConditionToTerraform = exports.CdnFrontdoorRuleConditionsHostNameConditionList = exports.CdnFrontdoorRuleConditionsHostNameConditionOutputReference = exports.cdnFrontdoorRuleConditionsHostNameConditionToHclTerraform = exports.cdnFrontdoorRuleConditionsHostNameConditionToTerraform = exports.CdnFrontdoorRuleConditionsCookiesConditionList = exports.CdnFrontdoorRuleConditionsCookiesConditionOutputReference = exports.cdnFrontdoorRuleConditionsCookiesConditionToHclTerraform = exports.cdnFrontdoorRuleConditionsCookiesConditionToTerraform = exports.CdnFrontdoorRuleConditionsClientPortConditionList = exports.CdnFrontdoorRuleConditionsClientPortConditionOutputReference = exports.cdnFrontdoorRuleConditionsClientPortConditionToHclTerraform = exports.cdnFrontdoorRuleConditionsClientPortConditionToTerraform = exports.CdnFrontdoorRuleActionsOutputReference = exports.cdnFrontdoorRuleActionsToHclTerraform = exports.cdnFrontdoorRuleActionsToTerraform = exports.CdnFrontdoorRuleActionsUrlRewriteActionOutputReference = exports.cdnFrontdoorRuleActionsUrlRewriteActionToHclTerraform = exports.cdnFrontdoorRuleActionsUrlRewriteActionToTerraform = exports.CdnFrontdoorRuleActionsUrlRedirectActionOutputReference = exports.cdnFrontdoorRuleActionsUrlRedirectActionToHclTerraform = exports.cdnFrontdoorRuleActionsUrlRedirectActionToTerraform = exports.CdnFrontdoorRuleActionsRouteConfigurationOverrideActionOutputReference = exports.cdnFrontdoorRuleActionsRouteConfigurationOverrideActionToHclTerraform = exports.cdnFrontdoorRuleActionsRouteConfigurationOverrideActionToTerraform = exports.CdnFrontdoorRuleActionsResponseHeaderActionList = exports.CdnFrontdoorRuleActionsResponseHeaderActionOutputReference = exports.cdnFrontdoorRuleActionsResponseHeaderActionToHclTerraform = exports.cdnFrontdoorRuleActionsResponseHeaderActionToTerraform = exports.CdnFrontdoorRuleActionsRequestHeaderActionList = exports.CdnFrontdoorRuleActionsRequestHeaderActionOutputReference = exports.cdnFrontdoorRuleActionsRequestHeaderActionToHclTerraform = exports.cdnFrontdoorRuleActionsRequestHeaderActionToTerraform = void 0; exports.cdnFrontdoorRuleTimeoutsToTerraform = exports.CdnFrontdoorRuleConditionsOutputReference = exports.cdnFrontdoorRuleConditionsToHclTerraform = exports.cdnFrontdoorRuleConditionsToTerraform = exports.CdnFrontdoorRuleConditionsUrlPathConditionList = exports.CdnFrontdoorRuleConditionsUrlPathConditionOutputReference = exports.cdnFrontdoorRuleConditionsUrlPathConditionToHclTerraform = exports.cdnFrontdoorRuleConditionsUrlPathConditionToTerraform = exports.CdnFrontdoorRuleConditionsUrlFilenameConditionList = exports.CdnFrontdoorRuleConditionsUrlFilenameConditionOutputReference = exports.cdnFrontdoorRuleConditionsUrlFilenameConditionToHclTerraform = exports.cdnFrontdoorRuleConditionsUrlFilenameConditionToTerraform = exports.CdnFrontdoorRuleConditionsUrlFileExtensionConditionList = exports.CdnFrontdoorRuleConditionsUrlFileExtensionConditionOutputReference = exports.cdnFrontdoorRuleConditionsUrlFileExtensionConditionToHclTerraform = exports.cdnFrontdoorRuleConditionsUrlFileExtensionConditionToTerraform = exports.CdnFrontdoorRuleConditionsSslProtocolConditionList = exports.CdnFrontdoorRuleConditionsSslProtocolConditionOutputReference = exports.cdnFrontdoorRuleConditionsSslProtocolConditionToHclTerraform = exports.cdnFrontdoorRuleConditionsSslProtocolConditionToTerraform = exports.CdnFrontdoorRuleConditionsSocketAddressConditionList = exports.CdnFrontdoorRuleConditionsSocketAddressConditionOutputReference = exports.cdnFrontdoorRuleConditionsSocketAddressConditionToHclTerraform = exports.cdnFrontdoorRuleConditionsSocketAddressConditionToTerraform = exports.CdnFrontdoorRuleConditionsServerPortConditionList = exports.CdnFrontdoorRuleConditionsServerPortConditionOutputReference = exports.cdnFrontdoorRuleConditionsServerPortConditionToHclTerraform = exports.cdnFrontdoorRuleConditionsServerPortConditionToTerraform = exports.CdnFrontdoorRuleConditionsRequestUriConditionList = exports.CdnFrontdoorRuleConditionsRequestUriConditionOutputReference = exports.cdnFrontdoorRuleConditionsRequestUriConditionToHclTerraform = exports.cdnFrontdoorRuleConditionsRequestUriConditionToTerraform = exports.CdnFrontdoorRuleConditionsRequestSchemeConditionList = exports.CdnFrontdoorRuleConditionsRequestSchemeConditionOutputReference = exports.cdnFrontdoorRuleConditionsRequestSchemeConditionToHclTerraform = exports.cdnFrontdoorRuleConditionsRequestSchemeConditionToTerraform = exports.CdnFrontdoorRuleConditionsRequestMethodConditionList = exports.CdnFrontdoorRuleConditionsRequestMethodConditionOutputReference = exports.cdnFrontdoorRuleConditionsRequestMethodConditionToHclTerraform = exports.cdnFrontdoorRuleConditionsRequestMethodConditionToTerraform = exports.CdnFrontdoorRuleConditionsRequestHeaderConditionList = exports.CdnFrontdoorRuleConditionsRequestHeaderConditionOutputReference = exports.cdnFrontdoorRuleConditionsRequestHeaderConditionToHclTerraform = exports.cdnFrontdoorRuleConditionsRequestHeaderConditionToTerraform = exports.CdnFrontdoorRuleConditionsRequestBodyConditionList = exports.CdnFrontdoorRuleConditionsRequestBodyConditionOutputReference = exports.cdnFrontdoorRuleConditionsRequestBodyConditionToHclTerraform = exports.cdnFrontdoorRuleConditionsRequestBodyConditionToTerraform = exports.CdnFrontdoorRuleConditionsRemoteAddressConditionList = exports.CdnFrontdoorRuleConditionsRemoteAddressConditionOutputReference = void 0; exports.CdnFrontdoorRule = exports.CdnFrontdoorRuleTimeoutsOutputReference = exports.cdnFrontdoorRuleTimeoutsToHclTerraform = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function cdnFrontdoorRuleActionsRequestHeaderActionToTerraform(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 { header_action: cdktf.stringToTerraform(struct.headerAction), header_name: cdktf.stringToTerraform(struct.headerName), value: cdktf.stringToTerraform(struct.value), }; } exports.cdnFrontdoorRuleActionsRequestHeaderActionToTerraform = cdnFrontdoorRuleActionsRequestHeaderActionToTerraform; function cdnFrontdoorRuleActionsRequestHeaderActionToHclTerraform(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 = { header_action: { value: cdktf.stringToHclTerraform(struct.headerAction), isBlock: false, type: "simple", storageClassType: "string", }, header_name: { value: cdktf.stringToHclTerraform(struct.headerName), isBlock: false, type: "simple", storageClassType: "string", }, value: { value: cdktf.stringToHclTerraform(struct.value), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.cdnFrontdoorRuleActionsRequestHeaderActionToHclTerraform = cdnFrontdoorRuleActionsRequestHeaderActionToHclTerraform; class CdnFrontdoorRuleActionsRequestHeaderActionOutputReference extends cdktf.ComplexObject { /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) { super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); this.isEmptyObject = false; } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._headerAction !== undefined) { hasAnyValues = true; internalValueResult.headerAction = this._headerAction; } if (this._headerName !== undefined) { hasAnyValues = true; internalValueResult.headerName = this._headerName; } if (this._value !== undefined) { hasAnyValues = true; internalValueResult.value = this._value; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._headerAction = undefined; this._headerName = undefined; this._value = 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._headerAction = value.headerAction; this._headerName = value.headerName; this._value = value.value; } } get headerAction() { return this.getStringAttribute('header_action'); } set headerAction(value) { this._headerAction = value; } // Temporarily expose input value. Use with caution. get headerActionInput() { return this._headerAction; } get headerName() { return this.getStringAttribute('header_name'); } set headerName(value) { this._headerName = value; } // Temporarily expose input value. Use with caution. get headerNameInput() { return this._headerName; } get value() { return this.getStringAttribute('value'); } set value(value) { this._value = value; } resetValue() { this._value = undefined; } // Temporarily expose input value. Use with caution. get valueInput() { return this._value; } } exports.CdnFrontdoorRuleActionsRequestHeaderActionOutputReference = CdnFrontdoorRuleActionsRequestHeaderActionOutputReference; _a = JSII_RTTI_SYMBOL_1; CdnFrontdoorRuleActionsRequestHeaderActionOutputReference[_a] = { fqn: "@cdktf/provider-azurerm.cdnFrontdoorRule.CdnFrontdoorRuleActionsRequestHeaderActionOutputReference", version: "12.27.0" }; class CdnFrontdoorRuleActionsRequestHeaderActionList 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 CdnFrontdoorRuleActionsRequestHeaderActionOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.CdnFrontdoorRuleActionsRequestHeaderActionList = CdnFrontdoorRuleActionsRequestHeaderActionList; _b = JSII_RTTI_SYMBOL_1; CdnFrontdoorRuleActionsRequestHeaderActionList[_b] = { fqn: "@cdktf/provider-azurerm.cdnFrontdoorRule.CdnFrontdoorRuleActionsRequestHeaderActionList", version: "12.27.0" }; function cdnFrontdoorRuleActionsResponseHeaderActionToTerraform(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 { header_action: cdktf.stringToTerraform(struct.headerAction), header_name: cdktf.stringToTerraform(struct.headerName), value: cdktf.stringToTerraform(struct.value), }; } exports.cdnFrontdoorRuleActionsResponseHeaderActionToTerraform = cdnFrontdoorRuleActionsResponseHeaderActionToTerraform; function cdnFrontdoorRuleActionsResponseHeaderActionToHclTerraform(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 = { header_action: { value: cdktf.stringToHclTerraform(struct.headerAction), isBlock: false, type: "simple", storageClassType: "string", }, header_name: { value: cdktf.stringToHclTerraform(struct.headerName), isBlock: false, type: "simple", storageClassType: "string", }, value: { value: cdktf.stringToHclTerraform(struct.value), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.cdnFrontdoorRuleActionsResponseHeaderActionToHclTerraform = cdnFrontdoorRuleActionsResponseHeaderActionToHclTerraform; class CdnFrontdoorRuleActionsResponseHeaderActionOutputReference extends cdktf.ComplexObject { /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) { super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); this.isEmptyObject = false; } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._headerAction !== undefined) { hasAnyValues = true; internalValueResult.headerAction = this._headerAction; } if (this._headerName !== undefined) { hasAnyValues = true; internalValueResult.headerName = this._headerName; } if (this._value !== undefined) { hasAnyValues = true; internalValueResult.value = this._value; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._headerAction = undefined; this._headerName = undefined; this._value = 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._headerAction = value.headerAction; this._headerName = value.headerName; this._value = value.value; } } get headerAction() { return this.getStringAttribute('header_action'); } set headerAction(value) { this._headerAction = value; } // Temporarily expose input value. Use with caution. get headerActionInput() { return this._headerAction; } get headerName() { return this.getStringAttribute('header_name'); } set headerName(value) { this._headerName = value; } // Temporarily expose input value. Use with caution. get headerNameInput() { return this._headerName; } get value() { return this.getStringAttribute('value'); } set value(value) { this._value = value; } resetValue() { this._value = undefined; } // Temporarily expose input value. Use with caution. get valueInput() { return this._value; } } exports.CdnFrontdoorRuleActionsResponseHeaderActionOutputReference = CdnFrontdoorRuleActionsResponseHeaderActionOutputReference; _c = JSII_RTTI_SYMBOL_1; CdnFrontdoorRuleActionsResponseHeaderActionOutputReference[_c] = { fqn: "@cdktf/provider-azurerm.cdnFrontdoorRule.CdnFrontdoorRuleActionsResponseHeaderActionOutputReference", version: "12.27.0" }; class CdnFrontdoorRuleActionsResponseHeaderActionList 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 CdnFrontdoorRuleActionsResponseHeaderActionOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.CdnFrontdoorRuleActionsResponseHeaderActionList = CdnFrontdoorRuleActionsResponseHeaderActionList; _d = JSII_RTTI_SYMBOL_1; CdnFrontdoorRuleActionsResponseHeaderActionList[_d] = { fqn: "@cdktf/provider-azurerm.cdnFrontdoorRule.CdnFrontdoorRuleActionsResponseHeaderActionList", version: "12.27.0" }; function cdnFrontdoorRuleActionsRouteConfigurationOverrideActionToTerraform(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 { cache_behavior: cdktf.stringToTerraform(struct.cacheBehavior), cache_duration: cdktf.stringToTerraform(struct.cacheDuration), cdn_frontdoor_origin_group_id: cdktf.stringToTerraform(struct.cdnFrontdoorOriginGroupId), compression_enabled: cdktf.booleanToTerraform(struct.compressionEnabled), forwarding_protocol: cdktf.stringToTerraform(struct.forwardingProtocol), query_string_caching_behavior: cdktf.stringToTerraform(struct.queryStringCachingBehavior), query_string_parameters: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.queryStringParameters), }; } exports.cdnFrontdoorRuleActionsRouteConfigurationOverrideActionToTerraform = cdnFrontdoorRuleActionsRouteConfigurationOverrideActionToTerraform; function cdnFrontdoorRuleActionsRouteConfigurationOverrideActionToHclTerraform(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 = { cache_behavior: { value: cdktf.stringToHclTerraform(struct.cacheBehavior), isBlock: false, type: "simple", storageClassType: "string", }, cache_duration: { value: cdktf.stringToHclTerraform(struct.cacheDuration), isBlock: false, type: "simple", storageClassType: "string", }, cdn_frontdoor_origin_group_id: { value: cdktf.stringToHclTerraform(struct.cdnFrontdoorOriginGroupId), isBlock: false, type: "simple", storageClassType: "string", }, compression_enabled: { value: cdktf.booleanToHclTerraform(struct.compressionEnabled), isBlock: false, type: "simple", storageClassType: "boolean", }, forwarding_protocol: { value: cdktf.stringToHclTerraform(struct.forwardingProtocol), isBlock: false, type: "simple", storageClassType: "string", }, query_string_caching_behavior: { value: cdktf.stringToHclTerraform(struct.queryStringCachingBehavior), isBlock: false, type: "simple", storageClassType: "string", }, query_string_parameters: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.queryStringParameters), isBlock: false, type: "list", storageClassType: "stringList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.cdnFrontdoorRuleActionsRouteConfigurationOverrideActionToHclTerraform = cdnFrontdoorRuleActionsRouteConfigurationOverrideActionToHclTerraform; class CdnFrontdoorRuleActionsRouteConfigurationOverrideActionOutputReference 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._cacheBehavior !== undefined) { hasAnyValues = true; internalValueResult.cacheBehavior = this._cacheBehavior; } if (this._cacheDuration !== undefined) { hasAnyValues = true; internalValueResult.cacheDuration = this._cacheDuration; } if (this._cdnFrontdoorOriginGroupId !== undefined) { hasAnyValues = true; internalValueResult.cdnFrontdoorOriginGroupId = this._cdnFrontdoorOriginGroupId; } if (this._compressionEnabled !== undefined) { hasAnyValues = true; internalValueResult.compressionEnabled = this._compressionEnabled; } if (this._forwardingProtocol !== undefined) { hasAnyValues = true; internalValueResult.forwardingProtocol = this._forwardingProtocol; } if (this._queryStringCachingBehavior !== undefined) { hasAnyValues = true; internalValueResult.queryStringCachingBehavior = this._queryStringCachingBehavior; } if (this._queryStringParameters !== undefined) { hasAnyValues = true; internalValueResult.queryStringParameters = this._queryStringParameters; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._cacheBehavior = undefined; this._cacheDuration = undefined; this._cdnFrontdoorOriginGroupId = undefined; this._compressionEnabled = undefined; this._forwardingProtocol = undefined; this._queryStringCachingBehavior = undefined; this._queryStringParameters = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._cacheBehavior = value.cacheBehavior; this._cacheDuration = value.cacheDuration; this._cdnFrontdoorOriginGroupId = value.cdnFrontdoorOriginGroupId; this._compressionEnabled = value.compressionEnabled; this._forwardingProtocol = value.forwardingProtocol; this._queryStringCachingBehavior = value.queryStringCachingBehavior; this._queryStringParameters = value.queryStringParameters; } } get cacheBehavior() { return this.getStringAttribute('cache_behavior'); } set cacheBehavior(value) { this._cacheBehavior = value; } resetCacheBehavior() { this._cacheBehavior = undefined; } // Temporarily expose input value. Use with caution. get cacheBehaviorInput() { return this._cacheBehavior; } get cacheDuration() { return this.getStringAttribute('cache_duration'); } set cacheDuration(value) { this._cacheDuration = value; } resetCacheDuration() { this._cacheDuration = undefined; } // Temporarily expose input value. Use with caution. get cacheDurationInput() { return this._cacheDuration; } get cdnFrontdoorOriginGroupId() { return this.getStringAttribute('cdn_frontdoor_origin_group_id'); } set cdnFrontdoorOriginGroupId(value) { this._cdnFrontdoorOriginGroupId = value; } resetCdnFrontdoorOriginGroupId() { this._cdnFrontdoorOriginGroupId = undefined; } // Temporarily expose input value. Use with caution. get cdnFrontdoorOriginGroupIdInput() { return this._cdnFrontdoorOriginGroupId; } get compressionEnabled() { return this.getBooleanAttribute('compression_enabled'); } set compressionEnabled(value) { this._compressionEnabled = value; } resetCompressionEnabled() { this._compressionEnabled = undefined; } // Temporarily expose input value. Use with caution. get compressionEnabledInput() { return this._compressionEnabled; } get forwardingProtocol() { return this.getStringAttribute('forwarding_protocol'); } set forwardingProtocol(value) { this._forwardingProtocol = value; } resetForwardingProtocol() { this._forwardingProtocol = undefined; } // Temporarily expose input value. Use with caution. get forwardingProtocolInput() { return this._forwardingProtocol; } get queryStringCachingBehavior() { return this.getStringAttribute('query_string_caching_behavior'); } set queryStringCachingBehavior(value) { this._queryStringCachingBehavior = value; } resetQueryStringCachingBehavior() { this._queryStringCachingBehavior = undefined; } // Temporarily expose input value. Use with caution. get queryStringCachingBehaviorInput() { return this._queryStringCachingBehavior; } get queryStringParameters() { return this.getListAttribute('query_string_parameters'); } set queryStringParameters(value) { this._queryStringParameters = value; } resetQueryStringParameters() { this._queryStringParameters = undefined; } // Temporarily expose input value. Use with caution. get queryStringParametersInput() { return this._queryStringParameters; } } exports.CdnFrontdoorRuleActionsRouteConfigurationOverrideActionOutputReference = CdnFrontdoorRuleActionsRouteConfigurationOverrideActionOutputReference; _e = JSII_RTTI_SYMBOL_1; CdnFrontdoorRuleActionsRouteConfigurationOverrideActionOutputReference[_e] = { fqn: "@cdktf/provider-azurerm.cdnFrontdoorRule.CdnFrontdoorRuleActionsRouteConfigurationOverrideActionOutputReference", version: "12.27.0" }; function cdnFrontdoorRuleActionsUrlRedirectActionToTerraform(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 { destination_fragment: cdktf.stringToTerraform(struct.destinationFragment), destination_hostname: cdktf.stringToTerraform(struct.destinationHostname), destination_path: cdktf.stringToTerraform(struct.destinationPath), query_string: cdktf.stringToTerraform(struct.queryString), redirect_protocol: cdktf.stringToTerraform(struct.redirectProtocol), redirect_type: cdktf.stringToTerraform(struct.redirectType), }; } exports.cdnFrontdoorRuleActionsUrlRedirectActionToTerraform = cdnFrontdoorRuleActionsUrlRedirectActionToTerraform; function cdnFrontdoorRuleActionsUrlRedirectActionToHclTerraform(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 = { destination_fragment: { value: cdktf.stringToHclTerraform(struct.destinationFragment), isBlock: false, type: "simple", storageClassType: "string", }, destination_hostname: { value: cdktf.stringToHclTerraform(struct.destinationHostname), isBlock: false, type: "simple", storageClassType: "string", }, destination_path: { value: cdktf.stringToHclTerraform(struct.destinationPath), isBlock: false, type: "simple", storageClassType: "string", }, query_string: { value: cdktf.stringToHclTerraform(struct.queryString), isBlock: false, type: "simple", storageClassType: "string", }, redirect_protocol: { value: cdktf.stringToHclTerraform(struct.redirectProtocol), isBlock: false, type: "simple", storageClassType: "string", }, redirect_type: { value: cdktf.stringToHclTerraform(struct.redirectType), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.cdnFrontdoorRuleActionsUrlRedirectActionToHclTerraform = cdnFrontdoorRuleActionsUrlRedirectActionToHclTerraform; class CdnFrontdoorRuleActionsUrlRedirectActionOutputReference 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._destinationFragment !== undefined) { hasAnyValues = true; internalValueResult.destinationFragment = this._destinationFragment; } if (this._destinationHostname !== undefined) { hasAnyValues = true; internalValueResult.destinationHostname = this._destinationHostname; } if (this._destinationPath !== undefined) { hasAnyValues = true; internalValueResult.destinationPath = this._destinationPath; } if (this._queryString !== undefined) { hasAnyValues = true; internalValueResult.queryString = this._queryString; } if (this._redirectProtocol !== undefined) { hasAnyValues = true; internalValueResult.redirectProtocol = this._redirectProtocol; } if (this._redirectType !== undefined) { hasAnyValues = true; internalValueResult.redirectType = this._redirectType; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._destinationFragment = undefined; this._destinationHostname = undefined; this._destinationPath = undefined; this._queryString = undefined; this._redirectProtocol = undefined; this._redirectType = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._destinationFragment = value.destinationFragment; this._destinationHostname = value.destinationHostname; this._destinationPath = value.destinationPath; this._queryString = value.queryString; this._redirectProtocol = value.redirectProtocol; this._redirectType = value.redirectType; } } get destinationFragment() { return this.getStringAttribute('destination_fragment'); } set destinationFragment(value) { this._destinationFragment = value; } resetDestinationFragment() { this._destinationFragment = undefined; } // Temporarily expose input value. Use with caution. get destinationFragmentInput() { return this._destinationFragment; } get destinationHostname() { return this.getStringAttribute('destination_hostname'); } set destinationHostname(value) { this._destinationHostname = value; } // Temporarily expose input value. Use with caution. get destinationHostnameInput() { return this._destinationHostname; } get destinationPath() { return this.getStringAttribute('destination_path'); } set destinationPath(value) { this._destinationPath = value; } resetDestinationPath() { this._destinationPath = undefined; } // Temporarily expose input value. Use with caution. get destinationPathInput() { return this._destinationPath; } get queryString() { return this.getStringAttribute('query_string'); } set queryString(value) { this._queryString = value; } resetQueryString() { this._queryString = undefined; } // Temporarily expose input value. Use with caution. get queryStringInput() { return this._queryString; } get redirectProtocol() { return this.getStringAttribute('redirect_protocol'); } set redirectProtocol(value) { this._redirectProtocol = value; } resetRedirectProtocol() { this._redirectProtocol = undefined; } // Temporarily expose input value. Use with caution. get redirectProtocolInput() { return this._redirectProtocol; } get redirectType() { return this.getStringAttribute('redirect_type'); } set redirectType(value) { this._redirectType = value; } // Temporarily expose input value. Use with caution. get redirectTypeInput() { return this._redirectType; } } exports.CdnFrontdoorRuleActionsUrlRedirectActionOutputReference = CdnFrontdoorRuleActionsUrlRedirectActionOutputReference; _f = JSII_RTTI_SYMBOL_1; CdnFrontdoorRuleActionsUrlRedirectActionOutputReference[_f] = { fqn: "@cdktf/provider-azurerm.cdnFrontdoorRule.CdnFrontdoorRuleActionsUrlRedirectActionOutputReference", version: "12.27.0" }; function cdnFrontdoorRuleActionsUrlRewriteActionToTerraform(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 { destination: cdktf.stringToTerraform(struct.destination), preserve_unmatched_path: cdktf.booleanToTerraform(struct.preserveUnmatchedPath), source_pattern: cdktf.stringToTerraform(struct.sourcePattern), }; } exports.cdnFrontdoorRuleActionsUrlRewriteActionToTerraform = cdnFrontdoorRuleActionsUrlRewriteActionToTerraform; function cdnFrontdoorRuleActionsUrlRewriteActionToHclTerraform(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 = { destination: { value: cdktf.stringToHclTerraform(struct.destination), isBlock: false, type: "simple", storageClassType: "string", }, preserve_unmatched_path: { value: cdktf.booleanToHclTerraform(struct.preserveUnmatchedPath), isBlock: false, type: "simple", storageClassType: "boolean", }, source_pattern: { value: cdktf.stringToHclTerraform(struct.sourcePattern), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.cdnFrontdoorRuleActionsUrlRewriteActionToHclTerraform = cdnFrontdoorRuleActionsUrlRewriteActionToHclTerraform; class CdnFrontdoorRuleActionsUrlRewriteActionOutputReference 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._destination !== undefined) { hasAnyValues = true; internalValueResult.destination = this._destination; } if (this._preserveUnmatchedPath !== undefined) { hasAnyValues = true; internalValueResult.preserveUnmatchedPath = this._preserveUnmatchedPath; } if (this._sourcePattern !== undefined) { hasAnyValues = true; internalValueResult.sourcePattern = this._sourcePattern; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._destination = undefined; this._preserveUnmatchedPath = undefined; this._sourcePattern = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._destination = value.destination; this._preserveUnmatchedPath = value.preserveUnmatchedPath; this._sourcePattern = value.sourcePattern; } } get destination() { return this.getStringAttribute('destination'); } set destination(value) { this._destination = value; } // Temporarily expose input value. Use with caution. get destinationInput() { return this._destination; } get preserveUnmatchedPath() { return this.getBooleanAttribute('preserve_unmatched_path'); } set preserveUnmatchedPath(value) { this._preserveUnmatchedPath = value; } resetPreserveUnmatchedPath() { this._preserveUnmatchedPath = undefined; } // Temporarily expose input value. Use with caution. get preserveUnmatchedPathInput() { return this._preserveUnmatchedPath; } get sourcePattern() { return this.getStringAttribute('source_pattern'); } set sourcePattern(value) { this._sourcePattern = value; } // Temporarily expose input value. Use with caution. get sourcePatternInput() { return this._sourcePattern; } } exports.CdnFrontdoorRuleActionsUrlRewriteActionOutputReference = CdnFrontdoorRuleActionsUrlRewriteActionOutputReference; _g = JSII_RTTI_SYMBOL_1; CdnFrontdoorRuleActionsUrlRewriteActionOutputReference[_g] = { fqn: "@cdktf/provider-azurerm.cdnFrontdoorRule.CdnFrontdoorRuleActionsUrlRewriteActionOutputReference", version: "12.27.0" }; function cdnFrontdoorRuleActionsToTerraform(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 { request_header_action: cdktf.listMapper(cdnFrontdoorRuleActionsRequestHeaderActionToTerraform, true)(struct.requestHeaderAction), response_header_action: cdktf.listMapper(cdnFrontdoorRuleActionsResponseHeaderActionToTerraform, true)(struct.responseHeaderAction), route_configuration_override_action: cdnFrontdoorRuleActionsRouteConfigurationOverrideActionToTerraform(struct.routeConfigurationOverrideAction), url_redirect_action: cdnFrontdoorRuleActionsUrlRedirectActionToTerraform(struct.urlRedirectAction), url_rewrite_action: cdnFrontdoorRuleActionsUrlRewriteActionToTerraform(struct.urlRewriteAction), }; } exports.cdnFrontdoorRuleActionsToTerraform = cdnFrontdoorRuleActionsToTerraform; function cdnFrontdoorRuleActionsToHclTerraform(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 = { request_header_action: { value: cdktf.listMapperHcl(cdnFrontdoorRuleActionsRequestHeaderActionToHclTerraform, true)(struct.requestHeaderAction), isBlock: true, type: "list", storageClassType: "CdnFrontdoorRuleActionsRequestHeaderActionList", }, response_header_action: { value: cdktf.listMapperHcl(cdnFrontdoorRuleActionsResponseHeaderActionToHclTerraform, true)(struct.responseHeaderAction), isBlock: true, type: "list", storageClassType: "CdnFrontdoorRuleActionsResponseHeaderActionList", }, route_configuration_override_action: { value: cdnFrontdoorRuleActionsRouteConfigurationOverrideActionToHclTerraform(struct.routeConfigurationOverrideAction), isBlock: true, type: "list", storageClassType: "CdnFrontdoorRuleActionsRouteConfigurationOverrideActionList", }, url_redirect_action: { value: cdnFrontdoorRuleActionsUrlRedirectActionToHclTerraform(struct.urlRedirectAction), isBlock: true, type: "list", storageClassType: "CdnFrontdoorRuleActionsUrlRedirectActionList", }, url_rewrite_action: { value: cdnFrontdoorRuleActionsUrlRewriteActionToHclTerraform(struct.urlRewriteAction), isBlock: true, type: "list", storageClassType: "CdnFrontdoorRuleActionsUrlRewriteActionList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.cdnFrontdoorRuleActionsToHclTerraform = cdnFrontdoorRuleActionsToHclTerraform; class CdnFrontdoorRuleActionsOutputReference 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; // request_header_action - computed: false, optional: true, required: false this._requestHeaderAction = new CdnFrontdoorRuleActionsRequestHeaderActionList(this, "request_header_action", false); // response_header_action - computed: false, optional: true, required: false this._responseHeaderAction = new CdnFrontdoorRuleActionsResponseHeaderActionList(this, "response_header_action", false); // route_configuration_override_action - computed: false, optional: true, required: false this._routeConfigurationOverrideAction = new CdnFrontdoorRuleActionsRouteConfigurationOverrideActionOutputReference(this, "route_configuration_override_action"); // url_redirect_action - computed: false, optional: true, required: false this._urlRedirectAction = new CdnFrontdoorRuleActionsUrlRedirectActionOutputReference(this, "url_redirect_action"); // url_rewrite_action - computed: false, optional: true, required: false this._urlRewriteAction = new CdnFrontdoorRuleActionsUrlRewriteActionOutputReference(this, "url_rewrite_action"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._requestHeaderAction?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.requestHeaderAction = this._requestHeaderAction?.internalValue; } if (this._responseHeaderAction?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.responseHeaderAction = this._responseHeaderAction?.internalValue; } if (this._routeConfigurationOverrideAction?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.routeConfigurationOverrideAction = this._routeConfigurationOverrideAction?.internalValue; } if (this._urlRedirectAction?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.urlRedirectAction = this._urlRedirectAction?.internalValue; } if (this._urlRewriteAction?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.urlRewriteAction = this._urlRewriteAction?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._requestHeaderAction.internalValue = undefined; this._responseHeaderAction.internalValue = undefined; this._routeConfigurationOverrideAction.internalValue = undefined; this._urlRedirectAction.internalValue = undefined; this._urlRewriteAction.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._requestHeaderAction.internalValue = value.requestHeaderAction; this._responseHeaderAction.internalValue = value.responseHeaderAction; this._routeConfigurationOverrideAction.internalValue = value.routeConfigurationOverrideAction; this._urlRedirectAction.internalValue = value.urlRedirectAction; this._urlRewriteAction.internalValue = value.urlRewriteAction; } } get requestHeaderAction() { return this._requestHeaderAction; } putRequestHeaderAction(value) { this._requestHeaderAction.internalValue = value; } resetRequestHeaderAction() { this._requestHeaderAction.internalValue = undefined; } // Temporarily expose input value. Use with c