@cdktf/provider-azurerm
Version:
Prebuilt azurerm Provider for Terraform CDK (cdktf)
1,178 lines • 170 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e;
Object.defineProperty(exports, "__esModule", { value: true });
exports.IotSecuritySolution = exports.IotSecuritySolutionTimeoutsOutputReference = exports.iotSecuritySolutionTimeoutsToHclTerraform = exports.iotSecuritySolutionTimeoutsToTerraform = exports.IotSecuritySolutionRecommendationsEnabledOutputReference = exports.iotSecuritySolutionRecommendationsEnabledToHclTerraform = exports.iotSecuritySolutionRecommendationsEnabledToTerraform = exports.IotSecuritySolutionAdditionalWorkspaceList = exports.IotSecuritySolutionAdditionalWorkspaceOutputReference = exports.iotSecuritySolutionAdditionalWorkspaceToHclTerraform = exports.iotSecuritySolutionAdditionalWorkspaceToTerraform = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function iotSecuritySolutionAdditionalWorkspaceToTerraform(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 {
data_types: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.dataTypes),
workspace_id: cdktf.stringToTerraform(struct.workspaceId),
};
}
exports.iotSecuritySolutionAdditionalWorkspaceToTerraform = iotSecuritySolutionAdditionalWorkspaceToTerraform;
function iotSecuritySolutionAdditionalWorkspaceToHclTerraform(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 = {
data_types: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.dataTypes),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
workspace_id: {
value: cdktf.stringToHclTerraform(struct.workspaceId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.iotSecuritySolutionAdditionalWorkspaceToHclTerraform = iotSecuritySolutionAdditionalWorkspaceToHclTerraform;
class IotSecuritySolutionAdditionalWorkspaceOutputReference 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._dataTypes !== undefined) {
hasAnyValues = true;
internalValueResult.dataTypes = this._dataTypes;
}
if (this._workspaceId !== undefined) {
hasAnyValues = true;
internalValueResult.workspaceId = this._workspaceId;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._dataTypes = undefined;
this._workspaceId = 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._dataTypes = value.dataTypes;
this._workspaceId = value.workspaceId;
}
}
get dataTypes() {
return cdktf.Fn.tolist(this.getListAttribute('data_types'));
}
set dataTypes(value) {
this._dataTypes = value;
}
// Temporarily expose input value. Use with caution.
get dataTypesInput() {
return this._dataTypes;
}
get workspaceId() {
return this.getStringAttribute('workspace_id');
}
set workspaceId(value) {
this._workspaceId = value;
}
// Temporarily expose input value. Use with caution.
get workspaceIdInput() {
return this._workspaceId;
}
}
exports.IotSecuritySolutionAdditionalWorkspaceOutputReference = IotSecuritySolutionAdditionalWorkspaceOutputReference;
_a = JSII_RTTI_SYMBOL_1;
IotSecuritySolutionAdditionalWorkspaceOutputReference[_a] = { fqn: "@cdktf/provider-azurerm.iotSecuritySolution.IotSecuritySolutionAdditionalWorkspaceOutputReference", version: "12.27.0" };
class IotSecuritySolutionAdditionalWorkspaceList 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 IotSecuritySolutionAdditionalWorkspaceOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.IotSecuritySolutionAdditionalWorkspaceList = IotSecuritySolutionAdditionalWorkspaceList;
_b = JSII_RTTI_SYMBOL_1;
IotSecuritySolutionAdditionalWorkspaceList[_b] = { fqn: "@cdktf/provider-azurerm.iotSecuritySolution.IotSecuritySolutionAdditionalWorkspaceList", version: "12.27.0" };
function iotSecuritySolutionRecommendationsEnabledToTerraform(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 {
acr_authentication: cdktf.booleanToTerraform(struct.acrAuthentication),
agent_send_unutilized_msg: cdktf.booleanToTerraform(struct.agentSendUnutilizedMsg),
baseline: cdktf.booleanToTerraform(struct.baseline),
edge_hub_mem_optimize: cdktf.booleanToTerraform(struct.edgeHubMemOptimize),
edge_logging_option: cdktf.booleanToTerraform(struct.edgeLoggingOption),
inconsistent_module_settings: cdktf.booleanToTerraform(struct.inconsistentModuleSettings),
install_agent: cdktf.booleanToTerraform(struct.installAgent),
ip_filter_deny_all: cdktf.booleanToTerraform(struct.ipFilterDenyAll),
ip_filter_permissive_rule: cdktf.booleanToTerraform(struct.ipFilterPermissiveRule),
open_ports: cdktf.booleanToTerraform(struct.openPorts),
permissive_firewall_policy: cdktf.booleanToTerraform(struct.permissiveFirewallPolicy),
permissive_input_firewall_rules: cdktf.booleanToTerraform(struct.permissiveInputFirewallRules),
permissive_output_firewall_rules: cdktf.booleanToTerraform(struct.permissiveOutputFirewallRules),
privileged_docker_options: cdktf.booleanToTerraform(struct.privilegedDockerOptions),
shared_credentials: cdktf.booleanToTerraform(struct.sharedCredentials),
vulnerable_tls_cipher_suite: cdktf.booleanToTerraform(struct.vulnerableTlsCipherSuite),
};
}
exports.iotSecuritySolutionRecommendationsEnabledToTerraform = iotSecuritySolutionRecommendationsEnabledToTerraform;
function iotSecuritySolutionRecommendationsEnabledToHclTerraform(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 = {
acr_authentication: {
value: cdktf.booleanToHclTerraform(struct.acrAuthentication),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
agent_send_unutilized_msg: {
value: cdktf.booleanToHclTerraform(struct.agentSendUnutilizedMsg),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
baseline: {
value: cdktf.booleanToHclTerraform(struct.baseline),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
edge_hub_mem_optimize: {
value: cdktf.booleanToHclTerraform(struct.edgeHubMemOptimize),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
edge_logging_option: {
value: cdktf.booleanToHclTerraform(struct.edgeLoggingOption),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
inconsistent_module_settings: {
value: cdktf.booleanToHclTerraform(struct.inconsistentModuleSettings),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
install_agent: {
value: cdktf.booleanToHclTerraform(struct.installAgent),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
ip_filter_deny_all: {
value: cdktf.booleanToHclTerraform(struct.ipFilterDenyAll),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
ip_filter_permissive_rule: {
value: cdktf.booleanToHclTerraform(struct.ipFilterPermissiveRule),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
open_ports: {
value: cdktf.booleanToHclTerraform(struct.openPorts),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
permissive_firewall_policy: {
value: cdktf.booleanToHclTerraform(struct.permissiveFirewallPolicy),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
permissive_input_firewall_rules: {
value: cdktf.booleanToHclTerraform(struct.permissiveInputFirewallRules),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
permissive_output_firewall_rules: {
value: cdktf.booleanToHclTerraform(struct.permissiveOutputFirewallRules),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
privileged_docker_options: {
value: cdktf.booleanToHclTerraform(struct.privilegedDockerOptions),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
shared_credentials: {
value: cdktf.booleanToHclTerraform(struct.sharedCredentials),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
vulnerable_tls_cipher_suite: {
value: cdktf.booleanToHclTerraform(struct.vulnerableTlsCipherSuite),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.iotSecuritySolutionRecommendationsEnabledToHclTerraform = iotSecuritySolutionRecommendationsEnabledToHclTerraform;
class IotSecuritySolutionRecommendationsEnabledOutputReference 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._acrAuthentication !== undefined) {
hasAnyValues = true;
internalValueResult.acrAuthentication = this._acrAuthentication;
}
if (this._agentSendUnutilizedMsg !== undefined) {
hasAnyValues = true;
internalValueResult.agentSendUnutilizedMsg = this._agentSendUnutilizedMsg;
}
if (this._baseline !== undefined) {
hasAnyValues = true;
internalValueResult.baseline = this._baseline;
}
if (this._edgeHubMemOptimize !== undefined) {
hasAnyValues = true;
internalValueResult.edgeHubMemOptimize = this._edgeHubMemOptimize;
}
if (this._edgeLoggingOption !== undefined) {
hasAnyValues = true;
internalValueResult.edgeLoggingOption = this._edgeLoggingOption;
}
if (this._inconsistentModuleSettings !== undefined) {
hasAnyValues = true;
internalValueResult.inconsistentModuleSettings = this._inconsistentModuleSettings;
}
if (this._installAgent !== undefined) {
hasAnyValues = true;
internalValueResult.installAgent = this._installAgent;
}
if (this._ipFilterDenyAll !== undefined) {
hasAnyValues = true;
internalValueResult.ipFilterDenyAll = this._ipFilterDenyAll;
}
if (this._ipFilterPermissiveRule !== undefined) {
hasAnyValues = true;
internalValueResult.ipFilterPermissiveRule = this._ipFilterPermissiveRule;
}
if (this._openPorts !== undefined) {
hasAnyValues = true;
internalValueResult.openPorts = this._openPorts;
}
if (this._permissiveFirewallPolicy !== undefined) {
hasAnyValues = true;
internalValueResult.permissiveFirewallPolicy = this._permissiveFirewallPolicy;
}
if (this._permissiveInputFirewallRules !== undefined) {
hasAnyValues = true;
internalValueResult.permissiveInputFirewallRules = this._permissiveInputFirewallRules;
}
if (this._permissiveOutputFirewallRules !== undefined) {
hasAnyValues = true;
internalValueResult.permissiveOutputFirewallRules = this._permissiveOutputFirewallRules;
}
if (this._privilegedDockerOptions !== undefined) {
hasAnyValues = true;
internalValueResult.privilegedDockerOptions = this._privilegedDockerOptions;
}
if (this._sharedCredentials !== undefined) {
hasAnyValues = true;
internalValueResult.sharedCredentials = this._sharedCredentials;
}
if (this._vulnerableTlsCipherSuite !== undefined) {
hasAnyValues = true;
internalValueResult.vulnerableTlsCipherSuite = this._vulnerableTlsCipherSuite;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._acrAuthentication = undefined;
this._agentSendUnutilizedMsg = undefined;
this._baseline = undefined;
this._edgeHubMemOptimize = undefined;
this._edgeLoggingOption = undefined;
this._inconsistentModuleSettings = undefined;
this._installAgent = undefined;
this._ipFilterDenyAll = undefined;
this._ipFilterPermissiveRule = undefined;
this._openPorts = undefined;
this._permissiveFirewallPolicy = undefined;
this._permissiveInputFirewallRules = undefined;
this._permissiveOutputFirewallRules = undefined;
this._privilegedDockerOptions = undefined;
this._sharedCredentials = undefined;
this._vulnerableTlsCipherSuite = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._acrAuthentication = value.acrAuthentication;
this._agentSendUnutilizedMsg = value.agentSendUnutilizedMsg;
this._baseline = value.baseline;
this._edgeHubMemOptimize = value.edgeHubMemOptimize;
this._edgeLoggingOption = value.edgeLoggingOption;
this._inconsistentModuleSettings = value.inconsistentModuleSettings;
this._installAgent = value.installAgent;
this._ipFilterDenyAll = value.ipFilterDenyAll;
this._ipFilterPermissiveRule = value.ipFilterPermissiveRule;
this._openPorts = value.openPorts;
this._permissiveFirewallPolicy = value.permissiveFirewallPolicy;
this._permissiveInputFirewallRules = value.permissiveInputFirewallRules;
this._permissiveOutputFirewallRules = value.permissiveOutputFirewallRules;
this._privilegedDockerOptions = value.privilegedDockerOptions;
this._sharedCredentials = value.sharedCredentials;
this._vulnerableTlsCipherSuite = value.vulnerableTlsCipherSuite;
}
}
get acrAuthentication() {
return this.getBooleanAttribute('acr_authentication');
}
set acrAuthentication(value) {
this._acrAuthentication = value;
}
resetAcrAuthentication() {
this._acrAuthentication = undefined;
}
// Temporarily expose input value. Use with caution.
get acrAuthenticationInput() {
return this._acrAuthentication;
}
get agentSendUnutilizedMsg() {
return this.getBooleanAttribute('agent_send_unutilized_msg');
}
set agentSendUnutilizedMsg(value) {
this._agentSendUnutilizedMsg = value;
}
resetAgentSendUnutilizedMsg() {
this._agentSendUnutilizedMsg = undefined;
}
// Temporarily expose input value. Use with caution.
get agentSendUnutilizedMsgInput() {
return this._agentSendUnutilizedMsg;
}
get baseline() {
return this.getBooleanAttribute('baseline');
}
set baseline(value) {
this._baseline = value;
}
resetBaseline() {
this._baseline = undefined;
}
// Temporarily expose input value. Use with caution.
get baselineInput() {
return this._baseline;
}
get edgeHubMemOptimize() {
return this.getBooleanAttribute('edge_hub_mem_optimize');
}
set edgeHubMemOptimize(value) {
this._edgeHubMemOptimize = value;
}
resetEdgeHubMemOptimize() {
this._edgeHubMemOptimize = undefined;
}
// Temporarily expose input value. Use with caution.
get edgeHubMemOptimizeInput() {
return this._edgeHubMemOptimize;
}
get edgeLoggingOption() {
return this.getBooleanAttribute('edge_logging_option');
}
set edgeLoggingOption(value) {
this._edgeLoggingOption = value;
}
resetEdgeLoggingOption() {
this._edgeLoggingOption = undefined;
}
// Temporarily expose input value. Use with caution.
get edgeLoggingOptionInput() {
return this._edgeLoggingOption;
}
get inconsistentModuleSettings() {
return this.getBooleanAttribute('inconsistent_module_settings');
}
set inconsistentModuleSettings(value) {
this._inconsistentModuleSettings = value;
}
resetInconsistentModuleSettings() {
this._inconsistentModuleSettings = undefined;
}
// Temporarily expose input value. Use with caution.
get inconsistentModuleSettingsInput() {
return this._inconsistentModuleSettings;
}
get installAgent() {
return this.getBooleanAttribute('install_agent');
}
set installAgent(value) {
this._installAgent = value;
}
resetInstallAgent() {
this._installAgent = undefined;
}
// Temporarily expose input value. Use with caution.
get installAgentInput() {
return this._installAgent;
}
get ipFilterDenyAll() {
return this.getBooleanAttribute('ip_filter_deny_all');
}
set ipFilterDenyAll(value) {
this._ipFilterDenyAll = value;
}
resetIpFilterDenyAll() {
this._ipFilterDenyAll = undefined;
}
// Temporarily expose input value. Use with caution.
get ipFilterDenyAllInput() {
return this._ipFilterDenyAll;
}
get ipFilterPermissiveRule() {
return this.getBooleanAttribute('ip_filter_permissive_rule');
}
set ipFilterPermissiveRule(value) {
this._ipFilterPermissiveRule = value;
}
resetIpFilterPermissiveRule() {
this._ipFilterPermissiveRule = undefined;
}
// Temporarily expose input value. Use with caution.
get ipFilterPermissiveRuleInput() {
return this._ipFilterPermissiveRule;
}
get openPorts() {
return this.getBooleanAttribute('open_ports');
}
set openPorts(value) {
this._openPorts = value;
}
resetOpenPorts() {
this._openPorts = undefined;
}
// Temporarily expose input value. Use with caution.
get openPortsInput() {
return this._openPorts;
}
get permissiveFirewallPolicy() {
return this.getBooleanAttribute('permissive_firewall_policy');
}
set permissiveFirewallPolicy(value) {
this._permissiveFirewallPolicy = value;
}
resetPermissiveFirewallPolicy() {
this._permissiveFirewallPolicy = undefined;
}
// Temporarily expose input value. Use with caution.
get permissiveFirewallPolicyInput() {
return this._permissiveFirewallPolicy;
}
get permissiveInputFirewallRules() {
return this.getBooleanAttribute('permissive_input_firewall_rules');
}
set permissiveInputFirewallRules(value) {
this._permissiveInputFirewallRules = value;
}
resetPermissiveInputFirewallRules() {
this._permissiveInputFirewallRules = undefined;
}
// Temporarily expose input value. Use with caution.
get permissiveInputFirewallRulesInput() {
return this._permissiveInputFirewallRules;
}
get permissiveOutputFirewallRules() {
return this.getBooleanAttribute('permissive_output_firewall_rules');
}
set permissiveOutputFirewallRules(value) {
this._permissiveOutputFirewallRules = value;
}
resetPermissiveOutputFirewallRules() {
this._permissiveOutputFirewallRules = undefined;
}
// Temporarily expose input value. Use with caution.
get permissiveOutputFirewallRulesInput() {
return this._permissiveOutputFirewallRules;
}
get privilegedDockerOptions() {
return this.getBooleanAttribute('privileged_docker_options');
}
set privilegedDockerOptions(value) {
this._privilegedDockerOptions = value;
}
resetPrivilegedDockerOptions() {
this._privilegedDockerOptions = undefined;
}
// Temporarily expose input value. Use with caution.
get privilegedDockerOptionsInput() {
return this._privilegedDockerOptions;
}
get sharedCredentials() {
return this.getBooleanAttribute('shared_credentials');
}
set sharedCredentials(value) {
this._sharedCredentials = value;
}
resetSharedCredentials() {
this._sharedCredentials = undefined;
}
// Temporarily expose input value. Use with caution.
get sharedCredentialsInput() {
return this._sharedCredentials;
}
get vulnerableTlsCipherSuite() {
return this.getBooleanAttribute('vulnerable_tls_cipher_suite');
}
set vulnerableTlsCipherSuite(value) {
this._vulnerableTlsCipherSuite = value;
}
resetVulnerableTlsCipherSuite() {
this._vulnerableTlsCipherSuite = undefined;
}
// Temporarily expose input value. Use with caution.
get vulnerableTlsCipherSuiteInput() {
return this._vulnerableTlsCipherSuite;
}
}
exports.IotSecuritySolutionRecommendationsEnabledOutputReference = IotSecuritySolutionRecommendationsEnabledOutputReference;
_c = JSII_RTTI_SYMBOL_1;
IotSecuritySolutionRecommendationsEnabledOutputReference[_c] = { fqn: "@cdktf/provider-azurerm.iotSecuritySolution.IotSecuritySolutionRecommendationsEnabledOutputReference", version: "12.27.0" };
function iotSecuritySolutionTimeoutsToTerraform(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 {
create: cdktf.stringToTerraform(struct.create),
delete: cdktf.stringToTerraform(struct.delete),
read: cdktf.stringToTerraform(struct.read),
update: cdktf.stringToTerraform(struct.update),
};
}
exports.iotSecuritySolutionTimeoutsToTerraform = iotSecuritySolutionTimeoutsToTerraform;
function iotSecuritySolutionTimeoutsToHclTerraform(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 = {
create: {
value: cdktf.stringToHclTerraform(struct.create),
isBlock: false,
type: "simple",
storageClassType: "string",
},
delete: {
value: cdktf.stringToHclTerraform(struct.delete),
isBlock: false,
type: "simple",
storageClassType: "string",
},
read: {
value: cdktf.stringToHclTerraform(struct.read),
isBlock: false,
type: "simple",
storageClassType: "string",
},
update: {
value: cdktf.stringToHclTerraform(struct.update),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.iotSecuritySolutionTimeoutsToHclTerraform = iotSecuritySolutionTimeoutsToHclTerraform;
class IotSecuritySolutionTimeoutsOutputReference 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);
this.isEmptyObject = false;
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._create !== undefined) {
hasAnyValues = true;
internalValueResult.create = this._create;
}
if (this._delete !== undefined) {
hasAnyValues = true;
internalValueResult.delete = this._delete;
}
if (this._read !== undefined) {
hasAnyValues = true;
internalValueResult.read = this._read;
}
if (this._update !== undefined) {
hasAnyValues = true;
internalValueResult.update = this._update;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._create = undefined;
this._delete = undefined;
this._read = undefined;
this._update = 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._create = value.create;
this._delete = value.delete;
this._read = value.read;
this._update = value.update;
}
}
get create() {
return this.getStringAttribute('create');
}
set create(value) {
this._create = value;
}
resetCreate() {
this._create = undefined;
}
// Temporarily expose input value. Use with caution.
get createInput() {
return this._create;
}
get delete() {
return this.getStringAttribute('delete');
}
set delete(value) {
this._delete = value;
}
resetDelete() {
this._delete = undefined;
}
// Temporarily expose input value. Use with caution.
get deleteInput() {
return this._delete;
}
get read() {
return this.getStringAttribute('read');
}
set read(value) {
this._read = value;
}
resetRead() {
this._read = undefined;
}
// Temporarily expose input value. Use with caution.
get readInput() {
return this._read;
}
get update() {
return this.getStringAttribute('update');
}
set update(value) {
this._update = value;
}
resetUpdate() {
this._update = undefined;
}
// Temporarily expose input value. Use with caution.
get updateInput() {
return this._update;
}
}
exports.IotSecuritySolutionTimeoutsOutputReference = IotSecuritySolutionTimeoutsOutputReference;
_d = JSII_RTTI_SYMBOL_1;
IotSecuritySolutionTimeoutsOutputReference[_d] = { fqn: "@cdktf/provider-azurerm.iotSecuritySolution.IotSecuritySolutionTimeoutsOutputReference", version: "12.27.0" };
/**
* Represents a {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/iot_security_solution azurerm_iot_security_solution}
*/
class IotSecuritySolution extends cdktf.TerraformResource {
// ==============
// STATIC Methods
// ==============
/**
* Generates CDKTF code for importing a IotSecuritySolution 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 IotSecuritySolution to import
* @param importFromId The id of the existing IotSecuritySolution that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/iot_security_solution#import import section} in the documentation of this resource for the id to use
* @param provider? Optional instance of the provider where the IotSecuritySolution to import is found
*/
static generateConfigForImport(scope, importToId, importFromId, provider) {
return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "azurerm_iot_security_solution", importId: importFromId, provider });
}
// ===========
// INITIALIZER
// ===========
/**
* Create a new {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/iot_security_solution azurerm_iot_security_solution} 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 IotSecuritySolutionConfig
*/
constructor(scope, id, config) {
super(scope, id, {
terraformResourceType: 'azurerm_iot_security_solution',
terraformGeneratorMetadata: {
providerName: 'azurerm',
providerVersion: '3.116.0',
providerVersionConstraint: '~> 3.10'
},
provider: config.provider,
dependsOn: config.dependsOn,
count: config.count,
lifecycle: config.lifecycle,
provisioners: config.provisioners,
connection: config.connection,
forEach: config.forEach
});
// additional_workspace - computed: false, optional: true, required: false
this._additionalWorkspace = new IotSecuritySolutionAdditionalWorkspaceList(this, "additional_workspace", true);
// recommendations_enabled - computed: false, optional: true, required: false
this._recommendationsEnabled = new IotSecuritySolutionRecommendationsEnabledOutputReference(this, "recommendations_enabled");
// timeouts - computed: false, optional: true, required: false
this._timeouts = new IotSecuritySolutionTimeoutsOutputReference(this, "timeouts");
this._disabledDataSources = config.disabledDataSources;
this._displayName = config.displayName;
this._enabled = config.enabled;
this._eventsToExport = config.eventsToExport;
this._id = config.id;
this._iothubIds = config.iothubIds;
this._location = config.location;
this._logAnalyticsWorkspaceId = config.logAnalyticsWorkspaceId;
this._logUnmaskedIpsEnabled = config.logUnmaskedIpsEnabled;
this._name = config.name;
this._queryForResources = config.queryForResources;
this._querySubscriptionIds = config.querySubscriptionIds;
this._resourceGroupName = config.resourceGroupName;
this._tags = config.tags;
this._additionalWorkspace.internalValue = config.additionalWorkspace;
this._recommendationsEnabled.internalValue = config.recommendationsEnabled;
this._timeouts.internalValue = config.timeouts;
}
get disabledDataSources() {
return cdktf.Fn.tolist(this.getListAttribute('disabled_data_sources'));
}
set disabledDataSources(value) {
this._disabledDataSources = value;
}
resetDisabledDataSources() {
this._disabledDataSources = undefined;
}
// Temporarily expose input value. Use with caution.
get disabledDataSourcesInput() {
return this._disabledDataSources;
}
get displayName() {
return this.getStringAttribute('display_name');
}
set displayName(value) {
this._displayName = value;
}
// Temporarily expose input value. Use with caution.
get displayNameInput() {
return this._displayName;
}
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 eventsToExport() {
return cdktf.Fn.tolist(this.getListAttribute('events_to_export'));
}
set eventsToExport(value) {
this._eventsToExport = value;
}
resetEventsToExport() {
this._eventsToExport = undefined;
}
// Temporarily expose input value. Use with caution.
get eventsToExportInput() {
return this._eventsToExport;
}
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 iothubIds() {
return cdktf.Fn.tolist(this.getListAttribute('iothub_ids'));
}
set iothubIds(value) {
this._iothubIds = value;
}
// Temporarily expose input value. Use with caution.
get iothubIdsInput() {
return this._iothubIds;
}
get location() {
return this.getStringAttribute('location');
}
set location(value) {
this._location = value;
}
// Temporarily expose input value. Use with caution.
get locationInput() {
return this._location;
}
get logAnalyticsWorkspaceId() {
return this.getStringAttribute('log_analytics_workspace_id');
}
set logAnalyticsWorkspaceId(value) {
this._logAnalyticsWorkspaceId = value;
}
resetLogAnalyticsWorkspaceId() {
this._logAnalyticsWorkspaceId = undefined;
}
// Temporarily expose input value. Use with caution.
get logAnalyticsWorkspaceIdInput() {
return this._logAnalyticsWorkspaceId;
}
get logUnmaskedIpsEnabled() {
return this.getBooleanAttribute('log_unmasked_ips_enabled');
}
set logUnmaskedIpsEnabled(value) {
this._logUnmaskedIpsEnabled = value;
}
resetLogUnmaskedIpsEnabled() {
this._logUnmaskedIpsEnabled = undefined;
}
// Temporarily expose input value. Use with caution.
get logUnmaskedIpsEnabledInput() {
return this._logUnmaskedIpsEnabled;
}
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 queryForResources() {
return this.getStringAttribute('query_for_resources');
}
set queryForResources(value) {
this._queryForResources = value;
}
resetQueryForResources() {
this._queryForResources = undefined;
}
// Temporarily expose input value. Use with caution.
get queryForResourcesInput() {
return this._queryForResources;
}
get querySubscriptionIds() {
return cdktf.Fn.tolist(this.getListAttribute('query_subscription_ids'));
}
set querySubscriptionIds(value) {
this._querySubscriptionIds = value;
}
resetQuerySubscriptionIds() {
this._querySubscriptionIds = undefined;
}
// Temporarily expose input value. Use with caution.
get querySubscriptionIdsInput() {
return this._querySubscriptionIds;
}
get resourceGroupName() {
return this.getStringAttribute('resource_group_name');
}
set resourceGroupName(value) {
this._resourceGroupName = value;
}
// Temporarily expose input value. Use with caution.
get resourceGroupNameInput() {
return this._resourceGroupName;
}
get tags() {
return this.getStringMapAttribute('tags');
}
set tags(value) {
this._tags = value;
}
resetTags() {
this._tags = undefined;
}
// Temporarily expose input value. Use with caution.
get tagsInput() {
return this._tags;
}
get additionalWorkspace() {
return this._additionalWorkspace;
}
putAdditionalWorkspace(value) {
this._additionalWorkspace.internalValue = value;
}
resetAdditionalWorkspace() {
this._additionalWorkspace.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get additionalWorkspaceInput() {
return this._additionalWorkspace.internalValue;
}
get recommendationsEnabled() {
return this._recommendationsEnabled;
}
putRecommendationsEnabled(value) {
this._recommendationsEnabled.internalValue = value;
}
resetRecommendationsEnabled() {
this._recommendationsEnabled.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get recommendationsEnabledInput() {
return this._recommendationsEnabled.internalValue;
}
get timeouts() {
return this._timeouts;
}
putTimeouts(value) {
this._timeouts.internalValue = value;
}
resetTimeouts() {
this._timeouts.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get timeoutsInput() {
return this._timeouts.internalValue;
}
// =========
// SYNTHESIS
// =========
synthesizeAttributes() {
return {
disabled_data_sources: cdktf.listMapper(cdktf.stringToTerraform, false)(this._disabledDataSources),
display_name: cdktf.stringToTerraform(this._displayName),
enabled: cdktf.booleanToTerraform(this._enabled),
events_to_export: cdktf.listMapper(cdktf.stringToTerraform, false)(this._eventsToExport),
id: cdktf.stringToTerraform(this._id),
iothub_ids: cdktf.listMapper(cdktf.stringToTerraform, false)(this._iothubIds),
location: cdktf.stringToTerraform(this._location),
log_analytics_workspace_id: cdktf.stringToTerraform(this._logAnalyticsWorkspaceId),
log_unmasked_ips_enabled: cdktf.booleanToTerraform(this._logUnmaskedIpsEnabled),
name: cdktf.stringToTerraform(this._name),
query_for_resources: cdktf.stringToTerraform(this._queryForResources),
query_subscription_ids: cdktf.listMapper(cdktf.stringToTerraform, false)(this._querySubscriptionIds),
resource_group_name: cdktf.stringToTerraform(this._resourceGroupName),
tags: cdktf.hashMapper(cdktf.stringToTerraform)(this._tags),
additional_workspace: cdktf.listMapper(iotSecuritySolutionAdditionalWorkspaceToTerraform, true)(this._additionalWorkspace.internalValue),
recommendations_enabled: iotSecuritySolutionRecommendationsEnabledToTerraform(this._recommendationsEnabled.internalValue),
timeouts: iotSecuritySolutionTimeoutsToTerraform(this._timeouts.internalValue),
};
}
synthesizeHclAttributes() {
const attrs = {
disabled_data_sources: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(this._disabledDataSources),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
display_name: {
value: cdktf.stringToHclTerraform(this._displayName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
enabled: {
value: cdktf.booleanToHclTerraform(this._enabled),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
events_to_export: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(this._eventsToExport),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
id: {
value: cdktf.stringToHclTerraform(this._id),
isBlock: false,
type: "simple",
storageClassType: "string",
},
iothub_ids: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(this._iothubIds),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
location: {
value: cdktf.stringToHclTerraform(this._location),
isBlock: false,
type: "simple",
storageClassType: "string",
},
log_analytics_workspace_id: {
value: cdktf.stringToHclTerraform(this._logAnalyticsWorkspaceId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
log_unmasked_ips_enabled: {
value: cdktf.booleanToHclTerraform(this._logUnmaskedIpsEnabled),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
name: {
value: cdktf.stringToHclTerraform(this._name),
isBlock: false,
type: "simple",
storageClassType: "string",
},
query_for_resources: {
value: cdktf.stringToHclTerraform(this._queryForResources),
isBlock: false,
type: "simple",
storageClassType: "string",
},
query_subscription_ids: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(this._querySubscriptionIds),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
resource_group_name: {
value: cdktf.stringToHclTerraform(this._resourceGroupName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
tags: {
value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(this._tags),
isBlock: false,
type: "map",
storageClassType: "stringMap",
},
additional_workspace: {
value: cdktf.listMapperHcl(iotSecuritySolutionAdditionalWorkspaceToHclTerraform, true)(this._additionalWorkspace.internalValue),
isBlock: true,
type: "set",
storageClassType: "IotSecuritySolutionAdditionalWorkspaceList",
},
recommendations_enabled: {
value: iotSecuritySolutionRecommendationsEnabledToHclTerraform(this._recommendationsEnabled.internalValue),
isBlock: true,
type: "list",
storageClassType: "IotSecuritySolutionRecommendationsEnabledList",
},
timeouts: {
value: iotSecuritySolutionTimeoutsToHclTerraform(this._timeouts.internalValue),
isBlock: true,
type: "struct",
storageClassType: "IotSecuritySolutionTimeouts",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
}
exports.IotSecuritySolution = IotSecuritySolution;
_e = JSII_RTTI_SYMBOL_1;
IotSecuritySolution[_e] = { fqn: "@cdktf/provider-azurerm.iotSecuritySolution.IotSecuritySolution", version: "12.27.0" };
// =================
// STATIC PROPERTIES
// =================
IotSecuritySolution.tfResourceType = "azurerm_iot_security_solution";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW90LXNlY3VyaXR5LXNvbHV0aW9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBU0EsK0JBQStCO0FBOEYvQixTQUFnQixpREFBaUQsQ0FBQyxNQUFtRTtJQUNuSSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQUMsT0FBTyxNQUFNLENBQUM7SUFBQyxDQUFDO0lBQzVGLElBQUksS0FBSyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxvSEFBb0gsQ0FBQyxDQUFDO0lBQ3hJLENBQUM7SUFDRCxPQUFPO1FBQ0wsVUFBVSxFQUFFLEtBQUssQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLGlCQUFpQixFQUFFLEtBQUssQ0FBQyxDQUFDLE1BQU8sQ0FBQyxTQUFTLENBQUM7UUFDL0UsWUFBWSxFQUFFLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxNQUFPLENBQUMsV0FBVyxDQUFDO0tBQzNELENBQUE7QUFDSCxDQUFDO0FBVEQsOEdBU0M7QUFHRCxTQUFnQixvREFBb0QsQ0FBQyxNQUFtRTtJQUN0SSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQUMsT0FBTyxNQUFNLENBQUM7SUFBQyxDQUFDO0lBQzVGLElBQUksS0FBSyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxvSEFBb0gsQ0FBQyxDQUFDO0lBQ3hJLENBQUM7SUFDRCxNQUFNLEtBQUssR0FBRztRQUNaLFVBQVUsRUFBRTtZQUNWLEtBQUssRUFBRSxLQUFLLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsRUFBRSxLQUFLLENBQUMsQ0FBQyxNQUFPLENBQUMsU0FBUyxDQUFDO1lBQ2hGLE9BQU8sRUFBRSxLQUFLO1lBQ2QsSUFBSSxFQUFFLEtBQUs7WUFDWCxnQkFBZ0IsRUFBRSxZQUFZO1NBQy9CO1FBQ0QsWUFBWSxFQUFFO1lBQ1osS0FBSyxFQUFFLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxNQUFPLENBQUMsV0FBVyxDQUFDO1lBQ3RELE9BQU8sRUFBRSxLQUFLO1lBQ2QsSUFBSSxFQUFFLFFBQVE7WUFDZCxnQkFBZ0IsRUFBRSxRQUFRO1NBQzNCO0tBQ0YsQ0FBQztJQUVGLDhCQUE4QjtJQUM5QixPQUFPLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxLQUFLLFNBQVMsSUFBSSxLQUFLLENBQUMsS0FBSyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUM7QUFDNUgsQ0FBQztBQXRCRCxvSEFzQkM7QUFFRCxNQUFhLHFEQUFzRCxTQUFRLEtBQUssQ0FBQyxhQUFhO0lBSTVGOzs7OztNQUtFO0lBQ0YsWUFBbUIsaUJBQTZDLEVBQUUsa0JBQTBCLEVBQUUsa0JBQTBCLEVBQUUsc0JBQStCO1FBQ3ZKLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxrQkFBa0IsRUFBRSxzQkFBc0IsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO1FBVm5GLGtCQUFhLEdBQUcsS0FBSyxDQUFDO0lBVzlCLENBQUM7SUFFRCxJQUFXLGFBQWE7UUFDdEIsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDekIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDO1FBQzlCLENBQUM7UUFDRCxJQUFJLFlBQVksR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDO1FBQ3RDLE1BQU0sbUJBQW1CLEdBQVEsRUFBRSxDQUFDO1FBQ3BDLElBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUNsQyxZQUFZLEdBQUcsSUFBSSxDQUFDO1lBQ3BCLG1CQUFtQixDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDO1FBQ2xELENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxZQUFZLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDcEMsWUFBWSxHQUFHLElBQUksQ0FBQztZQUNwQixtQkFBbUIsQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFlBQVks