UNPKG

@cdktf/provider-google

Version:

Prebuilt google Provider for Terraform CDK (cdktf)

1,118 lines 217 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l; Object.defineProperty(exports, "__esModule", { value: true }); exports.IamWorkforcePoolProvider = exports.IamWorkforcePoolProviderTimeoutsOutputReference = exports.iamWorkforcePoolProviderTimeoutsToHclTerraform = exports.iamWorkforcePoolProviderTimeoutsToTerraform = exports.IamWorkforcePoolProviderSamlOutputReference = exports.iamWorkforcePoolProviderSamlToHclTerraform = exports.iamWorkforcePoolProviderSamlToTerraform = exports.IamWorkforcePoolProviderOidcOutputReference = exports.iamWorkforcePoolProviderOidcToHclTerraform = exports.iamWorkforcePoolProviderOidcToTerraform = exports.IamWorkforcePoolProviderOidcWebSsoConfigOutputReference = exports.iamWorkforcePoolProviderOidcWebSsoConfigToHclTerraform = exports.iamWorkforcePoolProviderOidcWebSsoConfigToTerraform = exports.IamWorkforcePoolProviderOidcClientSecretOutputReference = exports.iamWorkforcePoolProviderOidcClientSecretToHclTerraform = exports.iamWorkforcePoolProviderOidcClientSecretToTerraform = exports.IamWorkforcePoolProviderOidcClientSecretValueOutputReference = exports.iamWorkforcePoolProviderOidcClientSecretValueToHclTerraform = exports.iamWorkforcePoolProviderOidcClientSecretValueToTerraform = exports.IamWorkforcePoolProviderExtraAttributesOauth2ClientOutputReference = exports.iamWorkforcePoolProviderExtraAttributesOauth2ClientToHclTerraform = exports.iamWorkforcePoolProviderExtraAttributesOauth2ClientToTerraform = exports.IamWorkforcePoolProviderExtraAttributesOauth2ClientQueryParametersOutputReference = exports.iamWorkforcePoolProviderExtraAttributesOauth2ClientQueryParametersToHclTerraform = exports.iamWorkforcePoolProviderExtraAttributesOauth2ClientQueryParametersToTerraform = exports.IamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretOutputReference = exports.iamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretToHclTerraform = exports.iamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretToTerraform = exports.IamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretValueOutputReference = exports.iamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretValueToHclTerraform = exports.iamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretValueToTerraform = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function iamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretValueToTerraform(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 { plain_text: cdktf.stringToTerraform(struct.plainText), }; } exports.iamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretValueToTerraform = iamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretValueToTerraform; function iamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretValueToHclTerraform(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 = { plain_text: { value: cdktf.stringToHclTerraform(struct.plainText), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.iamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretValueToHclTerraform = iamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretValueToHclTerraform; class IamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretValueOutputReference 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._plainText !== undefined) { hasAnyValues = true; internalValueResult.plainText = this._plainText; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._plainText = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._plainText = value.plainText; } } get plainText() { return this.getStringAttribute('plain_text'); } set plainText(value) { this._plainText = value; } // Temporarily expose input value. Use with caution. get plainTextInput() { return this._plainText; } // thumbprint - computed: true, optional: false, required: false get thumbprint() { return this.getStringAttribute('thumbprint'); } } exports.IamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretValueOutputReference = IamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretValueOutputReference; _a = JSII_RTTI_SYMBOL_1; IamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretValueOutputReference[_a] = { fqn: "@cdktf/provider-google.iamWorkforcePoolProvider.IamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretValueOutputReference", version: "14.12.0" }; function iamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretToTerraform(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 { value: iamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretValueToTerraform(struct.value), }; } exports.iamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretToTerraform = iamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretToTerraform; function iamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretToHclTerraform(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 = { value: { value: iamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretValueToHclTerraform(struct.value), isBlock: true, type: "list", storageClassType: "IamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretValueList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.iamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretToHclTerraform = iamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretToHclTerraform; class IamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretOutputReference 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; // value - computed: false, optional: true, required: false this._value = new IamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretValueOutputReference(this, "value"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._value?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.value = this._value?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._value.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._value.internalValue = value.value; } } get value() { return this._value; } putValue(value) { this._value.internalValue = value; } resetValue() { this._value.internalValue = undefined; } // Temporarily expose input value. Use with caution. get valueInput() { return this._value.internalValue; } } exports.IamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretOutputReference = IamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretOutputReference; _b = JSII_RTTI_SYMBOL_1; IamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretOutputReference[_b] = { fqn: "@cdktf/provider-google.iamWorkforcePoolProvider.IamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretOutputReference", version: "14.12.0" }; function iamWorkforcePoolProviderExtraAttributesOauth2ClientQueryParametersToTerraform(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: cdktf.stringToTerraform(struct.filter), }; } exports.iamWorkforcePoolProviderExtraAttributesOauth2ClientQueryParametersToTerraform = iamWorkforcePoolProviderExtraAttributesOauth2ClientQueryParametersToTerraform; function iamWorkforcePoolProviderExtraAttributesOauth2ClientQueryParametersToHclTerraform(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: cdktf.stringToHclTerraform(struct.filter), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.iamWorkforcePoolProviderExtraAttributesOauth2ClientQueryParametersToHclTerraform = iamWorkforcePoolProviderExtraAttributesOauth2ClientQueryParametersToHclTerraform; class IamWorkforcePoolProviderExtraAttributesOauth2ClientQueryParametersOutputReference 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._filter !== undefined) { hasAnyValues = true; internalValueResult.filter = this._filter; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._filter = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._filter = value.filter; } } get filter() { return this.getStringAttribute('filter'); } set filter(value) { this._filter = value; } resetFilter() { this._filter = undefined; } // Temporarily expose input value. Use with caution. get filterInput() { return this._filter; } } exports.IamWorkforcePoolProviderExtraAttributesOauth2ClientQueryParametersOutputReference = IamWorkforcePoolProviderExtraAttributesOauth2ClientQueryParametersOutputReference; _c = JSII_RTTI_SYMBOL_1; IamWorkforcePoolProviderExtraAttributesOauth2ClientQueryParametersOutputReference[_c] = { fqn: "@cdktf/provider-google.iamWorkforcePoolProvider.IamWorkforcePoolProviderExtraAttributesOauth2ClientQueryParametersOutputReference", version: "14.12.0" }; function iamWorkforcePoolProviderExtraAttributesOauth2ClientToTerraform(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 { attributes_type: cdktf.stringToTerraform(struct.attributesType), client_id: cdktf.stringToTerraform(struct.clientId), issuer_uri: cdktf.stringToTerraform(struct.issuerUri), client_secret: iamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretToTerraform(struct.clientSecret), query_parameters: iamWorkforcePoolProviderExtraAttributesOauth2ClientQueryParametersToTerraform(struct.queryParameters), }; } exports.iamWorkforcePoolProviderExtraAttributesOauth2ClientToTerraform = iamWorkforcePoolProviderExtraAttributesOauth2ClientToTerraform; function iamWorkforcePoolProviderExtraAttributesOauth2ClientToHclTerraform(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 = { attributes_type: { value: cdktf.stringToHclTerraform(struct.attributesType), isBlock: false, type: "simple", storageClassType: "string", }, client_id: { value: cdktf.stringToHclTerraform(struct.clientId), isBlock: false, type: "simple", storageClassType: "string", }, issuer_uri: { value: cdktf.stringToHclTerraform(struct.issuerUri), isBlock: false, type: "simple", storageClassType: "string", }, client_secret: { value: iamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretToHclTerraform(struct.clientSecret), isBlock: true, type: "list", storageClassType: "IamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretList", }, query_parameters: { value: iamWorkforcePoolProviderExtraAttributesOauth2ClientQueryParametersToHclTerraform(struct.queryParameters), isBlock: true, type: "list", storageClassType: "IamWorkforcePoolProviderExtraAttributesOauth2ClientQueryParametersList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.iamWorkforcePoolProviderExtraAttributesOauth2ClientToHclTerraform = iamWorkforcePoolProviderExtraAttributesOauth2ClientToHclTerraform; class IamWorkforcePoolProviderExtraAttributesOauth2ClientOutputReference 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; // client_secret - computed: false, optional: false, required: true this._clientSecret = new IamWorkforcePoolProviderExtraAttributesOauth2ClientClientSecretOutputReference(this, "client_secret"); // query_parameters - computed: false, optional: true, required: false this._queryParameters = new IamWorkforcePoolProviderExtraAttributesOauth2ClientQueryParametersOutputReference(this, "query_parameters"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._attributesType !== undefined) { hasAnyValues = true; internalValueResult.attributesType = this._attributesType; } if (this._clientId !== undefined) { hasAnyValues = true; internalValueResult.clientId = this._clientId; } if (this._issuerUri !== undefined) { hasAnyValues = true; internalValueResult.issuerUri = this._issuerUri; } if (this._clientSecret?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.clientSecret = this._clientSecret?.internalValue; } if (this._queryParameters?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.queryParameters = this._queryParameters?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._attributesType = undefined; this._clientId = undefined; this._issuerUri = undefined; this._clientSecret.internalValue = undefined; this._queryParameters.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._attributesType = value.attributesType; this._clientId = value.clientId; this._issuerUri = value.issuerUri; this._clientSecret.internalValue = value.clientSecret; this._queryParameters.internalValue = value.queryParameters; } } get attributesType() { return this.getStringAttribute('attributes_type'); } set attributesType(value) { this._attributesType = value; } // Temporarily expose input value. Use with caution. get attributesTypeInput() { return this._attributesType; } get clientId() { return this.getStringAttribute('client_id'); } set clientId(value) { this._clientId = value; } // Temporarily expose input value. Use with caution. get clientIdInput() { return this._clientId; } get issuerUri() { return this.getStringAttribute('issuer_uri'); } set issuerUri(value) { this._issuerUri = value; } // Temporarily expose input value. Use with caution. get issuerUriInput() { return this._issuerUri; } get clientSecret() { return this._clientSecret; } putClientSecret(value) { this._clientSecret.internalValue = value; } // Temporarily expose input value. Use with caution. get clientSecretInput() { return this._clientSecret.internalValue; } get queryParameters() { return this._queryParameters; } putQueryParameters(value) { this._queryParameters.internalValue = value; } resetQueryParameters() { this._queryParameters.internalValue = undefined; } // Temporarily expose input value. Use with caution. get queryParametersInput() { return this._queryParameters.internalValue; } } exports.IamWorkforcePoolProviderExtraAttributesOauth2ClientOutputReference = IamWorkforcePoolProviderExtraAttributesOauth2ClientOutputReference; _d = JSII_RTTI_SYMBOL_1; IamWorkforcePoolProviderExtraAttributesOauth2ClientOutputReference[_d] = { fqn: "@cdktf/provider-google.iamWorkforcePoolProvider.IamWorkforcePoolProviderExtraAttributesOauth2ClientOutputReference", version: "14.12.0" }; function iamWorkforcePoolProviderOidcClientSecretValueToTerraform(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 { plain_text: cdktf.stringToTerraform(struct.plainText), }; } exports.iamWorkforcePoolProviderOidcClientSecretValueToTerraform = iamWorkforcePoolProviderOidcClientSecretValueToTerraform; function iamWorkforcePoolProviderOidcClientSecretValueToHclTerraform(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 = { plain_text: { value: cdktf.stringToHclTerraform(struct.plainText), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.iamWorkforcePoolProviderOidcClientSecretValueToHclTerraform = iamWorkforcePoolProviderOidcClientSecretValueToHclTerraform; class IamWorkforcePoolProviderOidcClientSecretValueOutputReference 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._plainText !== undefined) { hasAnyValues = true; internalValueResult.plainText = this._plainText; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._plainText = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._plainText = value.plainText; } } get plainText() { return this.getStringAttribute('plain_text'); } set plainText(value) { this._plainText = value; } // Temporarily expose input value. Use with caution. get plainTextInput() { return this._plainText; } // thumbprint - computed: true, optional: false, required: false get thumbprint() { return this.getStringAttribute('thumbprint'); } } exports.IamWorkforcePoolProviderOidcClientSecretValueOutputReference = IamWorkforcePoolProviderOidcClientSecretValueOutputReference; _e = JSII_RTTI_SYMBOL_1; IamWorkforcePoolProviderOidcClientSecretValueOutputReference[_e] = { fqn: "@cdktf/provider-google.iamWorkforcePoolProvider.IamWorkforcePoolProviderOidcClientSecretValueOutputReference", version: "14.12.0" }; function iamWorkforcePoolProviderOidcClientSecretToTerraform(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 { value: iamWorkforcePoolProviderOidcClientSecretValueToTerraform(struct.value), }; } exports.iamWorkforcePoolProviderOidcClientSecretToTerraform = iamWorkforcePoolProviderOidcClientSecretToTerraform; function iamWorkforcePoolProviderOidcClientSecretToHclTerraform(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 = { value: { value: iamWorkforcePoolProviderOidcClientSecretValueToHclTerraform(struct.value), isBlock: true, type: "list", storageClassType: "IamWorkforcePoolProviderOidcClientSecretValueList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.iamWorkforcePoolProviderOidcClientSecretToHclTerraform = iamWorkforcePoolProviderOidcClientSecretToHclTerraform; class IamWorkforcePoolProviderOidcClientSecretOutputReference 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; // value - computed: false, optional: true, required: false this._value = new IamWorkforcePoolProviderOidcClientSecretValueOutputReference(this, "value"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._value?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.value = this._value?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._value.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._value.internalValue = value.value; } } get value() { return this._value; } putValue(value) { this._value.internalValue = value; } resetValue() { this._value.internalValue = undefined; } // Temporarily expose input value. Use with caution. get valueInput() { return this._value.internalValue; } } exports.IamWorkforcePoolProviderOidcClientSecretOutputReference = IamWorkforcePoolProviderOidcClientSecretOutputReference; _f = JSII_RTTI_SYMBOL_1; IamWorkforcePoolProviderOidcClientSecretOutputReference[_f] = { fqn: "@cdktf/provider-google.iamWorkforcePoolProvider.IamWorkforcePoolProviderOidcClientSecretOutputReference", version: "14.12.0" }; function iamWorkforcePoolProviderOidcWebSsoConfigToTerraform(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_scopes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.additionalScopes), assertion_claims_behavior: cdktf.stringToTerraform(struct.assertionClaimsBehavior), response_type: cdktf.stringToTerraform(struct.responseType), }; } exports.iamWorkforcePoolProviderOidcWebSsoConfigToTerraform = iamWorkforcePoolProviderOidcWebSsoConfigToTerraform; function iamWorkforcePoolProviderOidcWebSsoConfigToHclTerraform(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_scopes: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.additionalScopes), isBlock: false, type: "list", storageClassType: "stringList", }, assertion_claims_behavior: { value: cdktf.stringToHclTerraform(struct.assertionClaimsBehavior), isBlock: false, type: "simple", storageClassType: "string", }, response_type: { value: cdktf.stringToHclTerraform(struct.responseType), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.iamWorkforcePoolProviderOidcWebSsoConfigToHclTerraform = iamWorkforcePoolProviderOidcWebSsoConfigToHclTerraform; class IamWorkforcePoolProviderOidcWebSsoConfigOutputReference 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._additionalScopes !== undefined) { hasAnyValues = true; internalValueResult.additionalScopes = this._additionalScopes; } if (this._assertionClaimsBehavior !== undefined) { hasAnyValues = true; internalValueResult.assertionClaimsBehavior = this._assertionClaimsBehavior; } if (this._responseType !== undefined) { hasAnyValues = true; internalValueResult.responseType = this._responseType; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._additionalScopes = undefined; this._assertionClaimsBehavior = undefined; this._responseType = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._additionalScopes = value.additionalScopes; this._assertionClaimsBehavior = value.assertionClaimsBehavior; this._responseType = value.responseType; } } get additionalScopes() { return this.getListAttribute('additional_scopes'); } set additionalScopes(value) { this._additionalScopes = value; } resetAdditionalScopes() { this._additionalScopes = undefined; } // Temporarily expose input value. Use with caution. get additionalScopesInput() { return this._additionalScopes; } get assertionClaimsBehavior() { return this.getStringAttribute('assertion_claims_behavior'); } set assertionClaimsBehavior(value) { this._assertionClaimsBehavior = value; } // Temporarily expose input value. Use with caution. get assertionClaimsBehaviorInput() { return this._assertionClaimsBehavior; } get responseType() { return this.getStringAttribute('response_type'); } set responseType(value) { this._responseType = value; } // Temporarily expose input value. Use with caution. get responseTypeInput() { return this._responseType; } } exports.IamWorkforcePoolProviderOidcWebSsoConfigOutputReference = IamWorkforcePoolProviderOidcWebSsoConfigOutputReference; _g = JSII_RTTI_SYMBOL_1; IamWorkforcePoolProviderOidcWebSsoConfigOutputReference[_g] = { fqn: "@cdktf/provider-google.iamWorkforcePoolProvider.IamWorkforcePoolProviderOidcWebSsoConfigOutputReference", version: "14.12.0" }; function iamWorkforcePoolProviderOidcToTerraform(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 { client_id: cdktf.stringToTerraform(struct.clientId), issuer_uri: cdktf.stringToTerraform(struct.issuerUri), jwks_json: cdktf.stringToTerraform(struct.jwksJson), client_secret: iamWorkforcePoolProviderOidcClientSecretToTerraform(struct.clientSecret), web_sso_config: iamWorkforcePoolProviderOidcWebSsoConfigToTerraform(struct.webSsoConfig), }; } exports.iamWorkforcePoolProviderOidcToTerraform = iamWorkforcePoolProviderOidcToTerraform; function iamWorkforcePoolProviderOidcToHclTerraform(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 = { client_id: { value: cdktf.stringToHclTerraform(struct.clientId), isBlock: false, type: "simple", storageClassType: "string", }, issuer_uri: { value: cdktf.stringToHclTerraform(struct.issuerUri), isBlock: false, type: "simple", storageClassType: "string", }, jwks_json: { value: cdktf.stringToHclTerraform(struct.jwksJson), isBlock: false, type: "simple", storageClassType: "string", }, client_secret: { value: iamWorkforcePoolProviderOidcClientSecretToHclTerraform(struct.clientSecret), isBlock: true, type: "list", storageClassType: "IamWorkforcePoolProviderOidcClientSecretList", }, web_sso_config: { value: iamWorkforcePoolProviderOidcWebSsoConfigToHclTerraform(struct.webSsoConfig), isBlock: true, type: "list", storageClassType: "IamWorkforcePoolProviderOidcWebSsoConfigList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.iamWorkforcePoolProviderOidcToHclTerraform = iamWorkforcePoolProviderOidcToHclTerraform; class IamWorkforcePoolProviderOidcOutputReference 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; // client_secret - computed: false, optional: true, required: false this._clientSecret = new IamWorkforcePoolProviderOidcClientSecretOutputReference(this, "client_secret"); // web_sso_config - computed: false, optional: true, required: false this._webSsoConfig = new IamWorkforcePoolProviderOidcWebSsoConfigOutputReference(this, "web_sso_config"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._clientId !== undefined) { hasAnyValues = true; internalValueResult.clientId = this._clientId; } if (this._issuerUri !== undefined) { hasAnyValues = true; internalValueResult.issuerUri = this._issuerUri; } if (this._jwksJson !== undefined) { hasAnyValues = true; internalValueResult.jwksJson = this._jwksJson; } if (this._clientSecret?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.clientSecret = this._clientSecret?.internalValue; } if (this._webSsoConfig?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.webSsoConfig = this._webSsoConfig?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._clientId = undefined; this._issuerUri = undefined; this._jwksJson = undefined; this._clientSecret.internalValue = undefined; this._webSsoConfig.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._clientId = value.clientId; this._issuerUri = value.issuerUri; this._jwksJson = value.jwksJson; this._clientSecret.internalValue = value.clientSecret; this._webSsoConfig.internalValue = value.webSsoConfig; } } get clientId() { return this.getStringAttribute('client_id'); } set clientId(value) { this._clientId = value; } // Temporarily expose input value. Use with caution. get clientIdInput() { return this._clientId; } get issuerUri() { return this.getStringAttribute('issuer_uri'); } set issuerUri(value) { this._issuerUri = value; } // Temporarily expose input value. Use with caution. get issuerUriInput() { return this._issuerUri; } get jwksJson() { return this.getStringAttribute('jwks_json'); } set jwksJson(value) { this._jwksJson = value; } resetJwksJson() { this._jwksJson = undefined; } // Temporarily expose input value. Use with caution. get jwksJsonInput() { return this._jwksJson; } get clientSecret() { return this._clientSecret; } putClientSecret(value) { this._clientSecret.internalValue = value; } resetClientSecret() { this._clientSecret.internalValue = undefined; } // Temporarily expose input value. Use with caution. get clientSecretInput() { return this._clientSecret.internalValue; } get webSsoConfig() { return this._webSsoConfig; } putWebSsoConfig(value) { this._webSsoConfig.internalValue = value; } resetWebSsoConfig() { this._webSsoConfig.internalValue = undefined; } // Temporarily expose input value. Use with caution. get webSsoConfigInput() { return this._webSsoConfig.internalValue; } } exports.IamWorkforcePoolProviderOidcOutputReference = IamWorkforcePoolProviderOidcOutputReference; _h = JSII_RTTI_SYMBOL_1; IamWorkforcePoolProviderOidcOutputReference[_h] = { fqn: "@cdktf/provider-google.iamWorkforcePoolProvider.IamWorkforcePoolProviderOidcOutputReference", version: "14.12.0" }; function iamWorkforcePoolProviderSamlToTerraform(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 { idp_metadata_xml: cdktf.stringToTerraform(struct.idpMetadataXml), }; } exports.iamWorkforcePoolProviderSamlToTerraform = iamWorkforcePoolProviderSamlToTerraform; function iamWorkforcePoolProviderSamlToHclTerraform(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 = { idp_metadata_xml: { value: cdktf.stringToHclTerraform(struct.idpMetadataXml), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.iamWorkforcePoolProviderSamlToHclTerraform = iamWorkforcePoolProviderSamlToHclTerraform; class IamWorkforcePoolProviderSamlOutputReference 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._idpMetadataXml !== undefined) { hasAnyValues = true; internalValueResult.idpMetadataXml = this._idpMetadataXml; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._idpMetadataXml = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._idpMetadataXml = value.idpMetadataXml; } } get idpMetadataXml() { return this.getStringAttribute('idp_metadata_xml'); } set idpMetadataXml(value) { this._idpMetadataXml = value; } // Temporarily expose input value. Use with caution. get idpMetadataXmlInput() { return this._idpMetadataXml; } } exports.IamWorkforcePoolProviderSamlOutputReference = IamWorkforcePoolProviderSamlOutputReference; _j = JSII_RTTI_SYMBOL_1; IamWorkforcePoolProviderSamlOutputReference[_j] = { fqn: "@cdktf/provider-google.iamWorkforcePoolProvider.IamWorkforcePoolProviderSamlOutputReference", version: "14.12.0" }; function iamWorkforcePoolProviderTimeoutsToTerraform(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), update: cdktf.stringToTerraform(struct.update), }; } exports.iamWorkforcePoolProviderTimeoutsToTerraform = iamWorkforcePoolProviderTimeoutsToTerraform; function iamWorkforcePoolProviderTimeoutsToHclTerraform(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", }, 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.iamWorkforcePoolProviderTimeoutsToHclTerraform = iamWorkforcePoolProviderTimeoutsToHclTerraform; class IamWorkforcePoolProviderTimeoutsOutputReference 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._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._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._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 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.IamWorkforcePoolProviderTimeoutsOutputReference = IamWorkforcePoolProviderTimeoutsOutputReference; _k = JSII_RTTI_SYMBOL_1; IamWorkforcePoolProviderTimeoutsOutputReference[_k] = { fqn: "@cdktf/provider-google.iamWorkforcePoolProvider.IamWorkforcePoolProviderTimeoutsOutputReference", version: "14.12.0" }; /** * Represents a {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/iam_workforce_pool_provider google_iam_workforce_pool_provider} */ class IamWorkforcePoolProvider extends cdktf.TerraformResource { // ============== // STATIC Methods // ============== /** * Generates CDKTF code for importing a IamWorkforcePoolProvider 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 IamWorkforcePoolProvider to import * @param importFromId The id of the existing IamWorkforcePoolProvider that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/iam_workforce_pool_provider#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the IamWorkforcePoolProvider to import is found */ static generateConfigForImport(scope, importToId, importFromId, provider) { return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "google_iam_workforce_pool_provider", importId: importFromId, provider }); } // =========== // INITIALIZER // =========== /** * Create a new {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/iam_workforce_pool_provider google_iam_workforce_pool_provider} 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 IamWorkforcePoolProviderConfig */ constructor(scope, id, config) { super(scope, id, { terraformResourceType: 'google_iam_workforce_pool_provider', terraformGeneratorMetadata: { providerName: 'google', providerVersion: '6.13.0', providerVersionConstraint: '~> 6.0' }, provider: config.provider, dependsOn: config.dependsOn, count: config.count, lifecycle: config.lifecycle, provisioners: config.provisioners, connection: config.connection, forEach: config.forEach }); // extra_attributes_oauth