UNPKG

@cdktf/provider-aws

Version:

Prebuilt aws Provider for Terraform CDK (cdktf)

1,154 lines 484 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, _x, _y, _z, _0, _1, _2, _3, _4; Object.defineProperty(exports, "__esModule", { value: true }); exports.LbListenerRule = exports.LbListenerRuleTransformList = exports.LbListenerRuleTransformOutputReference = exports.LbListenerRuleTransformUrlRewriteConfigOutputReference = exports.LbListenerRuleTransformUrlRewriteConfigRewriteOutputReference = exports.LbListenerRuleTransformHostHeaderRewriteConfigOutputReference = exports.LbListenerRuleTransformHostHeaderRewriteConfigRewriteOutputReference = exports.LbListenerRuleConditionList = exports.LbListenerRuleConditionOutputReference = exports.LbListenerRuleConditionSourceIpOutputReference = exports.LbListenerRuleConditionQueryStringList = exports.LbListenerRuleConditionQueryStringOutputReference = exports.LbListenerRuleConditionPathPatternOutputReference = exports.LbListenerRuleConditionHttpRequestMethodOutputReference = exports.LbListenerRuleConditionHttpHeaderOutputReference = exports.LbListenerRuleConditionHostHeaderOutputReference = exports.LbListenerRuleActionList = exports.LbListenerRuleActionOutputReference = exports.LbListenerRuleActionRedirectOutputReference = exports.LbListenerRuleActionJwtValidationOutputReference = exports.LbListenerRuleActionJwtValidationAdditionalClaimList = exports.LbListenerRuleActionJwtValidationAdditionalClaimOutputReference = exports.LbListenerRuleActionForwardOutputReference = exports.LbListenerRuleActionForwardTargetGroupList = exports.LbListenerRuleActionForwardTargetGroupOutputReference = exports.LbListenerRuleActionForwardStickinessOutputReference = exports.LbListenerRuleActionFixedResponseOutputReference = exports.LbListenerRuleActionAuthenticateOidcOutputReference = exports.LbListenerRuleActionAuthenticateCognitoOutputReference = void 0; exports.lbListenerRuleActionAuthenticateCognitoToTerraform = lbListenerRuleActionAuthenticateCognitoToTerraform; exports.lbListenerRuleActionAuthenticateCognitoToHclTerraform = lbListenerRuleActionAuthenticateCognitoToHclTerraform; exports.lbListenerRuleActionAuthenticateOidcToTerraform = lbListenerRuleActionAuthenticateOidcToTerraform; exports.lbListenerRuleActionAuthenticateOidcToHclTerraform = lbListenerRuleActionAuthenticateOidcToHclTerraform; exports.lbListenerRuleActionFixedResponseToTerraform = lbListenerRuleActionFixedResponseToTerraform; exports.lbListenerRuleActionFixedResponseToHclTerraform = lbListenerRuleActionFixedResponseToHclTerraform; exports.lbListenerRuleActionForwardStickinessToTerraform = lbListenerRuleActionForwardStickinessToTerraform; exports.lbListenerRuleActionForwardStickinessToHclTerraform = lbListenerRuleActionForwardStickinessToHclTerraform; exports.lbListenerRuleActionForwardTargetGroupToTerraform = lbListenerRuleActionForwardTargetGroupToTerraform; exports.lbListenerRuleActionForwardTargetGroupToHclTerraform = lbListenerRuleActionForwardTargetGroupToHclTerraform; exports.lbListenerRuleActionForwardToTerraform = lbListenerRuleActionForwardToTerraform; exports.lbListenerRuleActionForwardToHclTerraform = lbListenerRuleActionForwardToHclTerraform; exports.lbListenerRuleActionJwtValidationAdditionalClaimToTerraform = lbListenerRuleActionJwtValidationAdditionalClaimToTerraform; exports.lbListenerRuleActionJwtValidationAdditionalClaimToHclTerraform = lbListenerRuleActionJwtValidationAdditionalClaimToHclTerraform; exports.lbListenerRuleActionJwtValidationToTerraform = lbListenerRuleActionJwtValidationToTerraform; exports.lbListenerRuleActionJwtValidationToHclTerraform = lbListenerRuleActionJwtValidationToHclTerraform; exports.lbListenerRuleActionRedirectToTerraform = lbListenerRuleActionRedirectToTerraform; exports.lbListenerRuleActionRedirectToHclTerraform = lbListenerRuleActionRedirectToHclTerraform; exports.lbListenerRuleActionToTerraform = lbListenerRuleActionToTerraform; exports.lbListenerRuleActionToHclTerraform = lbListenerRuleActionToHclTerraform; exports.lbListenerRuleConditionHostHeaderToTerraform = lbListenerRuleConditionHostHeaderToTerraform; exports.lbListenerRuleConditionHostHeaderToHclTerraform = lbListenerRuleConditionHostHeaderToHclTerraform; exports.lbListenerRuleConditionHttpHeaderToTerraform = lbListenerRuleConditionHttpHeaderToTerraform; exports.lbListenerRuleConditionHttpHeaderToHclTerraform = lbListenerRuleConditionHttpHeaderToHclTerraform; exports.lbListenerRuleConditionHttpRequestMethodToTerraform = lbListenerRuleConditionHttpRequestMethodToTerraform; exports.lbListenerRuleConditionHttpRequestMethodToHclTerraform = lbListenerRuleConditionHttpRequestMethodToHclTerraform; exports.lbListenerRuleConditionPathPatternToTerraform = lbListenerRuleConditionPathPatternToTerraform; exports.lbListenerRuleConditionPathPatternToHclTerraform = lbListenerRuleConditionPathPatternToHclTerraform; exports.lbListenerRuleConditionQueryStringToTerraform = lbListenerRuleConditionQueryStringToTerraform; exports.lbListenerRuleConditionQueryStringToHclTerraform = lbListenerRuleConditionQueryStringToHclTerraform; exports.lbListenerRuleConditionSourceIpToTerraform = lbListenerRuleConditionSourceIpToTerraform; exports.lbListenerRuleConditionSourceIpToHclTerraform = lbListenerRuleConditionSourceIpToHclTerraform; exports.lbListenerRuleConditionToTerraform = lbListenerRuleConditionToTerraform; exports.lbListenerRuleConditionToHclTerraform = lbListenerRuleConditionToHclTerraform; exports.lbListenerRuleTransformHostHeaderRewriteConfigRewriteToTerraform = lbListenerRuleTransformHostHeaderRewriteConfigRewriteToTerraform; exports.lbListenerRuleTransformHostHeaderRewriteConfigRewriteToHclTerraform = lbListenerRuleTransformHostHeaderRewriteConfigRewriteToHclTerraform; exports.lbListenerRuleTransformHostHeaderRewriteConfigToTerraform = lbListenerRuleTransformHostHeaderRewriteConfigToTerraform; exports.lbListenerRuleTransformHostHeaderRewriteConfigToHclTerraform = lbListenerRuleTransformHostHeaderRewriteConfigToHclTerraform; exports.lbListenerRuleTransformUrlRewriteConfigRewriteToTerraform = lbListenerRuleTransformUrlRewriteConfigRewriteToTerraform; exports.lbListenerRuleTransformUrlRewriteConfigRewriteToHclTerraform = lbListenerRuleTransformUrlRewriteConfigRewriteToHclTerraform; exports.lbListenerRuleTransformUrlRewriteConfigToTerraform = lbListenerRuleTransformUrlRewriteConfigToTerraform; exports.lbListenerRuleTransformUrlRewriteConfigToHclTerraform = lbListenerRuleTransformUrlRewriteConfigToHclTerraform; exports.lbListenerRuleTransformToTerraform = lbListenerRuleTransformToTerraform; exports.lbListenerRuleTransformToHclTerraform = lbListenerRuleTransformToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function lbListenerRuleActionAuthenticateCognitoToTerraform(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 { authentication_request_extra_params: cdktf.hashMapper(cdktf.stringToTerraform)(struct.authenticationRequestExtraParams), on_unauthenticated_request: cdktf.stringToTerraform(struct.onUnauthenticatedRequest), scope: cdktf.stringToTerraform(struct.scope), session_cookie_name: cdktf.stringToTerraform(struct.sessionCookieName), session_timeout: cdktf.numberToTerraform(struct.sessionTimeout), user_pool_arn: cdktf.stringToTerraform(struct.userPoolArn), user_pool_client_id: cdktf.stringToTerraform(struct.userPoolClientId), user_pool_domain: cdktf.stringToTerraform(struct.userPoolDomain), }; } function lbListenerRuleActionAuthenticateCognitoToHclTerraform(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 = { authentication_request_extra_params: { value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(struct.authenticationRequestExtraParams), isBlock: false, type: "map", storageClassType: "stringMap", }, on_unauthenticated_request: { value: cdktf.stringToHclTerraform(struct.onUnauthenticatedRequest), isBlock: false, type: "simple", storageClassType: "string", }, scope: { value: cdktf.stringToHclTerraform(struct.scope), isBlock: false, type: "simple", storageClassType: "string", }, session_cookie_name: { value: cdktf.stringToHclTerraform(struct.sessionCookieName), isBlock: false, type: "simple", storageClassType: "string", }, session_timeout: { value: cdktf.numberToHclTerraform(struct.sessionTimeout), isBlock: false, type: "simple", storageClassType: "number", }, user_pool_arn: { value: cdktf.stringToHclTerraform(struct.userPoolArn), isBlock: false, type: "simple", storageClassType: "string", }, user_pool_client_id: { value: cdktf.stringToHclTerraform(struct.userPoolClientId), isBlock: false, type: "simple", storageClassType: "string", }, user_pool_domain: { value: cdktf.stringToHclTerraform(struct.userPoolDomain), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class LbListenerRuleActionAuthenticateCognitoOutputReference 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._authenticationRequestExtraParams !== undefined) { hasAnyValues = true; internalValueResult.authenticationRequestExtraParams = this._authenticationRequestExtraParams; } if (this._onUnauthenticatedRequest !== undefined) { hasAnyValues = true; internalValueResult.onUnauthenticatedRequest = this._onUnauthenticatedRequest; } if (this._scope !== undefined) { hasAnyValues = true; internalValueResult.scope = this._scope; } if (this._sessionCookieName !== undefined) { hasAnyValues = true; internalValueResult.sessionCookieName = this._sessionCookieName; } if (this._sessionTimeout !== undefined) { hasAnyValues = true; internalValueResult.sessionTimeout = this._sessionTimeout; } if (this._userPoolArn !== undefined) { hasAnyValues = true; internalValueResult.userPoolArn = this._userPoolArn; } if (this._userPoolClientId !== undefined) { hasAnyValues = true; internalValueResult.userPoolClientId = this._userPoolClientId; } if (this._userPoolDomain !== undefined) { hasAnyValues = true; internalValueResult.userPoolDomain = this._userPoolDomain; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._authenticationRequestExtraParams = undefined; this._onUnauthenticatedRequest = undefined; this._scope = undefined; this._sessionCookieName = undefined; this._sessionTimeout = undefined; this._userPoolArn = undefined; this._userPoolClientId = undefined; this._userPoolDomain = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._authenticationRequestExtraParams = value.authenticationRequestExtraParams; this._onUnauthenticatedRequest = value.onUnauthenticatedRequest; this._scope = value.scope; this._sessionCookieName = value.sessionCookieName; this._sessionTimeout = value.sessionTimeout; this._userPoolArn = value.userPoolArn; this._userPoolClientId = value.userPoolClientId; this._userPoolDomain = value.userPoolDomain; } } get authenticationRequestExtraParams() { return this.getStringMapAttribute('authentication_request_extra_params'); } set authenticationRequestExtraParams(value) { this._authenticationRequestExtraParams = value; } resetAuthenticationRequestExtraParams() { this._authenticationRequestExtraParams = undefined; } // Temporarily expose input value. Use with caution. get authenticationRequestExtraParamsInput() { return this._authenticationRequestExtraParams; } get onUnauthenticatedRequest() { return this.getStringAttribute('on_unauthenticated_request'); } set onUnauthenticatedRequest(value) { this._onUnauthenticatedRequest = value; } resetOnUnauthenticatedRequest() { this._onUnauthenticatedRequest = undefined; } // Temporarily expose input value. Use with caution. get onUnauthenticatedRequestInput() { return this._onUnauthenticatedRequest; } get scope() { return this.getStringAttribute('scope'); } set scope(value) { this._scope = value; } resetScope() { this._scope = undefined; } // Temporarily expose input value. Use with caution. get scopeInput() { return this._scope; } get sessionCookieName() { return this.getStringAttribute('session_cookie_name'); } set sessionCookieName(value) { this._sessionCookieName = value; } resetSessionCookieName() { this._sessionCookieName = undefined; } // Temporarily expose input value. Use with caution. get sessionCookieNameInput() { return this._sessionCookieName; } get sessionTimeout() { return this.getNumberAttribute('session_timeout'); } set sessionTimeout(value) { this._sessionTimeout = value; } resetSessionTimeout() { this._sessionTimeout = undefined; } // Temporarily expose input value. Use with caution. get sessionTimeoutInput() { return this._sessionTimeout; } get userPoolArn() { return this.getStringAttribute('user_pool_arn'); } set userPoolArn(value) { this._userPoolArn = value; } // Temporarily expose input value. Use with caution. get userPoolArnInput() { return this._userPoolArn; } get userPoolClientId() { return this.getStringAttribute('user_pool_client_id'); } set userPoolClientId(value) { this._userPoolClientId = value; } // Temporarily expose input value. Use with caution. get userPoolClientIdInput() { return this._userPoolClientId; } get userPoolDomain() { return this.getStringAttribute('user_pool_domain'); } set userPoolDomain(value) { this._userPoolDomain = value; } // Temporarily expose input value. Use with caution. get userPoolDomainInput() { return this._userPoolDomain; } } exports.LbListenerRuleActionAuthenticateCognitoOutputReference = LbListenerRuleActionAuthenticateCognitoOutputReference; _a = JSII_RTTI_SYMBOL_1; LbListenerRuleActionAuthenticateCognitoOutputReference[_a] = { fqn: "@cdktf/provider-aws.lbListenerRule.LbListenerRuleActionAuthenticateCognitoOutputReference", version: "21.22.1" }; function lbListenerRuleActionAuthenticateOidcToTerraform(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 { authentication_request_extra_params: cdktf.hashMapper(cdktf.stringToTerraform)(struct.authenticationRequestExtraParams), authorization_endpoint: cdktf.stringToTerraform(struct.authorizationEndpoint), client_id: cdktf.stringToTerraform(struct.clientId), client_secret: cdktf.stringToTerraform(struct.clientSecret), issuer: cdktf.stringToTerraform(struct.issuer), on_unauthenticated_request: cdktf.stringToTerraform(struct.onUnauthenticatedRequest), scope: cdktf.stringToTerraform(struct.scope), session_cookie_name: cdktf.stringToTerraform(struct.sessionCookieName), session_timeout: cdktf.numberToTerraform(struct.sessionTimeout), token_endpoint: cdktf.stringToTerraform(struct.tokenEndpoint), user_info_endpoint: cdktf.stringToTerraform(struct.userInfoEndpoint), }; } function lbListenerRuleActionAuthenticateOidcToHclTerraform(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 = { authentication_request_extra_params: { value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(struct.authenticationRequestExtraParams), isBlock: false, type: "map", storageClassType: "stringMap", }, authorization_endpoint: { value: cdktf.stringToHclTerraform(struct.authorizationEndpoint), isBlock: false, type: "simple", storageClassType: "string", }, client_id: { value: cdktf.stringToHclTerraform(struct.clientId), isBlock: false, type: "simple", storageClassType: "string", }, client_secret: { value: cdktf.stringToHclTerraform(struct.clientSecret), isBlock: false, type: "simple", storageClassType: "string", }, issuer: { value: cdktf.stringToHclTerraform(struct.issuer), isBlock: false, type: "simple", storageClassType: "string", }, on_unauthenticated_request: { value: cdktf.stringToHclTerraform(struct.onUnauthenticatedRequest), isBlock: false, type: "simple", storageClassType: "string", }, scope: { value: cdktf.stringToHclTerraform(struct.scope), isBlock: false, type: "simple", storageClassType: "string", }, session_cookie_name: { value: cdktf.stringToHclTerraform(struct.sessionCookieName), isBlock: false, type: "simple", storageClassType: "string", }, session_timeout: { value: cdktf.numberToHclTerraform(struct.sessionTimeout), isBlock: false, type: "simple", storageClassType: "number", }, token_endpoint: { value: cdktf.stringToHclTerraform(struct.tokenEndpoint), isBlock: false, type: "simple", storageClassType: "string", }, user_info_endpoint: { value: cdktf.stringToHclTerraform(struct.userInfoEndpoint), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class LbListenerRuleActionAuthenticateOidcOutputReference 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._authenticationRequestExtraParams !== undefined) { hasAnyValues = true; internalValueResult.authenticationRequestExtraParams = this._authenticationRequestExtraParams; } if (this._authorizationEndpoint !== undefined) { hasAnyValues = true; internalValueResult.authorizationEndpoint = this._authorizationEndpoint; } if (this._clientId !== undefined) { hasAnyValues = true; internalValueResult.clientId = this._clientId; } if (this._clientSecret !== undefined) { hasAnyValues = true; internalValueResult.clientSecret = this._clientSecret; } if (this._issuer !== undefined) { hasAnyValues = true; internalValueResult.issuer = this._issuer; } if (this._onUnauthenticatedRequest !== undefined) { hasAnyValues = true; internalValueResult.onUnauthenticatedRequest = this._onUnauthenticatedRequest; } if (this._scope !== undefined) { hasAnyValues = true; internalValueResult.scope = this._scope; } if (this._sessionCookieName !== undefined) { hasAnyValues = true; internalValueResult.sessionCookieName = this._sessionCookieName; } if (this._sessionTimeout !== undefined) { hasAnyValues = true; internalValueResult.sessionTimeout = this._sessionTimeout; } if (this._tokenEndpoint !== undefined) { hasAnyValues = true; internalValueResult.tokenEndpoint = this._tokenEndpoint; } if (this._userInfoEndpoint !== undefined) { hasAnyValues = true; internalValueResult.userInfoEndpoint = this._userInfoEndpoint; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._authenticationRequestExtraParams = undefined; this._authorizationEndpoint = undefined; this._clientId = undefined; this._clientSecret = undefined; this._issuer = undefined; this._onUnauthenticatedRequest = undefined; this._scope = undefined; this._sessionCookieName = undefined; this._sessionTimeout = undefined; this._tokenEndpoint = undefined; this._userInfoEndpoint = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._authenticationRequestExtraParams = value.authenticationRequestExtraParams; this._authorizationEndpoint = value.authorizationEndpoint; this._clientId = value.clientId; this._clientSecret = value.clientSecret; this._issuer = value.issuer; this._onUnauthenticatedRequest = value.onUnauthenticatedRequest; this._scope = value.scope; this._sessionCookieName = value.sessionCookieName; this._sessionTimeout = value.sessionTimeout; this._tokenEndpoint = value.tokenEndpoint; this._userInfoEndpoint = value.userInfoEndpoint; } } get authenticationRequestExtraParams() { return this.getStringMapAttribute('authentication_request_extra_params'); } set authenticationRequestExtraParams(value) { this._authenticationRequestExtraParams = value; } resetAuthenticationRequestExtraParams() { this._authenticationRequestExtraParams = undefined; } // Temporarily expose input value. Use with caution. get authenticationRequestExtraParamsInput() { return this._authenticationRequestExtraParams; } get authorizationEndpoint() { return this.getStringAttribute('authorization_endpoint'); } set authorizationEndpoint(value) { this._authorizationEndpoint = value; } // Temporarily expose input value. Use with caution. get authorizationEndpointInput() { return this._authorizationEndpoint; } 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 clientSecret() { return this.getStringAttribute('client_secret'); } set clientSecret(value) { this._clientSecret = value; } // Temporarily expose input value. Use with caution. get clientSecretInput() { return this._clientSecret; } get issuer() { return this.getStringAttribute('issuer'); } set issuer(value) { this._issuer = value; } // Temporarily expose input value. Use with caution. get issuerInput() { return this._issuer; } get onUnauthenticatedRequest() { return this.getStringAttribute('on_unauthenticated_request'); } set onUnauthenticatedRequest(value) { this._onUnauthenticatedRequest = value; } resetOnUnauthenticatedRequest() { this._onUnauthenticatedRequest = undefined; } // Temporarily expose input value. Use with caution. get onUnauthenticatedRequestInput() { return this._onUnauthenticatedRequest; } get scope() { return this.getStringAttribute('scope'); } set scope(value) { this._scope = value; } resetScope() { this._scope = undefined; } // Temporarily expose input value. Use with caution. get scopeInput() { return this._scope; } get sessionCookieName() { return this.getStringAttribute('session_cookie_name'); } set sessionCookieName(value) { this._sessionCookieName = value; } resetSessionCookieName() { this._sessionCookieName = undefined; } // Temporarily expose input value. Use with caution. get sessionCookieNameInput() { return this._sessionCookieName; } get sessionTimeout() { return this.getNumberAttribute('session_timeout'); } set sessionTimeout(value) { this._sessionTimeout = value; } resetSessionTimeout() { this._sessionTimeout = undefined; } // Temporarily expose input value. Use with caution. get sessionTimeoutInput() { return this._sessionTimeout; } get tokenEndpoint() { return this.getStringAttribute('token_endpoint'); } set tokenEndpoint(value) { this._tokenEndpoint = value; } // Temporarily expose input value. Use with caution. get tokenEndpointInput() { return this._tokenEndpoint; } get userInfoEndpoint() { return this.getStringAttribute('user_info_endpoint'); } set userInfoEndpoint(value) { this._userInfoEndpoint = value; } // Temporarily expose input value. Use with caution. get userInfoEndpointInput() { return this._userInfoEndpoint; } } exports.LbListenerRuleActionAuthenticateOidcOutputReference = LbListenerRuleActionAuthenticateOidcOutputReference; _b = JSII_RTTI_SYMBOL_1; LbListenerRuleActionAuthenticateOidcOutputReference[_b] = { fqn: "@cdktf/provider-aws.lbListenerRule.LbListenerRuleActionAuthenticateOidcOutputReference", version: "21.22.1" }; function lbListenerRuleActionFixedResponseToTerraform(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 { content_type: cdktf.stringToTerraform(struct.contentType), message_body: cdktf.stringToTerraform(struct.messageBody), status_code: cdktf.stringToTerraform(struct.statusCode), }; } function lbListenerRuleActionFixedResponseToHclTerraform(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 = { content_type: { value: cdktf.stringToHclTerraform(struct.contentType), isBlock: false, type: "simple", storageClassType: "string", }, message_body: { value: cdktf.stringToHclTerraform(struct.messageBody), isBlock: false, type: "simple", storageClassType: "string", }, status_code: { value: cdktf.stringToHclTerraform(struct.statusCode), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class LbListenerRuleActionFixedResponseOutputReference 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._contentType !== undefined) { hasAnyValues = true; internalValueResult.contentType = this._contentType; } if (this._messageBody !== undefined) { hasAnyValues = true; internalValueResult.messageBody = this._messageBody; } if (this._statusCode !== undefined) { hasAnyValues = true; internalValueResult.statusCode = this._statusCode; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._contentType = undefined; this._messageBody = undefined; this._statusCode = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._contentType = value.contentType; this._messageBody = value.messageBody; this._statusCode = value.statusCode; } } get contentType() { return this.getStringAttribute('content_type'); } set contentType(value) { this._contentType = value; } // Temporarily expose input value. Use with caution. get contentTypeInput() { return this._contentType; } get messageBody() { return this.getStringAttribute('message_body'); } set messageBody(value) { this._messageBody = value; } resetMessageBody() { this._messageBody = undefined; } // Temporarily expose input value. Use with caution. get messageBodyInput() { return this._messageBody; } get statusCode() { return this.getStringAttribute('status_code'); } set statusCode(value) { this._statusCode = value; } resetStatusCode() { this._statusCode = undefined; } // Temporarily expose input value. Use with caution. get statusCodeInput() { return this._statusCode; } } exports.LbListenerRuleActionFixedResponseOutputReference = LbListenerRuleActionFixedResponseOutputReference; _c = JSII_RTTI_SYMBOL_1; LbListenerRuleActionFixedResponseOutputReference[_c] = { fqn: "@cdktf/provider-aws.lbListenerRule.LbListenerRuleActionFixedResponseOutputReference", version: "21.22.1" }; function lbListenerRuleActionForwardStickinessToTerraform(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 { duration: cdktf.numberToTerraform(struct.duration), enabled: cdktf.booleanToTerraform(struct.enabled), }; } function lbListenerRuleActionForwardStickinessToHclTerraform(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 = { duration: { value: cdktf.numberToHclTerraform(struct.duration), isBlock: false, type: "simple", storageClassType: "number", }, enabled: { value: cdktf.booleanToHclTerraform(struct.enabled), isBlock: false, type: "simple", storageClassType: "boolean", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class LbListenerRuleActionForwardStickinessOutputReference 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._duration !== undefined) { hasAnyValues = true; internalValueResult.duration = this._duration; } if (this._enabled !== undefined) { hasAnyValues = true; internalValueResult.enabled = this._enabled; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._duration = undefined; this._enabled = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._duration = value.duration; this._enabled = value.enabled; } } get duration() { return this.getNumberAttribute('duration'); } set duration(value) { this._duration = value; } // Temporarily expose input value. Use with caution. get durationInput() { return this._duration; } get enabled() { return this.getBooleanAttribute('enabled'); } set enabled(value) { this._enabled = value; } resetEnabled() { this._enabled = undefined; } // Temporarily expose input value. Use with caution. get enabledInput() { return this._enabled; } } exports.LbListenerRuleActionForwardStickinessOutputReference = LbListenerRuleActionForwardStickinessOutputReference; _d = JSII_RTTI_SYMBOL_1; LbListenerRuleActionForwardStickinessOutputReference[_d] = { fqn: "@cdktf/provider-aws.lbListenerRule.LbListenerRuleActionForwardStickinessOutputReference", version: "21.22.1" }; function lbListenerRuleActionForwardTargetGroupToTerraform(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 { arn: cdktf.stringToTerraform(struct.arn), weight: cdktf.numberToTerraform(struct.weight), }; } function lbListenerRuleActionForwardTargetGroupToHclTerraform(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 = { arn: { value: cdktf.stringToHclTerraform(struct.arn), isBlock: false, type: "simple", storageClassType: "string", }, weight: { value: cdktf.numberToHclTerraform(struct.weight), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class LbListenerRuleActionForwardTargetGroupOutputReference 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._arn !== undefined) { hasAnyValues = true; internalValueResult.arn = this._arn; } if (this._weight !== undefined) { hasAnyValues = true; internalValueResult.weight = this._weight; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._arn = undefined; this._weight = 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._arn = value.arn; this._weight = value.weight; } } get arn() { return this.getStringAttribute('arn'); } set arn(value) { this._arn = value; } // Temporarily expose input value. Use with caution. get arnInput() { return this._arn; } get weight() { return this.getNumberAttribute('weight'); } set weight(value) { this._weight = value; } resetWeight() { this._weight = undefined; } // Temporarily expose input value. Use with caution. get weightInput() { return this._weight; } } exports.LbListenerRuleActionForwardTargetGroupOutputReference = LbListenerRuleActionForwardTargetGroupOutputReference; _e = JSII_RTTI_SYMBOL_1; LbListenerRuleActionForwardTargetGroupOutputReference[_e] = { fqn: "@cdktf/provider-aws.lbListenerRule.LbListenerRuleActionForwardTargetGroupOutputReference", version: "21.22.1" }; class LbListenerRuleActionForwardTargetGroupList 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 LbListenerRuleActionForwardTargetGroupOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.LbListenerRuleActionForwardTargetGroupList = LbListenerRuleActionForwardTargetGroupList; _f = JSII_RTTI_SYMBOL_1; LbListenerRuleActionForwardTargetGroupList[_f] = { fqn: "@cdktf/provider-aws.lbListenerRule.LbListenerRuleActionForwardTargetGroupList", version: "21.22.1" }; function lbListenerRuleActionForwardToTerraform(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 { stickiness: lbListenerRuleActionForwardStickinessToTerraform(struct.stickiness), target_group: cdktf.listMapper(lbListenerRuleActionForwardTargetGroupToTerraform, true)(struct.targetGroup), }; } function lbListenerRuleActionForwardToHclTerraform(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 = { stickiness: { value: lbListenerRuleActionForwardStickinessToHclTerraform(struct.stickiness), isBlock: true, type: "list", storageClassType: "LbListenerRuleActionForwardStickinessList", }, target_group: { value: cdktf.listMapperHcl(lbListenerRuleActionForwardTargetGroupToHclTerraform, true)(struct.targetGroup), isBlock: true, type: "set", storageClassType: "LbListenerRuleActionForwardTargetGroupList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class LbListenerRuleActionForwardOutputReference 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; // stickiness - computed: false, optional: true, required: false this._stickiness = new LbListenerRuleActionForwardStickinessOutputReference(this, "stickiness"); // target_group - computed: false, optional: false, required: true this._targetGroup = new LbListenerRuleActionForwardTargetGroupList(this, "target_group", true); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._stickiness?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.stickiness = this._stickiness?.internalValue; } if (this._targetGroup?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.targetGroup = this._targetGroup?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._stickiness.internalValue = undefined; this._targetGroup.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._stickiness.internalValue = value.stickiness; this._targetGroup.internalValue = value.targetGroup; } } get stickiness() { return this._stickiness; } putStickiness(value) { this._stickiness.internalValue = value; } resetStickiness() { this._stickiness.internalValue = undefined; } // Temporarily expose input value. Use with caution. get stickinessInput() { return this._stickiness.internalValue; } get targetGroup() { return this._targetGroup; } putTargetGroup(value) { this._targetGroup.internalValue = value; } // Temporarily expose input value. Use with caution. get targetGroupInput() { return this._targetGroup.internalValue; } } exports.LbListenerRuleActionForwardOutputReference = LbListenerRuleActionForwardOutputReference; _g = JSII_RTTI_SYMBOL_1; LbListenerRuleActionForwardOutputReference[_g] = { fqn: "@cdktf/provider-aws.lbListenerRule.LbListenerRuleActionForwardOutputReference", version: "21.22.1" }; function lbListenerRuleActionJwtValidationAdditionalClaimToTerraform(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 { format: cdktf.stringToTerraform(struct.format), name: cdktf.stringToTerraform(struct.name), values: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.values), }; } function lbListenerRuleActionJwtValidationAdditionalClaimToHclTerraform(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 = { format: { value: cdktf.stringToHclTerraform(struct.format), isBlock: false, type: "simple", storageClassType: "string", }, name: { value: cdktf.stringToHclTerraform(struct.name), isBlock: false, type: "simple", storageClassType: "string", }, values: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.values), isBlock: false, type: "set", storageClassType: "stringList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class LbListenerRuleActionJwtValidationAdditionalClaimOutputReference 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._format !== undefined) { hasAnyValues = true; internalValueResult.format = this._format; } if (this._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } if (this._values !== undefined) { hasAnyValues = true; internalValueResult.values = this._values; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._format = undefined; this._name = undefined; this._values = 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._format = value.fo