UNPKG

@cdktf/provider-aws

Version:

Prebuilt aws Provider for Terraform CDK (cdktf)

993 lines 136 kB
"use strict"; var _a, _b, _c, _d, _e, _f; Object.defineProperty(exports, "__esModule", { value: true }); exports.TransferConnector = exports.TransferConnectorTimeoutsOutputReference = exports.TransferConnectorSftpConfigOutputReference = exports.TransferConnectorEgressConfigOutputReference = exports.TransferConnectorEgressConfigVpcLatticeOutputReference = exports.TransferConnectorAs2ConfigOutputReference = void 0; exports.transferConnectorAs2ConfigToTerraform = transferConnectorAs2ConfigToTerraform; exports.transferConnectorAs2ConfigToHclTerraform = transferConnectorAs2ConfigToHclTerraform; exports.transferConnectorEgressConfigVpcLatticeToTerraform = transferConnectorEgressConfigVpcLatticeToTerraform; exports.transferConnectorEgressConfigVpcLatticeToHclTerraform = transferConnectorEgressConfigVpcLatticeToHclTerraform; exports.transferConnectorEgressConfigToTerraform = transferConnectorEgressConfigToTerraform; exports.transferConnectorEgressConfigToHclTerraform = transferConnectorEgressConfigToHclTerraform; exports.transferConnectorSftpConfigToTerraform = transferConnectorSftpConfigToTerraform; exports.transferConnectorSftpConfigToHclTerraform = transferConnectorSftpConfigToHclTerraform; exports.transferConnectorTimeoutsToTerraform = transferConnectorTimeoutsToTerraform; exports.transferConnectorTimeoutsToHclTerraform = transferConnectorTimeoutsToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function transferConnectorAs2ConfigToTerraform(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 { compression: cdktf.stringToTerraform(struct.compression), encryption_algorithm: cdktf.stringToTerraform(struct.encryptionAlgorithm), local_profile_id: cdktf.stringToTerraform(struct.localProfileId), mdn_response: cdktf.stringToTerraform(struct.mdnResponse), mdn_signing_algorithm: cdktf.stringToTerraform(struct.mdnSigningAlgorithm), message_subject: cdktf.stringToTerraform(struct.messageSubject), partner_profile_id: cdktf.stringToTerraform(struct.partnerProfileId), signing_algorithm: cdktf.stringToTerraform(struct.signingAlgorithm), }; } function transferConnectorAs2ConfigToHclTerraform(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 = { compression: { value: cdktf.stringToHclTerraform(struct.compression), isBlock: false, type: "simple", storageClassType: "string", }, encryption_algorithm: { value: cdktf.stringToHclTerraform(struct.encryptionAlgorithm), isBlock: false, type: "simple", storageClassType: "string", }, local_profile_id: { value: cdktf.stringToHclTerraform(struct.localProfileId), isBlock: false, type: "simple", storageClassType: "string", }, mdn_response: { value: cdktf.stringToHclTerraform(struct.mdnResponse), isBlock: false, type: "simple", storageClassType: "string", }, mdn_signing_algorithm: { value: cdktf.stringToHclTerraform(struct.mdnSigningAlgorithm), isBlock: false, type: "simple", storageClassType: "string", }, message_subject: { value: cdktf.stringToHclTerraform(struct.messageSubject), isBlock: false, type: "simple", storageClassType: "string", }, partner_profile_id: { value: cdktf.stringToHclTerraform(struct.partnerProfileId), isBlock: false, type: "simple", storageClassType: "string", }, signing_algorithm: { value: cdktf.stringToHclTerraform(struct.signingAlgorithm), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class TransferConnectorAs2ConfigOutputReference 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._compression !== undefined) { hasAnyValues = true; internalValueResult.compression = this._compression; } if (this._encryptionAlgorithm !== undefined) { hasAnyValues = true; internalValueResult.encryptionAlgorithm = this._encryptionAlgorithm; } if (this._localProfileId !== undefined) { hasAnyValues = true; internalValueResult.localProfileId = this._localProfileId; } if (this._mdnResponse !== undefined) { hasAnyValues = true; internalValueResult.mdnResponse = this._mdnResponse; } if (this._mdnSigningAlgorithm !== undefined) { hasAnyValues = true; internalValueResult.mdnSigningAlgorithm = this._mdnSigningAlgorithm; } if (this._messageSubject !== undefined) { hasAnyValues = true; internalValueResult.messageSubject = this._messageSubject; } if (this._partnerProfileId !== undefined) { hasAnyValues = true; internalValueResult.partnerProfileId = this._partnerProfileId; } if (this._signingAlgorithm !== undefined) { hasAnyValues = true; internalValueResult.signingAlgorithm = this._signingAlgorithm; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._compression = undefined; this._encryptionAlgorithm = undefined; this._localProfileId = undefined; this._mdnResponse = undefined; this._mdnSigningAlgorithm = undefined; this._messageSubject = undefined; this._partnerProfileId = undefined; this._signingAlgorithm = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._compression = value.compression; this._encryptionAlgorithm = value.encryptionAlgorithm; this._localProfileId = value.localProfileId; this._mdnResponse = value.mdnResponse; this._mdnSigningAlgorithm = value.mdnSigningAlgorithm; this._messageSubject = value.messageSubject; this._partnerProfileId = value.partnerProfileId; this._signingAlgorithm = value.signingAlgorithm; } } get compression() { return this.getStringAttribute('compression'); } set compression(value) { this._compression = value; } // Temporarily expose input value. Use with caution. get compressionInput() { return this._compression; } get encryptionAlgorithm() { return this.getStringAttribute('encryption_algorithm'); } set encryptionAlgorithm(value) { this._encryptionAlgorithm = value; } // Temporarily expose input value. Use with caution. get encryptionAlgorithmInput() { return this._encryptionAlgorithm; } get localProfileId() { return this.getStringAttribute('local_profile_id'); } set localProfileId(value) { this._localProfileId = value; } // Temporarily expose input value. Use with caution. get localProfileIdInput() { return this._localProfileId; } get mdnResponse() { return this.getStringAttribute('mdn_response'); } set mdnResponse(value) { this._mdnResponse = value; } // Temporarily expose input value. Use with caution. get mdnResponseInput() { return this._mdnResponse; } get mdnSigningAlgorithm() { return this.getStringAttribute('mdn_signing_algorithm'); } set mdnSigningAlgorithm(value) { this._mdnSigningAlgorithm = value; } resetMdnSigningAlgorithm() { this._mdnSigningAlgorithm = undefined; } // Temporarily expose input value. Use with caution. get mdnSigningAlgorithmInput() { return this._mdnSigningAlgorithm; } get messageSubject() { return this.getStringAttribute('message_subject'); } set messageSubject(value) { this._messageSubject = value; } resetMessageSubject() { this._messageSubject = undefined; } // Temporarily expose input value. Use with caution. get messageSubjectInput() { return this._messageSubject; } get partnerProfileId() { return this.getStringAttribute('partner_profile_id'); } set partnerProfileId(value) { this._partnerProfileId = value; } // Temporarily expose input value. Use with caution. get partnerProfileIdInput() { return this._partnerProfileId; } get signingAlgorithm() { return this.getStringAttribute('signing_algorithm'); } set signingAlgorithm(value) { this._signingAlgorithm = value; } // Temporarily expose input value. Use with caution. get signingAlgorithmInput() { return this._signingAlgorithm; } } exports.TransferConnectorAs2ConfigOutputReference = TransferConnectorAs2ConfigOutputReference; _a = JSII_RTTI_SYMBOL_1; TransferConnectorAs2ConfigOutputReference[_a] = { fqn: "@cdktf/provider-aws.transferConnector.TransferConnectorAs2ConfigOutputReference", version: "21.22.1" }; function transferConnectorEgressConfigVpcLatticeToTerraform(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 { port_number: cdktf.numberToTerraform(struct.portNumber), resource_configuration_arn: cdktf.stringToTerraform(struct.resourceConfigurationArn), }; } function transferConnectorEgressConfigVpcLatticeToHclTerraform(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 = { port_number: { value: cdktf.numberToHclTerraform(struct.portNumber), isBlock: false, type: "simple", storageClassType: "number", }, resource_configuration_arn: { value: cdktf.stringToHclTerraform(struct.resourceConfigurationArn), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class TransferConnectorEgressConfigVpcLatticeOutputReference 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._portNumber !== undefined) { hasAnyValues = true; internalValueResult.portNumber = this._portNumber; } if (this._resourceConfigurationArn !== undefined) { hasAnyValues = true; internalValueResult.resourceConfigurationArn = this._resourceConfigurationArn; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._portNumber = undefined; this._resourceConfigurationArn = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._portNumber = value.portNumber; this._resourceConfigurationArn = value.resourceConfigurationArn; } } get portNumber() { return this.getNumberAttribute('port_number'); } set portNumber(value) { this._portNumber = value; } resetPortNumber() { this._portNumber = undefined; } // Temporarily expose input value. Use with caution. get portNumberInput() { return this._portNumber; } get resourceConfigurationArn() { return this.getStringAttribute('resource_configuration_arn'); } set resourceConfigurationArn(value) { this._resourceConfigurationArn = value; } // Temporarily expose input value. Use with caution. get resourceConfigurationArnInput() { return this._resourceConfigurationArn; } } exports.TransferConnectorEgressConfigVpcLatticeOutputReference = TransferConnectorEgressConfigVpcLatticeOutputReference; _b = JSII_RTTI_SYMBOL_1; TransferConnectorEgressConfigVpcLatticeOutputReference[_b] = { fqn: "@cdktf/provider-aws.transferConnector.TransferConnectorEgressConfigVpcLatticeOutputReference", version: "21.22.1" }; function transferConnectorEgressConfigToTerraform(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 { vpc_lattice: transferConnectorEgressConfigVpcLatticeToTerraform(struct.vpcLattice), }; } function transferConnectorEgressConfigToHclTerraform(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 = { vpc_lattice: { value: transferConnectorEgressConfigVpcLatticeToHclTerraform(struct.vpcLattice), isBlock: true, type: "list", storageClassType: "TransferConnectorEgressConfigVpcLatticeList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class TransferConnectorEgressConfigOutputReference 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; // vpc_lattice - computed: false, optional: true, required: false this._vpcLattice = new TransferConnectorEgressConfigVpcLatticeOutputReference(this, "vpc_lattice"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._vpcLattice?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.vpcLattice = this._vpcLattice?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._vpcLattice.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._vpcLattice.internalValue = value.vpcLattice; } } get vpcLattice() { return this._vpcLattice; } putVpcLattice(value) { this._vpcLattice.internalValue = value; } resetVpcLattice() { this._vpcLattice.internalValue = undefined; } // Temporarily expose input value. Use with caution. get vpcLatticeInput() { return this._vpcLattice.internalValue; } } exports.TransferConnectorEgressConfigOutputReference = TransferConnectorEgressConfigOutputReference; _c = JSII_RTTI_SYMBOL_1; TransferConnectorEgressConfigOutputReference[_c] = { fqn: "@cdktf/provider-aws.transferConnector.TransferConnectorEgressConfigOutputReference", version: "21.22.1" }; function transferConnectorSftpConfigToTerraform(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 { trusted_host_keys: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.trustedHostKeys), user_secret_id: cdktf.stringToTerraform(struct.userSecretId), }; } function transferConnectorSftpConfigToHclTerraform(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 = { trusted_host_keys: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.trustedHostKeys), isBlock: false, type: "set", storageClassType: "stringList", }, user_secret_id: { value: cdktf.stringToHclTerraform(struct.userSecretId), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class TransferConnectorSftpConfigOutputReference 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._trustedHostKeys !== undefined) { hasAnyValues = true; internalValueResult.trustedHostKeys = this._trustedHostKeys; } if (this._userSecretId !== undefined) { hasAnyValues = true; internalValueResult.userSecretId = this._userSecretId; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._trustedHostKeys = undefined; this._userSecretId = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._trustedHostKeys = value.trustedHostKeys; this._userSecretId = value.userSecretId; } } get trustedHostKeys() { return cdktf.Fn.tolist(this.getListAttribute('trusted_host_keys')); } set trustedHostKeys(value) { this._trustedHostKeys = value; } resetTrustedHostKeys() { this._trustedHostKeys = undefined; } // Temporarily expose input value. Use with caution. get trustedHostKeysInput() { return this._trustedHostKeys; } get userSecretId() { return this.getStringAttribute('user_secret_id'); } set userSecretId(value) { this._userSecretId = value; } resetUserSecretId() { this._userSecretId = undefined; } // Temporarily expose input value. Use with caution. get userSecretIdInput() { return this._userSecretId; } } exports.TransferConnectorSftpConfigOutputReference = TransferConnectorSftpConfigOutputReference; _d = JSII_RTTI_SYMBOL_1; TransferConnectorSftpConfigOutputReference[_d] = { fqn: "@cdktf/provider-aws.transferConnector.TransferConnectorSftpConfigOutputReference", version: "21.22.1" }; function transferConnectorTimeoutsToTerraform(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), }; } function transferConnectorTimeoutsToHclTerraform(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)); } class TransferConnectorTimeoutsOutputReference 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.TransferConnectorTimeoutsOutputReference = TransferConnectorTimeoutsOutputReference; _e = JSII_RTTI_SYMBOL_1; TransferConnectorTimeoutsOutputReference[_e] = { fqn: "@cdktf/provider-aws.transferConnector.TransferConnectorTimeoutsOutputReference", version: "21.22.1" }; /** * Represents a {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/transfer_connector aws_transfer_connector} */ class TransferConnector extends cdktf.TerraformResource { // ============== // STATIC Methods // ============== /** * Generates CDKTF code for importing a TransferConnector 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 TransferConnector to import * @param importFromId The id of the existing TransferConnector that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/transfer_connector#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the TransferConnector to import is found */ static generateConfigForImport(scope, importToId, importFromId, provider) { return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "aws_transfer_connector", importId: importFromId, provider }); } // =========== // INITIALIZER // =========== /** * Create a new {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/transfer_connector aws_transfer_connector} 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 TransferConnectorConfig */ constructor(scope, id, config) { super(scope, id, { terraformResourceType: 'aws_transfer_connector', terraformGeneratorMetadata: { providerName: 'aws', providerVersion: '6.25.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 }); // as2_config - computed: false, optional: true, required: false this._as2Config = new TransferConnectorAs2ConfigOutputReference(this, "as2_config"); // egress_config - computed: false, optional: true, required: false this._egressConfig = new TransferConnectorEgressConfigOutputReference(this, "egress_config"); // sftp_config - computed: false, optional: true, required: false this._sftpConfig = new TransferConnectorSftpConfigOutputReference(this, "sftp_config"); // timeouts - computed: false, optional: true, required: false this._timeouts = new TransferConnectorTimeoutsOutputReference(this, "timeouts"); this._accessRole = config.accessRole; this._id = config.id; this._loggingRole = config.loggingRole; this._region = config.region; this._securityPolicyName = config.securityPolicyName; this._tags = config.tags; this._tagsAll = config.tagsAll; this._url = config.url; this._as2Config.internalValue = config.as2Config; this._egressConfig.internalValue = config.egressConfig; this._sftpConfig.internalValue = config.sftpConfig; this._timeouts.internalValue = config.timeouts; } get accessRole() { return this.getStringAttribute('access_role'); } set accessRole(value) { this._accessRole = value; } // Temporarily expose input value. Use with caution. get accessRoleInput() { return this._accessRole; } // arn - computed: true, optional: false, required: false get arn() { return this.getStringAttribute('arn'); } // connector_id - computed: true, optional: false, required: false get connectorId() { return this.getStringAttribute('connector_id'); } get id() { return this.getStringAttribute('id'); } set id(value) { this._id = value; } resetId() { this._id = undefined; } // Temporarily expose input value. Use with caution. get idInput() { return this._id; } get loggingRole() { return this.getStringAttribute('logging_role'); } set loggingRole(value) { this._loggingRole = value; } resetLoggingRole() { this._loggingRole = undefined; } // Temporarily expose input value. Use with caution. get loggingRoleInput() { return this._loggingRole; } get region() { return this.getStringAttribute('region'); } set region(value) { this._region = value; } resetRegion() { this._region = undefined; } // Temporarily expose input value. Use with caution. get regionInput() { return this._region; } get securityPolicyName() { return this.getStringAttribute('security_policy_name'); } set securityPolicyName(value) { this._securityPolicyName = value; } resetSecurityPolicyName() { this._securityPolicyName = undefined; } // Temporarily expose input value. Use with caution. get securityPolicyNameInput() { return this._securityPolicyName; } get tags() { return this.getStringMapAttribute('tags'); } set tags(value) { this._tags = value; } resetTags() { this._tags = undefined; } // Temporarily expose input value. Use with caution. get tagsInput() { return this._tags; } get tagsAll() { return this.getStringMapAttribute('tags_all'); } set tagsAll(value) { this._tagsAll = value; } resetTagsAll() { this._tagsAll = undefined; } // Temporarily expose input value. Use with caution. get tagsAllInput() { return this._tagsAll; } get url() { return this.getStringAttribute('url'); } set url(value) { this._url = value; } resetUrl() { this._url = undefined; } // Temporarily expose input value. Use with caution. get urlInput() { return this._url; } get as2Config() { return this._as2Config; } putAs2Config(value) { this._as2Config.internalValue = value; } resetAs2Config() { this._as2Config.internalValue = undefined; } // Temporarily expose input value. Use with caution. get as2ConfigInput() { return this._as2Config.internalValue; } get egressConfig() { return this._egressConfig; } putEgressConfig(value) { this._egressConfig.internalValue = value; } resetEgressConfig() { this._egressConfig.internalValue = undefined; } // Temporarily expose input value. Use with caution. get egressConfigInput() { return this._egressConfig.internalValue; } get sftpConfig() { return this._sftpConfig; } putSftpConfig(value) { this._sftpConfig.internalValue = value; } resetSftpConfig() { this._sftpConfig.internalValue = undefined; } // Temporarily expose input value. Use with caution. get sftpConfigInput() { return this._sftpConfig.internalValue; } get timeouts() { return this._timeouts; } putTimeouts(value) { this._timeouts.internalValue = value; } resetTimeouts() { this._timeouts.internalValue = undefined; } // Temporarily expose input value. Use with caution. get timeoutsInput() { return this._timeouts.internalValue; } // ========= // SYNTHESIS // ========= synthesizeAttributes() { return { access_role: cdktf.stringToTerraform(this._accessRole), id: cdktf.stringToTerraform(this._id), logging_role: cdktf.stringToTerraform(this._loggingRole), region: cdktf.stringToTerraform(this._region), security_policy_name: cdktf.stringToTerraform(this._securityPolicyName), tags: cdktf.hashMapper(cdktf.stringToTerraform)(this._tags), tags_all: cdktf.hashMapper(cdktf.stringToTerraform)(this._tagsAll), url: cdktf.stringToTerraform(this._url), as2_config: transferConnectorAs2ConfigToTerraform(this._as2Config.internalValue), egress_config: transferConnectorEgressConfigToTerraform(this._egressConfig.internalValue), sftp_config: transferConnectorSftpConfigToTerraform(this._sftpConfig.internalValue), timeouts: transferConnectorTimeoutsToTerraform(this._timeouts.internalValue), }; } synthesizeHclAttributes() { const attrs = { access_role: { value: cdktf.stringToHclTerraform(this._accessRole), isBlock: false, type: "simple", storageClassType: "string", }, id: { value: cdktf.stringToHclTerraform(this._id), isBlock: false, type: "simple", storageClassType: "string", }, logging_role: { value: cdktf.stringToHclTerraform(this._loggingRole), isBlock: false, type: "simple", storageClassType: "string", }, region: { value: cdktf.stringToHclTerraform(this._region), isBlock: false, type: "simple", storageClassType: "string", }, security_policy_name: { value: cdktf.stringToHclTerraform(this._securityPolicyName), isBlock: false, type: "simple", storageClassType: "string", }, tags: { value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(this._tags), isBlock: false, type: "map", storageClassType: "stringMap", }, tags_all: { value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(this._tagsAll), isBlock: false, type: "map", storageClassType: "stringMap", }, url: { value: cdktf.stringToHclTerraform(this._url), isBlock: false, type: "simple", storageClassType: "string", }, as2_config: { value: transferConnectorAs2ConfigToHclTerraform(this._as2Config.internalValue), isBlock: true, type: "list", storageClassType: "TransferConnectorAs2ConfigList", }, egress_config: { value: transferConnectorEgressConfigToHclTerraform(this._egressConfig.internalValue), isBlock: true, type: "list", storageClassType: "TransferConnectorEgressConfigList", }, sftp_config: { value: transferConnectorSftpConfigToHclTerraform(this._sftpConfig.internalValue), isBlock: true, type: "list", storageClassType: "TransferConnectorSftpConfigList", }, timeouts: { value: transferConnectorTimeoutsToHclTerraform(this._timeouts.internalValue), isBlock: true, type: "struct", storageClassType: "TransferConnectorTimeouts", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } } exports.TransferConnector = TransferConnector; _f = JSII_RTTI_SYMBOL_1; TransferConnector[_f] = { fqn: "@cdktf/provider-aws.transferConnector.TransferConnector", version: "21.22.1" }; // ================= // STATIC PROPERTIES // ================= TransferConnector.tfResourceType = "aws_transfer_connector"; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHJhbnNmZXItY29ubmVjdG9yL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUErR0Esc0ZBZUM7QUFHRCw0RkEwREM7QUFxTUQsZ0hBU0M7QUFHRCxzSEFzQkM7QUE4RUQsNEZBUUM7QUFHRCxrR0FnQkM7QUE2REQsd0ZBU0M7QUFHRCw4RkFzQkM7QUF1RkQsb0ZBVUM7QUFHRCwwRkE0QkM7O0FBanVCRCwrQkFBK0I7QUFzRy9CLFNBQWdCLHFDQUFxQyxDQUFDLE1BQStFO0lBQ25JLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFBQyxPQUFPLE1BQU0sQ0FBQztJQUFDLENBQUM7SUFDNUYsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLG9IQUFvSCxDQUFDLENBQUM7SUFDeEksQ0FBQztJQUNELE9BQU87UUFDTCxXQUFXLEVBQUUsS0FBSyxDQUFDLGlCQUFpQixDQUFDLE1BQU8sQ0FBQyxXQUFXLENBQUM7UUFDekQsb0JBQW9CLEVBQUUsS0FBSyxDQUFDLGlCQUFpQixDQUFDLE1BQU8sQ0FBQyxtQkFBbUIsQ0FBQztRQUMxRSxnQkFBZ0IsRUFBRSxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBTyxDQUFDLGNBQWMsQ0FBQztRQUNqRSxZQUFZLEVBQUUsS0FBSyxDQUFDLGlCQUFpQixDQUFDLE1BQU8sQ0FBQyxXQUFXLENBQUM7UUFDMUQscUJBQXFCLEVBQUUsS0FBSyxDQUFDLGlCQUFpQixDQUFDLE1BQU8sQ0FBQyxtQkFBbUIsQ0FBQztRQUMzRSxlQUFlLEVBQUUsS0FBSyxDQUFDLGlCQUFpQixDQUFDLE1BQU8sQ0FBQyxjQUFjLENBQUM7UUFD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