UNPKG

@cdktf/provider-azuread

Version:

Prebuilt azuread Provider for Terraform CDK (cdktf)

1,002 lines 438 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w; Object.defineProperty(exports, "__esModule", { value: true }); exports.GroupRoleManagementPolicy = exports.GroupRoleManagementPolicyTimeoutsOutputReference = exports.GroupRoleManagementPolicyNotificationRulesOutputReference = exports.GroupRoleManagementPolicyNotificationRulesEligibleAssignmentsOutputReference = exports.GroupRoleManagementPolicyNotificationRulesEligibleAssignmentsAssigneeNotificationsOutputReference = exports.GroupRoleManagementPolicyNotificationRulesEligibleAssignmentsApproverNotificationsOutputReference = exports.GroupRoleManagementPolicyNotificationRulesEligibleAssignmentsAdminNotificationsOutputReference = exports.GroupRoleManagementPolicyNotificationRulesEligibleActivationsOutputReference = exports.GroupRoleManagementPolicyNotificationRulesEligibleActivationsAssigneeNotificationsOutputReference = exports.GroupRoleManagementPolicyNotificationRulesEligibleActivationsApproverNotificationsOutputReference = exports.GroupRoleManagementPolicyNotificationRulesEligibleActivationsAdminNotificationsOutputReference = exports.GroupRoleManagementPolicyNotificationRulesActiveAssignmentsOutputReference = exports.GroupRoleManagementPolicyNotificationRulesActiveAssignmentsAssigneeNotificationsOutputReference = exports.GroupRoleManagementPolicyNotificationRulesActiveAssignmentsApproverNotificationsOutputReference = exports.GroupRoleManagementPolicyNotificationRulesActiveAssignmentsAdminNotificationsOutputReference = exports.GroupRoleManagementPolicyEligibleAssignmentRulesOutputReference = exports.GroupRoleManagementPolicyActiveAssignmentRulesOutputReference = exports.GroupRoleManagementPolicyActivationRulesOutputReference = exports.GroupRoleManagementPolicyActivationRulesApprovalStageOutputReference = exports.GroupRoleManagementPolicyActivationRulesApprovalStagePrimaryApproverList = exports.GroupRoleManagementPolicyActivationRulesApprovalStagePrimaryApproverOutputReference = void 0; exports.groupRoleManagementPolicyActivationRulesApprovalStagePrimaryApproverToTerraform = groupRoleManagementPolicyActivationRulesApprovalStagePrimaryApproverToTerraform; exports.groupRoleManagementPolicyActivationRulesApprovalStagePrimaryApproverToHclTerraform = groupRoleManagementPolicyActivationRulesApprovalStagePrimaryApproverToHclTerraform; exports.groupRoleManagementPolicyActivationRulesApprovalStageToTerraform = groupRoleManagementPolicyActivationRulesApprovalStageToTerraform; exports.groupRoleManagementPolicyActivationRulesApprovalStageToHclTerraform = groupRoleManagementPolicyActivationRulesApprovalStageToHclTerraform; exports.groupRoleManagementPolicyActivationRulesToTerraform = groupRoleManagementPolicyActivationRulesToTerraform; exports.groupRoleManagementPolicyActivationRulesToHclTerraform = groupRoleManagementPolicyActivationRulesToHclTerraform; exports.groupRoleManagementPolicyActiveAssignmentRulesToTerraform = groupRoleManagementPolicyActiveAssignmentRulesToTerraform; exports.groupRoleManagementPolicyActiveAssignmentRulesToHclTerraform = groupRoleManagementPolicyActiveAssignmentRulesToHclTerraform; exports.groupRoleManagementPolicyEligibleAssignmentRulesToTerraform = groupRoleManagementPolicyEligibleAssignmentRulesToTerraform; exports.groupRoleManagementPolicyEligibleAssignmentRulesToHclTerraform = groupRoleManagementPolicyEligibleAssignmentRulesToHclTerraform; exports.groupRoleManagementPolicyNotificationRulesActiveAssignmentsAdminNotificationsToTerraform = groupRoleManagementPolicyNotificationRulesActiveAssignmentsAdminNotificationsToTerraform; exports.groupRoleManagementPolicyNotificationRulesActiveAssignmentsAdminNotificationsToHclTerraform = groupRoleManagementPolicyNotificationRulesActiveAssignmentsAdminNotificationsToHclTerraform; exports.groupRoleManagementPolicyNotificationRulesActiveAssignmentsApproverNotificationsToTerraform = groupRoleManagementPolicyNotificationRulesActiveAssignmentsApproverNotificationsToTerraform; exports.groupRoleManagementPolicyNotificationRulesActiveAssignmentsApproverNotificationsToHclTerraform = groupRoleManagementPolicyNotificationRulesActiveAssignmentsApproverNotificationsToHclTerraform; exports.groupRoleManagementPolicyNotificationRulesActiveAssignmentsAssigneeNotificationsToTerraform = groupRoleManagementPolicyNotificationRulesActiveAssignmentsAssigneeNotificationsToTerraform; exports.groupRoleManagementPolicyNotificationRulesActiveAssignmentsAssigneeNotificationsToHclTerraform = groupRoleManagementPolicyNotificationRulesActiveAssignmentsAssigneeNotificationsToHclTerraform; exports.groupRoleManagementPolicyNotificationRulesActiveAssignmentsToTerraform = groupRoleManagementPolicyNotificationRulesActiveAssignmentsToTerraform; exports.groupRoleManagementPolicyNotificationRulesActiveAssignmentsToHclTerraform = groupRoleManagementPolicyNotificationRulesActiveAssignmentsToHclTerraform; exports.groupRoleManagementPolicyNotificationRulesEligibleActivationsAdminNotificationsToTerraform = groupRoleManagementPolicyNotificationRulesEligibleActivationsAdminNotificationsToTerraform; exports.groupRoleManagementPolicyNotificationRulesEligibleActivationsAdminNotificationsToHclTerraform = groupRoleManagementPolicyNotificationRulesEligibleActivationsAdminNotificationsToHclTerraform; exports.groupRoleManagementPolicyNotificationRulesEligibleActivationsApproverNotificationsToTerraform = groupRoleManagementPolicyNotificationRulesEligibleActivationsApproverNotificationsToTerraform; exports.groupRoleManagementPolicyNotificationRulesEligibleActivationsApproverNotificationsToHclTerraform = groupRoleManagementPolicyNotificationRulesEligibleActivationsApproverNotificationsToHclTerraform; exports.groupRoleManagementPolicyNotificationRulesEligibleActivationsAssigneeNotificationsToTerraform = groupRoleManagementPolicyNotificationRulesEligibleActivationsAssigneeNotificationsToTerraform; exports.groupRoleManagementPolicyNotificationRulesEligibleActivationsAssigneeNotificationsToHclTerraform = groupRoleManagementPolicyNotificationRulesEligibleActivationsAssigneeNotificationsToHclTerraform; exports.groupRoleManagementPolicyNotificationRulesEligibleActivationsToTerraform = groupRoleManagementPolicyNotificationRulesEligibleActivationsToTerraform; exports.groupRoleManagementPolicyNotificationRulesEligibleActivationsToHclTerraform = groupRoleManagementPolicyNotificationRulesEligibleActivationsToHclTerraform; exports.groupRoleManagementPolicyNotificationRulesEligibleAssignmentsAdminNotificationsToTerraform = groupRoleManagementPolicyNotificationRulesEligibleAssignmentsAdminNotificationsToTerraform; exports.groupRoleManagementPolicyNotificationRulesEligibleAssignmentsAdminNotificationsToHclTerraform = groupRoleManagementPolicyNotificationRulesEligibleAssignmentsAdminNotificationsToHclTerraform; exports.groupRoleManagementPolicyNotificationRulesEligibleAssignmentsApproverNotificationsToTerraform = groupRoleManagementPolicyNotificationRulesEligibleAssignmentsApproverNotificationsToTerraform; exports.groupRoleManagementPolicyNotificationRulesEligibleAssignmentsApproverNotificationsToHclTerraform = groupRoleManagementPolicyNotificationRulesEligibleAssignmentsApproverNotificationsToHclTerraform; exports.groupRoleManagementPolicyNotificationRulesEligibleAssignmentsAssigneeNotificationsToTerraform = groupRoleManagementPolicyNotificationRulesEligibleAssignmentsAssigneeNotificationsToTerraform; exports.groupRoleManagementPolicyNotificationRulesEligibleAssignmentsAssigneeNotificationsToHclTerraform = groupRoleManagementPolicyNotificationRulesEligibleAssignmentsAssigneeNotificationsToHclTerraform; exports.groupRoleManagementPolicyNotificationRulesEligibleAssignmentsToTerraform = groupRoleManagementPolicyNotificationRulesEligibleAssignmentsToTerraform; exports.groupRoleManagementPolicyNotificationRulesEligibleAssignmentsToHclTerraform = groupRoleManagementPolicyNotificationRulesEligibleAssignmentsToHclTerraform; exports.groupRoleManagementPolicyNotificationRulesToTerraform = groupRoleManagementPolicyNotificationRulesToTerraform; exports.groupRoleManagementPolicyNotificationRulesToHclTerraform = groupRoleManagementPolicyNotificationRulesToHclTerraform; exports.groupRoleManagementPolicyTimeoutsToTerraform = groupRoleManagementPolicyTimeoutsToTerraform; exports.groupRoleManagementPolicyTimeoutsToHclTerraform = groupRoleManagementPolicyTimeoutsToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function groupRoleManagementPolicyActivationRulesApprovalStagePrimaryApproverToTerraform(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 { object_id: cdktf.stringToTerraform(struct.objectId), type: cdktf.stringToTerraform(struct.type), }; } function groupRoleManagementPolicyActivationRulesApprovalStagePrimaryApproverToHclTerraform(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 = { object_id: { value: cdktf.stringToHclTerraform(struct.objectId), isBlock: false, type: "simple", storageClassType: "string", }, type: { value: cdktf.stringToHclTerraform(struct.type), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class GroupRoleManagementPolicyActivationRulesApprovalStagePrimaryApproverOutputReference 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._objectId !== undefined) { hasAnyValues = true; internalValueResult.objectId = this._objectId; } if (this._type !== undefined) { hasAnyValues = true; internalValueResult.type = this._type; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._objectId = undefined; this._type = 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._objectId = value.objectId; this._type = value.type; } } get objectId() { return this.getStringAttribute('object_id'); } set objectId(value) { this._objectId = value; } // Temporarily expose input value. Use with caution. get objectIdInput() { return this._objectId; } get type() { return this.getStringAttribute('type'); } set type(value) { this._type = value; } resetType() { this._type = undefined; } // Temporarily expose input value. Use with caution. get typeInput() { return this._type; } } exports.GroupRoleManagementPolicyActivationRulesApprovalStagePrimaryApproverOutputReference = GroupRoleManagementPolicyActivationRulesApprovalStagePrimaryApproverOutputReference; _a = JSII_RTTI_SYMBOL_1; GroupRoleManagementPolicyActivationRulesApprovalStagePrimaryApproverOutputReference[_a] = { fqn: "@cdktf/provider-azuread.groupRoleManagementPolicy.GroupRoleManagementPolicyActivationRulesApprovalStagePrimaryApproverOutputReference", version: "13.3.0" }; class GroupRoleManagementPolicyActivationRulesApprovalStagePrimaryApproverList 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 GroupRoleManagementPolicyActivationRulesApprovalStagePrimaryApproverOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.GroupRoleManagementPolicyActivationRulesApprovalStagePrimaryApproverList = GroupRoleManagementPolicyActivationRulesApprovalStagePrimaryApproverList; _b = JSII_RTTI_SYMBOL_1; GroupRoleManagementPolicyActivationRulesApprovalStagePrimaryApproverList[_b] = { fqn: "@cdktf/provider-azuread.groupRoleManagementPolicy.GroupRoleManagementPolicyActivationRulesApprovalStagePrimaryApproverList", version: "13.3.0" }; function groupRoleManagementPolicyActivationRulesApprovalStageToTerraform(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 { primary_approver: cdktf.listMapper(groupRoleManagementPolicyActivationRulesApprovalStagePrimaryApproverToTerraform, true)(struct.primaryApprover), }; } function groupRoleManagementPolicyActivationRulesApprovalStageToHclTerraform(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 = { primary_approver: { value: cdktf.listMapperHcl(groupRoleManagementPolicyActivationRulesApprovalStagePrimaryApproverToHclTerraform, true)(struct.primaryApprover), isBlock: true, type: "set", storageClassType: "GroupRoleManagementPolicyActivationRulesApprovalStagePrimaryApproverList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class GroupRoleManagementPolicyActivationRulesApprovalStageOutputReference 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; // primary_approver - computed: false, optional: false, required: true this._primaryApprover = new GroupRoleManagementPolicyActivationRulesApprovalStagePrimaryApproverList(this, "primary_approver", true); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._primaryApprover?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.primaryApprover = this._primaryApprover?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._primaryApprover.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._primaryApprover.internalValue = value.primaryApprover; } } get primaryApprover() { return this._primaryApprover; } putPrimaryApprover(value) { this._primaryApprover.internalValue = value; } // Temporarily expose input value. Use with caution. get primaryApproverInput() { return this._primaryApprover.internalValue; } } exports.GroupRoleManagementPolicyActivationRulesApprovalStageOutputReference = GroupRoleManagementPolicyActivationRulesApprovalStageOutputReference; _c = JSII_RTTI_SYMBOL_1; GroupRoleManagementPolicyActivationRulesApprovalStageOutputReference[_c] = { fqn: "@cdktf/provider-azuread.groupRoleManagementPolicy.GroupRoleManagementPolicyActivationRulesApprovalStageOutputReference", version: "13.3.0" }; function groupRoleManagementPolicyActivationRulesToTerraform(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 { maximum_duration: cdktf.stringToTerraform(struct.maximumDuration), require_approval: cdktf.booleanToTerraform(struct.requireApproval), require_justification: cdktf.booleanToTerraform(struct.requireJustification), require_multifactor_authentication: cdktf.booleanToTerraform(struct.requireMultifactorAuthentication), require_ticket_info: cdktf.booleanToTerraform(struct.requireTicketInfo), required_conditional_access_authentication_context: cdktf.stringToTerraform(struct.requiredConditionalAccessAuthenticationContext), approval_stage: groupRoleManagementPolicyActivationRulesApprovalStageToTerraform(struct.approvalStage), }; } function groupRoleManagementPolicyActivationRulesToHclTerraform(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 = { maximum_duration: { value: cdktf.stringToHclTerraform(struct.maximumDuration), isBlock: false, type: "simple", storageClassType: "string", }, require_approval: { value: cdktf.booleanToHclTerraform(struct.requireApproval), isBlock: false, type: "simple", storageClassType: "boolean", }, require_justification: { value: cdktf.booleanToHclTerraform(struct.requireJustification), isBlock: false, type: "simple", storageClassType: "boolean", }, require_multifactor_authentication: { value: cdktf.booleanToHclTerraform(struct.requireMultifactorAuthentication), isBlock: false, type: "simple", storageClassType: "boolean", }, require_ticket_info: { value: cdktf.booleanToHclTerraform(struct.requireTicketInfo), isBlock: false, type: "simple", storageClassType: "boolean", }, required_conditional_access_authentication_context: { value: cdktf.stringToHclTerraform(struct.requiredConditionalAccessAuthenticationContext), isBlock: false, type: "simple", storageClassType: "string", }, approval_stage: { value: groupRoleManagementPolicyActivationRulesApprovalStageToHclTerraform(struct.approvalStage), isBlock: true, type: "list", storageClassType: "GroupRoleManagementPolicyActivationRulesApprovalStageList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class GroupRoleManagementPolicyActivationRulesOutputReference 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; // approval_stage - computed: false, optional: true, required: false this._approvalStage = new GroupRoleManagementPolicyActivationRulesApprovalStageOutputReference(this, "approval_stage"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._maximumDuration !== undefined) { hasAnyValues = true; internalValueResult.maximumDuration = this._maximumDuration; } if (this._requireApproval !== undefined) { hasAnyValues = true; internalValueResult.requireApproval = this._requireApproval; } if (this._requireJustification !== undefined) { hasAnyValues = true; internalValueResult.requireJustification = this._requireJustification; } if (this._requireMultifactorAuthentication !== undefined) { hasAnyValues = true; internalValueResult.requireMultifactorAuthentication = this._requireMultifactorAuthentication; } if (this._requireTicketInfo !== undefined) { hasAnyValues = true; internalValueResult.requireTicketInfo = this._requireTicketInfo; } if (this._requiredConditionalAccessAuthenticationContext !== undefined) { hasAnyValues = true; internalValueResult.requiredConditionalAccessAuthenticationContext = this._requiredConditionalAccessAuthenticationContext; } if (this._approvalStage?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.approvalStage = this._approvalStage?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._maximumDuration = undefined; this._requireApproval = undefined; this._requireJustification = undefined; this._requireMultifactorAuthentication = undefined; this._requireTicketInfo = undefined; this._requiredConditionalAccessAuthenticationContext = undefined; this._approvalStage.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._maximumDuration = value.maximumDuration; this._requireApproval = value.requireApproval; this._requireJustification = value.requireJustification; this._requireMultifactorAuthentication = value.requireMultifactorAuthentication; this._requireTicketInfo = value.requireTicketInfo; this._requiredConditionalAccessAuthenticationContext = value.requiredConditionalAccessAuthenticationContext; this._approvalStage.internalValue = value.approvalStage; } } get maximumDuration() { return this.getStringAttribute('maximum_duration'); } set maximumDuration(value) { this._maximumDuration = value; } resetMaximumDuration() { this._maximumDuration = undefined; } // Temporarily expose input value. Use with caution. get maximumDurationInput() { return this._maximumDuration; } get requireApproval() { return this.getBooleanAttribute('require_approval'); } set requireApproval(value) { this._requireApproval = value; } resetRequireApproval() { this._requireApproval = undefined; } // Temporarily expose input value. Use with caution. get requireApprovalInput() { return this._requireApproval; } get requireJustification() { return this.getBooleanAttribute('require_justification'); } set requireJustification(value) { this._requireJustification = value; } resetRequireJustification() { this._requireJustification = undefined; } // Temporarily expose input value. Use with caution. get requireJustificationInput() { return this._requireJustification; } get requireMultifactorAuthentication() { return this.getBooleanAttribute('require_multifactor_authentication'); } set requireMultifactorAuthentication(value) { this._requireMultifactorAuthentication = value; } resetRequireMultifactorAuthentication() { this._requireMultifactorAuthentication = undefined; } // Temporarily expose input value. Use with caution. get requireMultifactorAuthenticationInput() { return this._requireMultifactorAuthentication; } get requireTicketInfo() { return this.getBooleanAttribute('require_ticket_info'); } set requireTicketInfo(value) { this._requireTicketInfo = value; } resetRequireTicketInfo() { this._requireTicketInfo = undefined; } // Temporarily expose input value. Use with caution. get requireTicketInfoInput() { return this._requireTicketInfo; } get requiredConditionalAccessAuthenticationContext() { return this.getStringAttribute('required_conditional_access_authentication_context'); } set requiredConditionalAccessAuthenticationContext(value) { this._requiredConditionalAccessAuthenticationContext = value; } resetRequiredConditionalAccessAuthenticationContext() { this._requiredConditionalAccessAuthenticationContext = undefined; } // Temporarily expose input value. Use with caution. get requiredConditionalAccessAuthenticationContextInput() { return this._requiredConditionalAccessAuthenticationContext; } get approvalStage() { return this._approvalStage; } putApprovalStage(value) { this._approvalStage.internalValue = value; } resetApprovalStage() { this._approvalStage.internalValue = undefined; } // Temporarily expose input value. Use with caution. get approvalStageInput() { return this._approvalStage.internalValue; } } exports.GroupRoleManagementPolicyActivationRulesOutputReference = GroupRoleManagementPolicyActivationRulesOutputReference; _d = JSII_RTTI_SYMBOL_1; GroupRoleManagementPolicyActivationRulesOutputReference[_d] = { fqn: "@cdktf/provider-azuread.groupRoleManagementPolicy.GroupRoleManagementPolicyActivationRulesOutputReference", version: "13.3.0" }; function groupRoleManagementPolicyActiveAssignmentRulesToTerraform(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 { expiration_required: cdktf.booleanToTerraform(struct.expirationRequired), expire_after: cdktf.stringToTerraform(struct.expireAfter), require_justification: cdktf.booleanToTerraform(struct.requireJustification), require_multifactor_authentication: cdktf.booleanToTerraform(struct.requireMultifactorAuthentication), require_ticket_info: cdktf.booleanToTerraform(struct.requireTicketInfo), }; } function groupRoleManagementPolicyActiveAssignmentRulesToHclTerraform(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 = { expiration_required: { value: cdktf.booleanToHclTerraform(struct.expirationRequired), isBlock: false, type: "simple", storageClassType: "boolean", }, expire_after: { value: cdktf.stringToHclTerraform(struct.expireAfter), isBlock: false, type: "simple", storageClassType: "string", }, require_justification: { value: cdktf.booleanToHclTerraform(struct.requireJustification), isBlock: false, type: "simple", storageClassType: "boolean", }, require_multifactor_authentication: { value: cdktf.booleanToHclTerraform(struct.requireMultifactorAuthentication), isBlock: false, type: "simple", storageClassType: "boolean", }, require_ticket_info: { value: cdktf.booleanToHclTerraform(struct.requireTicketInfo), isBlock: false, type: "simple", storageClassType: "boolean", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class GroupRoleManagementPolicyActiveAssignmentRulesOutputReference 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._expirationRequired !== undefined) { hasAnyValues = true; internalValueResult.expirationRequired = this._expirationRequired; } if (this._expireAfter !== undefined) { hasAnyValues = true; internalValueResult.expireAfter = this._expireAfter; } if (this._requireJustification !== undefined) { hasAnyValues = true; internalValueResult.requireJustification = this._requireJustification; } if (this._requireMultifactorAuthentication !== undefined) { hasAnyValues = true; internalValueResult.requireMultifactorAuthentication = this._requireMultifactorAuthentication; } if (this._requireTicketInfo !== undefined) { hasAnyValues = true; internalValueResult.requireTicketInfo = this._requireTicketInfo; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._expirationRequired = undefined; this._expireAfter = undefined; this._requireJustification = undefined; this._requireMultifactorAuthentication = undefined; this._requireTicketInfo = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._expirationRequired = value.expirationRequired; this._expireAfter = value.expireAfter; this._requireJustification = value.requireJustification; this._requireMultifactorAuthentication = value.requireMultifactorAuthentication; this._requireTicketInfo = value.requireTicketInfo; } } get expirationRequired() { return this.getBooleanAttribute('expiration_required'); } set expirationRequired(value) { this._expirationRequired = value; } resetExpirationRequired() { this._expirationRequired = undefined; } // Temporarily expose input value. Use with caution. get expirationRequiredInput() { return this._expirationRequired; } get expireAfter() { return this.getStringAttribute('expire_after'); } set expireAfter(value) { this._expireAfter = value; } resetExpireAfter() { this._expireAfter = undefined; } // Temporarily expose input value. Use with caution. get expireAfterInput() { return this._expireAfter; } get requireJustification() { return this.getBooleanAttribute('require_justification'); } set requireJustification(value) { this._requireJustification = value; } resetRequireJustification() { this._requireJustification = undefined; } // Temporarily expose input value. Use with caution. get requireJustificationInput() { return this._requireJustification; } get requireMultifactorAuthentication() { return this.getBooleanAttribute('require_multifactor_authentication'); } set requireMultifactorAuthentication(value) { this._requireMultifactorAuthentication = value; } resetRequireMultifactorAuthentication() { this._requireMultifactorAuthentication = undefined; } // Temporarily expose input value. Use with caution. get requireMultifactorAuthenticationInput() { return this._requireMultifactorAuthentication; } get requireTicketInfo() { return this.getBooleanAttribute('require_ticket_info'); } set requireTicketInfo(value) { this._requireTicketInfo = value; } resetRequireTicketInfo() { this._requireTicketInfo = undefined; } // Temporarily expose input value. Use with caution. get requireTicketInfoInput() { return this._requireTicketInfo; } } exports.GroupRoleManagementPolicyActiveAssignmentRulesOutputReference = GroupRoleManagementPolicyActiveAssignmentRulesOutputReference; _e = JSII_RTTI_SYMBOL_1; GroupRoleManagementPolicyActiveAssignmentRulesOutputReference[_e] = { fqn: "@cdktf/provider-azuread.groupRoleManagementPolicy.GroupRoleManagementPolicyActiveAssignmentRulesOutputReference", version: "13.3.0" }; function groupRoleManagementPolicyEligibleAssignmentRulesToTerraform(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 { expiration_required: cdktf.booleanToTerraform(struct.expirationRequired), expire_after: cdktf.stringToTerraform(struct.expireAfter), }; } function groupRoleManagementPolicyEligibleAssignmentRulesToHclTerraform(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 = { expiration_required: { value: cdktf.booleanToHclTerraform(struct.expirationRequired), isBlock: false, type: "simple", storageClassType: "boolean", }, expire_after: { value: cdktf.stringToHclTerraform(struct.expireAfter), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class GroupRoleManagementPolicyEligibleAssignmentRulesOutputReference 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._expirationRequired !== undefined) { hasAnyValues = true; internalValueResult.expirationRequired = this._expirationRequired; } if (this._expireAfter !== undefined) { hasAnyValues = true; internalValueResult.expireAfter = this._expireAfter; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._expirationRequired = undefined; this._expireAfter = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._expirationRequired = value.expirationRequired; this._expireAfter = value.expireAfter; } } get expirationRequired() { return this.getBooleanAttribute('expiration_required'); } set expirationRequired(value) { this._expirationRequired = value; } resetExpirationRequired() { this._expirationRequired = undefined; } // Temporarily expose input value. Use with caution. get expirationRequiredInput() { return this._expirationRequired; } get expireAfter() { return this.getStringAttribute('expire_after'); } set expireAfter(value) { this._expireAfter = value; } resetExpireAfter() { this._expireAfter = undefined; } // Temporarily expose input value. Use with caution. get expireAfterInput() { return this._expireAfter; } } exports.GroupRoleManagementPolicyEligibleAssignmentRulesOutputReference = GroupRoleManagementPolicyEligibleAssignmentRulesOutputReference; _f = JSII_RTTI_SYMBOL_1; GroupRoleManagementPolicyEligibleAssignmentRulesOutputReference[_f] = { fqn: "@cdktf/provider-azuread.groupRoleManagementPolicy.GroupRoleManagementPolicyEligibleAssignmentRulesOutputReference", version: "13.3.0" }; function groupRoleManagementPolicyNotificationRulesActiveAssignmentsAdminNotificationsToTerraform(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 { additional_recipients: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.additionalRecipients), default_recipients: cdktf.booleanToTerraform(struct.defaultRecipients), notification_level: cdktf.stringToTerraform(struct.notificationLevel), }; } function groupRoleManagementPolicyNotificationRulesActiveAssignmentsAdminNotificationsToHclTerraform(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 = { additional_recipients: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.additionalRecipients), isBlock: false, type: "set", storageClassType: "stringList", }, default_recipients: { value: cdktf.booleanToHclTerraform(struct.defaultRecipients), isBlock: false, type: "simple", storageClassType: "boolean", }, notification_level: { value: cdktf.stringToHclTerraform(struct.notificationLevel), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class GroupRoleManagementPolicyNotificationRulesActiveAssignmentsAdminNotificationsOutputReference 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._additionalRecipients !== undefined) { hasAnyValues = true; internalValueResult.additionalRecipients = this._additionalRecipients; } if (this._defaultRecipients !== undefined) { hasAnyValues = true; internalValueResult.defaultRecipients = this._defaultRecipients; } if (this._notificationLevel !== undefined) { hasAnyValues = true; internalValueResult.notificationLevel = this._notificationLevel; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._additionalRecipients = undefined; this._defaultRecipients = undefined; this._notificationLevel = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._additionalRecipients = value.additionalRecipients; this._defaultRecipients = value.defaultRecipients; this._notificationLevel = value.notificationLevel; } } get additionalRecipients() { return cdktf.Fn.tolist(this.getListAttribute('additional_recipients')); } set additionalRecipients(value) { this._additionalRecipients = value; } resetAdditionalRecipients() { this._additionalRecipients = undefined; } // Temporarily expose input value. Use with caution. get additionalRecipientsInput() { return this._additionalRecipients; } get defaultRecipients() { return this.getBooleanAttribute('default_recipients'); } set defaultRecipients(value) { this._defaultRecipients = value; } // Temporarily expose input value. Use with caution. get defaultRecipientsInput() { return this._defaultRecipients; } get notificationLevel() { return this.getStringAttribute('notification_level'); } set notificationLevel(value) { this._notificationLevel = value; } // Temporarily expose input value. Use with caution. get notificationLevelInput() { return this._notificationLevel; } } exports.GroupRoleManagementPolicyNotificationRulesActiveAssignmentsAdminNotificationsOutputReference = GroupRoleManagementPolicyNotificationRulesActiveAssignmentsAdminNotificationsOutputReference; _g = JSII_RTTI_SYMBOL_1; GroupRoleManagementPolicyNotificationRulesActiveAssignmentsAdminNotificationsOutputReference[_g] = { fqn: "@cdktf/provider-azuread.groupRoleManagementPolicy.GroupRoleManagementPolicyNotificationRulesActiveAssignmentsAdminNotificationsOutputReference", version: "13.3.0" }; function groupRoleManagementPolicyNotificationRulesActiveAssignmentsApproverNotificationsToTerraform(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 { additional_recipients: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.additionalRecipients), default_recipients: cdktf.booleanToTerraform(struct.defaultRecipients), notification_level: cdktf.stringToTerraform(struct.notificationLevel), }; } function groupRoleManagementPolicyNotificationRulesActiveAssignmentsApproverNotificationsToHclTerraform(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 = { additional_recipients: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.additionalRecipients), isBlock: false, type: "set", storageClassType: "stringList", }, default_recipients: { value: cdktf.booleanToHclTerraform(struct.defaultRecipients), isBlock: false, type: "simple", storageClassType: "boolean", }, notification_level: { value: cdktf.stringToHclTerraform(struct.notificationLevel), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class GroupRoleManagementPolicyNotificationRulesActiveAssignmentsApproverNotificationsOutputReference 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._additionalRecipients !== undefined) { hasAnyValues = true; internalValueResult.additionalRecipients = this._additionalRecipients; } if (this._defaultRecipients !== undefined) { hasAnyValues = true; internalValueResult.defaultRecipients = this._defaultRecipients; } if (this._notificationLevel !== undefined) { hasAnyValues = true; internalValueResult.notificationLevel = this._notificationLevel; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._additionalRecipients = undefined; this._defaultRecipients = undefined; this._notificationLevel = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._additionalRecipients = value.additionalRecipients; this._defaultRecipients = value.defaultRecipients; this._notificationLevel = value.notificationLevel; } } get additionalRecipients() { return cdktf.Fn.tolist(this.getListAttribute('additional_recipients')); } set additionalRecipients(value) { this._additionalRecipients = value; } resetAdditionalRecipients() { this._additionalRecipients = undefined; } // Temporarily expose input value. Use with caution. get additionalRecipientsInput() { return this._additionalRecipients; } get defaultRecipients() { return this.getBooleanAttribute('default_recipients'); } set defaultRecipients(value) { this._defaultRecipients = value; } // Temporarily expose input value. Use with caution. get defaultRecipientsInput() { return this._defaultRecipients; } get notificationLevel() { return this.getStringAttribute('notification_level'); } set notificationLevel(value) { this._notificationLevel = value; } // Temporarily expose input value. Use with caution. get notificationLevelInput() { return this._notificationLevel; } } exports.GroupRoleManagementPolicyNotificationRulesActiveAssignmentsApproverNotificationsOutputReference = GroupRoleManagementPolicyNotificationRulesActiveAssignmentsApproverNotificationsOutputReference; _h = JSII_RTTI_SYMBOL_1; GroupRoleManagementPolicyNotificationRulesActiveAssignmentsApproverNotificationsOutputReference[_h] = { fqn: "@cdktf/provider-azuread.groupRoleManagementPolicy.GroupRoleManagementPolicyNotificationRulesActiveAssignmentsApproverNotificationsOutputReference", version: "13.3.0" }; function groupRoleManagementPolicyNotificationRulesActiveAssignmentsAssigneeNotificationsToTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isCo