UNPKG

@cdktf/provider-google

Version:

Prebuilt google Provider for Terraform CDK (cdktf)

924 lines 140 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g; Object.defineProperty(exports, "__esModule", { value: true }); exports.VertexAiFeaturestoreEntitytype = exports.VertexAiFeaturestoreEntitytypeTimeoutsOutputReference = exports.VertexAiFeaturestoreEntitytypeMonitoringConfigOutputReference = exports.VertexAiFeaturestoreEntitytypeMonitoringConfigSnapshotAnalysisOutputReference = exports.VertexAiFeaturestoreEntitytypeMonitoringConfigNumericalThresholdConfigOutputReference = exports.VertexAiFeaturestoreEntitytypeMonitoringConfigImportFeaturesAnalysisOutputReference = exports.VertexAiFeaturestoreEntitytypeMonitoringConfigCategoricalThresholdConfigOutputReference = void 0; exports.vertexAiFeaturestoreEntitytypeMonitoringConfigCategoricalThresholdConfigToTerraform = vertexAiFeaturestoreEntitytypeMonitoringConfigCategoricalThresholdConfigToTerraform; exports.vertexAiFeaturestoreEntitytypeMonitoringConfigCategoricalThresholdConfigToHclTerraform = vertexAiFeaturestoreEntitytypeMonitoringConfigCategoricalThresholdConfigToHclTerraform; exports.vertexAiFeaturestoreEntitytypeMonitoringConfigImportFeaturesAnalysisToTerraform = vertexAiFeaturestoreEntitytypeMonitoringConfigImportFeaturesAnalysisToTerraform; exports.vertexAiFeaturestoreEntitytypeMonitoringConfigImportFeaturesAnalysisToHclTerraform = vertexAiFeaturestoreEntitytypeMonitoringConfigImportFeaturesAnalysisToHclTerraform; exports.vertexAiFeaturestoreEntitytypeMonitoringConfigNumericalThresholdConfigToTerraform = vertexAiFeaturestoreEntitytypeMonitoringConfigNumericalThresholdConfigToTerraform; exports.vertexAiFeaturestoreEntitytypeMonitoringConfigNumericalThresholdConfigToHclTerraform = vertexAiFeaturestoreEntitytypeMonitoringConfigNumericalThresholdConfigToHclTerraform; exports.vertexAiFeaturestoreEntitytypeMonitoringConfigSnapshotAnalysisToTerraform = vertexAiFeaturestoreEntitytypeMonitoringConfigSnapshotAnalysisToTerraform; exports.vertexAiFeaturestoreEntitytypeMonitoringConfigSnapshotAnalysisToHclTerraform = vertexAiFeaturestoreEntitytypeMonitoringConfigSnapshotAnalysisToHclTerraform; exports.vertexAiFeaturestoreEntitytypeMonitoringConfigToTerraform = vertexAiFeaturestoreEntitytypeMonitoringConfigToTerraform; exports.vertexAiFeaturestoreEntitytypeMonitoringConfigToHclTerraform = vertexAiFeaturestoreEntitytypeMonitoringConfigToHclTerraform; exports.vertexAiFeaturestoreEntitytypeTimeoutsToTerraform = vertexAiFeaturestoreEntitytypeTimeoutsToTerraform; exports.vertexAiFeaturestoreEntitytypeTimeoutsToHclTerraform = vertexAiFeaturestoreEntitytypeTimeoutsToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function vertexAiFeaturestoreEntitytypeMonitoringConfigCategoricalThresholdConfigToTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { value: cdktf.numberToTerraform(struct.value), }; } function vertexAiFeaturestoreEntitytypeMonitoringConfigCategoricalThresholdConfigToHclTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } const attrs = { value: { value: cdktf.numberToHclTerraform(struct.value), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class VertexAiFeaturestoreEntitytypeMonitoringConfigCategoricalThresholdConfigOutputReference 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._value !== undefined) { hasAnyValues = true; internalValueResult.value = this._value; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._value = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._value = value.value; } } get value() { return this.getNumberAttribute('value'); } set value(value) { this._value = value; } // Temporarily expose input value. Use with caution. get valueInput() { return this._value; } } exports.VertexAiFeaturestoreEntitytypeMonitoringConfigCategoricalThresholdConfigOutputReference = VertexAiFeaturestoreEntitytypeMonitoringConfigCategoricalThresholdConfigOutputReference; _a = JSII_RTTI_SYMBOL_1; VertexAiFeaturestoreEntitytypeMonitoringConfigCategoricalThresholdConfigOutputReference[_a] = { fqn: "@cdktf/provider-google.vertexAiFeaturestoreEntitytype.VertexAiFeaturestoreEntitytypeMonitoringConfigCategoricalThresholdConfigOutputReference", version: "14.35.1" }; function vertexAiFeaturestoreEntitytypeMonitoringConfigImportFeaturesAnalysisToTerraform(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 { anomaly_detection_baseline: cdktf.stringToTerraform(struct.anomalyDetectionBaseline), state: cdktf.stringToTerraform(struct.state), }; } function vertexAiFeaturestoreEntitytypeMonitoringConfigImportFeaturesAnalysisToHclTerraform(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 = { anomaly_detection_baseline: { value: cdktf.stringToHclTerraform(struct.anomalyDetectionBaseline), isBlock: false, type: "simple", storageClassType: "string", }, state: { value: cdktf.stringToHclTerraform(struct.state), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class VertexAiFeaturestoreEntitytypeMonitoringConfigImportFeaturesAnalysisOutputReference 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._anomalyDetectionBaseline !== undefined) { hasAnyValues = true; internalValueResult.anomalyDetectionBaseline = this._anomalyDetectionBaseline; } if (this._state !== undefined) { hasAnyValues = true; internalValueResult.state = this._state; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._anomalyDetectionBaseline = undefined; this._state = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._anomalyDetectionBaseline = value.anomalyDetectionBaseline; this._state = value.state; } } get anomalyDetectionBaseline() { return this.getStringAttribute('anomaly_detection_baseline'); } set anomalyDetectionBaseline(value) { this._anomalyDetectionBaseline = value; } resetAnomalyDetectionBaseline() { this._anomalyDetectionBaseline = undefined; } // Temporarily expose input value. Use with caution. get anomalyDetectionBaselineInput() { return this._anomalyDetectionBaseline; } get state() { return this.getStringAttribute('state'); } set state(value) { this._state = value; } resetState() { this._state = undefined; } // Temporarily expose input value. Use with caution. get stateInput() { return this._state; } } exports.VertexAiFeaturestoreEntitytypeMonitoringConfigImportFeaturesAnalysisOutputReference = VertexAiFeaturestoreEntitytypeMonitoringConfigImportFeaturesAnalysisOutputReference; _b = JSII_RTTI_SYMBOL_1; VertexAiFeaturestoreEntitytypeMonitoringConfigImportFeaturesAnalysisOutputReference[_b] = { fqn: "@cdktf/provider-google.vertexAiFeaturestoreEntitytype.VertexAiFeaturestoreEntitytypeMonitoringConfigImportFeaturesAnalysisOutputReference", version: "14.35.1" }; function vertexAiFeaturestoreEntitytypeMonitoringConfigNumericalThresholdConfigToTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { value: cdktf.numberToTerraform(struct.value), }; } function vertexAiFeaturestoreEntitytypeMonitoringConfigNumericalThresholdConfigToHclTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } const attrs = { value: { value: cdktf.numberToHclTerraform(struct.value), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class VertexAiFeaturestoreEntitytypeMonitoringConfigNumericalThresholdConfigOutputReference 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._value !== undefined) { hasAnyValues = true; internalValueResult.value = this._value; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._value = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._value = value.value; } } get value() { return this.getNumberAttribute('value'); } set value(value) { this._value = value; } // Temporarily expose input value. Use with caution. get valueInput() { return this._value; } } exports.VertexAiFeaturestoreEntitytypeMonitoringConfigNumericalThresholdConfigOutputReference = VertexAiFeaturestoreEntitytypeMonitoringConfigNumericalThresholdConfigOutputReference; _c = JSII_RTTI_SYMBOL_1; VertexAiFeaturestoreEntitytypeMonitoringConfigNumericalThresholdConfigOutputReference[_c] = { fqn: "@cdktf/provider-google.vertexAiFeaturestoreEntitytype.VertexAiFeaturestoreEntitytypeMonitoringConfigNumericalThresholdConfigOutputReference", version: "14.35.1" }; function vertexAiFeaturestoreEntitytypeMonitoringConfigSnapshotAnalysisToTerraform(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 { disabled: cdktf.booleanToTerraform(struct.disabled), monitoring_interval_days: cdktf.numberToTerraform(struct.monitoringIntervalDays), staleness_days: cdktf.numberToTerraform(struct.stalenessDays), }; } function vertexAiFeaturestoreEntitytypeMonitoringConfigSnapshotAnalysisToHclTerraform(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 = { disabled: { value: cdktf.booleanToHclTerraform(struct.disabled), isBlock: false, type: "simple", storageClassType: "boolean", }, monitoring_interval_days: { value: cdktf.numberToHclTerraform(struct.monitoringIntervalDays), isBlock: false, type: "simple", storageClassType: "number", }, staleness_days: { value: cdktf.numberToHclTerraform(struct.stalenessDays), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class VertexAiFeaturestoreEntitytypeMonitoringConfigSnapshotAnalysisOutputReference 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._disabled !== undefined) { hasAnyValues = true; internalValueResult.disabled = this._disabled; } if (this._monitoringIntervalDays !== undefined) { hasAnyValues = true; internalValueResult.monitoringIntervalDays = this._monitoringIntervalDays; } if (this._stalenessDays !== undefined) { hasAnyValues = true; internalValueResult.stalenessDays = this._stalenessDays; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._disabled = undefined; this._monitoringIntervalDays = undefined; this._stalenessDays = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._disabled = value.disabled; this._monitoringIntervalDays = value.monitoringIntervalDays; this._stalenessDays = value.stalenessDays; } } get disabled() { return this.getBooleanAttribute('disabled'); } set disabled(value) { this._disabled = value; } resetDisabled() { this._disabled = undefined; } // Temporarily expose input value. Use with caution. get disabledInput() { return this._disabled; } get monitoringIntervalDays() { return this.getNumberAttribute('monitoring_interval_days'); } set monitoringIntervalDays(value) { this._monitoringIntervalDays = value; } resetMonitoringIntervalDays() { this._monitoringIntervalDays = undefined; } // Temporarily expose input value. Use with caution. get monitoringIntervalDaysInput() { return this._monitoringIntervalDays; } get stalenessDays() { return this.getNumberAttribute('staleness_days'); } set stalenessDays(value) { this._stalenessDays = value; } resetStalenessDays() { this._stalenessDays = undefined; } // Temporarily expose input value. Use with caution. get stalenessDaysInput() { return this._stalenessDays; } } exports.VertexAiFeaturestoreEntitytypeMonitoringConfigSnapshotAnalysisOutputReference = VertexAiFeaturestoreEntitytypeMonitoringConfigSnapshotAnalysisOutputReference; _d = JSII_RTTI_SYMBOL_1; VertexAiFeaturestoreEntitytypeMonitoringConfigSnapshotAnalysisOutputReference[_d] = { fqn: "@cdktf/provider-google.vertexAiFeaturestoreEntitytype.VertexAiFeaturestoreEntitytypeMonitoringConfigSnapshotAnalysisOutputReference", version: "14.35.1" }; function vertexAiFeaturestoreEntitytypeMonitoringConfigToTerraform(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 { categorical_threshold_config: vertexAiFeaturestoreEntitytypeMonitoringConfigCategoricalThresholdConfigToTerraform(struct.categoricalThresholdConfig), import_features_analysis: vertexAiFeaturestoreEntitytypeMonitoringConfigImportFeaturesAnalysisToTerraform(struct.importFeaturesAnalysis), numerical_threshold_config: vertexAiFeaturestoreEntitytypeMonitoringConfigNumericalThresholdConfigToTerraform(struct.numericalThresholdConfig), snapshot_analysis: vertexAiFeaturestoreEntitytypeMonitoringConfigSnapshotAnalysisToTerraform(struct.snapshotAnalysis), }; } function vertexAiFeaturestoreEntitytypeMonitoringConfigToHclTerraform(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 = { categorical_threshold_config: { value: vertexAiFeaturestoreEntitytypeMonitoringConfigCategoricalThresholdConfigToHclTerraform(struct.categoricalThresholdConfig), isBlock: true, type: "list", storageClassType: "VertexAiFeaturestoreEntitytypeMonitoringConfigCategoricalThresholdConfigList", }, import_features_analysis: { value: vertexAiFeaturestoreEntitytypeMonitoringConfigImportFeaturesAnalysisToHclTerraform(struct.importFeaturesAnalysis), isBlock: true, type: "list", storageClassType: "VertexAiFeaturestoreEntitytypeMonitoringConfigImportFeaturesAnalysisList", }, numerical_threshold_config: { value: vertexAiFeaturestoreEntitytypeMonitoringConfigNumericalThresholdConfigToHclTerraform(struct.numericalThresholdConfig), isBlock: true, type: "list", storageClassType: "VertexAiFeaturestoreEntitytypeMonitoringConfigNumericalThresholdConfigList", }, snapshot_analysis: { value: vertexAiFeaturestoreEntitytypeMonitoringConfigSnapshotAnalysisToHclTerraform(struct.snapshotAnalysis), isBlock: true, type: "list", storageClassType: "VertexAiFeaturestoreEntitytypeMonitoringConfigSnapshotAnalysisList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class VertexAiFeaturestoreEntitytypeMonitoringConfigOutputReference 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; // categorical_threshold_config - computed: false, optional: true, required: false this._categoricalThresholdConfig = new VertexAiFeaturestoreEntitytypeMonitoringConfigCategoricalThresholdConfigOutputReference(this, "categorical_threshold_config"); // import_features_analysis - computed: false, optional: true, required: false this._importFeaturesAnalysis = new VertexAiFeaturestoreEntitytypeMonitoringConfigImportFeaturesAnalysisOutputReference(this, "import_features_analysis"); // numerical_threshold_config - computed: false, optional: true, required: false this._numericalThresholdConfig = new VertexAiFeaturestoreEntitytypeMonitoringConfigNumericalThresholdConfigOutputReference(this, "numerical_threshold_config"); // snapshot_analysis - computed: false, optional: true, required: false this._snapshotAnalysis = new VertexAiFeaturestoreEntitytypeMonitoringConfigSnapshotAnalysisOutputReference(this, "snapshot_analysis"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._categoricalThresholdConfig?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.categoricalThresholdConfig = this._categoricalThresholdConfig?.internalValue; } if (this._importFeaturesAnalysis?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.importFeaturesAnalysis = this._importFeaturesAnalysis?.internalValue; } if (this._numericalThresholdConfig?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.numericalThresholdConfig = this._numericalThresholdConfig?.internalValue; } if (this._snapshotAnalysis?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.snapshotAnalysis = this._snapshotAnalysis?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._categoricalThresholdConfig.internalValue = undefined; this._importFeaturesAnalysis.internalValue = undefined; this._numericalThresholdConfig.internalValue = undefined; this._snapshotAnalysis.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._categoricalThresholdConfig.internalValue = value.categoricalThresholdConfig; this._importFeaturesAnalysis.internalValue = value.importFeaturesAnalysis; this._numericalThresholdConfig.internalValue = value.numericalThresholdConfig; this._snapshotAnalysis.internalValue = value.snapshotAnalysis; } } get categoricalThresholdConfig() { return this._categoricalThresholdConfig; } putCategoricalThresholdConfig(value) { this._categoricalThresholdConfig.internalValue = value; } resetCategoricalThresholdConfig() { this._categoricalThresholdConfig.internalValue = undefined; } // Temporarily expose input value. Use with caution. get categoricalThresholdConfigInput() { return this._categoricalThresholdConfig.internalValue; } get importFeaturesAnalysis() { return this._importFeaturesAnalysis; } putImportFeaturesAnalysis(value) { this._importFeaturesAnalysis.internalValue = value; } resetImportFeaturesAnalysis() { this._importFeaturesAnalysis.internalValue = undefined; } // Temporarily expose input value. Use with caution. get importFeaturesAnalysisInput() { return this._importFeaturesAnalysis.internalValue; } get numericalThresholdConfig() { return this._numericalThresholdConfig; } putNumericalThresholdConfig(value) { this._numericalThresholdConfig.internalValue = value; } resetNumericalThresholdConfig() { this._numericalThresholdConfig.internalValue = undefined; } // Temporarily expose input value. Use with caution. get numericalThresholdConfigInput() { return this._numericalThresholdConfig.internalValue; } get snapshotAnalysis() { return this._snapshotAnalysis; } putSnapshotAnalysis(value) { this._snapshotAnalysis.internalValue = value; } resetSnapshotAnalysis() { this._snapshotAnalysis.internalValue = undefined; } // Temporarily expose input value. Use with caution. get snapshotAnalysisInput() { return this._snapshotAnalysis.internalValue; } } exports.VertexAiFeaturestoreEntitytypeMonitoringConfigOutputReference = VertexAiFeaturestoreEntitytypeMonitoringConfigOutputReference; _e = JSII_RTTI_SYMBOL_1; VertexAiFeaturestoreEntitytypeMonitoringConfigOutputReference[_e] = { fqn: "@cdktf/provider-google.vertexAiFeaturestoreEntitytype.VertexAiFeaturestoreEntitytypeMonitoringConfigOutputReference", version: "14.35.1" }; function vertexAiFeaturestoreEntitytypeTimeoutsToTerraform(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 vertexAiFeaturestoreEntitytypeTimeoutsToHclTerraform(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 VertexAiFeaturestoreEntitytypeTimeoutsOutputReference 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.VertexAiFeaturestoreEntitytypeTimeoutsOutputReference = VertexAiFeaturestoreEntitytypeTimeoutsOutputReference; _f = JSII_RTTI_SYMBOL_1; VertexAiFeaturestoreEntitytypeTimeoutsOutputReference[_f] = { fqn: "@cdktf/provider-google.vertexAiFeaturestoreEntitytype.VertexAiFeaturestoreEntitytypeTimeoutsOutputReference", version: "14.35.1" }; /** * Represents a {@link https://registry.terraform.io/providers/hashicorp/google/6.36.1/docs/resources/vertex_ai_featurestore_entitytype google_vertex_ai_featurestore_entitytype} */ class VertexAiFeaturestoreEntitytype extends cdktf.TerraformResource { // ============== // STATIC Methods // ============== /** * Generates CDKTF code for importing a VertexAiFeaturestoreEntitytype 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 VertexAiFeaturestoreEntitytype to import * @param importFromId The id of the existing VertexAiFeaturestoreEntitytype that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/google/6.36.1/docs/resources/vertex_ai_featurestore_entitytype#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the VertexAiFeaturestoreEntitytype to import is found */ static generateConfigForImport(scope, importToId, importFromId, provider) { return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "google_vertex_ai_featurestore_entitytype", importId: importFromId, provider }); } // =========== // INITIALIZER // =========== /** * Create a new {@link https://registry.terraform.io/providers/hashicorp/google/6.36.1/docs/resources/vertex_ai_featurestore_entitytype google_vertex_ai_featurestore_entitytype} 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 VertexAiFeaturestoreEntitytypeConfig */ constructor(scope, id, config) { super(scope, id, { terraformResourceType: 'google_vertex_ai_featurestore_entitytype', terraformGeneratorMetadata: { providerName: 'google', providerVersion: '6.36.1', providerVersionConstraint: '~> 6.0' }, provider: config.provider, dependsOn: config.dependsOn, count: config.count, lifecycle: config.lifecycle, provisioners: config.provisioners, connection: config.connection, forEach: config.forEach }); // effective_labels - computed: true, optional: false, required: false this._effectiveLabels = new cdktf.StringMap(this, "effective_labels"); // terraform_labels - computed: true, optional: false, required: false this._terraformLabels = new cdktf.StringMap(this, "terraform_labels"); // monitoring_config - computed: false, optional: true, required: false this._monitoringConfig = new VertexAiFeaturestoreEntitytypeMonitoringConfigOutputReference(this, "monitoring_config"); // timeouts - computed: false, optional: true, required: false this._timeouts = new VertexAiFeaturestoreEntitytypeTimeoutsOutputReference(this, "timeouts"); this._description = config.description; this._featurestore = config.featurestore; this._id = config.id; this._labels = config.labels; this._name = config.name; this._monitoringConfig.internalValue = config.monitoringConfig; this._timeouts.internalValue = config.timeouts; } // ========== // ATTRIBUTES // ========== // create_time - computed: true, optional: false, required: false get createTime() { return this.getStringAttribute('create_time'); } get description() { return this.getStringAttribute('description'); } set description(value) { this._description = value; } resetDescription() { this._description = undefined; } // Temporarily expose input value. Use with caution. get descriptionInput() { return this._description; } get effectiveLabels() { return this._effectiveLabels; } // etag - computed: true, optional: false, required: false get etag() { return this.getStringAttribute('etag'); } get featurestore() { return this.getStringAttribute('featurestore'); } set featurestore(value) { this._featurestore = value; } // Temporarily expose input value. Use with caution. get featurestoreInput() { return this._featurestore; } 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 labels() { return this.getStringMapAttribute('labels'); } set labels(value) { this._labels = value; } resetLabels() { this._labels = undefined; } // Temporarily expose input value. Use with caution. get labelsInput() { return this._labels; } 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; } // region - computed: true, optional: false, required: false get region() { return this.getStringAttribute('region'); } get terraformLabels() { return this._terraformLabels; } // update_time - computed: true, optional: false, required: false get updateTime() { return this.getStringAttribute('update_time'); } get monitoringConfig() { return this._monitoringConfig; } putMonitoringConfig(value) { this._monitoringConfig.internalValue = value; } resetMonitoringConfig() { this._monitoringConfig.internalValue = undefined; } // Temporarily expose input value. Use with caution. get monitoringConfigInput() { return this._monitoringConfig.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 { description: cdktf.stringToTerraform(this._description), featurestore: cdktf.stringToTerraform(this._featurestore), id: cdktf.stringToTerraform(this._id), labels: cdktf.hashMapper(cdktf.stringToTerraform)(this._labels), name: cdktf.stringToTerraform(this._name), monitoring_config: vertexAiFeaturestoreEntitytypeMonitoringConfigToTerraform(this._monitoringConfig.internalValue), timeouts: vertexAiFeaturestoreEntitytypeTimeoutsToTerraform(this._timeouts.internalValue), }; } synthesizeHclAttributes() { const attrs = { description: { value: cdktf.stringToHclTerraform(this._description), isBlock: false, type: "simple", storageClassType: "string", }, featurestore: { value: cdktf.stringToHclTerraform(this._featurestore), isBlock: false, type: "simple", storageClassType: "string", }, id: { value: cdktf.stringToHclTerraform(this._id), isBlock: false, type: "simple", storageClassType: "string", }, labels: { value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(this._labels), isBlock: false, type: "map", storageClassType: "stringMap", }, name: { value: cdktf.stringToHclTerraform(this._name), isBlock: false, type: "simple", storageClassType: "string", }, monitoring_config: { value: vertexAiFeaturestoreEntitytypeMonitoringConfigToHclTerraform(this._monitoringConfig.internalValue), isBlock: true, type: "list", storageClassType: "VertexAiFeaturestoreEntitytypeMonitoringConfigList", }, timeouts: { value: vertexAiFeaturestoreEntitytypeTimeoutsToHclTerraform(this._timeouts.internalValue), isBlock: true, type: "struct", storageClassType: "VertexAiFeaturestoreEntitytypeTimeouts", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } } exports.VertexAiFeaturestoreEntitytype = VertexAiFeaturestoreEntitytype; _g = JSII_RTTI_SYMBOL_1; VertexAiFeaturestoreEntitytype[_g] = { fqn: "@cdktf/provider-google.vertexAiFeaturestoreEntitytype.VertexAiFeaturestoreEntitytype", version: "14.35.1" }; // ================= // STATIC PROPERTIES // ================= VertexAiFeaturestoreEntitytype.tfResourceType = "google_vertex_ai_featurestore_entitytype"; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdmVydGV4LWFpLWZlYXR1cmVzdG9yZS1lbnRpdHl0eXBlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUF1RUEsa0xBUUM7QUFHRCx3TEFnQkM7QUFvRUQsMEtBU0M7QUFHRCxnTEFzQkM7QUFpRkQsOEtBUUM7QUFHRCxvTEFnQkM7QUFxRUQsOEpBVUM7QUFHRCxvS0E0QkM7QUF5SEQsOEhBV0M7QUFHRCxvSUFrQ0M7QUFtSUQsOEdBVUM7QUFHRCxvSEE0QkM7O0FBOXVCRCwrQkFBK0I7QUE4RC9CLFNBQWdCLG1GQUFtRixDQUFDLE1BQTJLO0lBQzdRLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFBQyxPQUFPLE1BQU0sQ0FBQztJQUFDLENBQUM7SUFDNUYsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLG9IQUFvSCxDQUFDLENBQUM7SUFDeEksQ0FBQztJQUNELE9BQU87UUFDTCxLQUFLLEVBQUUsS0FBSyxDQUFDLGlCQUFpQixDQUFDLE1BQU8sQ0FBQyxLQUFLLENBQUM7S0FDOUMsQ0FBQTtBQUNILENBQUM7QUFHRCxTQUFnQixzRkFBc0YsQ0FBQyxNQUEySztJQUNoUixJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQUMsT0FBTyxNQUFNLENBQUM7SUFBQyxDQUFDO0lBQzVGLElBQUksS0FBSyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxvSEFB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