@cdktf/provider-aws
Version:
Prebuilt aws Provider for Terraform CDK (cdktf)
977 lines (976 loc) • 300 kB
JavaScript
"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.NetworkfirewallFirewallPolicy = exports.NetworkfirewallFirewallPolicyFirewallPolicyOutputReference = exports.NetworkfirewallFirewallPolicyFirewallPolicyStatelessRuleGroupReferenceList = exports.NetworkfirewallFirewallPolicyFirewallPolicyStatelessRuleGroupReferenceOutputReference = exports.NetworkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionList = exports.NetworkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionOutputReference = exports.NetworkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionOutputReference = exports.NetworkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionPublishMetricActionOutputReference = exports.NetworkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionPublishMetricActionDimensionList = exports.NetworkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionPublishMetricActionDimensionOutputReference = exports.NetworkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceList = exports.NetworkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceOutputReference = exports.NetworkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceOverrideOutputReference = exports.NetworkfirewallFirewallPolicyFirewallPolicyStatefulEngineOptionsOutputReference = exports.NetworkfirewallFirewallPolicyFirewallPolicyStatefulEngineOptionsFlowTimeoutsOutputReference = exports.NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesOutputReference = exports.NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesList = exports.NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesOutputReference = exports.NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesIpSetOutputReference = exports.NetworkfirewallFirewallPolicyEncryptionConfigurationOutputReference = void 0;
exports.networkfirewallFirewallPolicyEncryptionConfigurationToTerraform = networkfirewallFirewallPolicyEncryptionConfigurationToTerraform;
exports.networkfirewallFirewallPolicyEncryptionConfigurationToHclTerraform = networkfirewallFirewallPolicyEncryptionConfigurationToHclTerraform;
exports.networkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesIpSetToTerraform = networkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesIpSetToTerraform;
exports.networkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesIpSetToHclTerraform = networkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesIpSetToHclTerraform;
exports.networkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesToTerraform = networkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesToTerraform;
exports.networkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesToHclTerraform = networkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesToHclTerraform;
exports.networkfirewallFirewallPolicyFirewallPolicyPolicyVariablesToTerraform = networkfirewallFirewallPolicyFirewallPolicyPolicyVariablesToTerraform;
exports.networkfirewallFirewallPolicyFirewallPolicyPolicyVariablesToHclTerraform = networkfirewallFirewallPolicyFirewallPolicyPolicyVariablesToHclTerraform;
exports.networkfirewallFirewallPolicyFirewallPolicyStatefulEngineOptionsFlowTimeoutsToTerraform = networkfirewallFirewallPolicyFirewallPolicyStatefulEngineOptionsFlowTimeoutsToTerraform;
exports.networkfirewallFirewallPolicyFirewallPolicyStatefulEngineOptionsFlowTimeoutsToHclTerraform = networkfirewallFirewallPolicyFirewallPolicyStatefulEngineOptionsFlowTimeoutsToHclTerraform;
exports.networkfirewallFirewallPolicyFirewallPolicyStatefulEngineOptionsToTerraform = networkfirewallFirewallPolicyFirewallPolicyStatefulEngineOptionsToTerraform;
exports.networkfirewallFirewallPolicyFirewallPolicyStatefulEngineOptionsToHclTerraform = networkfirewallFirewallPolicyFirewallPolicyStatefulEngineOptionsToHclTerraform;
exports.networkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceOverrideToTerraform = networkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceOverrideToTerraform;
exports.networkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceOverrideToHclTerraform = networkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceOverrideToHclTerraform;
exports.networkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceToTerraform = networkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceToTerraform;
exports.networkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceToHclTerraform = networkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceToHclTerraform;
exports.networkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionPublishMetricActionDimensionToTerraform = networkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionPublishMetricActionDimensionToTerraform;
exports.networkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionPublishMetricActionDimensionToHclTerraform = networkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionPublishMetricActionDimensionToHclTerraform;
exports.networkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionPublishMetricActionToTerraform = networkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionPublishMetricActionToTerraform;
exports.networkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionPublishMetricActionToHclTerraform = networkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionPublishMetricActionToHclTerraform;
exports.networkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionToTerraform = networkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionToTerraform;
exports.networkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionToHclTerraform = networkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionToHclTerraform;
exports.networkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionToTerraform = networkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionToTerraform;
exports.networkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionToHclTerraform = networkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionToHclTerraform;
exports.networkfirewallFirewallPolicyFirewallPolicyStatelessRuleGroupReferenceToTerraform = networkfirewallFirewallPolicyFirewallPolicyStatelessRuleGroupReferenceToTerraform;
exports.networkfirewallFirewallPolicyFirewallPolicyStatelessRuleGroupReferenceToHclTerraform = networkfirewallFirewallPolicyFirewallPolicyStatelessRuleGroupReferenceToHclTerraform;
exports.networkfirewallFirewallPolicyFirewallPolicyToTerraform = networkfirewallFirewallPolicyFirewallPolicyToTerraform;
exports.networkfirewallFirewallPolicyFirewallPolicyToHclTerraform = networkfirewallFirewallPolicyFirewallPolicyToHclTerraform;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function networkfirewallFirewallPolicyEncryptionConfigurationToTerraform(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 {
key_id: cdktf.stringToTerraform(struct.keyId),
type: cdktf.stringToTerraform(struct.type),
};
}
function networkfirewallFirewallPolicyEncryptionConfigurationToHclTerraform(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 = {
key_id: {
value: cdktf.stringToHclTerraform(struct.keyId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
type: {
value: cdktf.stringToHclTerraform(struct.type),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class NetworkfirewallFirewallPolicyEncryptionConfigurationOutputReference 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._keyId !== undefined) {
hasAnyValues = true;
internalValueResult.keyId = this._keyId;
}
if (this._type !== undefined) {
hasAnyValues = true;
internalValueResult.type = this._type;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._keyId = undefined;
this._type = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._keyId = value.keyId;
this._type = value.type;
}
}
get keyId() {
return this.getStringAttribute('key_id');
}
set keyId(value) {
this._keyId = value;
}
resetKeyId() {
this._keyId = undefined;
}
// Temporarily expose input value. Use with caution.
get keyIdInput() {
return this._keyId;
}
get type() {
return this.getStringAttribute('type');
}
set type(value) {
this._type = value;
}
// Temporarily expose input value. Use with caution.
get typeInput() {
return this._type;
}
}
exports.NetworkfirewallFirewallPolicyEncryptionConfigurationOutputReference = NetworkfirewallFirewallPolicyEncryptionConfigurationOutputReference;
_a = JSII_RTTI_SYMBOL_1;
NetworkfirewallFirewallPolicyEncryptionConfigurationOutputReference[_a] = { fqn: "@cdktf/provider-aws.networkfirewallFirewallPolicy.NetworkfirewallFirewallPolicyEncryptionConfigurationOutputReference", version: "21.22.1" };
function networkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesIpSetToTerraform(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 {
definition: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.definition),
};
}
function networkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesIpSetToHclTerraform(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 = {
definition: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.definition),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesIpSetOutputReference 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._definition !== undefined) {
hasAnyValues = true;
internalValueResult.definition = this._definition;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._definition = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._definition = value.definition;
}
}
get definition() {
return cdktf.Fn.tolist(this.getListAttribute('definition'));
}
set definition(value) {
this._definition = value;
}
// Temporarily expose input value. Use with caution.
get definitionInput() {
return this._definition;
}
}
exports.NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesIpSetOutputReference = NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesIpSetOutputReference;
_b = JSII_RTTI_SYMBOL_1;
NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesIpSetOutputReference[_b] = { fqn: "@cdktf/provider-aws.networkfirewallFirewallPolicy.NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesIpSetOutputReference", version: "21.22.1" };
function networkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesToTerraform(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 {
key: cdktf.stringToTerraform(struct.key),
ip_set: networkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesIpSetToTerraform(struct.ipSet),
};
}
function networkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesToHclTerraform(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 = {
key: {
value: cdktf.stringToHclTerraform(struct.key),
isBlock: false,
type: "simple",
storageClassType: "string",
},
ip_set: {
value: networkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesIpSetToHclTerraform(struct.ipSet),
isBlock: true,
type: "list",
storageClassType: "NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesIpSetList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesOutputReference 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;
// ip_set - computed: false, optional: false, required: true
this._ipSet = new NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesIpSetOutputReference(this, "ip_set");
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._key !== undefined) {
hasAnyValues = true;
internalValueResult.key = this._key;
}
if (this._ipSet?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.ipSet = this._ipSet?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._key = undefined;
this._ipSet.internalValue = undefined;
}
else if (cdktf.Tokenization.isResolvable(value)) {
this.isEmptyObject = false;
this.resolvableValue = value;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this.resolvableValue = undefined;
this._key = value.key;
this._ipSet.internalValue = value.ipSet;
}
}
get key() {
return this.getStringAttribute('key');
}
set key(value) {
this._key = value;
}
// Temporarily expose input value. Use with caution.
get keyInput() {
return this._key;
}
get ipSet() {
return this._ipSet;
}
putIpSet(value) {
this._ipSet.internalValue = value;
}
// Temporarily expose input value. Use with caution.
get ipSetInput() {
return this._ipSet.internalValue;
}
}
exports.NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesOutputReference = NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesOutputReference;
_c = JSII_RTTI_SYMBOL_1;
NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesOutputReference[_c] = { fqn: "@cdktf/provider-aws.networkfirewallFirewallPolicy.NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesOutputReference", version: "21.22.1" };
class NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesList 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 NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesList = NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesList;
_d = JSII_RTTI_SYMBOL_1;
NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesList[_d] = { fqn: "@cdktf/provider-aws.networkfirewallFirewallPolicy.NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesList", version: "21.22.1" };
function networkfirewallFirewallPolicyFirewallPolicyPolicyVariablesToTerraform(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 {
rule_variables: cdktf.listMapper(networkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesToTerraform, true)(struct.ruleVariables),
};
}
function networkfirewallFirewallPolicyFirewallPolicyPolicyVariablesToHclTerraform(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 = {
rule_variables: {
value: cdktf.listMapperHcl(networkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesToHclTerraform, true)(struct.ruleVariables),
isBlock: true,
type: "set",
storageClassType: "NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesOutputReference 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;
// rule_variables - computed: false, optional: true, required: false
this._ruleVariables = new NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesRuleVariablesList(this, "rule_variables", true);
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._ruleVariables?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.ruleVariables = this._ruleVariables?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._ruleVariables.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._ruleVariables.internalValue = value.ruleVariables;
}
}
get ruleVariables() {
return this._ruleVariables;
}
putRuleVariables(value) {
this._ruleVariables.internalValue = value;
}
resetRuleVariables() {
this._ruleVariables.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get ruleVariablesInput() {
return this._ruleVariables.internalValue;
}
}
exports.NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesOutputReference = NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesOutputReference;
_e = JSII_RTTI_SYMBOL_1;
NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesOutputReference[_e] = { fqn: "@cdktf/provider-aws.networkfirewallFirewallPolicy.NetworkfirewallFirewallPolicyFirewallPolicyPolicyVariablesOutputReference", version: "21.22.1" };
function networkfirewallFirewallPolicyFirewallPolicyStatefulEngineOptionsFlowTimeoutsToTerraform(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 {
tcp_idle_timeout_seconds: cdktf.numberToTerraform(struct.tcpIdleTimeoutSeconds),
};
}
function networkfirewallFirewallPolicyFirewallPolicyStatefulEngineOptionsFlowTimeoutsToHclTerraform(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 = {
tcp_idle_timeout_seconds: {
value: cdktf.numberToHclTerraform(struct.tcpIdleTimeoutSeconds),
isBlock: false,
type: "simple",
storageClassType: "number",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class NetworkfirewallFirewallPolicyFirewallPolicyStatefulEngineOptionsFlowTimeoutsOutputReference 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._tcpIdleTimeoutSeconds !== undefined) {
hasAnyValues = true;
internalValueResult.tcpIdleTimeoutSeconds = this._tcpIdleTimeoutSeconds;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._tcpIdleTimeoutSeconds = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._tcpIdleTimeoutSeconds = value.tcpIdleTimeoutSeconds;
}
}
get tcpIdleTimeoutSeconds() {
return this.getNumberAttribute('tcp_idle_timeout_seconds');
}
set tcpIdleTimeoutSeconds(value) {
this._tcpIdleTimeoutSeconds = value;
}
resetTcpIdleTimeoutSeconds() {
this._tcpIdleTimeoutSeconds = undefined;
}
// Temporarily expose input value. Use with caution.
get tcpIdleTimeoutSecondsInput() {
return this._tcpIdleTimeoutSeconds;
}
}
exports.NetworkfirewallFirewallPolicyFirewallPolicyStatefulEngineOptionsFlowTimeoutsOutputReference = NetworkfirewallFirewallPolicyFirewallPolicyStatefulEngineOptionsFlowTimeoutsOutputReference;
_f = JSII_RTTI_SYMBOL_1;
NetworkfirewallFirewallPolicyFirewallPolicyStatefulEngineOptionsFlowTimeoutsOutputReference[_f] = { fqn: "@cdktf/provider-aws.networkfirewallFirewallPolicy.NetworkfirewallFirewallPolicyFirewallPolicyStatefulEngineOptionsFlowTimeoutsOutputReference", version: "21.22.1" };
function networkfirewallFirewallPolicyFirewallPolicyStatefulEngineOptionsToTerraform(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 {
rule_order: cdktf.stringToTerraform(struct.ruleOrder),
stream_exception_policy: cdktf.stringToTerraform(struct.streamExceptionPolicy),
flow_timeouts: networkfirewallFirewallPolicyFirewallPolicyStatefulEngineOptionsFlowTimeoutsToTerraform(struct.flowTimeouts),
};
}
function networkfirewallFirewallPolicyFirewallPolicyStatefulEngineOptionsToHclTerraform(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 = {
rule_order: {
value: cdktf.stringToHclTerraform(struct.ruleOrder),
isBlock: false,
type: "simple",
storageClassType: "string",
},
stream_exception_policy: {
value: cdktf.stringToHclTerraform(struct.streamExceptionPolicy),
isBlock: false,
type: "simple",
storageClassType: "string",
},
flow_timeouts: {
value: networkfirewallFirewallPolicyFirewallPolicyStatefulEngineOptionsFlowTimeoutsToHclTerraform(struct.flowTimeouts),
isBlock: true,
type: "list",
storageClassType: "NetworkfirewallFirewallPolicyFirewallPolicyStatefulEngineOptionsFlowTimeoutsList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class NetworkfirewallFirewallPolicyFirewallPolicyStatefulEngineOptionsOutputReference 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;
// flow_timeouts - computed: false, optional: true, required: false
this._flowTimeouts = new NetworkfirewallFirewallPolicyFirewallPolicyStatefulEngineOptionsFlowTimeoutsOutputReference(this, "flow_timeouts");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._ruleOrder !== undefined) {
hasAnyValues = true;
internalValueResult.ruleOrder = this._ruleOrder;
}
if (this._streamExceptionPolicy !== undefined) {
hasAnyValues = true;
internalValueResult.streamExceptionPolicy = this._streamExceptionPolicy;
}
if (this._flowTimeouts?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.flowTimeouts = this._flowTimeouts?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._ruleOrder = undefined;
this._streamExceptionPolicy = undefined;
this._flowTimeouts.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._ruleOrder = value.ruleOrder;
this._streamExceptionPolicy = value.streamExceptionPolicy;
this._flowTimeouts.internalValue = value.flowTimeouts;
}
}
get ruleOrder() {
return this.getStringAttribute('rule_order');
}
set ruleOrder(value) {
this._ruleOrder = value;
}
resetRuleOrder() {
this._ruleOrder = undefined;
}
// Temporarily expose input value. Use with caution.
get ruleOrderInput() {
return this._ruleOrder;
}
get streamExceptionPolicy() {
return this.getStringAttribute('stream_exception_policy');
}
set streamExceptionPolicy(value) {
this._streamExceptionPolicy = value;
}
resetStreamExceptionPolicy() {
this._streamExceptionPolicy = undefined;
}
// Temporarily expose input value. Use with caution.
get streamExceptionPolicyInput() {
return this._streamExceptionPolicy;
}
get flowTimeouts() {
return this._flowTimeouts;
}
putFlowTimeouts(value) {
this._flowTimeouts.internalValue = value;
}
resetFlowTimeouts() {
this._flowTimeouts.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get flowTimeoutsInput() {
return this._flowTimeouts.internalValue;
}
}
exports.NetworkfirewallFirewallPolicyFirewallPolicyStatefulEngineOptionsOutputReference = NetworkfirewallFirewallPolicyFirewallPolicyStatefulEngineOptionsOutputReference;
_g = JSII_RTTI_SYMBOL_1;
NetworkfirewallFirewallPolicyFirewallPolicyStatefulEngineOptionsOutputReference[_g] = { fqn: "@cdktf/provider-aws.networkfirewallFirewallPolicy.NetworkfirewallFirewallPolicyFirewallPolicyStatefulEngineOptionsOutputReference", version: "21.22.1" };
function networkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceOverrideToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
action: cdktf.stringToTerraform(struct.action),
};
}
function networkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceOverrideToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
action: {
value: cdktf.stringToHclTerraform(struct.action),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class NetworkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceOverrideOutputReference 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._action !== undefined) {
hasAnyValues = true;
internalValueResult.action = this._action;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._action = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._action = value.action;
}
}
get action() {
return this.getStringAttribute('action');
}
set action(value) {
this._action = value;
}
resetAction() {
this._action = undefined;
}
// Temporarily expose input value. Use with caution.
get actionInput() {
return this._action;
}
}
exports.NetworkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceOverrideOutputReference = NetworkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceOverrideOutputReference;
_h = JSII_RTTI_SYMBOL_1;
NetworkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceOverrideOutputReference[_h] = { fqn: "@cdktf/provider-aws.networkfirewallFirewallPolicy.NetworkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceOverrideOutputReference", version: "21.22.1" };
function networkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceToTerraform(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 {
deep_threat_inspection: cdktf.stringToTerraform(struct.deepThreatInspection),
priority: cdktf.numberToTerraform(struct.priority),
resource_arn: cdktf.stringToTerraform(struct.resourceArn),
override: networkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceOverrideToTerraform(struct.override),
};
}
function networkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceToHclTerraform(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 = {
deep_threat_inspection: {
value: cdktf.stringToHclTerraform(struct.deepThreatInspection),
isBlock: false,
type: "simple",
storageClassType: "string",
},
priority: {
value: cdktf.numberToHclTerraform(struct.priority),
isBlock: false,
type: "simple",
storageClassType: "number",
},
resource_arn: {
value: cdktf.stringToHclTerraform(struct.resourceArn),
isBlock: false,
type: "simple",
storageClassType: "string",
},
override: {
value: networkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceOverrideToHclTerraform(struct.override),
isBlock: true,
type: "list",
storageClassType: "NetworkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceOverrideList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class NetworkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceOutputReference 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;
// override - computed: false, optional: true, required: false
this._override = new NetworkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceOverrideOutputReference(this, "override");
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._deepThreatInspection !== undefined) {
hasAnyValues = true;
internalValueResult.deepThreatInspection = this._deepThreatInspection;
}
if (this._priority !== undefined) {
hasAnyValues = true;
internalValueResult.priority = this._priority;
}
if (this._resourceArn !== undefined) {
hasAnyValues = true;
internalValueResult.resourceArn = this._resourceArn;
}
if (this._override?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.override = this._override?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._deepThreatInspection = undefined;
this._priority = undefined;
this._resourceArn = undefined;
this._override.internalValue = undefined;
}
else if (cdktf.Tokenization.isResolvable(value)) {
this.isEmptyObject = false;
this.resolvableValue = value;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this.resolvableValue = undefined;
this._deepThreatInspection = value.deepThreatInspection;
this._priority = value.priority;
this._resourceArn = value.resourceArn;
this._override.internalValue = value.override;
}
}
get deepThreatInspection() {
return this.getStringAttribute('deep_threat_inspection');
}
set deepThreatInspection(value) {
this._deepThreatInspection = value;
}
resetDeepThreatInspection() {
this._deepThreatInspection = undefined;
}
// Temporarily expose input value. Use with caution.
get deepThreatInspectionInput() {
return this._deepThreatInspection;
}
get priority() {
return this.getNumberAttribute('priority');
}
set priority(value) {
this._priority = value;
}
resetPriority() {
this._priority = undefined;
}
// Temporarily expose input value. Use with caution.
get priorityInput() {
return this._priority;
}
get resourceArn() {
return this.getStringAttribute('resource_arn');
}
set resourceArn(value) {
this._resourceArn = value;
}
// Temporarily expose input value. Use with caution.
get resourceArnInput() {
return this._resourceArn;
}
get override() {
return this._override;
}
putOverride(value) {
this._override.internalValue = value;
}
resetOverride() {
this._override.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get overrideInput() {
return this._override.internalValue;
}
}
exports.NetworkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceOutputReference = NetworkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceOutputReference;
_j = JSII_RTTI_SYMBOL_1;
NetworkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceOutputReference[_j] = { fqn: "@cdktf/provider-aws.networkfirewallFirewallPolicy.NetworkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceOutputReference", version: "21.22.1" };
class NetworkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceList 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 NetworkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.NetworkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceList = NetworkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceList;
_k = JSII_RTTI_SYMBOL_1;
NetworkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceList[_k] = { fqn: "@cdktf/provider-aws.networkfirewallFirewallPolicy.NetworkfirewallFirewallPolicyFirewallPolicyStatefulRuleGroupReferenceList", version: "21.22.1" };
function networkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionPublishMetricActionDimensionToTerraform(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 {
value: cdktf.stringToTerraform(struct.value),
};
}
function networkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionPublishMetricActionDimensionToHclTerraform(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 = {
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 NetworkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionPublishMetricActionDimensionOutputReference 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._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._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._value = value.value;
}
}
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.NetworkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionPublishMetricActionDimensionOutputReference = NetworkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionPublishMetricActionDimensionOutputReference;
_l = JSII_RTTI_SYMBOL_1;
NetworkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionPublishMetricActionDimensionOutputReference[_l] = { fqn: "@cdktf/provider-aws.networkfirewallFirewallPolicy.NetworkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionPublishMetricActionDimensionOutputReference", version: "21.22.1" };
class NetworkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionPublishMetricActionDimensionList 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 NetworkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionPublishMetricActionDimensionOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.NetworkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionPublishMetricActionDimensionList = NetworkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionPublishMetricActionDimensionList;
_m = JSII_RTTI_SYMBOL_1;
NetworkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionPublishMetricActionDimensionList[_m] = { fqn: "@cdktf/provider-aws.networkfirewallFirewallPolicy.NetworkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionPublishMetricActionDimensionList", version: "21.22.1" };
function networkfirewallFirewallPolicyFirewallPolicyStatelessCustomActionActionDefinitionPublishMetricActionToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {