UNPKG

@cdktf/provider-azuread

Version:

Prebuilt azuread Provider for Terraform CDK (cdktf)

1,034 lines 408 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.ConditionalAccessPolicy = exports.ConditionalAccessPolicyTimeoutsOutputReference = exports.ConditionalAccessPolicySessionControlsOutputReference = exports.ConditionalAccessPolicyGrantControlsOutputReference = exports.ConditionalAccessPolicyConditionsOutputReference = exports.ConditionalAccessPolicyConditionsUsersOutputReference = exports.ConditionalAccessPolicyConditionsUsersIncludedGuestsOrExternalUsersList = exports.ConditionalAccessPolicyConditionsUsersIncludedGuestsOrExternalUsersOutputReference = exports.ConditionalAccessPolicyConditionsUsersIncludedGuestsOrExternalUsersExternalTenantsList = exports.ConditionalAccessPolicyConditionsUsersIncludedGuestsOrExternalUsersExternalTenantsOutputReference = exports.ConditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersList = exports.ConditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersOutputReference = exports.ConditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersExternalTenantsList = exports.ConditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersExternalTenantsOutputReference = exports.ConditionalAccessPolicyConditionsPlatformsOutputReference = exports.ConditionalAccessPolicyConditionsLocationsOutputReference = exports.ConditionalAccessPolicyConditionsDevicesOutputReference = exports.ConditionalAccessPolicyConditionsDevicesFilterOutputReference = exports.ConditionalAccessPolicyConditionsClientApplicationsOutputReference = exports.ConditionalAccessPolicyConditionsClientApplicationsFilterOutputReference = exports.ConditionalAccessPolicyConditionsApplicationsOutputReference = void 0; exports.conditionalAccessPolicyConditionsApplicationsToTerraform = conditionalAccessPolicyConditionsApplicationsToTerraform; exports.conditionalAccessPolicyConditionsApplicationsToHclTerraform = conditionalAccessPolicyConditionsApplicationsToHclTerraform; exports.conditionalAccessPolicyConditionsClientApplicationsFilterToTerraform = conditionalAccessPolicyConditionsClientApplicationsFilterToTerraform; exports.conditionalAccessPolicyConditionsClientApplicationsFilterToHclTerraform = conditionalAccessPolicyConditionsClientApplicationsFilterToHclTerraform; exports.conditionalAccessPolicyConditionsClientApplicationsToTerraform = conditionalAccessPolicyConditionsClientApplicationsToTerraform; exports.conditionalAccessPolicyConditionsClientApplicationsToHclTerraform = conditionalAccessPolicyConditionsClientApplicationsToHclTerraform; exports.conditionalAccessPolicyConditionsDevicesFilterToTerraform = conditionalAccessPolicyConditionsDevicesFilterToTerraform; exports.conditionalAccessPolicyConditionsDevicesFilterToHclTerraform = conditionalAccessPolicyConditionsDevicesFilterToHclTerraform; exports.conditionalAccessPolicyConditionsDevicesToTerraform = conditionalAccessPolicyConditionsDevicesToTerraform; exports.conditionalAccessPolicyConditionsDevicesToHclTerraform = conditionalAccessPolicyConditionsDevicesToHclTerraform; exports.conditionalAccessPolicyConditionsLocationsToTerraform = conditionalAccessPolicyConditionsLocationsToTerraform; exports.conditionalAccessPolicyConditionsLocationsToHclTerraform = conditionalAccessPolicyConditionsLocationsToHclTerraform; exports.conditionalAccessPolicyConditionsPlatformsToTerraform = conditionalAccessPolicyConditionsPlatformsToTerraform; exports.conditionalAccessPolicyConditionsPlatformsToHclTerraform = conditionalAccessPolicyConditionsPlatformsToHclTerraform; exports.conditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersExternalTenantsToTerraform = conditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersExternalTenantsToTerraform; exports.conditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersExternalTenantsToHclTerraform = conditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersExternalTenantsToHclTerraform; exports.conditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersToTerraform = conditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersToTerraform; exports.conditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersToHclTerraform = conditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersToHclTerraform; exports.conditionalAccessPolicyConditionsUsersIncludedGuestsOrExternalUsersExternalTenantsToTerraform = conditionalAccessPolicyConditionsUsersIncludedGuestsOrExternalUsersExternalTenantsToTerraform; exports.conditionalAccessPolicyConditionsUsersIncludedGuestsOrExternalUsersExternalTenantsToHclTerraform = conditionalAccessPolicyConditionsUsersIncludedGuestsOrExternalUsersExternalTenantsToHclTerraform; exports.conditionalAccessPolicyConditionsUsersIncludedGuestsOrExternalUsersToTerraform = conditionalAccessPolicyConditionsUsersIncludedGuestsOrExternalUsersToTerraform; exports.conditionalAccessPolicyConditionsUsersIncludedGuestsOrExternalUsersToHclTerraform = conditionalAccessPolicyConditionsUsersIncludedGuestsOrExternalUsersToHclTerraform; exports.conditionalAccessPolicyConditionsUsersToTerraform = conditionalAccessPolicyConditionsUsersToTerraform; exports.conditionalAccessPolicyConditionsUsersToHclTerraform = conditionalAccessPolicyConditionsUsersToHclTerraform; exports.conditionalAccessPolicyConditionsToTerraform = conditionalAccessPolicyConditionsToTerraform; exports.conditionalAccessPolicyConditionsToHclTerraform = conditionalAccessPolicyConditionsToHclTerraform; exports.conditionalAccessPolicyGrantControlsToTerraform = conditionalAccessPolicyGrantControlsToTerraform; exports.conditionalAccessPolicyGrantControlsToHclTerraform = conditionalAccessPolicyGrantControlsToHclTerraform; exports.conditionalAccessPolicySessionControlsToTerraform = conditionalAccessPolicySessionControlsToTerraform; exports.conditionalAccessPolicySessionControlsToHclTerraform = conditionalAccessPolicySessionControlsToHclTerraform; exports.conditionalAccessPolicyTimeoutsToTerraform = conditionalAccessPolicyTimeoutsToTerraform; exports.conditionalAccessPolicyTimeoutsToHclTerraform = conditionalAccessPolicyTimeoutsToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function conditionalAccessPolicyConditionsApplicationsToTerraform(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 { excluded_applications: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.excludedApplications), included_applications: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.includedApplications), included_user_actions: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.includedUserActions), }; } function conditionalAccessPolicyConditionsApplicationsToHclTerraform(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 = { excluded_applications: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.excludedApplications), isBlock: false, type: "list", storageClassType: "stringList", }, included_applications: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.includedApplications), isBlock: false, type: "list", storageClassType: "stringList", }, included_user_actions: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.includedUserActions), isBlock: false, type: "list", storageClassType: "stringList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ConditionalAccessPolicyConditionsApplicationsOutputReference 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._excludedApplications !== undefined) { hasAnyValues = true; internalValueResult.excludedApplications = this._excludedApplications; } if (this._includedApplications !== undefined) { hasAnyValues = true; internalValueResult.includedApplications = this._includedApplications; } if (this._includedUserActions !== undefined) { hasAnyValues = true; internalValueResult.includedUserActions = this._includedUserActions; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._excludedApplications = undefined; this._includedApplications = undefined; this._includedUserActions = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._excludedApplications = value.excludedApplications; this._includedApplications = value.includedApplications; this._includedUserActions = value.includedUserActions; } } get excludedApplications() { return this.getListAttribute('excluded_applications'); } set excludedApplications(value) { this._excludedApplications = value; } resetExcludedApplications() { this._excludedApplications = undefined; } // Temporarily expose input value. Use with caution. get excludedApplicationsInput() { return this._excludedApplications; } get includedApplications() { return this.getListAttribute('included_applications'); } set includedApplications(value) { this._includedApplications = value; } resetIncludedApplications() { this._includedApplications = undefined; } // Temporarily expose input value. Use with caution. get includedApplicationsInput() { return this._includedApplications; } get includedUserActions() { return this.getListAttribute('included_user_actions'); } set includedUserActions(value) { this._includedUserActions = value; } resetIncludedUserActions() { this._includedUserActions = undefined; } // Temporarily expose input value. Use with caution. get includedUserActionsInput() { return this._includedUserActions; } } exports.ConditionalAccessPolicyConditionsApplicationsOutputReference = ConditionalAccessPolicyConditionsApplicationsOutputReference; _a = JSII_RTTI_SYMBOL_1; ConditionalAccessPolicyConditionsApplicationsOutputReference[_a] = { fqn: "@cdktf/provider-azuread.conditionalAccessPolicy.ConditionalAccessPolicyConditionsApplicationsOutputReference", version: "14.3.1" }; function conditionalAccessPolicyConditionsClientApplicationsFilterToTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { mode: cdktf.stringToTerraform(struct.mode), rule: cdktf.stringToTerraform(struct.rule), }; } function conditionalAccessPolicyConditionsClientApplicationsFilterToHclTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } const attrs = { mode: { value: cdktf.stringToHclTerraform(struct.mode), isBlock: false, type: "simple", storageClassType: "string", }, rule: { value: cdktf.stringToHclTerraform(struct.rule), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ConditionalAccessPolicyConditionsClientApplicationsFilterOutputReference 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._mode !== undefined) { hasAnyValues = true; internalValueResult.mode = this._mode; } if (this._rule !== undefined) { hasAnyValues = true; internalValueResult.rule = this._rule; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._mode = undefined; this._rule = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._mode = value.mode; this._rule = value.rule; } } get mode() { return this.getStringAttribute('mode'); } set mode(value) { this._mode = value; } // Temporarily expose input value. Use with caution. get modeInput() { return this._mode; } get rule() { return this.getStringAttribute('rule'); } set rule(value) { this._rule = value; } // Temporarily expose input value. Use with caution. get ruleInput() { return this._rule; } } exports.ConditionalAccessPolicyConditionsClientApplicationsFilterOutputReference = ConditionalAccessPolicyConditionsClientApplicationsFilterOutputReference; _b = JSII_RTTI_SYMBOL_1; ConditionalAccessPolicyConditionsClientApplicationsFilterOutputReference[_b] = { fqn: "@cdktf/provider-azuread.conditionalAccessPolicy.ConditionalAccessPolicyConditionsClientApplicationsFilterOutputReference", version: "14.3.1" }; function conditionalAccessPolicyConditionsClientApplicationsToTerraform(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 { excluded_service_principals: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.excludedServicePrincipals), included_service_principals: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.includedServicePrincipals), filter: conditionalAccessPolicyConditionsClientApplicationsFilterToTerraform(struct.filter), }; } function conditionalAccessPolicyConditionsClientApplicationsToHclTerraform(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 = { excluded_service_principals: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.excludedServicePrincipals), isBlock: false, type: "list", storageClassType: "stringList", }, included_service_principals: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.includedServicePrincipals), isBlock: false, type: "list", storageClassType: "stringList", }, filter: { value: conditionalAccessPolicyConditionsClientApplicationsFilterToHclTerraform(struct.filter), isBlock: true, type: "list", storageClassType: "ConditionalAccessPolicyConditionsClientApplicationsFilterList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ConditionalAccessPolicyConditionsClientApplicationsOutputReference 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; // filter - computed: false, optional: true, required: false this._filter = new ConditionalAccessPolicyConditionsClientApplicationsFilterOutputReference(this, "filter"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._excludedServicePrincipals !== undefined) { hasAnyValues = true; internalValueResult.excludedServicePrincipals = this._excludedServicePrincipals; } if (this._includedServicePrincipals !== undefined) { hasAnyValues = true; internalValueResult.includedServicePrincipals = this._includedServicePrincipals; } if (this._filter?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.filter = this._filter?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._excludedServicePrincipals = undefined; this._includedServicePrincipals = undefined; this._filter.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._excludedServicePrincipals = value.excludedServicePrincipals; this._includedServicePrincipals = value.includedServicePrincipals; this._filter.internalValue = value.filter; } } get excludedServicePrincipals() { return this.getListAttribute('excluded_service_principals'); } set excludedServicePrincipals(value) { this._excludedServicePrincipals = value; } resetExcludedServicePrincipals() { this._excludedServicePrincipals = undefined; } // Temporarily expose input value. Use with caution. get excludedServicePrincipalsInput() { return this._excludedServicePrincipals; } get includedServicePrincipals() { return this.getListAttribute('included_service_principals'); } set includedServicePrincipals(value) { this._includedServicePrincipals = value; } resetIncludedServicePrincipals() { this._includedServicePrincipals = undefined; } // Temporarily expose input value. Use with caution. get includedServicePrincipalsInput() { return this._includedServicePrincipals; } get filter() { return this._filter; } putFilter(value) { this._filter.internalValue = value; } resetFilter() { this._filter.internalValue = undefined; } // Temporarily expose input value. Use with caution. get filterInput() { return this._filter.internalValue; } } exports.ConditionalAccessPolicyConditionsClientApplicationsOutputReference = ConditionalAccessPolicyConditionsClientApplicationsOutputReference; _c = JSII_RTTI_SYMBOL_1; ConditionalAccessPolicyConditionsClientApplicationsOutputReference[_c] = { fqn: "@cdktf/provider-azuread.conditionalAccessPolicy.ConditionalAccessPolicyConditionsClientApplicationsOutputReference", version: "14.3.1" }; function conditionalAccessPolicyConditionsDevicesFilterToTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { mode: cdktf.stringToTerraform(struct.mode), rule: cdktf.stringToTerraform(struct.rule), }; } function conditionalAccessPolicyConditionsDevicesFilterToHclTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } const attrs = { mode: { value: cdktf.stringToHclTerraform(struct.mode), isBlock: false, type: "simple", storageClassType: "string", }, rule: { value: cdktf.stringToHclTerraform(struct.rule), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ConditionalAccessPolicyConditionsDevicesFilterOutputReference 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._mode !== undefined) { hasAnyValues = true; internalValueResult.mode = this._mode; } if (this._rule !== undefined) { hasAnyValues = true; internalValueResult.rule = this._rule; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._mode = undefined; this._rule = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._mode = value.mode; this._rule = value.rule; } } get mode() { return this.getStringAttribute('mode'); } set mode(value) { this._mode = value; } // Temporarily expose input value. Use with caution. get modeInput() { return this._mode; } get rule() { return this.getStringAttribute('rule'); } set rule(value) { this._rule = value; } // Temporarily expose input value. Use with caution. get ruleInput() { return this._rule; } } exports.ConditionalAccessPolicyConditionsDevicesFilterOutputReference = ConditionalAccessPolicyConditionsDevicesFilterOutputReference; _d = JSII_RTTI_SYMBOL_1; ConditionalAccessPolicyConditionsDevicesFilterOutputReference[_d] = { fqn: "@cdktf/provider-azuread.conditionalAccessPolicy.ConditionalAccessPolicyConditionsDevicesFilterOutputReference", version: "14.3.1" }; function conditionalAccessPolicyConditionsDevicesToTerraform(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 { filter: conditionalAccessPolicyConditionsDevicesFilterToTerraform(struct.filter), }; } function conditionalAccessPolicyConditionsDevicesToHclTerraform(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 = { filter: { value: conditionalAccessPolicyConditionsDevicesFilterToHclTerraform(struct.filter), isBlock: true, type: "list", storageClassType: "ConditionalAccessPolicyConditionsDevicesFilterList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ConditionalAccessPolicyConditionsDevicesOutputReference 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; // filter - computed: false, optional: true, required: false this._filter = new ConditionalAccessPolicyConditionsDevicesFilterOutputReference(this, "filter"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._filter?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.filter = this._filter?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._filter.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._filter.internalValue = value.filter; } } get filter() { return this._filter; } putFilter(value) { this._filter.internalValue = value; } resetFilter() { this._filter.internalValue = undefined; } // Temporarily expose input value. Use with caution. get filterInput() { return this._filter.internalValue; } } exports.ConditionalAccessPolicyConditionsDevicesOutputReference = ConditionalAccessPolicyConditionsDevicesOutputReference; _e = JSII_RTTI_SYMBOL_1; ConditionalAccessPolicyConditionsDevicesOutputReference[_e] = { fqn: "@cdktf/provider-azuread.conditionalAccessPolicy.ConditionalAccessPolicyConditionsDevicesOutputReference", version: "14.3.1" }; function conditionalAccessPolicyConditionsLocationsToTerraform(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 { excluded_locations: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.excludedLocations), included_locations: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.includedLocations), }; } function conditionalAccessPolicyConditionsLocationsToHclTerraform(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 = { excluded_locations: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.excludedLocations), isBlock: false, type: "list", storageClassType: "stringList", }, included_locations: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.includedLocations), isBlock: false, type: "list", storageClassType: "stringList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ConditionalAccessPolicyConditionsLocationsOutputReference 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._excludedLocations !== undefined) { hasAnyValues = true; internalValueResult.excludedLocations = this._excludedLocations; } if (this._includedLocations !== undefined) { hasAnyValues = true; internalValueResult.includedLocations = this._includedLocations; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._excludedLocations = undefined; this._includedLocations = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._excludedLocations = value.excludedLocations; this._includedLocations = value.includedLocations; } } get excludedLocations() { return this.getListAttribute('excluded_locations'); } set excludedLocations(value) { this._excludedLocations = value; } resetExcludedLocations() { this._excludedLocations = undefined; } // Temporarily expose input value. Use with caution. get excludedLocationsInput() { return this._excludedLocations; } get includedLocations() { return this.getListAttribute('included_locations'); } set includedLocations(value) { this._includedLocations = value; } // Temporarily expose input value. Use with caution. get includedLocationsInput() { return this._includedLocations; } } exports.ConditionalAccessPolicyConditionsLocationsOutputReference = ConditionalAccessPolicyConditionsLocationsOutputReference; _f = JSII_RTTI_SYMBOL_1; ConditionalAccessPolicyConditionsLocationsOutputReference[_f] = { fqn: "@cdktf/provider-azuread.conditionalAccessPolicy.ConditionalAccessPolicyConditionsLocationsOutputReference", version: "14.3.1" }; function conditionalAccessPolicyConditionsPlatformsToTerraform(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 { excluded_platforms: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.excludedPlatforms), included_platforms: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.includedPlatforms), }; } function conditionalAccessPolicyConditionsPlatformsToHclTerraform(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 = { excluded_platforms: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.excludedPlatforms), isBlock: false, type: "list", storageClassType: "stringList", }, included_platforms: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.includedPlatforms), isBlock: false, type: "list", storageClassType: "stringList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ConditionalAccessPolicyConditionsPlatformsOutputReference 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._excludedPlatforms !== undefined) { hasAnyValues = true; internalValueResult.excludedPlatforms = this._excludedPlatforms; } if (this._includedPlatforms !== undefined) { hasAnyValues = true; internalValueResult.includedPlatforms = this._includedPlatforms; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._excludedPlatforms = undefined; this._includedPlatforms = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._excludedPlatforms = value.excludedPlatforms; this._includedPlatforms = value.includedPlatforms; } } get excludedPlatforms() { return this.getListAttribute('excluded_platforms'); } set excludedPlatforms(value) { this._excludedPlatforms = value; } resetExcludedPlatforms() { this._excludedPlatforms = undefined; } // Temporarily expose input value. Use with caution. get excludedPlatformsInput() { return this._excludedPlatforms; } get includedPlatforms() { return this.getListAttribute('included_platforms'); } set includedPlatforms(value) { this._includedPlatforms = value; } // Temporarily expose input value. Use with caution. get includedPlatformsInput() { return this._includedPlatforms; } } exports.ConditionalAccessPolicyConditionsPlatformsOutputReference = ConditionalAccessPolicyConditionsPlatformsOutputReference; _g = JSII_RTTI_SYMBOL_1; ConditionalAccessPolicyConditionsPlatformsOutputReference[_g] = { fqn: "@cdktf/provider-azuread.conditionalAccessPolicy.ConditionalAccessPolicyConditionsPlatformsOutputReference", version: "14.3.1" }; function conditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersExternalTenantsToTerraform(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 { members: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.members), membership_kind: cdktf.stringToTerraform(struct.membershipKind), }; } function conditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersExternalTenantsToHclTerraform(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 = { members: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.members), isBlock: false, type: "list", storageClassType: "stringList", }, membership_kind: { value: cdktf.stringToHclTerraform(struct.membershipKind), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ConditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersExternalTenantsOutputReference 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._members !== undefined) { hasAnyValues = true; internalValueResult.members = this._members; } if (this._membershipKind !== undefined) { hasAnyValues = true; internalValueResult.membershipKind = this._membershipKind; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._members = undefined; this._membershipKind = 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._members = value.members; this._membershipKind = value.membershipKind; } } get members() { return this.getListAttribute('members'); } set members(value) { this._members = value; } resetMembers() { this._members = undefined; } // Temporarily expose input value. Use with caution. get membersInput() { return this._members; } get membershipKind() { return this.getStringAttribute('membership_kind'); } set membershipKind(value) { this._membershipKind = value; } // Temporarily expose input value. Use with caution. get membershipKindInput() { return this._membershipKind; } } exports.ConditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersExternalTenantsOutputReference = ConditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersExternalTenantsOutputReference; _h = JSII_RTTI_SYMBOL_1; ConditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersExternalTenantsOutputReference[_h] = { fqn: "@cdktf/provider-azuread.conditionalAccessPolicy.ConditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersExternalTenantsOutputReference", version: "14.3.1" }; class ConditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersExternalTenantsList 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 ConditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersExternalTenantsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ConditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersExternalTenantsList = ConditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersExternalTenantsList; _j = JSII_RTTI_SYMBOL_1; ConditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersExternalTenantsList[_j] = { fqn: "@cdktf/provider-azuread.conditionalAccessPolicy.ConditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersExternalTenantsList", version: "14.3.1" }; function conditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersToTerraform(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 { guest_or_external_user_types: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.guestOrExternalUserTypes), external_tenants: cdktf.listMapper(conditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersExternalTenantsToTerraform, true)(struct.externalTenants), }; } function conditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersToHclTerraform(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 = { guest_or_external_user_types: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.guestOrExternalUserTypes), isBlock: false, type: "list", storageClassType: "stringList", }, external_tenants: { value: cdktf.listMapperHcl(conditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersExternalTenantsToHclTerraform, true)(struct.externalTenants), isBlock: true, type: "list", storageClassType: "ConditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersExternalTenantsList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ConditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersOutputReference 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; // external_tenants - computed: false, optional: true, required: false this._externalTenants = new ConditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersExternalTenantsList(this, "external_tenants", false); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._guestOrExternalUserTypes !== undefined) { hasAnyValues = true; internalValueResult.guestOrExternalUserTypes = this._guestOrExternalUserTypes; } if (this._externalTenants?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.externalTenants = this._externalTenants?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._guestOrExternalUserTypes = undefined; this._externalTenants.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._guestOrExternalUserTypes = value.guestOrExternalUserTypes; this._externalTenants.internalValue = value.externalTenants; } } get guestOrExternalUserTypes() { return this.getListAttribute('guest_or_external_user_types'); } set guestOrExternalUserTypes(value) { this._guestOrExternalUserTypes = value; } // Temporarily expose input value. Use with caution. get guestOrExternalUserTypesInput() { return this._guestOrExternalUserTypes; } get externalTenants() { return this._externalTenants; } putExternalTenants(value) { this._externalTenants.internalValue = value; } resetExternalTenants() { this._externalTenants.internalValue = undefined; } // Temporarily expose input value. Use with caution. get externalTenantsInput() { return this._externalTenants.internalValue; } } exports.ConditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersOutputReference = ConditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersOutputReference; _k = JSII_RTTI_SYMBOL_1; ConditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersOutputReference[_k] = { fqn: "@cdktf/provider-azuread.conditionalAccessPolicy.ConditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersOutputReference", version: "14.3.1" }; class ConditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersList 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 ConditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ConditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersList = ConditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersList; _l = JSII_RTTI_SYMBOL_1; ConditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersList[_l] = { fqn: "@cdktf/provider-azuread.conditionalAccessPolicy.ConditionalAccessPolicyConditionsUsersExcludedGuestsOrExternalUsersList", version: "14.3.1" }; function conditionalAccessPolicyConditionsUsersIncludedGuestsOrExternalUsersExternalTenantsToTerraform(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 { members: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.members), membership_kind: cdktf.stringToTerraform(struct.membershipKind), }; } function conditionalAccessPolicyConditionsUsersIncludedGuestsOrExternalUsersExternalTenantsToHclTerraform(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 = { members: { value: cdktf.listMapperHcl(cdktf.stri