UNPKG

@cdktf/provider-aws

Version:

Prebuilt aws Provider for Terraform CDK (cdktf)

983 lines 333 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v; Object.defineProperty(exports, "__esModule", { value: true }); exports.CloudfrontResponseHeadersPolicy = exports.CloudfrontResponseHeadersPolicyServerTimingHeadersConfigOutputReference = exports.CloudfrontResponseHeadersPolicySecurityHeadersConfigOutputReference = exports.CloudfrontResponseHeadersPolicySecurityHeadersConfigXssProtectionOutputReference = exports.CloudfrontResponseHeadersPolicySecurityHeadersConfigStrictTransportSecurityOutputReference = exports.CloudfrontResponseHeadersPolicySecurityHeadersConfigReferrerPolicyOutputReference = exports.CloudfrontResponseHeadersPolicySecurityHeadersConfigFrameOptionsOutputReference = exports.CloudfrontResponseHeadersPolicySecurityHeadersConfigContentTypeOptionsOutputReference = exports.CloudfrontResponseHeadersPolicySecurityHeadersConfigContentSecurityPolicyOutputReference = exports.CloudfrontResponseHeadersPolicyRemoveHeadersConfigOutputReference = exports.CloudfrontResponseHeadersPolicyRemoveHeadersConfigItemsList = exports.CloudfrontResponseHeadersPolicyRemoveHeadersConfigItemsOutputReference = exports.CloudfrontResponseHeadersPolicyCustomHeadersConfigOutputReference = exports.CloudfrontResponseHeadersPolicyCustomHeadersConfigItemsList = exports.CloudfrontResponseHeadersPolicyCustomHeadersConfigItemsOutputReference = exports.CloudfrontResponseHeadersPolicyCorsConfigOutputReference = exports.CloudfrontResponseHeadersPolicyCorsConfigAccessControlExposeHeadersOutputReference = exports.CloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowOriginsOutputReference = exports.CloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowMethodsOutputReference = exports.CloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowHeadersOutputReference = void 0; exports.cloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowHeadersToTerraform = cloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowHeadersToTerraform; exports.cloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowHeadersToHclTerraform = cloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowHeadersToHclTerraform; exports.cloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowMethodsToTerraform = cloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowMethodsToTerraform; exports.cloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowMethodsToHclTerraform = cloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowMethodsToHclTerraform; exports.cloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowOriginsToTerraform = cloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowOriginsToTerraform; exports.cloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowOriginsToHclTerraform = cloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowOriginsToHclTerraform; exports.cloudfrontResponseHeadersPolicyCorsConfigAccessControlExposeHeadersToTerraform = cloudfrontResponseHeadersPolicyCorsConfigAccessControlExposeHeadersToTerraform; exports.cloudfrontResponseHeadersPolicyCorsConfigAccessControlExposeHeadersToHclTerraform = cloudfrontResponseHeadersPolicyCorsConfigAccessControlExposeHeadersToHclTerraform; exports.cloudfrontResponseHeadersPolicyCorsConfigToTerraform = cloudfrontResponseHeadersPolicyCorsConfigToTerraform; exports.cloudfrontResponseHeadersPolicyCorsConfigToHclTerraform = cloudfrontResponseHeadersPolicyCorsConfigToHclTerraform; exports.cloudfrontResponseHeadersPolicyCustomHeadersConfigItemsToTerraform = cloudfrontResponseHeadersPolicyCustomHeadersConfigItemsToTerraform; exports.cloudfrontResponseHeadersPolicyCustomHeadersConfigItemsToHclTerraform = cloudfrontResponseHeadersPolicyCustomHeadersConfigItemsToHclTerraform; exports.cloudfrontResponseHeadersPolicyCustomHeadersConfigToTerraform = cloudfrontResponseHeadersPolicyCustomHeadersConfigToTerraform; exports.cloudfrontResponseHeadersPolicyCustomHeadersConfigToHclTerraform = cloudfrontResponseHeadersPolicyCustomHeadersConfigToHclTerraform; exports.cloudfrontResponseHeadersPolicyRemoveHeadersConfigItemsToTerraform = cloudfrontResponseHeadersPolicyRemoveHeadersConfigItemsToTerraform; exports.cloudfrontResponseHeadersPolicyRemoveHeadersConfigItemsToHclTerraform = cloudfrontResponseHeadersPolicyRemoveHeadersConfigItemsToHclTerraform; exports.cloudfrontResponseHeadersPolicyRemoveHeadersConfigToTerraform = cloudfrontResponseHeadersPolicyRemoveHeadersConfigToTerraform; exports.cloudfrontResponseHeadersPolicyRemoveHeadersConfigToHclTerraform = cloudfrontResponseHeadersPolicyRemoveHeadersConfigToHclTerraform; exports.cloudfrontResponseHeadersPolicySecurityHeadersConfigContentSecurityPolicyToTerraform = cloudfrontResponseHeadersPolicySecurityHeadersConfigContentSecurityPolicyToTerraform; exports.cloudfrontResponseHeadersPolicySecurityHeadersConfigContentSecurityPolicyToHclTerraform = cloudfrontResponseHeadersPolicySecurityHeadersConfigContentSecurityPolicyToHclTerraform; exports.cloudfrontResponseHeadersPolicySecurityHeadersConfigContentTypeOptionsToTerraform = cloudfrontResponseHeadersPolicySecurityHeadersConfigContentTypeOptionsToTerraform; exports.cloudfrontResponseHeadersPolicySecurityHeadersConfigContentTypeOptionsToHclTerraform = cloudfrontResponseHeadersPolicySecurityHeadersConfigContentTypeOptionsToHclTerraform; exports.cloudfrontResponseHeadersPolicySecurityHeadersConfigFrameOptionsToTerraform = cloudfrontResponseHeadersPolicySecurityHeadersConfigFrameOptionsToTerraform; exports.cloudfrontResponseHeadersPolicySecurityHeadersConfigFrameOptionsToHclTerraform = cloudfrontResponseHeadersPolicySecurityHeadersConfigFrameOptionsToHclTerraform; exports.cloudfrontResponseHeadersPolicySecurityHeadersConfigReferrerPolicyToTerraform = cloudfrontResponseHeadersPolicySecurityHeadersConfigReferrerPolicyToTerraform; exports.cloudfrontResponseHeadersPolicySecurityHeadersConfigReferrerPolicyToHclTerraform = cloudfrontResponseHeadersPolicySecurityHeadersConfigReferrerPolicyToHclTerraform; exports.cloudfrontResponseHeadersPolicySecurityHeadersConfigStrictTransportSecurityToTerraform = cloudfrontResponseHeadersPolicySecurityHeadersConfigStrictTransportSecurityToTerraform; exports.cloudfrontResponseHeadersPolicySecurityHeadersConfigStrictTransportSecurityToHclTerraform = cloudfrontResponseHeadersPolicySecurityHeadersConfigStrictTransportSecurityToHclTerraform; exports.cloudfrontResponseHeadersPolicySecurityHeadersConfigXssProtectionToTerraform = cloudfrontResponseHeadersPolicySecurityHeadersConfigXssProtectionToTerraform; exports.cloudfrontResponseHeadersPolicySecurityHeadersConfigXssProtectionToHclTerraform = cloudfrontResponseHeadersPolicySecurityHeadersConfigXssProtectionToHclTerraform; exports.cloudfrontResponseHeadersPolicySecurityHeadersConfigToTerraform = cloudfrontResponseHeadersPolicySecurityHeadersConfigToTerraform; exports.cloudfrontResponseHeadersPolicySecurityHeadersConfigToHclTerraform = cloudfrontResponseHeadersPolicySecurityHeadersConfigToHclTerraform; exports.cloudfrontResponseHeadersPolicyServerTimingHeadersConfigToTerraform = cloudfrontResponseHeadersPolicyServerTimingHeadersConfigToTerraform; exports.cloudfrontResponseHeadersPolicyServerTimingHeadersConfigToHclTerraform = cloudfrontResponseHeadersPolicyServerTimingHeadersConfigToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function cloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowHeadersToTerraform(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 { items: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.items), }; } function cloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowHeadersToHclTerraform(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 = { items: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.items), isBlock: false, type: "set", storageClassType: "stringList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class CloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowHeadersOutputReference 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._items !== undefined) { hasAnyValues = true; internalValueResult.items = this._items; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._items = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._items = value.items; } } get items() { return cdktf.Fn.tolist(this.getListAttribute('items')); } set items(value) { this._items = value; } resetItems() { this._items = undefined; } // Temporarily expose input value. Use with caution. get itemsInput() { return this._items; } } exports.CloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowHeadersOutputReference = CloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowHeadersOutputReference; _a = JSII_RTTI_SYMBOL_1; CloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowHeadersOutputReference[_a] = { fqn: "@cdktf/provider-aws.cloudfrontResponseHeadersPolicy.CloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowHeadersOutputReference", version: "21.22.1" }; function cloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowMethodsToTerraform(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 { items: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.items), }; } function cloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowMethodsToHclTerraform(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 = { items: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.items), isBlock: false, type: "set", storageClassType: "stringList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class CloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowMethodsOutputReference 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._items !== undefined) { hasAnyValues = true; internalValueResult.items = this._items; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._items = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._items = value.items; } } get items() { return cdktf.Fn.tolist(this.getListAttribute('items')); } set items(value) { this._items = value; } resetItems() { this._items = undefined; } // Temporarily expose input value. Use with caution. get itemsInput() { return this._items; } } exports.CloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowMethodsOutputReference = CloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowMethodsOutputReference; _b = JSII_RTTI_SYMBOL_1; CloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowMethodsOutputReference[_b] = { fqn: "@cdktf/provider-aws.cloudfrontResponseHeadersPolicy.CloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowMethodsOutputReference", version: "21.22.1" }; function cloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowOriginsToTerraform(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 { items: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.items), }; } function cloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowOriginsToHclTerraform(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 = { items: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.items), isBlock: false, type: "set", storageClassType: "stringList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class CloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowOriginsOutputReference 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._items !== undefined) { hasAnyValues = true; internalValueResult.items = this._items; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._items = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._items = value.items; } } get items() { return cdktf.Fn.tolist(this.getListAttribute('items')); } set items(value) { this._items = value; } resetItems() { this._items = undefined; } // Temporarily expose input value. Use with caution. get itemsInput() { return this._items; } } exports.CloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowOriginsOutputReference = CloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowOriginsOutputReference; _c = JSII_RTTI_SYMBOL_1; CloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowOriginsOutputReference[_c] = { fqn: "@cdktf/provider-aws.cloudfrontResponseHeadersPolicy.CloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowOriginsOutputReference", version: "21.22.1" }; function cloudfrontResponseHeadersPolicyCorsConfigAccessControlExposeHeadersToTerraform(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 { items: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.items), }; } function cloudfrontResponseHeadersPolicyCorsConfigAccessControlExposeHeadersToHclTerraform(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 = { items: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.items), isBlock: false, type: "set", storageClassType: "stringList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class CloudfrontResponseHeadersPolicyCorsConfigAccessControlExposeHeadersOutputReference 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._items !== undefined) { hasAnyValues = true; internalValueResult.items = this._items; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._items = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._items = value.items; } } get items() { return cdktf.Fn.tolist(this.getListAttribute('items')); } set items(value) { this._items = value; } resetItems() { this._items = undefined; } // Temporarily expose input value. Use with caution. get itemsInput() { return this._items; } } exports.CloudfrontResponseHeadersPolicyCorsConfigAccessControlExposeHeadersOutputReference = CloudfrontResponseHeadersPolicyCorsConfigAccessControlExposeHeadersOutputReference; _d = JSII_RTTI_SYMBOL_1; CloudfrontResponseHeadersPolicyCorsConfigAccessControlExposeHeadersOutputReference[_d] = { fqn: "@cdktf/provider-aws.cloudfrontResponseHeadersPolicy.CloudfrontResponseHeadersPolicyCorsConfigAccessControlExposeHeadersOutputReference", version: "21.22.1" }; function cloudfrontResponseHeadersPolicyCorsConfigToTerraform(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 { access_control_allow_credentials: cdktf.booleanToTerraform(struct.accessControlAllowCredentials), access_control_max_age_sec: cdktf.numberToTerraform(struct.accessControlMaxAgeSec), origin_override: cdktf.booleanToTerraform(struct.originOverride), access_control_allow_headers: cloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowHeadersToTerraform(struct.accessControlAllowHeaders), access_control_allow_methods: cloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowMethodsToTerraform(struct.accessControlAllowMethods), access_control_allow_origins: cloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowOriginsToTerraform(struct.accessControlAllowOrigins), access_control_expose_headers: cloudfrontResponseHeadersPolicyCorsConfigAccessControlExposeHeadersToTerraform(struct.accessControlExposeHeaders), }; } function cloudfrontResponseHeadersPolicyCorsConfigToHclTerraform(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 = { access_control_allow_credentials: { value: cdktf.booleanToHclTerraform(struct.accessControlAllowCredentials), isBlock: false, type: "simple", storageClassType: "boolean", }, access_control_max_age_sec: { value: cdktf.numberToHclTerraform(struct.accessControlMaxAgeSec), isBlock: false, type: "simple", storageClassType: "number", }, origin_override: { value: cdktf.booleanToHclTerraform(struct.originOverride), isBlock: false, type: "simple", storageClassType: "boolean", }, access_control_allow_headers: { value: cloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowHeadersToHclTerraform(struct.accessControlAllowHeaders), isBlock: true, type: "list", storageClassType: "CloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowHeadersList", }, access_control_allow_methods: { value: cloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowMethodsToHclTerraform(struct.accessControlAllowMethods), isBlock: true, type: "list", storageClassType: "CloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowMethodsList", }, access_control_allow_origins: { value: cloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowOriginsToHclTerraform(struct.accessControlAllowOrigins), isBlock: true, type: "list", storageClassType: "CloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowOriginsList", }, access_control_expose_headers: { value: cloudfrontResponseHeadersPolicyCorsConfigAccessControlExposeHeadersToHclTerraform(struct.accessControlExposeHeaders), isBlock: true, type: "list", storageClassType: "CloudfrontResponseHeadersPolicyCorsConfigAccessControlExposeHeadersList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class CloudfrontResponseHeadersPolicyCorsConfigOutputReference 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; // access_control_allow_headers - computed: false, optional: false, required: true this._accessControlAllowHeaders = new CloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowHeadersOutputReference(this, "access_control_allow_headers"); // access_control_allow_methods - computed: false, optional: false, required: true this._accessControlAllowMethods = new CloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowMethodsOutputReference(this, "access_control_allow_methods"); // access_control_allow_origins - computed: false, optional: false, required: true this._accessControlAllowOrigins = new CloudfrontResponseHeadersPolicyCorsConfigAccessControlAllowOriginsOutputReference(this, "access_control_allow_origins"); // access_control_expose_headers - computed: false, optional: true, required: false this._accessControlExposeHeaders = new CloudfrontResponseHeadersPolicyCorsConfigAccessControlExposeHeadersOutputReference(this, "access_control_expose_headers"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._accessControlAllowCredentials !== undefined) { hasAnyValues = true; internalValueResult.accessControlAllowCredentials = this._accessControlAllowCredentials; } if (this._accessControlMaxAgeSec !== undefined) { hasAnyValues = true; internalValueResult.accessControlMaxAgeSec = this._accessControlMaxAgeSec; } if (this._originOverride !== undefined) { hasAnyValues = true; internalValueResult.originOverride = this._originOverride; } if (this._accessControlAllowHeaders?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.accessControlAllowHeaders = this._accessControlAllowHeaders?.internalValue; } if (this._accessControlAllowMethods?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.accessControlAllowMethods = this._accessControlAllowMethods?.internalValue; } if (this._accessControlAllowOrigins?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.accessControlAllowOrigins = this._accessControlAllowOrigins?.internalValue; } if (this._accessControlExposeHeaders?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.accessControlExposeHeaders = this._accessControlExposeHeaders?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._accessControlAllowCredentials = undefined; this._accessControlMaxAgeSec = undefined; this._originOverride = undefined; this._accessControlAllowHeaders.internalValue = undefined; this._accessControlAllowMethods.internalValue = undefined; this._accessControlAllowOrigins.internalValue = undefined; this._accessControlExposeHeaders.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._accessControlAllowCredentials = value.accessControlAllowCredentials; this._accessControlMaxAgeSec = value.accessControlMaxAgeSec; this._originOverride = value.originOverride; this._accessControlAllowHeaders.internalValue = value.accessControlAllowHeaders; this._accessControlAllowMethods.internalValue = value.accessControlAllowMethods; this._accessControlAllowOrigins.internalValue = value.accessControlAllowOrigins; this._accessControlExposeHeaders.internalValue = value.accessControlExposeHeaders; } } get accessControlAllowCredentials() { return this.getBooleanAttribute('access_control_allow_credentials'); } set accessControlAllowCredentials(value) { this._accessControlAllowCredentials = value; } // Temporarily expose input value. Use with caution. get accessControlAllowCredentialsInput() { return this._accessControlAllowCredentials; } get accessControlMaxAgeSec() { return this.getNumberAttribute('access_control_max_age_sec'); } set accessControlMaxAgeSec(value) { this._accessControlMaxAgeSec = value; } resetAccessControlMaxAgeSec() { this._accessControlMaxAgeSec = undefined; } // Temporarily expose input value. Use with caution. get accessControlMaxAgeSecInput() { return this._accessControlMaxAgeSec; } get originOverride() { return this.getBooleanAttribute('origin_override'); } set originOverride(value) { this._originOverride = value; } // Temporarily expose input value. Use with caution. get originOverrideInput() { return this._originOverride; } get accessControlAllowHeaders() { return this._accessControlAllowHeaders; } putAccessControlAllowHeaders(value) { this._accessControlAllowHeaders.internalValue = value; } // Temporarily expose input value. Use with caution. get accessControlAllowHeadersInput() { return this._accessControlAllowHeaders.internalValue; } get accessControlAllowMethods() { return this._accessControlAllowMethods; } putAccessControlAllowMethods(value) { this._accessControlAllowMethods.internalValue = value; } // Temporarily expose input value. Use with caution. get accessControlAllowMethodsInput() { return this._accessControlAllowMethods.internalValue; } get accessControlAllowOrigins() { return this._accessControlAllowOrigins; } putAccessControlAllowOrigins(value) { this._accessControlAllowOrigins.internalValue = value; } // Temporarily expose input value. Use with caution. get accessControlAllowOriginsInput() { return this._accessControlAllowOrigins.internalValue; } get accessControlExposeHeaders() { return this._accessControlExposeHeaders; } putAccessControlExposeHeaders(value) { this._accessControlExposeHeaders.internalValue = value; } resetAccessControlExposeHeaders() { this._accessControlExposeHeaders.internalValue = undefined; } // Temporarily expose input value. Use with caution. get accessControlExposeHeadersInput() { return this._accessControlExposeHeaders.internalValue; } } exports.CloudfrontResponseHeadersPolicyCorsConfigOutputReference = CloudfrontResponseHeadersPolicyCorsConfigOutputReference; _e = JSII_RTTI_SYMBOL_1; CloudfrontResponseHeadersPolicyCorsConfigOutputReference[_e] = { fqn: "@cdktf/provider-aws.cloudfrontResponseHeadersPolicy.CloudfrontResponseHeadersPolicyCorsConfigOutputReference", version: "21.22.1" }; function cloudfrontResponseHeadersPolicyCustomHeadersConfigItemsToTerraform(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: cdktf.stringToTerraform(struct.header), override: cdktf.booleanToTerraform(struct.override), value: cdktf.stringToTerraform(struct.value), }; } function cloudfrontResponseHeadersPolicyCustomHeadersConfigItemsToHclTerraform(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: { value: cdktf.stringToHclTerraform(struct.header), isBlock: false, type: "simple", storageClassType: "string", }, override: { value: cdktf.booleanToHclTerraform(struct.override), isBlock: false, type: "simple", storageClassType: "boolean", }, 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)); } class CloudfrontResponseHeadersPolicyCustomHeadersConfigItemsOutputReference 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._header !== undefined) { hasAnyValues = true; internalValueResult.header = this._header; } if (this._override !== undefined) { hasAnyValues = true; internalValueResult.override = this._override; } 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._header = undefined; this._override = 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._header = value.header; this._override = value.override; this._value = value.value; } } get header() { return this.getStringAttribute('header'); } set header(value) { this._header = value; } // Temporarily expose input value. Use with caution. get headerInput() { return this._header; } get override() { return this.getBooleanAttribute('override'); } set override(value) { this._override = value; } // Temporarily expose input value. Use with caution. get overrideInput() { return this._override; } get value() { return this.getStringAttribute('value'); } set value(value) { this._value = value; } // Temporarily expose input value. Use with caution. get valueInput() { return this._value; } } exports.CloudfrontResponseHeadersPolicyCustomHeadersConfigItemsOutputReference = CloudfrontResponseHeadersPolicyCustomHeadersConfigItemsOutputReference; _f = JSII_RTTI_SYMBOL_1; CloudfrontResponseHeadersPolicyCustomHeadersConfigItemsOutputReference[_f] = { fqn: "@cdktf/provider-aws.cloudfrontResponseHeadersPolicy.CloudfrontResponseHeadersPolicyCustomHeadersConfigItemsOutputReference", version: "21.22.1" }; class CloudfrontResponseHeadersPolicyCustomHeadersConfigItemsList 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 CloudfrontResponseHeadersPolicyCustomHeadersConfigItemsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.CloudfrontResponseHeadersPolicyCustomHeadersConfigItemsList = CloudfrontResponseHeadersPolicyCustomHeadersConfigItemsList; _g = JSII_RTTI_SYMBOL_1; CloudfrontResponseHeadersPolicyCustomHeadersConfigItemsList[_g] = { fqn: "@cdktf/provider-aws.cloudfrontResponseHeadersPolicy.CloudfrontResponseHeadersPolicyCustomHeadersConfigItemsList", version: "21.22.1" }; function cloudfrontResponseHeadersPolicyCustomHeadersConfigToTerraform(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 { items: cdktf.listMapper(cloudfrontResponseHeadersPolicyCustomHeadersConfigItemsToTerraform, true)(struct.items), }; } function cloudfrontResponseHeadersPolicyCustomHeadersConfigToHclTerraform(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 = { items: { value: cdktf.listMapperHcl(cloudfrontResponseHeadersPolicyCustomHeadersConfigItemsToHclTerraform, true)(struct.items), isBlock: true, type: "set", storageClassType: "CloudfrontResponseHeadersPolicyCustomHeadersConfigItemsList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class CloudfrontResponseHeadersPolicyCustomHeadersConfigOutputReference 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; // items - computed: false, optional: true, required: false this._items = new CloudfrontResponseHeadersPolicyCustomHeadersConfigItemsList(this, "items", true); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._items?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.items = this._items?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._items.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._items.internalValue = value.items; } } get items() { return this._items; } putItems(value) { this._items.internalValue = value; } resetItems() { this._items.internalValue = undefined; } // Temporarily expose input value. Use with caution. get itemsInput() { return this._items.internalValue; } } exports.CloudfrontResponseHeadersPolicyCustomHeadersConfigOutputReference = CloudfrontResponseHeadersPolicyCustomHeadersConfigOutputReference; _h = JSII_RTTI_SYMBOL_1; CloudfrontResponseHeadersPolicyCustomHeadersConfigOutputReference[_h] = { fqn: "@cdktf/provider-aws.cloudfrontResponseHeadersPolicy.CloudfrontResponseHeadersPolicyCustomHeadersConfigOutputReference", version: "21.22.1" }; function cloudfrontResponseHeadersPolicyRemoveHeadersConfigItemsToTerraform(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: cdktf.stringToTerraform(struct.header), }; } function cloudfrontResponseHeadersPolicyRemoveHeadersConfigItemsToHclTerraform(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: { value: cdktf.stringToHclTerraform(struct.header), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class CloudfrontResponseHeadersPolicyRemoveHeadersConfigItemsOutputReference 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._header !== undefined) { hasAnyValues = true; internalValueResult.header = this._header; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._header = 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._header = value.header; } } get header() { return this.getStringAttribute('header'); } set header(value) { this._header = value; } // Temporarily expose input value. Use with caution. get headerInput() { return this._header; } } exports.CloudfrontResponseHeadersPolicyRemoveHeadersConfigItemsOutputReference = CloudfrontResponseHeadersPolicyRemoveHeadersConfigItemsOutputReference; _j = JSII_RTTI_SYMBOL_1; CloudfrontResponseHeadersPolicyRemoveHeadersConfigItemsOutputReference[_j] = { fqn: "@cdktf/provider-aws.cloudfrontResponseHeadersPolicy.CloudfrontResponseHeadersPolicyRemoveHeadersConfigItemsOutputReference", version: "21.22.1" }; class CloudfrontResponseHeadersPolicyRemoveHeadersConfigItemsList 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 CloudfrontResponseHeadersPolicyRemoveHeadersConfigItemsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.CloudfrontResponseHeadersPolicyRemoveHeadersConfigItemsList = CloudfrontResponseHeadersPolicyRemoveHeadersConfigItemsList; _k = JSII_RTTI_SYMBOL_1; CloudfrontResponseHeadersPolicyRemoveHeadersConfigItemsList[_k] = { fqn: "@cdktf/provider-aws.cloudfrontResponseHeadersPolicy.CloudfrontResponseHeadersPolicyRemoveHeadersConfigItemsList", version: "21.22.1" }; function cloudfrontResponseHeadersPolicyRemoveHeadersConfigToTerraform(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 { items: cdktf.listMapper(cloudfrontResponseHeadersPolicyRemoveHeadersConfigItemsToTerraform, true)(struct.items), }; } function cloudfrontResponseHeadersPolicyRemoveHeadersConfigToHclTerraform(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 = { items: { value: cdktf.listMapperHcl(cloudfrontResponseHeadersPolicyRemoveHeadersConfigItemsToHclTerraform, true)(struct.items), isBlock: true, type: "set", storageClassType: "CloudfrontResponseHeadersPolicyRemoveHeadersConfigItemsList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class CloudfrontResponseHeadersPolicyRemoveHeadersConfigOutputReference 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; // items - computed: false, optional: true, required: false this._items = new CloudfrontResponseHeadersPolicyRemoveHeadersConfigItemsList(this, "items", true); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._items?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.items = this._items?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._items.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._items.internalValue = value.items; } } get items() { return this._items; } putItems(value) { this._items.internalValue = value; } resetItems() { this._items.internalValue = undefined; } // Temporarily expose input value. Use with caution. get itemsInput() { return this._items.internalValue; } } exports.CloudfrontResponseHeadersPolicyRemoveHeadersConfigOutputReference = CloudfrontResponseHeadersPolicyRemoveHeadersConfigOutputReference; _l = JSII_RTTI_SYMBOL_1; CloudfrontResponseHeadersPolicyRemoveHeadersConfigOutputReference[_l] = { fqn: "@cdktf/provider-aws.cloudfrontResponseHeadersPolicy.CloudfrontResponseHeadersPolicyRemoveHeadersConfigOutputReference", version: "21.22.1" }; function cloudfrontResponseHeadersPolicySecurityHeadersConfigContentSecurityPolicyToTerraform(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_security_policy: cdktf.stringToTerraform(struct.contentSecurityPolicy), override: cdktf.booleanToTerraform(struct.override), }; } function cloudfrontResponseHeadersPolicySecurityHeadersConfigContentSecurityPolicyToHclTerraform(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/co