UNPKG

@cdktf/provider-aws

Version:

Prebuilt aws Provider for Terraform CDK (cdktf)

1,170 lines 615 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, _5; Object.defineProperty(exports, "__esModule", { value: true }); exports.CodebuildProject = exports.CodebuildProjectVpcConfigOutputReference = exports.CodebuildProjectSourceOutputReference = exports.CodebuildProjectSourceGitSubmodulesConfigOutputReference = exports.CodebuildProjectSourceBuildStatusConfigOutputReference = exports.CodebuildProjectSourceAuthOutputReference = exports.CodebuildProjectSecondarySourcesList = exports.CodebuildProjectSecondarySourcesOutputReference = exports.CodebuildProjectSecondarySourcesGitSubmodulesConfigOutputReference = exports.CodebuildProjectSecondarySourcesBuildStatusConfigOutputReference = exports.CodebuildProjectSecondarySourcesAuthOutputReference = exports.CodebuildProjectSecondarySourceVersionList = exports.CodebuildProjectSecondarySourceVersionOutputReference = exports.CodebuildProjectSecondaryArtifactsList = exports.CodebuildProjectSecondaryArtifactsOutputReference = exports.CodebuildProjectLogsConfigOutputReference = exports.CodebuildProjectLogsConfigS3LogsOutputReference = exports.CodebuildProjectLogsConfigCloudwatchLogsOutputReference = exports.CodebuildProjectFileSystemLocationsList = exports.CodebuildProjectFileSystemLocationsOutputReference = exports.CodebuildProjectEnvironmentOutputReference = exports.CodebuildProjectEnvironmentRegistryCredentialOutputReference = exports.CodebuildProjectEnvironmentFleetOutputReference = exports.CodebuildProjectEnvironmentEnvironmentVariableList = exports.CodebuildProjectEnvironmentEnvironmentVariableOutputReference = exports.CodebuildProjectEnvironmentDockerServerOutputReference = exports.CodebuildProjectCacheOutputReference = exports.CodebuildProjectBuildBatchConfigOutputReference = exports.CodebuildProjectBuildBatchConfigRestrictionsOutputReference = exports.CodebuildProjectArtifactsOutputReference = void 0; exports.codebuildProjectArtifactsToTerraform = codebuildProjectArtifactsToTerraform; exports.codebuildProjectArtifactsToHclTerraform = codebuildProjectArtifactsToHclTerraform; exports.codebuildProjectBuildBatchConfigRestrictionsToTerraform = codebuildProjectBuildBatchConfigRestrictionsToTerraform; exports.codebuildProjectBuildBatchConfigRestrictionsToHclTerraform = codebuildProjectBuildBatchConfigRestrictionsToHclTerraform; exports.codebuildProjectBuildBatchConfigToTerraform = codebuildProjectBuildBatchConfigToTerraform; exports.codebuildProjectBuildBatchConfigToHclTerraform = codebuildProjectBuildBatchConfigToHclTerraform; exports.codebuildProjectCacheToTerraform = codebuildProjectCacheToTerraform; exports.codebuildProjectCacheToHclTerraform = codebuildProjectCacheToHclTerraform; exports.codebuildProjectEnvironmentDockerServerToTerraform = codebuildProjectEnvironmentDockerServerToTerraform; exports.codebuildProjectEnvironmentDockerServerToHclTerraform = codebuildProjectEnvironmentDockerServerToHclTerraform; exports.codebuildProjectEnvironmentEnvironmentVariableToTerraform = codebuildProjectEnvironmentEnvironmentVariableToTerraform; exports.codebuildProjectEnvironmentEnvironmentVariableToHclTerraform = codebuildProjectEnvironmentEnvironmentVariableToHclTerraform; exports.codebuildProjectEnvironmentFleetToTerraform = codebuildProjectEnvironmentFleetToTerraform; exports.codebuildProjectEnvironmentFleetToHclTerraform = codebuildProjectEnvironmentFleetToHclTerraform; exports.codebuildProjectEnvironmentRegistryCredentialToTerraform = codebuildProjectEnvironmentRegistryCredentialToTerraform; exports.codebuildProjectEnvironmentRegistryCredentialToHclTerraform = codebuildProjectEnvironmentRegistryCredentialToHclTerraform; exports.codebuildProjectEnvironmentToTerraform = codebuildProjectEnvironmentToTerraform; exports.codebuildProjectEnvironmentToHclTerraform = codebuildProjectEnvironmentToHclTerraform; exports.codebuildProjectFileSystemLocationsToTerraform = codebuildProjectFileSystemLocationsToTerraform; exports.codebuildProjectFileSystemLocationsToHclTerraform = codebuildProjectFileSystemLocationsToHclTerraform; exports.codebuildProjectLogsConfigCloudwatchLogsToTerraform = codebuildProjectLogsConfigCloudwatchLogsToTerraform; exports.codebuildProjectLogsConfigCloudwatchLogsToHclTerraform = codebuildProjectLogsConfigCloudwatchLogsToHclTerraform; exports.codebuildProjectLogsConfigS3LogsToTerraform = codebuildProjectLogsConfigS3LogsToTerraform; exports.codebuildProjectLogsConfigS3LogsToHclTerraform = codebuildProjectLogsConfigS3LogsToHclTerraform; exports.codebuildProjectLogsConfigToTerraform = codebuildProjectLogsConfigToTerraform; exports.codebuildProjectLogsConfigToHclTerraform = codebuildProjectLogsConfigToHclTerraform; exports.codebuildProjectSecondaryArtifactsToTerraform = codebuildProjectSecondaryArtifactsToTerraform; exports.codebuildProjectSecondaryArtifactsToHclTerraform = codebuildProjectSecondaryArtifactsToHclTerraform; exports.codebuildProjectSecondarySourceVersionToTerraform = codebuildProjectSecondarySourceVersionToTerraform; exports.codebuildProjectSecondarySourceVersionToHclTerraform = codebuildProjectSecondarySourceVersionToHclTerraform; exports.codebuildProjectSecondarySourcesAuthToTerraform = codebuildProjectSecondarySourcesAuthToTerraform; exports.codebuildProjectSecondarySourcesAuthToHclTerraform = codebuildProjectSecondarySourcesAuthToHclTerraform; exports.codebuildProjectSecondarySourcesBuildStatusConfigToTerraform = codebuildProjectSecondarySourcesBuildStatusConfigToTerraform; exports.codebuildProjectSecondarySourcesBuildStatusConfigToHclTerraform = codebuildProjectSecondarySourcesBuildStatusConfigToHclTerraform; exports.codebuildProjectSecondarySourcesGitSubmodulesConfigToTerraform = codebuildProjectSecondarySourcesGitSubmodulesConfigToTerraform; exports.codebuildProjectSecondarySourcesGitSubmodulesConfigToHclTerraform = codebuildProjectSecondarySourcesGitSubmodulesConfigToHclTerraform; exports.codebuildProjectSecondarySourcesToTerraform = codebuildProjectSecondarySourcesToTerraform; exports.codebuildProjectSecondarySourcesToHclTerraform = codebuildProjectSecondarySourcesToHclTerraform; exports.codebuildProjectSourceAuthToTerraform = codebuildProjectSourceAuthToTerraform; exports.codebuildProjectSourceAuthToHclTerraform = codebuildProjectSourceAuthToHclTerraform; exports.codebuildProjectSourceBuildStatusConfigToTerraform = codebuildProjectSourceBuildStatusConfigToTerraform; exports.codebuildProjectSourceBuildStatusConfigToHclTerraform = codebuildProjectSourceBuildStatusConfigToHclTerraform; exports.codebuildProjectSourceGitSubmodulesConfigToTerraform = codebuildProjectSourceGitSubmodulesConfigToTerraform; exports.codebuildProjectSourceGitSubmodulesConfigToHclTerraform = codebuildProjectSourceGitSubmodulesConfigToHclTerraform; exports.codebuildProjectSourceToTerraform = codebuildProjectSourceToTerraform; exports.codebuildProjectSourceToHclTerraform = codebuildProjectSourceToHclTerraform; exports.codebuildProjectVpcConfigToTerraform = codebuildProjectVpcConfigToTerraform; exports.codebuildProjectVpcConfigToHclTerraform = codebuildProjectVpcConfigToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function codebuildProjectArtifactsToTerraform(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 { artifact_identifier: cdktf.stringToTerraform(struct.artifactIdentifier), bucket_owner_access: cdktf.stringToTerraform(struct.bucketOwnerAccess), encryption_disabled: cdktf.booleanToTerraform(struct.encryptionDisabled), location: cdktf.stringToTerraform(struct.location), name: cdktf.stringToTerraform(struct.name), namespace_type: cdktf.stringToTerraform(struct.namespaceType), override_artifact_name: cdktf.booleanToTerraform(struct.overrideArtifactName), packaging: cdktf.stringToTerraform(struct.packaging), path: cdktf.stringToTerraform(struct.path), type: cdktf.stringToTerraform(struct.type), }; } function codebuildProjectArtifactsToHclTerraform(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 = { artifact_identifier: { value: cdktf.stringToHclTerraform(struct.artifactIdentifier), isBlock: false, type: "simple", storageClassType: "string", }, bucket_owner_access: { value: cdktf.stringToHclTerraform(struct.bucketOwnerAccess), isBlock: false, type: "simple", storageClassType: "string", }, encryption_disabled: { value: cdktf.booleanToHclTerraform(struct.encryptionDisabled), isBlock: false, type: "simple", storageClassType: "boolean", }, location: { value: cdktf.stringToHclTerraform(struct.location), isBlock: false, type: "simple", storageClassType: "string", }, name: { value: cdktf.stringToHclTerraform(struct.name), isBlock: false, type: "simple", storageClassType: "string", }, namespace_type: { value: cdktf.stringToHclTerraform(struct.namespaceType), isBlock: false, type: "simple", storageClassType: "string", }, override_artifact_name: { value: cdktf.booleanToHclTerraform(struct.overrideArtifactName), isBlock: false, type: "simple", storageClassType: "boolean", }, packaging: { value: cdktf.stringToHclTerraform(struct.packaging), isBlock: false, type: "simple", storageClassType: "string", }, path: { value: cdktf.stringToHclTerraform(struct.path), isBlock: false, type: "simple", storageClassType: "string", }, type: { value: cdktf.stringToHclTerraform(struct.type), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class CodebuildProjectArtifactsOutputReference 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._artifactIdentifier !== undefined) { hasAnyValues = true; internalValueResult.artifactIdentifier = this._artifactIdentifier; } if (this._bucketOwnerAccess !== undefined) { hasAnyValues = true; internalValueResult.bucketOwnerAccess = this._bucketOwnerAccess; } if (this._encryptionDisabled !== undefined) { hasAnyValues = true; internalValueResult.encryptionDisabled = this._encryptionDisabled; } if (this._location !== undefined) { hasAnyValues = true; internalValueResult.location = this._location; } if (this._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } if (this._namespaceType !== undefined) { hasAnyValues = true; internalValueResult.namespaceType = this._namespaceType; } if (this._overrideArtifactName !== undefined) { hasAnyValues = true; internalValueResult.overrideArtifactName = this._overrideArtifactName; } if (this._packaging !== undefined) { hasAnyValues = true; internalValueResult.packaging = this._packaging; } if (this._path !== undefined) { hasAnyValues = true; internalValueResult.path = this._path; } if (this._type !== undefined) { hasAnyValues = true; internalValueResult.type = this._type; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._artifactIdentifier = undefined; this._bucketOwnerAccess = undefined; this._encryptionDisabled = undefined; this._location = undefined; this._name = undefined; this._namespaceType = undefined; this._overrideArtifactName = undefined; this._packaging = undefined; this._path = undefined; this._type = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._artifactIdentifier = value.artifactIdentifier; this._bucketOwnerAccess = value.bucketOwnerAccess; this._encryptionDisabled = value.encryptionDisabled; this._location = value.location; this._name = value.name; this._namespaceType = value.namespaceType; this._overrideArtifactName = value.overrideArtifactName; this._packaging = value.packaging; this._path = value.path; this._type = value.type; } } get artifactIdentifier() { return this.getStringAttribute('artifact_identifier'); } set artifactIdentifier(value) { this._artifactIdentifier = value; } resetArtifactIdentifier() { this._artifactIdentifier = undefined; } // Temporarily expose input value. Use with caution. get artifactIdentifierInput() { return this._artifactIdentifier; } get bucketOwnerAccess() { return this.getStringAttribute('bucket_owner_access'); } set bucketOwnerAccess(value) { this._bucketOwnerAccess = value; } resetBucketOwnerAccess() { this._bucketOwnerAccess = undefined; } // Temporarily expose input value. Use with caution. get bucketOwnerAccessInput() { return this._bucketOwnerAccess; } get encryptionDisabled() { return this.getBooleanAttribute('encryption_disabled'); } set encryptionDisabled(value) { this._encryptionDisabled = value; } resetEncryptionDisabled() { this._encryptionDisabled = undefined; } // Temporarily expose input value. Use with caution. get encryptionDisabledInput() { return this._encryptionDisabled; } get location() { return this.getStringAttribute('location'); } set location(value) { this._location = value; } resetLocation() { this._location = undefined; } // Temporarily expose input value. Use with caution. get locationInput() { return this._location; } get name() { return this.getStringAttribute('name'); } set name(value) { this._name = value; } resetName() { this._name = undefined; } // Temporarily expose input value. Use with caution. get nameInput() { return this._name; } get namespaceType() { return this.getStringAttribute('namespace_type'); } set namespaceType(value) { this._namespaceType = value; } resetNamespaceType() { this._namespaceType = undefined; } // Temporarily expose input value. Use with caution. get namespaceTypeInput() { return this._namespaceType; } get overrideArtifactName() { return this.getBooleanAttribute('override_artifact_name'); } set overrideArtifactName(value) { this._overrideArtifactName = value; } resetOverrideArtifactName() { this._overrideArtifactName = undefined; } // Temporarily expose input value. Use with caution. get overrideArtifactNameInput() { return this._overrideArtifactName; } get packaging() { return this.getStringAttribute('packaging'); } set packaging(value) { this._packaging = value; } resetPackaging() { this._packaging = undefined; } // Temporarily expose input value. Use with caution. get packagingInput() { return this._packaging; } get path() { return this.getStringAttribute('path'); } set path(value) { this._path = value; } resetPath() { this._path = undefined; } // Temporarily expose input value. Use with caution. get pathInput() { return this._path; } get type() { return this.getStringAttribute('type'); } set type(value) { this._type = value; } // Temporarily expose input value. Use with caution. get typeInput() { return this._type; } } exports.CodebuildProjectArtifactsOutputReference = CodebuildProjectArtifactsOutputReference; _a = JSII_RTTI_SYMBOL_1; CodebuildProjectArtifactsOutputReference[_a] = { fqn: "@cdktf/provider-aws.codebuildProject.CodebuildProjectArtifactsOutputReference", version: "21.22.1" }; function codebuildProjectBuildBatchConfigRestrictionsToTerraform(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 { compute_types_allowed: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.computeTypesAllowed), maximum_builds_allowed: cdktf.numberToTerraform(struct.maximumBuildsAllowed), }; } function codebuildProjectBuildBatchConfigRestrictionsToHclTerraform(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 = { compute_types_allowed: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.computeTypesAllowed), isBlock: false, type: "list", storageClassType: "stringList", }, maximum_builds_allowed: { value: cdktf.numberToHclTerraform(struct.maximumBuildsAllowed), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class CodebuildProjectBuildBatchConfigRestrictionsOutputReference 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._computeTypesAllowed !== undefined) { hasAnyValues = true; internalValueResult.computeTypesAllowed = this._computeTypesAllowed; } if (this._maximumBuildsAllowed !== undefined) { hasAnyValues = true; internalValueResult.maximumBuildsAllowed = this._maximumBuildsAllowed; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._computeTypesAllowed = undefined; this._maximumBuildsAllowed = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._computeTypesAllowed = value.computeTypesAllowed; this._maximumBuildsAllowed = value.maximumBuildsAllowed; } } get computeTypesAllowed() { return this.getListAttribute('compute_types_allowed'); } set computeTypesAllowed(value) { this._computeTypesAllowed = value; } resetComputeTypesAllowed() { this._computeTypesAllowed = undefined; } // Temporarily expose input value. Use with caution. get computeTypesAllowedInput() { return this._computeTypesAllowed; } get maximumBuildsAllowed() { return this.getNumberAttribute('maximum_builds_allowed'); } set maximumBuildsAllowed(value) { this._maximumBuildsAllowed = value; } resetMaximumBuildsAllowed() { this._maximumBuildsAllowed = undefined; } // Temporarily expose input value. Use with caution. get maximumBuildsAllowedInput() { return this._maximumBuildsAllowed; } } exports.CodebuildProjectBuildBatchConfigRestrictionsOutputReference = CodebuildProjectBuildBatchConfigRestrictionsOutputReference; _b = JSII_RTTI_SYMBOL_1; CodebuildProjectBuildBatchConfigRestrictionsOutputReference[_b] = { fqn: "@cdktf/provider-aws.codebuildProject.CodebuildProjectBuildBatchConfigRestrictionsOutputReference", version: "21.22.1" }; function codebuildProjectBuildBatchConfigToTerraform(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 { combine_artifacts: cdktf.booleanToTerraform(struct.combineArtifacts), service_role: cdktf.stringToTerraform(struct.serviceRole), timeout_in_mins: cdktf.numberToTerraform(struct.timeoutInMins), restrictions: codebuildProjectBuildBatchConfigRestrictionsToTerraform(struct.restrictions), }; } function codebuildProjectBuildBatchConfigToHclTerraform(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 = { combine_artifacts: { value: cdktf.booleanToHclTerraform(struct.combineArtifacts), isBlock: false, type: "simple", storageClassType: "boolean", }, service_role: { value: cdktf.stringToHclTerraform(struct.serviceRole), isBlock: false, type: "simple", storageClassType: "string", }, timeout_in_mins: { value: cdktf.numberToHclTerraform(struct.timeoutInMins), isBlock: false, type: "simple", storageClassType: "number", }, restrictions: { value: codebuildProjectBuildBatchConfigRestrictionsToHclTerraform(struct.restrictions), isBlock: true, type: "list", storageClassType: "CodebuildProjectBuildBatchConfigRestrictionsList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class CodebuildProjectBuildBatchConfigOutputReference 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; // restrictions - computed: false, optional: true, required: false this._restrictions = new CodebuildProjectBuildBatchConfigRestrictionsOutputReference(this, "restrictions"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._combineArtifacts !== undefined) { hasAnyValues = true; internalValueResult.combineArtifacts = this._combineArtifacts; } if (this._serviceRole !== undefined) { hasAnyValues = true; internalValueResult.serviceRole = this._serviceRole; } if (this._timeoutInMins !== undefined) { hasAnyValues = true; internalValueResult.timeoutInMins = this._timeoutInMins; } if (this._restrictions?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.restrictions = this._restrictions?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._combineArtifacts = undefined; this._serviceRole = undefined; this._timeoutInMins = undefined; this._restrictions.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._combineArtifacts = value.combineArtifacts; this._serviceRole = value.serviceRole; this._timeoutInMins = value.timeoutInMins; this._restrictions.internalValue = value.restrictions; } } get combineArtifacts() { return this.getBooleanAttribute('combine_artifacts'); } set combineArtifacts(value) { this._combineArtifacts = value; } resetCombineArtifacts() { this._combineArtifacts = undefined; } // Temporarily expose input value. Use with caution. get combineArtifactsInput() { return this._combineArtifacts; } get serviceRole() { return this.getStringAttribute('service_role'); } set serviceRole(value) { this._serviceRole = value; } // Temporarily expose input value. Use with caution. get serviceRoleInput() { return this._serviceRole; } get timeoutInMins() { return this.getNumberAttribute('timeout_in_mins'); } set timeoutInMins(value) { this._timeoutInMins = value; } resetTimeoutInMins() { this._timeoutInMins = undefined; } // Temporarily expose input value. Use with caution. get timeoutInMinsInput() { return this._timeoutInMins; } get restrictions() { return this._restrictions; } putRestrictions(value) { this._restrictions.internalValue = value; } resetRestrictions() { this._restrictions.internalValue = undefined; } // Temporarily expose input value. Use with caution. get restrictionsInput() { return this._restrictions.internalValue; } } exports.CodebuildProjectBuildBatchConfigOutputReference = CodebuildProjectBuildBatchConfigOutputReference; _c = JSII_RTTI_SYMBOL_1; CodebuildProjectBuildBatchConfigOutputReference[_c] = { fqn: "@cdktf/provider-aws.codebuildProject.CodebuildProjectBuildBatchConfigOutputReference", version: "21.22.1" }; function codebuildProjectCacheToTerraform(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 { location: cdktf.stringToTerraform(struct.location), modes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.modes), type: cdktf.stringToTerraform(struct.type), }; } function codebuildProjectCacheToHclTerraform(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 = { location: { value: cdktf.stringToHclTerraform(struct.location), isBlock: false, type: "simple", storageClassType: "string", }, modes: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.modes), isBlock: false, type: "list", storageClassType: "stringList", }, type: { value: cdktf.stringToHclTerraform(struct.type), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class CodebuildProjectCacheOutputReference 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._location !== undefined) { hasAnyValues = true; internalValueResult.location = this._location; } if (this._modes !== undefined) { hasAnyValues = true; internalValueResult.modes = this._modes; } if (this._type !== undefined) { hasAnyValues = true; internalValueResult.type = this._type; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._location = undefined; this._modes = undefined; this._type = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._location = value.location; this._modes = value.modes; this._type = value.type; } } get location() { return this.getStringAttribute('location'); } set location(value) { this._location = value; } resetLocation() { this._location = undefined; } // Temporarily expose input value. Use with caution. get locationInput() { return this._location; } get modes() { return this.getListAttribute('modes'); } set modes(value) { this._modes = value; } resetModes() { this._modes = undefined; } // Temporarily expose input value. Use with caution. get modesInput() { return this._modes; } get type() { return this.getStringAttribute('type'); } set type(value) { this._type = value; } resetType() { this._type = undefined; } // Temporarily expose input value. Use with caution. get typeInput() { return this._type; } } exports.CodebuildProjectCacheOutputReference = CodebuildProjectCacheOutputReference; _d = JSII_RTTI_SYMBOL_1; CodebuildProjectCacheOutputReference[_d] = { fqn: "@cdktf/provider-aws.codebuildProject.CodebuildProjectCacheOutputReference", version: "21.22.1" }; function codebuildProjectEnvironmentDockerServerToTerraform(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 { compute_type: cdktf.stringToTerraform(struct.computeType), security_group_ids: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.securityGroupIds), }; } function codebuildProjectEnvironmentDockerServerToHclTerraform(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 = { compute_type: { value: cdktf.stringToHclTerraform(struct.computeType), isBlock: false, type: "simple", storageClassType: "string", }, security_group_ids: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.securityGroupIds), isBlock: false, type: "list", storageClassType: "stringList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class CodebuildProjectEnvironmentDockerServerOutputReference 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._computeType !== undefined) { hasAnyValues = true; internalValueResult.computeType = this._computeType; } if (this._securityGroupIds !== undefined) { hasAnyValues = true; internalValueResult.securityGroupIds = this._securityGroupIds; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._computeType = undefined; this._securityGroupIds = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._computeType = value.computeType; this._securityGroupIds = value.securityGroupIds; } } get computeType() { return this.getStringAttribute('compute_type'); } set computeType(value) { this._computeType = value; } // Temporarily expose input value. Use with caution. get computeTypeInput() { return this._computeType; } get securityGroupIds() { return this.getListAttribute('security_group_ids'); } set securityGroupIds(value) { this._securityGroupIds = value; } resetSecurityGroupIds() { this._securityGroupIds = undefined; } // Temporarily expose input value. Use with caution. get securityGroupIdsInput() { return this._securityGroupIds; } } exports.CodebuildProjectEnvironmentDockerServerOutputReference = CodebuildProjectEnvironmentDockerServerOutputReference; _e = JSII_RTTI_SYMBOL_1; CodebuildProjectEnvironmentDockerServerOutputReference[_e] = { fqn: "@cdktf/provider-aws.codebuildProject.CodebuildProjectEnvironmentDockerServerOutputReference", version: "21.22.1" }; function codebuildProjectEnvironmentEnvironmentVariableToTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { name: cdktf.stringToTerraform(struct.name), type: cdktf.stringToTerraform(struct.type), value: cdktf.stringToTerraform(struct.value), }; } function codebuildProjectEnvironmentEnvironmentVariableToHclTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } const attrs = { name: { value: cdktf.stringToHclTerraform(struct.name), isBlock: false, type: "simple", storageClassType: "string", }, type: { value: cdktf.stringToHclTerraform(struct.type), isBlock: false, type: "simple", storageClassType: "string", }, value: { value: cdktf.stringToHclTerraform(struct.value), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class CodebuildProjectEnvironmentEnvironmentVariableOutputReference 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._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } if (this._type !== undefined) { hasAnyValues = true; internalValueResult.type = this._type; } if (this._value !== undefined) { hasAnyValues = true; internalValueResult.value = this._value; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._name = undefined; this._type = undefined; this._value = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; this._name = value.name; this._type = value.type; this._value = value.value; } } get name() { return this.getStringAttribute('name'); } set name(value) { this._name = value; } // Temporarily expose input value. Use with caution. get nameInput() { return this._name; } get type() { return this.getStringAttribute('type'); } set type(value) { this._type = value; } resetType() { this._type = undefined; } // Temporarily expose input value. Use with caution. get typeInput() { return this._type; } get value() { return this.getStringAttribute('value'); } set value(value) { this._value = value; } // Temporarily expose input value. Use with caution. get valueInput() { return this._value; } } exports.CodebuildProjectEnvironmentEnvironmentVariableOutputReference = CodebuildProjectEnvironmentEnvironmentVariableOutputReference; _f = JSII_RTTI_SYMBOL_1; CodebuildProjectEnvironmentEnvironmentVariableOutputReference[_f] = { fqn: "@cdktf/provider-aws.codebuildProject.CodebuildProjectEnvironmentEnvironmentVariableOutputReference", version: "21.22.1" }; class CodebuildProjectEnvironmentEnvironmentVariableList 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 CodebuildProjectEnvironmentEnvironmentVariableOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.CodebuildProjectEnvironmentEnvironmentVariableList = CodebuildProjectEnvironmentEnvironmentVariableList; _g = JSII_RTTI_SYMBOL_1; CodebuildProjectEnvironmentEnvironmentVariableList[_g] = { fqn: "@cdktf/provider-aws.codebuildProject.CodebuildProjectEnvironmentEnvironmentVariableList", version: "21.22.1" }; function codebuildProjectEnvironmentFleetToTerraform(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 { fleet_arn: cdktf.stringToTerraform(struct.fleetArn), }; } function codebuildProjectEnvironmentFleetToHclTerraform(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 = { fleet_arn: { value: cdktf.stringToHclTerraform(struct.fleetArn), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class CodebuildProjectEnvironmentFleetOutputReference 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._fleetArn !== undefined) { hasAnyValues = true; internalValueResult.fleetArn = this._fleetArn; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._fleetArn = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._fleetArn = value.fleetArn; } } get fleetArn() { return this.getStringAttribute('fleet_arn'); } set fleetArn(value) { this._fleetArn = value; } resetFleetArn() { this._fleetArn = undefined; } // Temporarily expose input value. Use with caution. get fleetArnInput() { return this._fleetArn; } } exports.CodebuildProjectEnvironmentFleetOutputReference = CodebuildProjectEnvironmentFleetOutputReference; _h = JSII_RTTI_SYMBOL_1; CodebuildProjectEnvironmentFleetOutputReference[_h] = { fqn: "@cdktf/provider-aws.codebuildProject.CodebuildProjectEnvironmentFleetOutputReference", version: "21.22.1" }; function codebuildProjectEnvironmentRegistryCredentialToTerraform(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 { credential: cdktf.stringToTerraform(struct.credential), credential_provider: cdktf.stringToTerraform(struct.credentialProvider), }; } function codebuildProjectEnvironmentRegistryCredentialToHclTerraform(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 = { credential: { value: cdktf.stringToHclTerraform(struct.credential), isBlock: false, type: "simple", storageClassType: "string", }, credential_provider: { value: cdktf.stringToHclTerraform(struct.credentialProvider), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class CodebuildProjectEnvironmentRegistryCredentialOutputReference 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._credential !== undefined) { hasAnyValues = true; internalValueResult.credential = this._credential; } if (this._credentialProvider !== undefined) { hasAnyValues = true; internalValueResult.credentialProvider = this._credentialProvider; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._credential = undefined; this._credentialProvider = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._credential = value.credential; this._credentialProvider = value.credentialProvider; } } get credential() { return this.getStringAttribute('credential'); } set credential(value) { this._credential = value; } // Temporarily expose input value. Use with caution. get credentialInput() { return this._credential; } get credentialProvider() { return this.getStringAttribute('credential_provider'); } set credentialProvider(value) { this._credentialProvider = value; } // Temporarily expose input value. Use with caution. get credentialProviderInput() { return this._credentialProvider; } } exports.CodebuildProjectEnvironmentRegistryCredentialOutputReference = CodebuildProjectEnvironmentRegistryCredentialOutputReference; _j = JSII_RTTI_SYMBOL_1; CodebuildProjectEnvironmentRegistryCredentialOutputReference[_j] = { fqn: "@cdktf/provider-aws.codebuildProject.CodebuildProjectEnvironmentRegistryCredentialOutputReference", version: "21.22.1" }; function codebuildProjectEnvironmentToTerraform(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 { certificate: cdktf.stringToTerraform(struct.certificate), compute_type: cdktf.stringToTerraform(struct.computeType), image: cdktf.stringToTerraform(struct.image), image_pull_credentials_type: cdktf.stringToTerraform(struct.imagePullCredentialsType), privileged_mode: cdktf.booleanToTerraform(struct.privilegedMode), type: cdktf.stringToTerraform(struct.type), docker_server: codebuildProjectEnvironmentDockerServerToTerraform(struct.dockerServer), environment_variable: