@cdktf/provider-aws
Version:
Prebuilt aws Provider for Terraform CDK (cdktf)
930 lines • 145 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f, _g, _h;
Object.defineProperty(exports, "__esModule", { value: true });
exports.CloudfrontCachePolicy = exports.CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginOutputReference = exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginToHclTerraform = exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginToTerraform = exports.CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigOutputReference = exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigToHclTerraform = exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigToTerraform = exports.CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigQueryStringsOutputReference = exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigQueryStringsToHclTerraform = exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigQueryStringsToTerraform = exports.CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigOutputReference = exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigToHclTerraform = exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigToTerraform = exports.CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigHeadersOutputReference = exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigHeadersToHclTerraform = exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigHeadersToTerraform = exports.CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigOutputReference = exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigToHclTerraform = exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigToTerraform = exports.CloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigCookiesOutputReference = exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigCookiesToHclTerraform = exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigCookiesToTerraform = void 0;
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),
};
}
exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigCookiesToTerraform = cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigCookiesToTerraform;
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));
}
exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigCookiesToHclTerraform = cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigCookiesToHclTerraform;
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: "19.50.0" };
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),
};
}
exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigToTerraform = cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigToTerraform;
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));
}
exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigToHclTerraform = cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginCookiesConfigToHclTerraform;
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: "19.50.0" };
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),
};
}
exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigHeadersToTerraform = cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigHeadersToTerraform;
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));
}
exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigHeadersToHclTerraform = cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigHeadersToHclTerraform;
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: "19.50.0" };
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),
};
}
exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigToTerraform = cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigToTerraform;
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));
}
exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigToHclTerraform = cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginHeadersConfigToHclTerraform;
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: "19.50.0" };
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),
};
}
exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigQueryStringsToTerraform = cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigQueryStringsToTerraform;
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));
}
exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigQueryStringsToHclTerraform = cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigQueryStringsToHclTerraform;
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: "19.50.0" };
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),
};
}
exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigToTerraform = cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigToTerraform;
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));
}
exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigToHclTerraform = cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginQueryStringsConfigToHclTerraform;
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: "19.50.0" };
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),
};
}
exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginToTerraform = cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginToTerraform;
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));
}
exports.cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginToHclTerraform = cloudfrontCachePolicyParametersInCacheKeyAndForwardedToOriginToHclTerraform;
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: "19.50.0" };
/**
* Represents a {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.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/5.84.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/5.84.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: '5.84.0',
providerVersionConstraint: '~> 5.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;
}
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: "19.50.0" };
// =================
// STATIC PROPERTIES
// =================
CloudfrontCachePolicy.tfResourceType = "aws_cloudfront_cache_policy";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2xvdWRmcm9udC1jYWNoZS1wb2xpY3kvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFTQSwrQkFBK0I7QUE4Qy9CLFNBQWdCLDRGQUE0RixDQUFDLE1BQTZMO0lBQ3hTLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFBQyxPQUFPLE1BQU0sQ0FBQztJQUFDLENBQUM7SUFDNUYsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLG9IQUFvSCxDQUFDLENBQUM7SUFDeEksQ0FBQztJQUNELE9BQU87UUFDTCxLQUFLLEVBQUUsS0FBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsaUJBQWlCLEVBQUUsS0FBSyxDQUFDLENBQUMsTUFBTyxDQUFDLEtBQUssQ0FBQztLQUN2RSxDQUFBO0FBQ0gsQ0FBQztBQVJELG9NQVFDO0FBR0QsU0FBZ0IsK0ZBQStGLENBQUMsTUFBNkw7SUFDM1MsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUFDLE9BQU8sTUFBTSxDQUFDO0lBQUMsQ0FBQztJQUM1RixJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMsb0hBQW9ILENBQUMsQ0FBQztJQUN4SSxDQUFDO0lBQ0QsTUFBTSxLQUFLLEdBQUc7UUFDWixLQUFLLEVBQUU7WUFDTCxLQUFLLEVBQUUsS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsb0JBQW9C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