UNPKG

@cdktf/provider-google

Version:

Prebuilt google Provider for Terraform CDK (cdktf)

1,141 lines 394 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u; Object.defineProperty(exports, "__esModule", { value: true }); exports.storageTransferJobTransferSpecTransferOptionsToHclTerraform = exports.storageTransferJobTransferSpecTransferOptionsToTerraform = exports.StorageTransferJobTransferSpecPosixDataSourceOutputReference = exports.storageTransferJobTransferSpecPosixDataSourceToHclTerraform = exports.storageTransferJobTransferSpecPosixDataSourceToTerraform = exports.StorageTransferJobTransferSpecPosixDataSinkOutputReference = exports.storageTransferJobTransferSpecPosixDataSinkToHclTerraform = exports.storageTransferJobTransferSpecPosixDataSinkToTerraform = exports.StorageTransferJobTransferSpecObjectConditionsOutputReference = exports.storageTransferJobTransferSpecObjectConditionsToHclTerraform = exports.storageTransferJobTransferSpecObjectConditionsToTerraform = exports.StorageTransferJobTransferSpecHttpDataSourceOutputReference = exports.storageTransferJobTransferSpecHttpDataSourceToHclTerraform = exports.storageTransferJobTransferSpecHttpDataSourceToTerraform = exports.StorageTransferJobTransferSpecGcsDataSourceOutputReference = exports.storageTransferJobTransferSpecGcsDataSourceToHclTerraform = exports.storageTransferJobTransferSpecGcsDataSourceToTerraform = exports.StorageTransferJobTransferSpecGcsDataSinkOutputReference = exports.storageTransferJobTransferSpecGcsDataSinkToHclTerraform = exports.storageTransferJobTransferSpecGcsDataSinkToTerraform = exports.StorageTransferJobTransferSpecAzureBlobStorageDataSourceOutputReference = exports.storageTransferJobTransferSpecAzureBlobStorageDataSourceToHclTerraform = exports.storageTransferJobTransferSpecAzureBlobStorageDataSourceToTerraform = exports.StorageTransferJobTransferSpecAzureBlobStorageDataSourceAzureCredentialsOutputReference = exports.storageTransferJobTransferSpecAzureBlobStorageDataSourceAzureCredentialsToHclTerraform = exports.storageTransferJobTransferSpecAzureBlobStorageDataSourceAzureCredentialsToTerraform = exports.StorageTransferJobTransferSpecAwsS3DataSourceOutputReference = exports.storageTransferJobTransferSpecAwsS3DataSourceToHclTerraform = exports.storageTransferJobTransferSpecAwsS3DataSourceToTerraform = exports.StorageTransferJobTransferSpecAwsS3DataSourceAwsAccessKeyOutputReference = exports.storageTransferJobTransferSpecAwsS3DataSourceAwsAccessKeyToHclTerraform = exports.storageTransferJobTransferSpecAwsS3DataSourceAwsAccessKeyToTerraform = exports.StorageTransferJobScheduleOutputReference = exports.storageTransferJobScheduleToHclTerraform = exports.storageTransferJobScheduleToTerraform = exports.StorageTransferJobScheduleStartTimeOfDayOutputReference = exports.storageTransferJobScheduleStartTimeOfDayToHclTerraform = exports.storageTransferJobScheduleStartTimeOfDayToTerraform = exports.StorageTransferJobScheduleScheduleStartDateOutputReference = exports.storageTransferJobScheduleScheduleStartDateToHclTerraform = exports.storageTransferJobScheduleScheduleStartDateToTerraform = exports.StorageTransferJobScheduleScheduleEndDateOutputReference = exports.storageTransferJobScheduleScheduleEndDateToHclTerraform = exports.storageTransferJobScheduleScheduleEndDateToTerraform = exports.StorageTransferJobNotificationConfigOutputReference = exports.storageTransferJobNotificationConfigToHclTerraform = exports.storageTransferJobNotificationConfigToTerraform = exports.StorageTransferJobEventStreamOutputReference = exports.storageTransferJobEventStreamToHclTerraform = exports.storageTransferJobEventStreamToTerraform = void 0; exports.StorageTransferJob = exports.StorageTransferJobTransferSpecOutputReference = exports.storageTransferJobTransferSpecToHclTerraform = exports.storageTransferJobTransferSpecToTerraform = exports.StorageTransferJobTransferSpecTransferOptionsOutputReference = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function storageTransferJobEventStreamToTerraform(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 { event_stream_expiration_time: cdktf.stringToTerraform(struct.eventStreamExpirationTime), event_stream_start_time: cdktf.stringToTerraform(struct.eventStreamStartTime), name: cdktf.stringToTerraform(struct.name), }; } exports.storageTransferJobEventStreamToTerraform = storageTransferJobEventStreamToTerraform; function storageTransferJobEventStreamToHclTerraform(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 = { event_stream_expiration_time: { value: cdktf.stringToHclTerraform(struct.eventStreamExpirationTime), isBlock: false, type: "simple", storageClassType: "string", }, event_stream_start_time: { value: cdktf.stringToHclTerraform(struct.eventStreamStartTime), isBlock: false, type: "simple", storageClassType: "string", }, name: { value: cdktf.stringToHclTerraform(struct.name), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.storageTransferJobEventStreamToHclTerraform = storageTransferJobEventStreamToHclTerraform; class StorageTransferJobEventStreamOutputReference 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._eventStreamExpirationTime !== undefined) { hasAnyValues = true; internalValueResult.eventStreamExpirationTime = this._eventStreamExpirationTime; } if (this._eventStreamStartTime !== undefined) { hasAnyValues = true; internalValueResult.eventStreamStartTime = this._eventStreamStartTime; } if (this._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._eventStreamExpirationTime = undefined; this._eventStreamStartTime = undefined; this._name = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._eventStreamExpirationTime = value.eventStreamExpirationTime; this._eventStreamStartTime = value.eventStreamStartTime; this._name = value.name; } } get eventStreamExpirationTime() { return this.getStringAttribute('event_stream_expiration_time'); } set eventStreamExpirationTime(value) { this._eventStreamExpirationTime = value; } resetEventStreamExpirationTime() { this._eventStreamExpirationTime = undefined; } // Temporarily expose input value. Use with caution. get eventStreamExpirationTimeInput() { return this._eventStreamExpirationTime; } get eventStreamStartTime() { return this.getStringAttribute('event_stream_start_time'); } set eventStreamStartTime(value) { this._eventStreamStartTime = value; } resetEventStreamStartTime() { this._eventStreamStartTime = undefined; } // Temporarily expose input value. Use with caution. get eventStreamStartTimeInput() { return this._eventStreamStartTime; } get name() { return this.getStringAttribute('name'); } set name(value) { this._name = value; } // Temporarily expose input value. Use with caution. get nameInput() { return this._name; } } exports.StorageTransferJobEventStreamOutputReference = StorageTransferJobEventStreamOutputReference; _a = JSII_RTTI_SYMBOL_1; StorageTransferJobEventStreamOutputReference[_a] = { fqn: "@cdktf/provider-google.storageTransferJob.StorageTransferJobEventStreamOutputReference", version: "14.12.0" }; function storageTransferJobNotificationConfigToTerraform(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 { event_types: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.eventTypes), payload_format: cdktf.stringToTerraform(struct.payloadFormat), pubsub_topic: cdktf.stringToTerraform(struct.pubsubTopic), }; } exports.storageTransferJobNotificationConfigToTerraform = storageTransferJobNotificationConfigToTerraform; function storageTransferJobNotificationConfigToHclTerraform(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 = { event_types: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.eventTypes), isBlock: false, type: "set", storageClassType: "stringList", }, payload_format: { value: cdktf.stringToHclTerraform(struct.payloadFormat), isBlock: false, type: "simple", storageClassType: "string", }, pubsub_topic: { value: cdktf.stringToHclTerraform(struct.pubsubTopic), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.storageTransferJobNotificationConfigToHclTerraform = storageTransferJobNotificationConfigToHclTerraform; class StorageTransferJobNotificationConfigOutputReference 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._eventTypes !== undefined) { hasAnyValues = true; internalValueResult.eventTypes = this._eventTypes; } if (this._payloadFormat !== undefined) { hasAnyValues = true; internalValueResult.payloadFormat = this._payloadFormat; } if (this._pubsubTopic !== undefined) { hasAnyValues = true; internalValueResult.pubsubTopic = this._pubsubTopic; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._eventTypes = undefined; this._payloadFormat = undefined; this._pubsubTopic = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._eventTypes = value.eventTypes; this._payloadFormat = value.payloadFormat; this._pubsubTopic = value.pubsubTopic; } } get eventTypes() { return cdktf.Fn.tolist(this.getListAttribute('event_types')); } set eventTypes(value) { this._eventTypes = value; } resetEventTypes() { this._eventTypes = undefined; } // Temporarily expose input value. Use with caution. get eventTypesInput() { return this._eventTypes; } get payloadFormat() { return this.getStringAttribute('payload_format'); } set payloadFormat(value) { this._payloadFormat = value; } // Temporarily expose input value. Use with caution. get payloadFormatInput() { return this._payloadFormat; } get pubsubTopic() { return this.getStringAttribute('pubsub_topic'); } set pubsubTopic(value) { this._pubsubTopic = value; } // Temporarily expose input value. Use with caution. get pubsubTopicInput() { return this._pubsubTopic; } } exports.StorageTransferJobNotificationConfigOutputReference = StorageTransferJobNotificationConfigOutputReference; _b = JSII_RTTI_SYMBOL_1; StorageTransferJobNotificationConfigOutputReference[_b] = { fqn: "@cdktf/provider-google.storageTransferJob.StorageTransferJobNotificationConfigOutputReference", version: "14.12.0" }; function storageTransferJobScheduleScheduleEndDateToTerraform(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 { day: cdktf.numberToTerraform(struct.day), month: cdktf.numberToTerraform(struct.month), year: cdktf.numberToTerraform(struct.year), }; } exports.storageTransferJobScheduleScheduleEndDateToTerraform = storageTransferJobScheduleScheduleEndDateToTerraform; function storageTransferJobScheduleScheduleEndDateToHclTerraform(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 = { day: { value: cdktf.numberToHclTerraform(struct.day), isBlock: false, type: "simple", storageClassType: "number", }, month: { value: cdktf.numberToHclTerraform(struct.month), isBlock: false, type: "simple", storageClassType: "number", }, year: { value: cdktf.numberToHclTerraform(struct.year), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.storageTransferJobScheduleScheduleEndDateToHclTerraform = storageTransferJobScheduleScheduleEndDateToHclTerraform; class StorageTransferJobScheduleScheduleEndDateOutputReference 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._day !== undefined) { hasAnyValues = true; internalValueResult.day = this._day; } if (this._month !== undefined) { hasAnyValues = true; internalValueResult.month = this._month; } if (this._year !== undefined) { hasAnyValues = true; internalValueResult.year = this._year; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._day = undefined; this._month = undefined; this._year = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._day = value.day; this._month = value.month; this._year = value.year; } } get day() { return this.getNumberAttribute('day'); } set day(value) { this._day = value; } // Temporarily expose input value. Use with caution. get dayInput() { return this._day; } get month() { return this.getNumberAttribute('month'); } set month(value) { this._month = value; } // Temporarily expose input value. Use with caution. get monthInput() { return this._month; } get year() { return this.getNumberAttribute('year'); } set year(value) { this._year = value; } // Temporarily expose input value. Use with caution. get yearInput() { return this._year; } } exports.StorageTransferJobScheduleScheduleEndDateOutputReference = StorageTransferJobScheduleScheduleEndDateOutputReference; _c = JSII_RTTI_SYMBOL_1; StorageTransferJobScheduleScheduleEndDateOutputReference[_c] = { fqn: "@cdktf/provider-google.storageTransferJob.StorageTransferJobScheduleScheduleEndDateOutputReference", version: "14.12.0" }; function storageTransferJobScheduleScheduleStartDateToTerraform(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 { day: cdktf.numberToTerraform(struct.day), month: cdktf.numberToTerraform(struct.month), year: cdktf.numberToTerraform(struct.year), }; } exports.storageTransferJobScheduleScheduleStartDateToTerraform = storageTransferJobScheduleScheduleStartDateToTerraform; function storageTransferJobScheduleScheduleStartDateToHclTerraform(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 = { day: { value: cdktf.numberToHclTerraform(struct.day), isBlock: false, type: "simple", storageClassType: "number", }, month: { value: cdktf.numberToHclTerraform(struct.month), isBlock: false, type: "simple", storageClassType: "number", }, year: { value: cdktf.numberToHclTerraform(struct.year), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.storageTransferJobScheduleScheduleStartDateToHclTerraform = storageTransferJobScheduleScheduleStartDateToHclTerraform; class StorageTransferJobScheduleScheduleStartDateOutputReference 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._day !== undefined) { hasAnyValues = true; internalValueResult.day = this._day; } if (this._month !== undefined) { hasAnyValues = true; internalValueResult.month = this._month; } if (this._year !== undefined) { hasAnyValues = true; internalValueResult.year = this._year; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._day = undefined; this._month = undefined; this._year = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._day = value.day; this._month = value.month; this._year = value.year; } } get day() { return this.getNumberAttribute('day'); } set day(value) { this._day = value; } // Temporarily expose input value. Use with caution. get dayInput() { return this._day; } get month() { return this.getNumberAttribute('month'); } set month(value) { this._month = value; } // Temporarily expose input value. Use with caution. get monthInput() { return this._month; } get year() { return this.getNumberAttribute('year'); } set year(value) { this._year = value; } // Temporarily expose input value. Use with caution. get yearInput() { return this._year; } } exports.StorageTransferJobScheduleScheduleStartDateOutputReference = StorageTransferJobScheduleScheduleStartDateOutputReference; _d = JSII_RTTI_SYMBOL_1; StorageTransferJobScheduleScheduleStartDateOutputReference[_d] = { fqn: "@cdktf/provider-google.storageTransferJob.StorageTransferJobScheduleScheduleStartDateOutputReference", version: "14.12.0" }; function storageTransferJobScheduleStartTimeOfDayToTerraform(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 { hours: cdktf.numberToTerraform(struct.hours), minutes: cdktf.numberToTerraform(struct.minutes), nanos: cdktf.numberToTerraform(struct.nanos), seconds: cdktf.numberToTerraform(struct.seconds), }; } exports.storageTransferJobScheduleStartTimeOfDayToTerraform = storageTransferJobScheduleStartTimeOfDayToTerraform; function storageTransferJobScheduleStartTimeOfDayToHclTerraform(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 = { hours: { value: cdktf.numberToHclTerraform(struct.hours), isBlock: false, type: "simple", storageClassType: "number", }, minutes: { value: cdktf.numberToHclTerraform(struct.minutes), isBlock: false, type: "simple", storageClassType: "number", }, nanos: { value: cdktf.numberToHclTerraform(struct.nanos), isBlock: false, type: "simple", storageClassType: "number", }, seconds: { value: cdktf.numberToHclTerraform(struct.seconds), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.storageTransferJobScheduleStartTimeOfDayToHclTerraform = storageTransferJobScheduleStartTimeOfDayToHclTerraform; class StorageTransferJobScheduleStartTimeOfDayOutputReference 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._hours !== undefined) { hasAnyValues = true; internalValueResult.hours = this._hours; } if (this._minutes !== undefined) { hasAnyValues = true; internalValueResult.minutes = this._minutes; } if (this._nanos !== undefined) { hasAnyValues = true; internalValueResult.nanos = this._nanos; } if (this._seconds !== undefined) { hasAnyValues = true; internalValueResult.seconds = this._seconds; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._hours = undefined; this._minutes = undefined; this._nanos = undefined; this._seconds = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._hours = value.hours; this._minutes = value.minutes; this._nanos = value.nanos; this._seconds = value.seconds; } } get hours() { return this.getNumberAttribute('hours'); } set hours(value) { this._hours = value; } // Temporarily expose input value. Use with caution. get hoursInput() { return this._hours; } get minutes() { return this.getNumberAttribute('minutes'); } set minutes(value) { this._minutes = value; } // Temporarily expose input value. Use with caution. get minutesInput() { return this._minutes; } get nanos() { return this.getNumberAttribute('nanos'); } set nanos(value) { this._nanos = value; } // Temporarily expose input value. Use with caution. get nanosInput() { return this._nanos; } get seconds() { return this.getNumberAttribute('seconds'); } set seconds(value) { this._seconds = value; } // Temporarily expose input value. Use with caution. get secondsInput() { return this._seconds; } } exports.StorageTransferJobScheduleStartTimeOfDayOutputReference = StorageTransferJobScheduleStartTimeOfDayOutputReference; _e = JSII_RTTI_SYMBOL_1; StorageTransferJobScheduleStartTimeOfDayOutputReference[_e] = { fqn: "@cdktf/provider-google.storageTransferJob.StorageTransferJobScheduleStartTimeOfDayOutputReference", version: "14.12.0" }; function storageTransferJobScheduleToTerraform(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 { repeat_interval: cdktf.stringToTerraform(struct.repeatInterval), schedule_end_date: storageTransferJobScheduleScheduleEndDateToTerraform(struct.scheduleEndDate), schedule_start_date: storageTransferJobScheduleScheduleStartDateToTerraform(struct.scheduleStartDate), start_time_of_day: storageTransferJobScheduleStartTimeOfDayToTerraform(struct.startTimeOfDay), }; } exports.storageTransferJobScheduleToTerraform = storageTransferJobScheduleToTerraform; function storageTransferJobScheduleToHclTerraform(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 = { repeat_interval: { value: cdktf.stringToHclTerraform(struct.repeatInterval), isBlock: false, type: "simple", storageClassType: "string", }, schedule_end_date: { value: storageTransferJobScheduleScheduleEndDateToHclTerraform(struct.scheduleEndDate), isBlock: true, type: "list", storageClassType: "StorageTransferJobScheduleScheduleEndDateList", }, schedule_start_date: { value: storageTransferJobScheduleScheduleStartDateToHclTerraform(struct.scheduleStartDate), isBlock: true, type: "list", storageClassType: "StorageTransferJobScheduleScheduleStartDateList", }, start_time_of_day: { value: storageTransferJobScheduleStartTimeOfDayToHclTerraform(struct.startTimeOfDay), isBlock: true, type: "list", storageClassType: "StorageTransferJobScheduleStartTimeOfDayList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.storageTransferJobScheduleToHclTerraform = storageTransferJobScheduleToHclTerraform; class StorageTransferJobScheduleOutputReference 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; // schedule_end_date - computed: false, optional: true, required: false this._scheduleEndDate = new StorageTransferJobScheduleScheduleEndDateOutputReference(this, "schedule_end_date"); // schedule_start_date - computed: false, optional: false, required: true this._scheduleStartDate = new StorageTransferJobScheduleScheduleStartDateOutputReference(this, "schedule_start_date"); // start_time_of_day - computed: false, optional: true, required: false this._startTimeOfDay = new StorageTransferJobScheduleStartTimeOfDayOutputReference(this, "start_time_of_day"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._repeatInterval !== undefined) { hasAnyValues = true; internalValueResult.repeatInterval = this._repeatInterval; } if (this._scheduleEndDate?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.scheduleEndDate = this._scheduleEndDate?.internalValue; } if (this._scheduleStartDate?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.scheduleStartDate = this._scheduleStartDate?.internalValue; } if (this._startTimeOfDay?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.startTimeOfDay = this._startTimeOfDay?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._repeatInterval = undefined; this._scheduleEndDate.internalValue = undefined; this._scheduleStartDate.internalValue = undefined; this._startTimeOfDay.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._repeatInterval = value.repeatInterval; this._scheduleEndDate.internalValue = value.scheduleEndDate; this._scheduleStartDate.internalValue = value.scheduleStartDate; this._startTimeOfDay.internalValue = value.startTimeOfDay; } } get repeatInterval() { return this.getStringAttribute('repeat_interval'); } set repeatInterval(value) { this._repeatInterval = value; } resetRepeatInterval() { this._repeatInterval = undefined; } // Temporarily expose input value. Use with caution. get repeatIntervalInput() { return this._repeatInterval; } get scheduleEndDate() { return this._scheduleEndDate; } putScheduleEndDate(value) { this._scheduleEndDate.internalValue = value; } resetScheduleEndDate() { this._scheduleEndDate.internalValue = undefined; } // Temporarily expose input value. Use with caution. get scheduleEndDateInput() { return this._scheduleEndDate.internalValue; } get scheduleStartDate() { return this._scheduleStartDate; } putScheduleStartDate(value) { this._scheduleStartDate.internalValue = value; } // Temporarily expose input value. Use with caution. get scheduleStartDateInput() { return this._scheduleStartDate.internalValue; } get startTimeOfDay() { return this._startTimeOfDay; } putStartTimeOfDay(value) { this._startTimeOfDay.internalValue = value; } resetStartTimeOfDay() { this._startTimeOfDay.internalValue = undefined; } // Temporarily expose input value. Use with caution. get startTimeOfDayInput() { return this._startTimeOfDay.internalValue; } } exports.StorageTransferJobScheduleOutputReference = StorageTransferJobScheduleOutputReference; _f = JSII_RTTI_SYMBOL_1; StorageTransferJobScheduleOutputReference[_f] = { fqn: "@cdktf/provider-google.storageTransferJob.StorageTransferJobScheduleOutputReference", version: "14.12.0" }; function storageTransferJobTransferSpecAwsS3DataSourceAwsAccessKeyToTerraform(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 { access_key_id: cdktf.stringToTerraform(struct.accessKeyId), secret_access_key: cdktf.stringToTerraform(struct.secretAccessKey), }; } exports.storageTransferJobTransferSpecAwsS3DataSourceAwsAccessKeyToTerraform = storageTransferJobTransferSpecAwsS3DataSourceAwsAccessKeyToTerraform; function storageTransferJobTransferSpecAwsS3DataSourceAwsAccessKeyToHclTerraform(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 = { access_key_id: { value: cdktf.stringToHclTerraform(struct.accessKeyId), isBlock: false, type: "simple", storageClassType: "string", }, secret_access_key: { value: cdktf.stringToHclTerraform(struct.secretAccessKey), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.storageTransferJobTransferSpecAwsS3DataSourceAwsAccessKeyToHclTerraform = storageTransferJobTransferSpecAwsS3DataSourceAwsAccessKeyToHclTerraform; class StorageTransferJobTransferSpecAwsS3DataSourceAwsAccessKeyOutputReference 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._accessKeyId !== undefined) { hasAnyValues = true; internalValueResult.accessKeyId = this._accessKeyId; } if (this._secretAccessKey !== undefined) { hasAnyValues = true; internalValueResult.secretAccessKey = this._secretAccessKey; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._accessKeyId = undefined; this._secretAccessKey = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._accessKeyId = value.accessKeyId; this._secretAccessKey = value.secretAccessKey; } } get accessKeyId() { return this.getStringAttribute('access_key_id'); } set accessKeyId(value) { this._accessKeyId = value; } // Temporarily expose input value. Use with caution. get accessKeyIdInput() { return this._accessKeyId; } get secretAccessKey() { return this.getStringAttribute('secret_access_key'); } set secretAccessKey(value) { this._secretAccessKey = value; } // Temporarily expose input value. Use with caution. get secretAccessKeyInput() { return this._secretAccessKey; } } exports.StorageTransferJobTransferSpecAwsS3DataSourceAwsAccessKeyOutputReference = StorageTransferJobTransferSpecAwsS3DataSourceAwsAccessKeyOutputReference; _g = JSII_RTTI_SYMBOL_1; StorageTransferJobTransferSpecAwsS3DataSourceAwsAccessKeyOutputReference[_g] = { fqn: "@cdktf/provider-google.storageTransferJob.StorageTransferJobTransferSpecAwsS3DataSourceAwsAccessKeyOutputReference", version: "14.12.0" }; function storageTransferJobTransferSpecAwsS3DataSourceToTerraform(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 { bucket_name: cdktf.stringToTerraform(struct.bucketName), path: cdktf.stringToTerraform(struct.path), role_arn: cdktf.stringToTerraform(struct.roleArn), aws_access_key: storageTransferJobTransferSpecAwsS3DataSourceAwsAccessKeyToTerraform(struct.awsAccessKey), }; } exports.storageTransferJobTransferSpecAwsS3DataSourceToTerraform = storageTransferJobTransferSpecAwsS3DataSourceToTerraform; function storageTransferJobTransferSpecAwsS3DataSourceToHclTerraform(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 = { bucket_name: { value: cdktf.stringToHclTerraform(struct.bucketName), isBlock: false, type: "simple", storageClassType: "string", }, path: { value: cdktf.stringToHclTerraform(struct.path), isBlock: false, type: "simple", storageClassType: "string", }, role_arn: { value: cdktf.stringToHclTerraform(struct.roleArn), isBlock: false, type: "simple", storageClassType: "string", }, aws_access_key: { value: storageTransferJobTransferSpecAwsS3DataSourceAwsAccessKeyToHclTerraform(struct.awsAccessKey), isBlock: true, type: "list", storageClassType: "StorageTransferJobTransferSpecAwsS3DataSourceAwsAccessKeyList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.storageTransferJobTransferSpecAwsS3DataSourceToHclTerraform = storageTransferJobTransferSpecAwsS3DataSourceToHclTerraform; class StorageTransferJobTransferSpecAwsS3DataSourceOutputReference 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; // aws_access_key - computed: false, optional: true, required: false this._awsAccessKey = new StorageTransferJobTransferSpecAwsS3DataSourceAwsAccessKeyOutputReference(this, "aws_access_key"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._bucketName !== undefined) { hasAnyValues = true; internalValueResult.bucketName = this._bucketName; } if (this._path !== undefined) { hasAnyValues = true; internalValueResult.path = this._path; } if (this._roleArn !== undefined) { hasAnyValues = true; internalValueResult.roleArn = this._roleArn; } if (this._awsAccessKey?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.awsAccessKey = this._awsAccessKey?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._bucketName = undefined; this._path = undefined; this._roleArn = undefined; this._awsAccessKey.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._bucketName = value.bucketName; this._path = value.path; this._roleArn = value.roleArn; this._awsAccessKey.internalValue = value.awsAccessKey; } } get bucketName() { return this.getStringAttribute('bucket_name'); } set bucketName(value) { this._bucketName = value; } // Temporarily expose input value. Use with caution. get bucketNameInput() { return this._bucketName; } 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 roleArn() { return this.getStringAttribute('role_arn'); } set roleArn(value) { this._roleArn = value; } resetRoleArn() { this._roleArn = undefined; } // Temporarily expose input value. Use with caution. get roleArnInput() { return this._roleArn; } get awsAccessKey() { return this._awsAccessKey; } putAwsAccessKey(value) { this._awsAccessKey.internalValue = value; } resetAwsAccessKey() { this._awsAccessKey.internalValue = undefined; } // Temporarily expose input value. Use with caution. get awsAccessKeyInput() { return this._awsAccessKey.internalValue; } } exports.StorageTransferJobTransferSpecAwsS3DataSourceOutputReference = StorageTransferJobTransferSpecAwsS3DataSourceOutputReference; _h = JSII_RTTI_SYMBOL_1; StorageTransferJobTransferSpecAwsS3DataSourceOutputReference[_h] = { fqn: "@cdktf/provider-google.storageTransferJob.StorageTransferJobTransferSpecAwsS3DataSourceOutputReference", version: "14.12.0" }; function storageTransferJobTransferSpecAzureBlobStorageDataSourceAzureCredentialsToTerraform(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 { sas_token: cdktf.stringToTerraform(struct.sasToken), }; } exports.storageTransferJobTransferSpecAzureBlobStorageDataSourceAzureCredentialsToTerraform = storageTransferJobTransferSpecAzureBlobStorageDataSourceAzureCredentialsToTerraform; function storageTransferJobTransferSpecAzureBlobStorageDataSourceAzureCredentialsToHclTerraform(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 = { sas_token: { value: cdktf.stringToHclTerraform(struct.sasToken), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.storageTransferJobTransferSpecAzureBlobStorageDataSourceAzureCredentialsToHclTerraform = storageTransferJobTransferSpecAzureBlobStorageDataSourceAzureCredentialsToHclTerraform; class StorageTransferJobTransferSpecAzureBlobStorageDataSourceAzureCredentialsOutputReference 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._sasToken !== undefined) { hasAnyValues = true; internalValueResult.sasToken = this._sasToken; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._sasToken = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._sasToken = value.sasToken; } } get sasToken() { return this.getStringAttribute('sas_token'); } set sasToken(value) { this._sasToken = value; } // Temporarily expose input value. Use with caution. get sasTokenInput() { return this._sasToken; } } exports.StorageTransferJobTransferSpecAzureBlobStorageDataSourceAzureCredentialsOutputReference = StorageTransferJobTransferSpecAzureBlobStorageDataSourceAzureCredentialsOutputReference; _j = JSII_RTTI_SYMBOL_1; StorageTransferJobTransferSpecAzureBlobStorageDataSourceAzureCredentialsOutputReference[_j] = { fqn: "@cdktf/provider-google.storageTransferJob.StorageTransferJobTransferSpecAzureBlobStorageDataSourceAzureCredentialsOutputReference", version: "14.12.0" }; function storageTransferJobTransferSpecAzureBlobStorageDataSourceToTerraform(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 { container: cdktf.stringToTerraform(struct.container), path: cdktf.stringToTerraform(struct.path), storage_account: cdktf.stringToTerraform(struct.storageAccount), azure_credentials: storageTransferJobTransferSpecAzureBlobStorageDataSourceAzureCredentialsToTerraform(struct.azureCredentials), }; } exports.storageTransferJobTransferSpecAzureBlobStorageDataSourceToTerraform = storageTransferJobTransferSpecAzureBlobStorageDataSourceToTerraform; function storageTransferJobTransferSpecAzureBlobStorageDataSourceToHclTerraform(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 = { container: { value: cdktf.stringToHclTerraform(struct.container), isBlock: false, type: "simple", storageClassType: "string",