@cdktf/provider-azurerm
Version:
Prebuilt azurerm Provider for Terraform CDK (cdktf)
1,181 lines • 297 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
Object.defineProperty(exports, "__esModule", { value: true });
exports.FirewallPolicy = exports.FirewallPolicyTlsCertificateOutputReference = exports.firewallPolicyTlsCertificateToHclTerraform = exports.firewallPolicyTlsCertificateToTerraform = exports.FirewallPolicyTimeoutsOutputReference = exports.firewallPolicyTimeoutsToHclTerraform = exports.firewallPolicyTimeoutsToTerraform = exports.FirewallPolicyThreatIntelligenceAllowlistStructOutputReference = exports.firewallPolicyThreatIntelligenceAllowlistStructToHclTerraform = exports.firewallPolicyThreatIntelligenceAllowlistStructToTerraform = exports.FirewallPolicyIntrusionDetectionOutputReference = exports.firewallPolicyIntrusionDetectionToHclTerraform = exports.firewallPolicyIntrusionDetectionToTerraform = exports.FirewallPolicyIntrusionDetectionTrafficBypassList = exports.FirewallPolicyIntrusionDetectionTrafficBypassOutputReference = exports.firewallPolicyIntrusionDetectionTrafficBypassToHclTerraform = exports.firewallPolicyIntrusionDetectionTrafficBypassToTerraform = exports.FirewallPolicyIntrusionDetectionSignatureOverridesList = exports.FirewallPolicyIntrusionDetectionSignatureOverridesOutputReference = exports.firewallPolicyIntrusionDetectionSignatureOverridesToHclTerraform = exports.firewallPolicyIntrusionDetectionSignatureOverridesToTerraform = exports.FirewallPolicyInsightsOutputReference = exports.firewallPolicyInsightsToHclTerraform = exports.firewallPolicyInsightsToTerraform = exports.FirewallPolicyInsightsLogAnalyticsWorkspaceList = exports.FirewallPolicyInsightsLogAnalyticsWorkspaceOutputReference = exports.firewallPolicyInsightsLogAnalyticsWorkspaceToHclTerraform = exports.firewallPolicyInsightsLogAnalyticsWorkspaceToTerraform = exports.FirewallPolicyIdentityOutputReference = exports.firewallPolicyIdentityToHclTerraform = exports.firewallPolicyIdentityToTerraform = exports.FirewallPolicyExplicitProxyOutputReference = exports.firewallPolicyExplicitProxyToHclTerraform = exports.firewallPolicyExplicitProxyToTerraform = exports.FirewallPolicyDnsOutputReference = exports.firewallPolicyDnsToHclTerraform = exports.firewallPolicyDnsToTerraform = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function firewallPolicyDnsToTerraform(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 {
proxy_enabled: cdktf.booleanToTerraform(struct.proxyEnabled),
servers: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.servers),
};
}
exports.firewallPolicyDnsToTerraform = firewallPolicyDnsToTerraform;
function firewallPolicyDnsToHclTerraform(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 = {
proxy_enabled: {
value: cdktf.booleanToHclTerraform(struct.proxyEnabled),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
servers: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.servers),
isBlock: false,
type: "list",
storageClassType: "stringList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.firewallPolicyDnsToHclTerraform = firewallPolicyDnsToHclTerraform;
class FirewallPolicyDnsOutputReference 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._proxyEnabled !== undefined) {
hasAnyValues = true;
internalValueResult.proxyEnabled = this._proxyEnabled;
}
if (this._servers !== undefined) {
hasAnyValues = true;
internalValueResult.servers = this._servers;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._proxyEnabled = undefined;
this._servers = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._proxyEnabled = value.proxyEnabled;
this._servers = value.servers;
}
}
get proxyEnabled() {
return this.getBooleanAttribute('proxy_enabled');
}
set proxyEnabled(value) {
this._proxyEnabled = value;
}
resetProxyEnabled() {
this._proxyEnabled = undefined;
}
// Temporarily expose input value. Use with caution.
get proxyEnabledInput() {
return this._proxyEnabled;
}
get servers() {
return this.getListAttribute('servers');
}
set servers(value) {
this._servers = value;
}
resetServers() {
this._servers = undefined;
}
// Temporarily expose input value. Use with caution.
get serversInput() {
return this._servers;
}
}
exports.FirewallPolicyDnsOutputReference = FirewallPolicyDnsOutputReference;
_a = JSII_RTTI_SYMBOL_1;
FirewallPolicyDnsOutputReference[_a] = { fqn: "@cdktf/provider-azurerm.firewallPolicy.FirewallPolicyDnsOutputReference", version: "12.27.0" };
function firewallPolicyExplicitProxyToTerraform(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_pac_file: cdktf.booleanToTerraform(struct.enablePacFile),
enabled: cdktf.booleanToTerraform(struct.enabled),
http_port: cdktf.numberToTerraform(struct.httpPort),
https_port: cdktf.numberToTerraform(struct.httpsPort),
pac_file: cdktf.stringToTerraform(struct.pacFile),
pac_file_port: cdktf.numberToTerraform(struct.pacFilePort),
};
}
exports.firewallPolicyExplicitProxyToTerraform = firewallPolicyExplicitProxyToTerraform;
function firewallPolicyExplicitProxyToHclTerraform(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_pac_file: {
value: cdktf.booleanToHclTerraform(struct.enablePacFile),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
enabled: {
value: cdktf.booleanToHclTerraform(struct.enabled),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
http_port: {
value: cdktf.numberToHclTerraform(struct.httpPort),
isBlock: false,
type: "simple",
storageClassType: "number",
},
https_port: {
value: cdktf.numberToHclTerraform(struct.httpsPort),
isBlock: false,
type: "simple",
storageClassType: "number",
},
pac_file: {
value: cdktf.stringToHclTerraform(struct.pacFile),
isBlock: false,
type: "simple",
storageClassType: "string",
},
pac_file_port: {
value: cdktf.numberToHclTerraform(struct.pacFilePort),
isBlock: false,
type: "simple",
storageClassType: "number",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.firewallPolicyExplicitProxyToHclTerraform = firewallPolicyExplicitProxyToHclTerraform;
class FirewallPolicyExplicitProxyOutputReference 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._enablePacFile !== undefined) {
hasAnyValues = true;
internalValueResult.enablePacFile = this._enablePacFile;
}
if (this._enabled !== undefined) {
hasAnyValues = true;
internalValueResult.enabled = this._enabled;
}
if (this._httpPort !== undefined) {
hasAnyValues = true;
internalValueResult.httpPort = this._httpPort;
}
if (this._httpsPort !== undefined) {
hasAnyValues = true;
internalValueResult.httpsPort = this._httpsPort;
}
if (this._pacFile !== undefined) {
hasAnyValues = true;
internalValueResult.pacFile = this._pacFile;
}
if (this._pacFilePort !== undefined) {
hasAnyValues = true;
internalValueResult.pacFilePort = this._pacFilePort;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._enablePacFile = undefined;
this._enabled = undefined;
this._httpPort = undefined;
this._httpsPort = undefined;
this._pacFile = undefined;
this._pacFilePort = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._enablePacFile = value.enablePacFile;
this._enabled = value.enabled;
this._httpPort = value.httpPort;
this._httpsPort = value.httpsPort;
this._pacFile = value.pacFile;
this._pacFilePort = value.pacFilePort;
}
}
get enablePacFile() {
return this.getBooleanAttribute('enable_pac_file');
}
set enablePacFile(value) {
this._enablePacFile = value;
}
resetEnablePacFile() {
this._enablePacFile = undefined;
}
// Temporarily expose input value. Use with caution.
get enablePacFileInput() {
return this._enablePacFile;
}
get enabled() {
return this.getBooleanAttribute('enabled');
}
set enabled(value) {
this._enabled = value;
}
resetEnabled() {
this._enabled = undefined;
}
// Temporarily expose input value. Use with caution.
get enabledInput() {
return this._enabled;
}
get httpPort() {
return this.getNumberAttribute('http_port');
}
set httpPort(value) {
this._httpPort = value;
}
resetHttpPort() {
this._httpPort = undefined;
}
// Temporarily expose input value. Use with caution.
get httpPortInput() {
return this._httpPort;
}
get httpsPort() {
return this.getNumberAttribute('https_port');
}
set httpsPort(value) {
this._httpsPort = value;
}
resetHttpsPort() {
this._httpsPort = undefined;
}
// Temporarily expose input value. Use with caution.
get httpsPortInput() {
return this._httpsPort;
}
get pacFile() {
return this.getStringAttribute('pac_file');
}
set pacFile(value) {
this._pacFile = value;
}
resetPacFile() {
this._pacFile = undefined;
}
// Temporarily expose input value. Use with caution.
get pacFileInput() {
return this._pacFile;
}
get pacFilePort() {
return this.getNumberAttribute('pac_file_port');
}
set pacFilePort(value) {
this._pacFilePort = value;
}
resetPacFilePort() {
this._pacFilePort = undefined;
}
// Temporarily expose input value. Use with caution.
get pacFilePortInput() {
return this._pacFilePort;
}
}
exports.FirewallPolicyExplicitProxyOutputReference = FirewallPolicyExplicitProxyOutputReference;
_b = JSII_RTTI_SYMBOL_1;
FirewallPolicyExplicitProxyOutputReference[_b] = { fqn: "@cdktf/provider-azurerm.firewallPolicy.FirewallPolicyExplicitProxyOutputReference", version: "12.27.0" };
function firewallPolicyIdentityToTerraform(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 {
identity_ids: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.identityIds),
type: cdktf.stringToTerraform(struct.type),
};
}
exports.firewallPolicyIdentityToTerraform = firewallPolicyIdentityToTerraform;
function firewallPolicyIdentityToHclTerraform(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 = {
identity_ids: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.identityIds),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
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));
}
exports.firewallPolicyIdentityToHclTerraform = firewallPolicyIdentityToHclTerraform;
class FirewallPolicyIdentityOutputReference 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._identityIds !== undefined) {
hasAnyValues = true;
internalValueResult.identityIds = this._identityIds;
}
if (this._type !== undefined) {
hasAnyValues = true;
internalValueResult.type = this._type;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._identityIds = undefined;
this._type = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._identityIds = value.identityIds;
this._type = value.type;
}
}
get identityIds() {
return cdktf.Fn.tolist(this.getListAttribute('identity_ids'));
}
set identityIds(value) {
this._identityIds = value;
}
resetIdentityIds() {
this._identityIds = undefined;
}
// Temporarily expose input value. Use with caution.
get identityIdsInput() {
return this._identityIds;
}
// principal_id - computed: true, optional: false, required: false
get principalId() {
return this.getStringAttribute('principal_id');
}
// tenant_id - computed: true, optional: false, required: false
get tenantId() {
return this.getStringAttribute('tenant_id');
}
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.FirewallPolicyIdentityOutputReference = FirewallPolicyIdentityOutputReference;
_c = JSII_RTTI_SYMBOL_1;
FirewallPolicyIdentityOutputReference[_c] = { fqn: "@cdktf/provider-azurerm.firewallPolicy.FirewallPolicyIdentityOutputReference", version: "12.27.0" };
function firewallPolicyInsightsLogAnalyticsWorkspaceToTerraform(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 {
firewall_location: cdktf.stringToTerraform(struct.firewallLocation),
id: cdktf.stringToTerraform(struct.id),
};
}
exports.firewallPolicyInsightsLogAnalyticsWorkspaceToTerraform = firewallPolicyInsightsLogAnalyticsWorkspaceToTerraform;
function firewallPolicyInsightsLogAnalyticsWorkspaceToHclTerraform(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 = {
firewall_location: {
value: cdktf.stringToHclTerraform(struct.firewallLocation),
isBlock: false,
type: "simple",
storageClassType: "string",
},
id: {
value: cdktf.stringToHclTerraform(struct.id),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.firewallPolicyInsightsLogAnalyticsWorkspaceToHclTerraform = firewallPolicyInsightsLogAnalyticsWorkspaceToHclTerraform;
class FirewallPolicyInsightsLogAnalyticsWorkspaceOutputReference 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._firewallLocation !== undefined) {
hasAnyValues = true;
internalValueResult.firewallLocation = this._firewallLocation;
}
if (this._id !== undefined) {
hasAnyValues = true;
internalValueResult.id = this._id;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._firewallLocation = undefined;
this._id = 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._firewallLocation = value.firewallLocation;
this._id = value.id;
}
}
get firewallLocation() {
return this.getStringAttribute('firewall_location');
}
set firewallLocation(value) {
this._firewallLocation = value;
}
// Temporarily expose input value. Use with caution.
get firewallLocationInput() {
return this._firewallLocation;
}
get id() {
return this.getStringAttribute('id');
}
set id(value) {
this._id = value;
}
// Temporarily expose input value. Use with caution.
get idInput() {
return this._id;
}
}
exports.FirewallPolicyInsightsLogAnalyticsWorkspaceOutputReference = FirewallPolicyInsightsLogAnalyticsWorkspaceOutputReference;
_d = JSII_RTTI_SYMBOL_1;
FirewallPolicyInsightsLogAnalyticsWorkspaceOutputReference[_d] = { fqn: "@cdktf/provider-azurerm.firewallPolicy.FirewallPolicyInsightsLogAnalyticsWorkspaceOutputReference", version: "12.27.0" };
class FirewallPolicyInsightsLogAnalyticsWorkspaceList 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 FirewallPolicyInsightsLogAnalyticsWorkspaceOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.FirewallPolicyInsightsLogAnalyticsWorkspaceList = FirewallPolicyInsightsLogAnalyticsWorkspaceList;
_e = JSII_RTTI_SYMBOL_1;
FirewallPolicyInsightsLogAnalyticsWorkspaceList[_e] = { fqn: "@cdktf/provider-azurerm.firewallPolicy.FirewallPolicyInsightsLogAnalyticsWorkspaceList", version: "12.27.0" };
function firewallPolicyInsightsToTerraform(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 {
default_log_analytics_workspace_id: cdktf.stringToTerraform(struct.defaultLogAnalyticsWorkspaceId),
enabled: cdktf.booleanToTerraform(struct.enabled),
retention_in_days: cdktf.numberToTerraform(struct.retentionInDays),
log_analytics_workspace: cdktf.listMapper(firewallPolicyInsightsLogAnalyticsWorkspaceToTerraform, true)(struct.logAnalyticsWorkspace),
};
}
exports.firewallPolicyInsightsToTerraform = firewallPolicyInsightsToTerraform;
function firewallPolicyInsightsToHclTerraform(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 = {
default_log_analytics_workspace_id: {
value: cdktf.stringToHclTerraform(struct.defaultLogAnalyticsWorkspaceId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
enabled: {
value: cdktf.booleanToHclTerraform(struct.enabled),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
retention_in_days: {
value: cdktf.numberToHclTerraform(struct.retentionInDays),
isBlock: false,
type: "simple",
storageClassType: "number",
},
log_analytics_workspace: {
value: cdktf.listMapperHcl(firewallPolicyInsightsLogAnalyticsWorkspaceToHclTerraform, true)(struct.logAnalyticsWorkspace),
isBlock: true,
type: "list",
storageClassType: "FirewallPolicyInsightsLogAnalyticsWorkspaceList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.firewallPolicyInsightsToHclTerraform = firewallPolicyInsightsToHclTerraform;
class FirewallPolicyInsightsOutputReference 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;
// log_analytics_workspace - computed: false, optional: true, required: false
this._logAnalyticsWorkspace = new FirewallPolicyInsightsLogAnalyticsWorkspaceList(this, "log_analytics_workspace", false);
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._defaultLogAnalyticsWorkspaceId !== undefined) {
hasAnyValues = true;
internalValueResult.defaultLogAnalyticsWorkspaceId = this._defaultLogAnalyticsWorkspaceId;
}
if (this._enabled !== undefined) {
hasAnyValues = true;
internalValueResult.enabled = this._enabled;
}
if (this._retentionInDays !== undefined) {
hasAnyValues = true;
internalValueResult.retentionInDays = this._retentionInDays;
}
if (this._logAnalyticsWorkspace?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.logAnalyticsWorkspace = this._logAnalyticsWorkspace?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._defaultLogAnalyticsWorkspaceId = undefined;
this._enabled = undefined;
this._retentionInDays = undefined;
this._logAnalyticsWorkspace.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._defaultLogAnalyticsWorkspaceId = value.defaultLogAnalyticsWorkspaceId;
this._enabled = value.enabled;
this._retentionInDays = value.retentionInDays;
this._logAnalyticsWorkspace.internalValue = value.logAnalyticsWorkspace;
}
}
get defaultLogAnalyticsWorkspaceId() {
return this.getStringAttribute('default_log_analytics_workspace_id');
}
set defaultLogAnalyticsWorkspaceId(value) {
this._defaultLogAnalyticsWorkspaceId = value;
}
// Temporarily expose input value. Use with caution.
get defaultLogAnalyticsWorkspaceIdInput() {
return this._defaultLogAnalyticsWorkspaceId;
}
get enabled() {
return this.getBooleanAttribute('enabled');
}
set enabled(value) {
this._enabled = value;
}
// Temporarily expose input value. Use with caution.
get enabledInput() {
return this._enabled;
}
get retentionInDays() {
return this.getNumberAttribute('retention_in_days');
}
set retentionInDays(value) {
this._retentionInDays = value;
}
resetRetentionInDays() {
this._retentionInDays = undefined;
}
// Temporarily expose input value. Use with caution.
get retentionInDaysInput() {
return this._retentionInDays;
}
get logAnalyticsWorkspace() {
return this._logAnalyticsWorkspace;
}
putLogAnalyticsWorkspace(value) {
this._logAnalyticsWorkspace.internalValue = value;
}
resetLogAnalyticsWorkspace() {
this._logAnalyticsWorkspace.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get logAnalyticsWorkspaceInput() {
return this._logAnalyticsWorkspace.internalValue;
}
}
exports.FirewallPolicyInsightsOutputReference = FirewallPolicyInsightsOutputReference;
_f = JSII_RTTI_SYMBOL_1;
FirewallPolicyInsightsOutputReference[_f] = { fqn: "@cdktf/provider-azurerm.firewallPolicy.FirewallPolicyInsightsOutputReference", version: "12.27.0" };
function firewallPolicyIntrusionDetectionSignatureOverridesToTerraform(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 {
id: cdktf.stringToTerraform(struct.id),
state: cdktf.stringToTerraform(struct.state),
};
}
exports.firewallPolicyIntrusionDetectionSignatureOverridesToTerraform = firewallPolicyIntrusionDetectionSignatureOverridesToTerraform;
function firewallPolicyIntrusionDetectionSignatureOverridesToHclTerraform(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 = {
id: {
value: cdktf.stringToHclTerraform(struct.id),
isBlock: false,
type: "simple",
storageClassType: "string",
},
state: {
value: cdktf.stringToHclTerraform(struct.state),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.firewallPolicyIntrusionDetectionSignatureOverridesToHclTerraform = firewallPolicyIntrusionDetectionSignatureOverridesToHclTerraform;
class FirewallPolicyIntrusionDetectionSignatureOverridesOutputReference 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._id !== undefined) {
hasAnyValues = true;
internalValueResult.id = this._id;
}
if (this._state !== undefined) {
hasAnyValues = true;
internalValueResult.state = this._state;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._id = undefined;
this._state = 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._id = value.id;
this._state = value.state;
}
}
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 state() {
return this.getStringAttribute('state');
}
set state(value) {
this._state = value;
}
resetState() {
this._state = undefined;
}
// Temporarily expose input value. Use with caution.
get stateInput() {
return this._state;
}
}
exports.FirewallPolicyIntrusionDetectionSignatureOverridesOutputReference = FirewallPolicyIntrusionDetectionSignatureOverridesOutputReference;
_g = JSII_RTTI_SYMBOL_1;
FirewallPolicyIntrusionDetectionSignatureOverridesOutputReference[_g] = { fqn: "@cdktf/provider-azurerm.firewallPolicy.FirewallPolicyIntrusionDetectionSignatureOverridesOutputReference", version: "12.27.0" };
class FirewallPolicyIntrusionDetectionSignatureOverridesList 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 FirewallPolicyIntrusionDetectionSignatureOverridesOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.FirewallPolicyIntrusionDetectionSignatureOverridesList = FirewallPolicyIntrusionDetectionSignatureOverridesList;
_h = JSII_RTTI_SYMBOL_1;
FirewallPolicyIntrusionDetectionSignatureOverridesList[_h] = { fqn: "@cdktf/provider-azurerm.firewallPolicy.FirewallPolicyIntrusionDetectionSignatureOverridesList", version: "12.27.0" };
function firewallPolicyIntrusionDetectionTrafficBypassToTerraform(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 {
description: cdktf.stringToTerraform(struct.description),
destination_addresses: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.destinationAddresses),
destination_ip_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.destinationIpGroups),
destination_ports: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.destinationPorts),
name: cdktf.stringToTerraform(struct.name),
protocol: cdktf.stringToTerraform(struct.protocol),
source_addresses: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.sourceAddresses),
source_ip_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.sourceIpGroups),
};
}
exports.firewallPolicyIntrusionDetectionTrafficBypassToTerraform = firewallPolicyIntrusionDetectionTrafficBypassToTerraform;
function firewallPolicyIntrusionDetectionTrafficBypassToHclTerraform(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 = {
description: {
value: cdktf.stringToHclTerraform(struct.description),
isBlock: false,
type: "simple",
storageClassType: "string",
},
destination_addresses: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.destinationAddresses),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
destination_ip_groups: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.destinationIpGroups),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
destination_ports: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.destinationPorts),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
name: {
value: cdktf.stringToHclTerraform(struct.name),
isBlock: false,
type: "simple",
storageClassType: "string",
},
protocol: {
value: cdktf.stringToHclTerraform(struct.protocol),
isBlock: false,
type: "simple",
storageClassType: "string",
},
source_addresses: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.sourceAddresses),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
source_ip_groups: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.sourceIpGroups),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.firewallPolicyIntrusionDetectionTrafficBypassToHclTerraform = firewallPolicyIntrusionDetectionTrafficBypassToHclTerraform;
class FirewallPolicyIntrusionDetectionTrafficBypassOutputReference 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._description !== undefined) {
hasAnyValues = true;
internalValueResult.description = this._description;
}
if (this._destinationAddresses !== undefined) {
hasAnyValues = true;
internalValueResult.destinationAddresses = this._destinationAddresses;
}
if (this._destinationIpGroups !== undefined) {
hasAnyValues = true;
internalValueResult.destinationIpGroups = this._destinationIpGroups;
}
if (this._destinationPorts !== undefined) {
hasAnyValues = true;
internalValueResult.destinationPorts = this._destinationPorts;
}
if (this._name !== undefined) {
hasAnyValues = true;
internalValueResult.name = this._name;
}
if (this._protocol !== undefined) {
hasAnyValues = true;
internalValueResult.protocol = this._protocol;
}
if (this._sourceAddresses !== undefined) {
hasAnyValues = true;
internalValueResult.sourceAddresses = this._sourceAddresses;
}
if (this._sourceIpGroups !== undefined) {
hasAnyValues = true;
internalValueResult.sourceIpGroups = this._sourceIpGroups;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._description = undefined;
this._destinationAddresses = undefined;
this._destinationIpGroups = undefined;
this._destinationPorts = undefined;
this._name = undefined;
this._protocol = undefined;
this._sourceAddresses = undefined;
this._sourceIpGroups = 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._description = value.description;
this._destinationAddresses = value.destinationAddresses;
this._destinationIpGroups = value.destinationIpGroups;
this._destinationPorts = value.destinationPorts;
this._name = value.name;
this._protocol = value.protocol;
this._sourceAddresses = value.sourceAddresses;
this._sourceIpGroups = value.sourceIpGroups;
}
}
get description() {
return this.getStringAttribute('description');
}
set description(value) {
this._description = value;
}
resetDescription() {
this._description = undefined;
}
// Temporarily expose input value. Use with caution.
get descriptionInput() {
return this._description;
}
get destinationAddresses() {
return cdktf.Fn.tolist(this.getListAttribute('destination_addresses'));
}
set destinationAddresses(value) {
this._destinationAddresses = value;
}
resetDestinationAddresses() {
this._destinationAddresses = undefined;
}
// Temporarily expose input value. Use with caution.
get destinationAddressesInput() {
return this._destinationAddresses;
}
get destinationIpGroups() {
return cdktf.Fn.tolist(this.getListAttribute('destination_ip_groups'));
}
set destinationIpGroups(value) {
this._destinationIpGroups = value;
}
resetDestinationIpGroups() {
this._destinationIpGroups = undefined;
}
// Temporarily expose input value. Use with caution.
get destinationIpGroupsInput() {
return this._destinationIpGroups;
}
get destinationPorts() {
return cdktf.Fn.tolist(this.getListAttribute('destination_ports'));
}
set destinationPorts(value) {
this._destinationPorts = value;
}
resetDestinationPorts() {
this._destinationPorts = undefined;
}
// Temporarily expose input value. Use with caution.
get destinationPortsInput() {
return this._destinationPorts;
}
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 protocol() {
return this.getStringAttribute('protocol');
}
set protocol(value) {
this._protocol = value;
}
// Temporarily expose input value. Use with caution.
get protocolInput() {
return this._protocol;
}
get sourceAddresses() {
return cdktf.Fn.tolist(this.getListAttribute('source_addresses'));
}
set sourceAddresses(value) {
this._sourceAddresses = value;
}
resetSourceAddresses() {
this._sourceAddresses = undefined;
}
// Temporarily expose input value. Use with caution.
get sourceAddressesInput() {
return this._sourceAddresses;
}
get sourceIpGroups() {
return cdktf.Fn.tolist(this.getListAttribute('source_ip_groups'));
}
set sourceIpGroups(value) {
this._sourceIpGroups = value;
}
resetSourceIpGroups() {
this._sourceIpGroups = undefined;
}
// Temporarily expose input value. Use with caution.
get sourceIpGroupsInput() {
return this._sourceIpGroups;
}
}
exports.FirewallPolicyIntrusionDetectionTrafficBypassOutputReference = FirewallPolicyIntrusionDetectionTrafficBypassOutputReference;
_j = JSII_RTTI_SYMBOL_1;
FirewallPolicyIntrusionDetectionTrafficBypassOutputReference[_j] = { fqn: "@cdktf/provider-azurerm.firewallPolicy.FirewallPolicyIntrusionDetectionTrafficBypassOutputReference", version: "12.27.0" };
class FirewallPolicyIntrusionDetectionTrafficBypassList 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 FirewallPolicyIntrusionDetectionTrafficBypassOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.FirewallPolicyIntrusionDetectionTrafficBypassList = FirewallPolicyIntrusionDetectionTrafficBypassList;
_k = JSII_RTTI_SYMBOL_1;
FirewallPolicyIntrusionDetectionTrafficBypassList[_k] = { fqn: "@cdktf/provider-azurerm.firewallPolicy.FirewallPolicyIntrusionDetectionTrafficBypassList", version: "12.27.0" };
function firewallPolicyIntrusionDetectionToTerraform(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 {
mode: cdktf.stringToTerraform(struct.mode),
private_ranges: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.privateRanges),
signature_overrides: cdktf.listMapper(firewallPolicyIntrusionDetectionSignatureOverridesToTerraform, true)(struct.signatureOverrides),
traffic_bypass: cdktf.listMapper(firewallPolicyIntrusionDetectionTrafficBypassToTerraform, true)(struct.trafficBypass),
};
}
exports.firewallPolicyIntrusionDetectionToTerraform = firewallPolicyIntrusionDetectionToTerraform;
function firewallPolicyIntrusionDetectionToHclTerraform(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 = {
mode: {
value: cdktf.stringToHclTerraform(struct.mode),
isBlock: false,
type: "simple",
storageClassType: "string",
},
private_ranges: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.privateRanges),
isBlock: false,
type: "list",
storageClassType: "stringList",
},
signature_overrides: {
value: cdktf.listMapperHcl(firewallPolicyIntrusionDetectionSignatureOverridesToHclTerraform, true)(struct.signatureOverrides),
isBlock: true,
type: "list",
storageClassType: "FirewallPolicyIntrusionDetectionSignatureOverridesList",
},
traffic_bypass: {
value: cdktf.listMapperHcl(firewallPolicyIntrusionDetectionTrafficBypassToHclTerraform, true)(struct.trafficBypass),
isBlock: true,
type: "list",
storageClassType: "FirewallPolicyIntrusionDetectionTrafficBypassList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.firewallPolicyIntrusionDetectionToHclTerraform = firewallPolicyIntrusionDetectionToHclTerraform;
class FirewallPolicyIntrusionDetectionOutputReference 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;
// signature_overri