UNPKG

@cdktf/provider-aws

Version:

Prebuilt aws Provider for Terraform CDK (cdktf)

937 lines 144 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h; Object.defineProperty(exports, "__esModule", { value: true }); exports.CloudfrontCachePolicy = exports.CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginOutputReference = exports.CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigOutputReference = exports.CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigQueryStringsOutputReference = exports.CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigOutputReference = exports.CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigHeadersOutputReference = exports.CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigOutputReference = exports.CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigCookiesOutputReference = void 0; exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigCookiesToTerraform = cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigCookiesToTerraform; exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigCookiesToHclTerraform = cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigCookiesToHclTerraform; exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigToTerraform = cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigToTerraform; exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigToHclTerraform = cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigToHclTerraform; exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigHeadersToTerraform = cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigHeadersToTerraform; exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigHeadersToHclTerraform = cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigHeadersToHclTerraform; exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigToTerraform = cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigToTerraform; exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigToHclTerraform = cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigToHclTerraform; exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigQueryStringsToTerraform = cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigQueryStringsToTerraform; exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigQueryStringsToHclTerraform = cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigQueryStringsToHclTerraform; exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigToTerraform = cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigToTerraform; exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigToHclTerraform = cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigToHclTerraform; exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginToTerraform = cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginToTerraform; exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginToHclTerraform = cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigCookiesToTerraform(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 cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigCookiesToHclTerraform(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 CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigCookiesOutputReference 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.CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigCookiesOutputReference = CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigCookiesOutputReference; _a = JSII_RTTI_SYMBOL_1; CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigCookiesOutputReference[_a] = { fqn: "@cdktf/provider-aws.cloudfrontCachePolicy.CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigCookiesOutputReference", version: "21.22.1" }; function cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigToTerraform(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 { cookie_behavior: cdktf.stringToTerraform(struct.cookieBehavior), cookies: cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigCookiesToTerraform(struct.cookies), }; } function cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigToHclTerraform(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 = { cookie_behavior: { value: cdktf.stringToHclTerraform(struct.cookieBehavior), isBlock: false, type: "simple", storageClassType: "string", }, cookies: { value: cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigCookiesToHclTerraform(struct.cookies), isBlock: true, type: "list", storageClassType: "CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigCookiesList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigOutputReference 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; // cookies - computed: false, optional: true, required: false this._cookies = new CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigCookiesOutputReference(this, "cookies"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._cookieBehavior !== undefined) { hasAnyValues = true; internalValueResult.cookieBehavior = this._cookieBehavior; } if (this._cookies?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.cookies = this._cookies?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._cookieBehavior = undefined; this._cookies.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._cookieBehavior = value.cookieBehavior; this._cookies.internalValue = value.cookies; } } get cookieBehavior() { return this.getStringAttribute('cookie_behavior'); } set cookieBehavior(value) { this._cookieBehavior = value; } // Temporarily expose input value. Use with caution. get cookieBehaviorInput() { return this._cookieBehavior; } get cookies() { return this._cookies; } putCookies(value) { this._cookies.internalValue = value; } resetCookies() { this._cookies.internalValue = undefined; } // Temporarily expose input value. Use with caution. get cookiesInput() { return this._cookies.internalValue; } } exports.CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigOutputReference = CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigOutputReference; _b = JSII_RTTI_SYMBOL_1; CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigOutputReference[_b] = { fqn: "@cdktf/provider-aws.cloudfrontCachePolicy.CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigOutputReference", version: "21.22.1" }; function cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigHeadersToTerraform(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 cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigHeadersToHclTerraform(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 CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigHeadersOutputReference 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.CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigHeadersOutputReference = CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigHeadersOutputReference; _c = JSII_RTTI_SYMBOL_1; CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigHeadersOutputReference[_c] = { fqn: "@cdktf/provider-aws.cloudfrontCachePolicy.CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigHeadersOutputReference", version: "21.22.1" }; function cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigToTerraform(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_behavior: cdktf.stringToTerraform(struct.headerBehavior), headers: cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigHeadersToTerraform(struct.headers), }; } function cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigToHclTerraform(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_behavior: { value: cdktf.stringToHclTerraform(struct.headerBehavior), isBlock: false, type: "simple", storageClassType: "string", }, headers: { value: cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigHeadersToHclTerraform(struct.headers), isBlock: true, type: "list", storageClassType: "CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigHeadersList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigOutputReference 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; // headers - computed: false, optional: true, required: false this._headers = new CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigHeadersOutputReference(this, "headers"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._headerBehavior !== undefined) { hasAnyValues = true; internalValueResult.headerBehavior = this._headerBehavior; } if (this._headers?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.headers = this._headers?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._headerBehavior = undefined; this._headers.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._headerBehavior = value.headerBehavior; this._headers.internalValue = value.headers; } } get headerBehavior() { return this.getStringAttribute('header_behavior'); } set headerBehavior(value) { this._headerBehavior = value; } resetHeaderBehavior() { this._headerBehavior = undefined; } // Temporarily expose input value. Use with caution. get headerBehaviorInput() { return this._headerBehavior; } get headers() { return this._headers; } putHeaders(value) { this._headers.internalValue = value; } resetHeaders() { this._headers.internalValue = undefined; } // Temporarily expose input value. Use with caution. get headersInput() { return this._headers.internalValue; } } exports.CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigOutputReference = CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigOutputReference; _d = JSII_RTTI_SYMBOL_1; CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigOutputReference[_d] = { fqn: "@cdktf/provider-aws.cloudfrontCachePolicy.CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigOutputReference", version: "21.22.1" }; function cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigQueryStringsToTerraform(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 cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigQueryStringsToHclTerraform(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 CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigQueryStringsOutputReference 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.CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigQueryStringsOutputReference = CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigQueryStringsOutputReference; _e = JSII_RTTI_SYMBOL_1; CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigQueryStringsOutputReference[_e] = { fqn: "@cdktf/provider-aws.cloudfrontCachePolicy.CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigQueryStringsOutputReference", version: "21.22.1" }; function cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigToTerraform(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 { query_string_behavior: cdktf.stringToTerraform(struct.queryStringBehavior), query_strings: cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigQueryStringsToTerraform(struct.queryStrings), }; } function cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigToHclTerraform(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 = { query_string_behavior: { value: cdktf.stringToHclTerraform(struct.queryStringBehavior), isBlock: false, type: "simple", storageClassType: "string", }, query_strings: { value: cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigQueryStringsToHclTerraform(struct.queryStrings), isBlock: true, type: "list", storageClassType: "CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigQueryStringsList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigOutputReference 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; // query_strings - computed: false, optional: true, required: false this._queryStrings = new CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigQueryStringsOutputReference(this, "query_strings"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._queryStringBehavior !== undefined) { hasAnyValues = true; internalValueResult.queryStringBehavior = this._queryStringBehavior; } if (this._queryStrings?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.queryStrings = this._queryStrings?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._queryStringBehavior = undefined; this._queryStrings.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._queryStringBehavior = value.queryStringBehavior; this._queryStrings.internalValue = value.queryStrings; } } get queryStringBehavior() { return this.getStringAttribute('query_string_behavior'); } set queryStringBehavior(value) { this._queryStringBehavior = value; } // Temporarily expose input value. Use with caution. get queryStringBehaviorInput() { return this._queryStringBehavior; } get queryStrings() { return this._queryStrings; } putQueryStrings(value) { this._queryStrings.internalValue = value; } resetQueryStrings() { this._queryStrings.internalValue = undefined; } // Temporarily expose input value. Use with caution. get queryStringsInput() { return this._queryStrings.internalValue; } } exports.CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigOutputReference = CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigOutputReference; _f = JSII_RTTI_SYMBOL_1; CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigOutputReference[_f] = { fqn: "@cdktf/provider-aws.cloudfrontCachePolicy.CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigOutputReference", version: "21.22.1" }; function cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginToTerraform(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 { enable_accept_encoding_brotli: cdktf.booleanToTerraform(struct.enableAcceptEncodingBrotli), enable_accept_encoding_gzip: cdktf.booleanToTerraform(struct.enableAcceptEncodingGzip), cookies_config: cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigToTerraform(struct.cookiesConfig), headers_config: cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigToTerraform(struct.headersConfig), query_strings_config: cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigToTerraform(struct.queryStringsConfig), }; } function cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginToHclTerraform(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 = { enable_accept_encoding_brotli: { value: cdktf.booleanToHclTerraform(struct.enableAcceptEncodingBrotli), isBlock: false, type: "simple", storageClassType: "boolean", }, enable_accept_encoding_gzip: { value: cdktf.booleanToHclTerraform(struct.enableAcceptEncodingGzip), isBlock: false, type: "simple", storageClassType: "boolean", }, cookies_config: { value: cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigToHclTerraform(struct.cookiesConfig), isBlock: true, type: "list", storageClassType: "CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigList", }, headers_config: { value: cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigToHclTerraform(struct.headersConfig), isBlock: true, type: "list", storageClassType: "CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigList", }, query_strings_config: { value: cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigToHclTerraform(struct.queryStringsConfig), isBlock: true, type: "list", storageClassType: "CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginOutputReference 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; // cookies_config - computed: false, optional: false, required: true this._cookiesConfig = new CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigOutputReference(this, "cookies_config"); // headers_config - computed: false, optional: false, required: true this._headersConfig = new CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigOutputReference(this, "headers_config"); // query_strings_config - computed: false, optional: false, required: true this._queryStringsConfig = new CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigOutputReference(this, "query_strings_config"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._enableAcceptEncodingBrotli !== undefined) { hasAnyValues = true; internalValueResult.enableAcceptEncodingBrotli = this._enableAcceptEncodingBrotli; } if (this._enableAcceptEncodingGzip !== undefined) { hasAnyValues = true; internalValueResult.enableAcceptEncodingGzip = this._enableAcceptEncodingGzip; } if (this._cookiesConfig?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.cookiesConfig = this._cookiesConfig?.internalValue; } if (this._headersConfig?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.headersConfig = this._headersConfig?.internalValue; } if (this._queryStringsConfig?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.queryStringsConfig = this._queryStringsConfig?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._enableAcceptEncodingBrotli = undefined; this._enableAcceptEncodingGzip = undefined; this._cookiesConfig.internalValue = undefined; this._headersConfig.internalValue = undefined; this._queryStringsConfig.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._enableAcceptEncodingBrotli = value.enableAcceptEncodingBrotli; this._enableAcceptEncodingGzip = value.enableAcceptEncodingGzip; this._cookiesConfig.internalValue = value.cookiesConfig; this._headersConfig.internalValue = value.headersConfig; this._queryStringsConfig.internalValue = value.queryStringsConfig; } } get enableAcceptEncodingBrotli() { return this.getBooleanAttribute('enable_accept_encoding_brotli'); } set enableAcceptEncodingBrotli(value) { this._enableAcceptEncodingBrotli = value; } resetEnableAcceptEncodingBrotli() { this._enableAcceptEncodingBrotli = undefined; } // Temporarily expose input value. Use with caution. get enableAcceptEncodingBrotliInput() { return this._enableAcceptEncodingBrotli; } get enableAcceptEncodingGzip() { return this.getBooleanAttribute('enable_accept_encoding_gzip'); } set enableAcceptEncodingGzip(value) { this._enableAcceptEncodingGzip = value; } resetEnableAcceptEncodingGzip() { this._enableAcceptEncodingGzip = undefined; } // Temporarily expose input value. Use with caution. get enableAcceptEncodingGzipInput() { return this._enableAcceptEncodingGzip; } get cookiesConfig() { return this._cookiesConfig; } putCookiesConfig(value) { this._cookiesConfig.internalValue = value; } // Temporarily expose input value. Use with caution. get cookiesConfigInput() { return this._cookiesConfig.internalValue; } get headersConfig() { return this._headersConfig; } putHeadersConfig(value) { this._headersConfig.internalValue = value; } // Temporarily expose input value. Use with caution. get headersConfigInput() { return this._headersConfig.internalValue; } get queryStringsConfig() { return this._queryStringsConfig; } putQueryStringsConfig(value) { this._queryStringsConfig.internalValue = value; } // Temporarily expose input value. Use with caution. get queryStringsConfigInput() { return this._queryStringsConfig.internalValue; } } exports.CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginOutputReference = CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginOutputReference; _g = JSII_RTTI_SYMBOL_1; CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginOutputReference[_g] = { fqn: "@cdktf/provider-aws.cloudfrontCachePolicy.CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginOutputReference", version: "21.22.1" }; /** * Represents a {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/cloudfront_cache_policy aws_cloudfront_cache_policy} */ class CloudfrontCachePolicy extends cdktf.TerraformResource { // ============== // STATIC Methods // ============== /** * Generates CDKTF code for importing a CloudfrontCachePolicy resource upon running "cdktf plan <stack-name>" * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the CloudfrontCachePolicy to import * @param importFromId The id of the existing CloudfrontCachePolicy that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/cloudfront_cache_policy#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the CloudfrontCachePolicy to import is found */ static generateConfigForImport(scope, importToId, importFromId, provider) { return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "aws_cloudfront_cache_policy", importId: importFromId, provider }); } // =========== // INITIALIZER // =========== /** * Create a new {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/cloudfront_cache_policy aws_cloudfront_cache_policy} Resource * * @param scope The scope in which to define this construct * @param id The scoped construct ID. Must be unique amongst siblings in the same scope * @param options CloudfrontCachePolicyConfig */ constructor(scope, id, config) { super(scope, id, { terraformResourceType: 'aws_cloudfront_cache_policy', terraformGeneratorMetadata: { providerName: 'aws', providerVersion: '6.25.0', providerVersionConstraint: '~> 6.0' }, provider: config.provider, dependsOn: config.dependsOn, count: config.count, lifecycle: config.lifecycle, provisioners: config.provisioners, connection: config.connection, forEach: config.forEach }); // parameters_in_cache_key_and_forwarded_to_origin - computed: false, optional: false, required: true this._parametersInCacheKeyAndForwardedToOrigin = new CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginOutputReference(this, "parameters_in_cache_key_and_forwarded_to_origin"); this._comment = config.comment; this._defaultTtl = config.defaultTtl; this._id = config.id; this._maxTtl = config.maxTtl; this._minTtl = config.minTtl; this._name = config.name; this._parametersInCacheKeyAndForwardedToOrigin.internalValue = config.parametersInCacheKeyAndForwardedToOrigin; } // ========== // ATTRIBUTES // ========== // arn - computed: true, optional: false, required: false get arn() { return this.getStringAttribute('arn'); } get comment() { return this.getStringAttribute('comment'); } set comment(value) { this._comment = value; } resetComment() { this._comment = undefined; } // Temporarily expose input value. Use with caution. get commentInput() { return this._comment; } get defaultTtl() { return this.getNumberAttribute('default_ttl'); } set defaultTtl(value) { this._defaultTtl = value; } resetDefaultTtl() { this._defaultTtl = undefined; } // Temporarily expose input value. Use with caution. get defaultTtlInput() { return this._defaultTtl; } // etag - computed: true, optional: false, required: false get etag() { return this.getStringAttribute('etag'); } get id() { return this.getStringAttribute('id'); } set id(value) { this._id = value; } resetId() { this._id = undefined; } // Temporarily expose input value. Use with caution. get idInput() { return this._id; } get maxTtl() { return this.getNumberAttribute('max_ttl'); } set maxTtl(value) { this._maxTtl = value; } resetMaxTtl() { this._maxTtl = undefined; } // Temporarily expose input value. Use with caution. get maxTtlInput() { return this._maxTtl; } get minTtl() { return this.getNumberAttribute('min_ttl'); } set minTtl(value) { this._minTtl = value; } resetMinTtl() { this._minTtl = undefined; } // Temporarily expose input value. Use with caution. get minTtlInput() { return this._minTtl; } get name() { return this.getStringAttribute('name'); } set name(value) { this._name = value; } // Temporarily expose input value. Use with caution. get nameInput() { return this._name; } get parametersInCacheKeyAndForwardedToOrigin() { return this._parametersInCacheKeyAndForwardedToOrigin; } putParametersInCacheKeyAndForwardedToOrigin(value) { this._parametersInCacheKeyAndForwardedToOrigin.internalValue = value; } // Temporarily expose input value. Use with caution. get parametersInCacheKeyAndForwardedToOriginInput() { return this._parametersInCacheKeyAndForwardedToOrigin.internalValue; } // ========= // SYNTHESIS // ========= synthesizeAttributes() { return { comment: cdktf.stringToTerraform(this._comment), default_ttl: cdktf.numberToTerraform(this._defaultTtl), id: cdktf.stringToTerraform(this._id), max_ttl: cdktf.numberToTerraform(this._maxTtl), min_ttl: cdktf.numberToTerraform(this._minTtl), name: cdktf.stringToTerraform(this._name), parameters_in_cache_key_and_forwarded_to_origin: cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginToTerraform(this._parametersInCacheKeyAndForwardedToOrigin.internalValue), }; } synthesizeHclAttributes() { const attrs = { comment: { value: cdktf.stringToHclTerraform(this._comment), isBlock: false, type: "simple", storageClassType: "string", }, default_ttl: { value: cdktf.numberToHclTerraform(this._defaultTtl), isBlock: false, type: "simple", storageClassType: "number", }, id: { value: cdktf.stringToHclTerraform(this._id), isBlock: false, type: "simple", storageClassType: "string", }, max_ttl: { value: cdktf.numberToHclTerraform(this._maxTtl), isBlock: false, type: "simple", storageClassType: "number", }, min_ttl: { value: cdktf.numberToHclTerraform(this._minTtl), isBlock: false, type: "simple", storageClassType: "number", }, name: { value: cdktf.stringToHclTerraform(this._name), isBlock: false, type: "simple", storageClassType: "string", }, parameters_in_cache_key_and_forwarded_to_origin: { value: cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginToHclTerraform(this._parametersInCacheKeyAndForwardedToOrigin.internalValue), isBlock: true, type: "list", storageClassType: "CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } } exports.CloudfrontCachePolicy = CloudfrontCachePolicy; _h = JSII_RTTI_SYMBOL_1; CloudfrontCachePolicy[_h] = { fqn: "@cdktf/provider-aws.cloudfrontCachePolicy.CloudfrontCachePolicy", version: "21.22.1" }; // ================= // STATIC PROPERTIES // ================= CloudfrontCachePolicy.tfResourceType = "aws_cloudfront_cache_policy"; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2xvdWRmcm9udC1jYWNoZS1wb2xpY3kvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQXVEQSxvTUFRQztBQUdELDBNQWdCQztBQStERCxzTEFTQztBQUdELDRMQXNCQztBQTRFRCxvTUFRQztBQUdELDBNQWdCQztBQStERCxzTEFTQztBQUdELDRMQXNCQztBQStFRCx3TkFRQztBQUdELDhOQWdCQztBQStERCxnTUFTQztBQUdELHNNQXNCQztBQWtHRCw0SkFZQztBQUdELGtLQXdDQzs7QUF0dEJELCtCQUErQjtBQThDL0IsU0FBZ0IsNEZBQTRGLENBQUMsTUFBNkw7SUFDeFMsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUFDLE9BQU8sTUFBTSxDQUFDO0lBQUMsQ0FBQztJQUM1RixJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMsb0hBQW9ILENBQUMsQ0FBQztJQUN4SSxDQUFDO0lBQ0QsT0FBTztRQUNMLEtBQUssRUFBRSxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxLQUFLLENBQUMsQ0FBQyxNQUFPLENBQUMsS0FBSyxDQUFDO0tBQ3ZFLENBQUE7QUFDSCxDQUFDO0FBR0QsU0FBZ0IsK0ZBQStGLENBQUMsTUFBNkw7SUFDM1MsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUFDLE9BQU8sTUFBTSxDQUFDO0lBQUMsQ0FBQztJQUM1RixJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxN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