UNPKG

@cdktf/provider-azurerm

Version:

Prebuilt azurerm Provider for Terraform CDK (cdktf)

1,104 lines 152 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l; Object.defineProperty(exports, "__esModule", { value: true }); exports.ChaosStudioExperiment = exports.ChaosStudioExperimentTimeoutsOutputReference = exports.chaosStudioExperimentTimeoutsToHclTerraform = exports.chaosStudioExperimentTimeoutsToTerraform = exports.ChaosStudioExperimentStepsList = exports.ChaosStudioExperimentStepsOutputReference = exports.chaosStudioExperimentStepsToHclTerraform = exports.chaosStudioExperimentStepsToTerraform = exports.ChaosStudioExperimentStepsBranchList = exports.ChaosStudioExperimentStepsBranchOutputReference = exports.chaosStudioExperimentStepsBranchToHclTerraform = exports.chaosStudioExperimentStepsBranchToTerraform = exports.ChaosStudioExperimentStepsBranchActionsList = exports.ChaosStudioExperimentStepsBranchActionsOutputReference = exports.chaosStudioExperimentStepsBranchActionsToHclTerraform = exports.chaosStudioExperimentStepsBranchActionsToTerraform = exports.ChaosStudioExperimentSelectorsList = exports.ChaosStudioExperimentSelectorsOutputReference = exports.chaosStudioExperimentSelectorsToHclTerraform = exports.chaosStudioExperimentSelectorsToTerraform = exports.ChaosStudioExperimentIdentityOutputReference = exports.chaosStudioExperimentIdentityToHclTerraform = exports.chaosStudioExperimentIdentityToTerraform = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function chaosStudioExperimentIdentityToTerraform(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.chaosStudioExperimentIdentityToTerraform = chaosStudioExperimentIdentityToTerraform; function chaosStudioExperimentIdentityToHclTerraform(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.chaosStudioExperimentIdentityToHclTerraform = chaosStudioExperimentIdentityToHclTerraform; class ChaosStudioExperimentIdentityOutputReference 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.ChaosStudioExperimentIdentityOutputReference = ChaosStudioExperimentIdentityOutputReference; _a = JSII_RTTI_SYMBOL_1; ChaosStudioExperimentIdentityOutputReference[_a] = { fqn: "@cdktf/provider-azurerm.chaosStudioExperiment.ChaosStudioExperimentIdentityOutputReference", version: "12.27.0" }; function chaosStudioExperimentSelectorsToTerraform(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 { chaos_studio_target_ids: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.chaosStudioTargetIds), name: cdktf.stringToTerraform(struct.name), }; } exports.chaosStudioExperimentSelectorsToTerraform = chaosStudioExperimentSelectorsToTerraform; function chaosStudioExperimentSelectorsToHclTerraform(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 = { chaos_studio_target_ids: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.chaosStudioTargetIds), isBlock: false, type: "list", storageClassType: "stringList", }, name: { value: cdktf.stringToHclTerraform(struct.name), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.chaosStudioExperimentSelectorsToHclTerraform = chaosStudioExperimentSelectorsToHclTerraform; class ChaosStudioExperimentSelectorsOutputReference 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._chaosStudioTargetIds !== undefined) { hasAnyValues = true; internalValueResult.chaosStudioTargetIds = this._chaosStudioTargetIds; } if (this._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._chaosStudioTargetIds = undefined; this._name = 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._chaosStudioTargetIds = value.chaosStudioTargetIds; this._name = value.name; } } get chaosStudioTargetIds() { return this.getListAttribute('chaos_studio_target_ids'); } set chaosStudioTargetIds(value) { this._chaosStudioTargetIds = value; } // Temporarily expose input value. Use with caution. get chaosStudioTargetIdsInput() { return this._chaosStudioTargetIds; } get name() { return this.getStringAttribute('name'); } set name(value) { this._name = value; } // Temporarily expose input value. Use with caution. get nameInput() { return this._name; } } exports.ChaosStudioExperimentSelectorsOutputReference = ChaosStudioExperimentSelectorsOutputReference; _b = JSII_RTTI_SYMBOL_1; ChaosStudioExperimentSelectorsOutputReference[_b] = { fqn: "@cdktf/provider-azurerm.chaosStudioExperiment.ChaosStudioExperimentSelectorsOutputReference", version: "12.27.0" }; class ChaosStudioExperimentSelectorsList 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 ChaosStudioExperimentSelectorsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ChaosStudioExperimentSelectorsList = ChaosStudioExperimentSelectorsList; _c = JSII_RTTI_SYMBOL_1; ChaosStudioExperimentSelectorsList[_c] = { fqn: "@cdktf/provider-azurerm.chaosStudioExperiment.ChaosStudioExperimentSelectorsList", version: "12.27.0" }; function chaosStudioExperimentStepsBranchActionsToTerraform(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_type: cdktf.stringToTerraform(struct.actionType), duration: cdktf.stringToTerraform(struct.duration), parameters: cdktf.hashMapper(cdktf.stringToTerraform)(struct.parameters), selector_name: cdktf.stringToTerraform(struct.selectorName), urn: cdktf.stringToTerraform(struct.urn), }; } exports.chaosStudioExperimentStepsBranchActionsToTerraform = chaosStudioExperimentStepsBranchActionsToTerraform; function chaosStudioExperimentStepsBranchActionsToHclTerraform(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_type: { value: cdktf.stringToHclTerraform(struct.actionType), isBlock: false, type: "simple", storageClassType: "string", }, duration: { value: cdktf.stringToHclTerraform(struct.duration), isBlock: false, type: "simple", storageClassType: "string", }, parameters: { value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(struct.parameters), isBlock: false, type: "map", storageClassType: "stringMap", }, selector_name: { value: cdktf.stringToHclTerraform(struct.selectorName), isBlock: false, type: "simple", storageClassType: "string", }, urn: { value: cdktf.stringToHclTerraform(struct.urn), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.chaosStudioExperimentStepsBranchActionsToHclTerraform = chaosStudioExperimentStepsBranchActionsToHclTerraform; class ChaosStudioExperimentStepsBranchActionsOutputReference 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._actionType !== undefined) { hasAnyValues = true; internalValueResult.actionType = this._actionType; } if (this._duration !== undefined) { hasAnyValues = true; internalValueResult.duration = this._duration; } if (this._parameters !== undefined) { hasAnyValues = true; internalValueResult.parameters = this._parameters; } if (this._selectorName !== undefined) { hasAnyValues = true; internalValueResult.selectorName = this._selectorName; } if (this._urn !== undefined) { hasAnyValues = true; internalValueResult.urn = this._urn; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._actionType = undefined; this._duration = undefined; this._parameters = undefined; this._selectorName = undefined; this._urn = 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._actionType = value.actionType; this._duration = value.duration; this._parameters = value.parameters; this._selectorName = value.selectorName; this._urn = value.urn; } } get actionType() { return this.getStringAttribute('action_type'); } set actionType(value) { this._actionType = value; } // Temporarily expose input value. Use with caution. get actionTypeInput() { return this._actionType; } get duration() { return this.getStringAttribute('duration'); } set duration(value) { this._duration = value; } resetDuration() { this._duration = undefined; } // Temporarily expose input value. Use with caution. get durationInput() { return this._duration; } get parameters() { return this.getStringMapAttribute('parameters'); } set parameters(value) { this._parameters = value; } resetParameters() { this._parameters = undefined; } // Temporarily expose input value. Use with caution. get parametersInput() { return this._parameters; } get selectorName() { return this.getStringAttribute('selector_name'); } set selectorName(value) { this._selectorName = value; } resetSelectorName() { this._selectorName = undefined; } // Temporarily expose input value. Use with caution. get selectorNameInput() { return this._selectorName; } get urn() { return this.getStringAttribute('urn'); } set urn(value) { this._urn = value; } resetUrn() { this._urn = undefined; } // Temporarily expose input value. Use with caution. get urnInput() { return this._urn; } } exports.ChaosStudioExperimentStepsBranchActionsOutputReference = ChaosStudioExperimentStepsBranchActionsOutputReference; _d = JSII_RTTI_SYMBOL_1; ChaosStudioExperimentStepsBranchActionsOutputReference[_d] = { fqn: "@cdktf/provider-azurerm.chaosStudioExperiment.ChaosStudioExperimentStepsBranchActionsOutputReference", version: "12.27.0" }; class ChaosStudioExperimentStepsBranchActionsList 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 ChaosStudioExperimentStepsBranchActionsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ChaosStudioExperimentStepsBranchActionsList = ChaosStudioExperimentStepsBranchActionsList; _e = JSII_RTTI_SYMBOL_1; ChaosStudioExperimentStepsBranchActionsList[_e] = { fqn: "@cdktf/provider-azurerm.chaosStudioExperiment.ChaosStudioExperimentStepsBranchActionsList", version: "12.27.0" }; function chaosStudioExperimentStepsBranchToTerraform(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 { name: cdktf.stringToTerraform(struct.name), actions: cdktf.listMapper(chaosStudioExperimentStepsBranchActionsToTerraform, true)(struct.actions), }; } exports.chaosStudioExperimentStepsBranchToTerraform = chaosStudioExperimentStepsBranchToTerraform; function chaosStudioExperimentStepsBranchToHclTerraform(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 = { name: { value: cdktf.stringToHclTerraform(struct.name), isBlock: false, type: "simple", storageClassType: "string", }, actions: { value: cdktf.listMapperHcl(chaosStudioExperimentStepsBranchActionsToHclTerraform, true)(struct.actions), isBlock: true, type: "list", storageClassType: "ChaosStudioExperimentStepsBranchActionsList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.chaosStudioExperimentStepsBranchToHclTerraform = chaosStudioExperimentStepsBranchToHclTerraform; class ChaosStudioExperimentStepsBranchOutputReference 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; // actions - computed: false, optional: false, required: true this._actions = new ChaosStudioExperimentStepsBranchActionsList(this, "actions", false); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } if (this._actions?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.actions = this._actions?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._name = undefined; this._actions.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._name = value.name; this._actions.internalValue = value.actions; } } 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 actions() { return this._actions; } putActions(value) { this._actions.internalValue = value; } // Temporarily expose input value. Use with caution. get actionsInput() { return this._actions.internalValue; } } exports.ChaosStudioExperimentStepsBranchOutputReference = ChaosStudioExperimentStepsBranchOutputReference; _f = JSII_RTTI_SYMBOL_1; ChaosStudioExperimentStepsBranchOutputReference[_f] = { fqn: "@cdktf/provider-azurerm.chaosStudioExperiment.ChaosStudioExperimentStepsBranchOutputReference", version: "12.27.0" }; class ChaosStudioExperimentStepsBranchList 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 ChaosStudioExperimentStepsBranchOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ChaosStudioExperimentStepsBranchList = ChaosStudioExperimentStepsBranchList; _g = JSII_RTTI_SYMBOL_1; ChaosStudioExperimentStepsBranchList[_g] = { fqn: "@cdktf/provider-azurerm.chaosStudioExperiment.ChaosStudioExperimentStepsBranchList", version: "12.27.0" }; function chaosStudioExperimentStepsToTerraform(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 { name: cdktf.stringToTerraform(struct.name), branch: cdktf.listMapper(chaosStudioExperimentStepsBranchToTerraform, true)(struct.branch), }; } exports.chaosStudioExperimentStepsToTerraform = chaosStudioExperimentStepsToTerraform; function chaosStudioExperimentStepsToHclTerraform(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 = { name: { value: cdktf.stringToHclTerraform(struct.name), isBlock: false, type: "simple", storageClassType: "string", }, branch: { value: cdktf.listMapperHcl(chaosStudioExperimentStepsBranchToHclTerraform, true)(struct.branch), isBlock: true, type: "list", storageClassType: "ChaosStudioExperimentStepsBranchList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.chaosStudioExperimentStepsToHclTerraform = chaosStudioExperimentStepsToHclTerraform; class ChaosStudioExperimentStepsOutputReference 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; // branch - computed: false, optional: false, required: true this._branch = new ChaosStudioExperimentStepsBranchList(this, "branch", false); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } if (this._branch?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.branch = this._branch?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._name = undefined; this._branch.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._name = value.name; this._branch.internalValue = value.branch; } } 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 branch() { return this._branch; } putBranch(value) { this._branch.internalValue = value; } // Temporarily expose input value. Use with caution. get branchInput() { return this._branch.internalValue; } } exports.ChaosStudioExperimentStepsOutputReference = ChaosStudioExperimentStepsOutputReference; _h = JSII_RTTI_SYMBOL_1; ChaosStudioExperimentStepsOutputReference[_h] = { fqn: "@cdktf/provider-azurerm.chaosStudioExperiment.ChaosStudioExperimentStepsOutputReference", version: "12.27.0" }; class ChaosStudioExperimentStepsList 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 ChaosStudioExperimentStepsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ChaosStudioExperimentStepsList = ChaosStudioExperimentStepsList; _j = JSII_RTTI_SYMBOL_1; ChaosStudioExperimentStepsList[_j] = { fqn: "@cdktf/provider-azurerm.chaosStudioExperiment.ChaosStudioExperimentStepsList", version: "12.27.0" }; function chaosStudioExperimentTimeoutsToTerraform(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.chaosStudioExperimentTimeoutsToTerraform = chaosStudioExperimentTimeoutsToTerraform; function chaosStudioExperimentTimeoutsToHclTerraform(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.chaosStudioExperimentTimeoutsToHclTerraform = chaosStudioExperimentTimeoutsToHclTerraform; class ChaosStudioExperimentTimeoutsOutputReference 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.ChaosStudioExperimentTimeoutsOutputReference = ChaosStudioExperimentTimeoutsOutputReference; _k = JSII_RTTI_SYMBOL_1; ChaosStudioExperimentTimeoutsOutputReference[_k] = { fqn: "@cdktf/provider-azurerm.chaosStudioExperiment.ChaosStudioExperimentTimeoutsOutputReference", version: "12.27.0" }; /** * Represents a {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/chaos_studio_experiment azurerm_chaos_studio_experiment} */ class ChaosStudioExperiment extends cdktf.TerraformResource { // ============== // STATIC Methods // ============== /** * Generates CDKTF code for importing a ChaosStudioExperiment 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 ChaosStudioExperiment to import * @param importFromId The id of the existing ChaosStudioExperiment that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/chaos_studio_experiment#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the ChaosStudioExperiment to import is found */ static generateConfigForImport(scope, importToId, importFromId, provider) { return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "azurerm_chaos_studio_experiment", importId: importFromId, provider }); } // =========== // INITIALIZER // =========== /** * Create a new {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/chaos_studio_experiment azurerm_chaos_studio_experiment} 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 ChaosStudioExperimentConfig */ constructor(scope, id, config) { super(scope, id, { terraformResourceType: 'azurerm_chaos_studio_experiment', 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 }); // identity - computed: false, optional: true, required: false this._identity = new ChaosStudioExperimentIdentityOutputReference(this, "identity"); // selectors - computed: false, optional: false, required: true this._selectors = new ChaosStudioExperimentSelectorsList(this, "selectors", false); // steps - computed: false, optional: false, required: true this._steps = new ChaosStudioExperimentStepsList(this, "steps", false); // timeouts - computed: false, optional: true, required: false this._timeouts = new ChaosStudioExperimentTimeoutsOutputReference(this, "timeouts"); this._id = config.id; this._location = config.location; this._name = config.name; this._resourceGroupName = config.resourceGroupName; this._identity.internalValue = config.identity; this._selectors.internalValue = config.selectors; this._steps.internalValue = config.steps; this._timeouts.internalValue = config.timeouts; } 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 location() { return this.getStringAttribute('location'); } set location(value) { this._location = value; } // Temporarily expose input value. Use with caution. get locationInput() { return this._location; } 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 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 identity() { return this._identity; } putIdentity(value) { this._identity.internalValue = value; } resetIdentity() { this._identity.internalValue = undefined; } // Temporarily expose input value. Use with caution. get identityInput() { return this._identity.internalValue; } get selectors() { return this._selectors; } putSelectors(value) { this._selectors.internalValue = value; } // Temporarily expose input value. Use with caution. get selectorsInput() { return this._selectors.internalValue; } get steps() { return this._steps; } putSteps(value) { this._steps.internalValue = value; } // Temporarily expose input value. Use with caution. get stepsInput() { return this._steps.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 { id: cdktf.stringToTerraform(this._id), location: cdktf.stringToTerraform(this._location), name: cdktf.stringToTerraform(this._name), resource_group_name: cdktf.stringToTerraform(this._resourceGroupName), identity: chaosStudioExperimentIdentityToTerraform(this._identity.internalValue), selectors: cdktf.listMapper(chaosStudioExperimentSelectorsToTerraform, true)(this._selectors.internalValue), steps: cdktf.listMapper(chaosStudioExperimentStepsToTerraform, true)(this._steps.internalValue), timeouts: chaosStudioExperimentTimeoutsToTerraform(this._timeouts.internalValue), }; } synthesizeHclAttributes() { const attrs = { id: { value: cdktf.stringToHclTerraform(this._id), isBlock: false, type: "simple", storageClassType: "string", }, location: { value: cdktf.stringToHclTerraform(this._location), isBlock: false, type: "simple", storageClassType: "string", }, name: { value: cdktf.stringToHclTerraform(this._name), isBlock: false, type: "simple", storageClassType: "string", }, resource_group_name: { value: cdktf.stringToHclTerraform(this._resourceGroupName), isBlock: false, type: "simple", storageClassType: "string", }, identity: { value: chaosStudioExperimentIdentityToHclTerraform(this._identity.internalValue), isBlock: true, type: "list", storageClassType: "ChaosStudioExperimentIdentityList", }, selectors: { value: cdktf.listMapperHcl(chaosStudioExperimentSelectorsToHclTerraform, true)(this._selectors.internalValue), isBlock: true, type: "list", storageClassType: "ChaosStudioExperimentSelectorsList", }, steps: { value: cdktf.listMapperHcl(chaosStudioExperimentStepsToHclTerraform, true)(this._steps.internalValue), isBlock: true, type: "list", storageClassType: "ChaosStudioExperimentStepsList", }, timeouts: { value: chaosStudioExperimentTimeoutsToHclTerraform(this._timeouts.internalValue), isBlock: true, type: "struct", storageClassType: "ChaosStudioExperimentTimeouts", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } } exports.ChaosStudioExperiment = ChaosStudioExperiment; _l = JSII_RTTI_SYMBOL_1; ChaosStudioExperiment[_l] = { fqn: "@cdktf/provider-azurerm.chaosStudioExperiment.ChaosStudioExperiment", version: "12.27.0" }; // ================= // STATIC PROPERTIES // ================= ChaosStudioExperiment.tfResourceType = "azurerm_chaos_studio_experiment"; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2hhb3Mtc3R1ZGlvLWV4cGVyaW1lbnQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFTQSwrQkFBK0I7QUE0RC9CLFNBQWdCLHdDQUF3QyxDQUFDLE1BQXFGO0lBQzVJLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFBQyxPQUFPLE1BQU0sQ0FBQztJQUFDLENBQUM7SUFDNUYsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLG9IQUFvSCxDQUFDLENBQUM7SUFDeEksQ0FBQztJQUNELE9BQU87UUFDTCxZQUFZLEVBQUUsS0FBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsaUJBQWlCLEVBQUUsS0FBSyxDQUFDLENBQUMsTUFBTyxDQUFDLFdBQVcsQ0FBQztRQUNuRixJQUFJLEVBQUUsS0FBSyxDQUFDLGlCQUFpQixDQUFDLE1BQU8sQ0FBQyxJQUFJLENBQUM7S0FDNUMsQ0FBQTtBQUNILENBQUM7QUFURCw0RkFTQztBQUdELFNBQWdCLDJDQUEyQyxDQUFDLE1BQXFGO0lBQy9JLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFBQyxPQUFPLE1BQU0sQ0FBQztJQUFDLENBQUM7SUFDNUYsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLG9IQUFvSCxDQUFDLENBQUM7SUFDeEksQ0FBQztJQUNELE1BQU0sS0FBSyxHQUFHO1FBQ1osWUFB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