UNPKG

rhizo-co-terraform-provider-oci

Version:

Prebuilt oci Provider for Terraform CDK (cdktf)

1,185 lines 167 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h; Object.defineProperty(exports, "__esModule", { value: true }); exports.MeteringComputationQuery = exports.MeteringComputationQueryTimeoutsOutputReference = exports.meteringComputationQueryTimeoutsToHclTerraform = exports.meteringComputationQueryTimeoutsToTerraform = exports.MeteringComputationQueryQueryDefinitionOutputReference = exports.meteringComputationQueryQueryDefinitionToHclTerraform = exports.meteringComputationQueryQueryDefinitionToTerraform = exports.MeteringComputationQueryQueryDefinitionReportQueryOutputReference = exports.meteringComputationQueryQueryDefinitionReportQueryToHclTerraform = exports.meteringComputationQueryQueryDefinitionReportQueryToTerraform = exports.MeteringComputationQueryQueryDefinitionReportQueryGroupByTagList = exports.MeteringComputationQueryQueryDefinitionReportQueryGroupByTagOutputReference = exports.meteringComputationQueryQueryDefinitionReportQueryGroupByTagToHclTerraform = exports.meteringComputationQueryQueryDefinitionReportQueryGroupByTagToTerraform = exports.MeteringComputationQueryQueryDefinitionReportQueryForecastOutputReference = exports.meteringComputationQueryQueryDefinitionReportQueryForecastToHclTerraform = exports.meteringComputationQueryQueryDefinitionReportQueryForecastToTerraform = exports.MeteringComputationQueryQueryDefinitionCostAnalysisUiOutputReference = exports.meteringComputationQueryQueryDefinitionCostAnalysisUiToHclTerraform = exports.meteringComputationQueryQueryDefinitionCostAnalysisUiToTerraform = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function meteringComputationQueryQueryDefinitionCostAnalysisUiToTerraform(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 { graph: cdktf.stringToTerraform(struct.graph), is_cumulative_graph: cdktf.booleanToTerraform(struct.isCumulativeGraph), }; } exports.meteringComputationQueryQueryDefinitionCostAnalysisUiToTerraform = meteringComputationQueryQueryDefinitionCostAnalysisUiToTerraform; function meteringComputationQueryQueryDefinitionCostAnalysisUiToHclTerraform(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 = { graph: { value: cdktf.stringToHclTerraform(struct.graph), isBlock: false, type: "simple", storageClassType: "string", }, is_cumulative_graph: { value: cdktf.booleanToHclTerraform(struct.isCumulativeGraph), isBlock: false, type: "simple", storageClassType: "boolean", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.meteringComputationQueryQueryDefinitionCostAnalysisUiToHclTerraform = meteringComputationQueryQueryDefinitionCostAnalysisUiToHclTerraform; class MeteringComputationQueryQueryDefinitionCostAnalysisUiOutputReference 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._graph !== undefined) { hasAnyValues = true; internalValueResult.graph = this._graph; } if (this._isCumulativeGraph !== undefined) { hasAnyValues = true; internalValueResult.isCumulativeGraph = this._isCumulativeGraph; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._graph = undefined; this._isCumulativeGraph = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._graph = value.graph; this._isCumulativeGraph = value.isCumulativeGraph; } } get graph() { return this.getStringAttribute('graph'); } set graph(value) { this._graph = value; } resetGraph() { this._graph = undefined; } // Temporarily expose input value. Use with caution. get graphInput() { return this._graph; } get isCumulativeGraph() { return this.getBooleanAttribute('is_cumulative_graph'); } set isCumulativeGraph(value) { this._isCumulativeGraph = value; } resetIsCumulativeGraph() { this._isCumulativeGraph = undefined; } // Temporarily expose input value. Use with caution. get isCumulativeGraphInput() { return this._isCumulativeGraph; } } exports.MeteringComputationQueryQueryDefinitionCostAnalysisUiOutputReference = MeteringComputationQueryQueryDefinitionCostAnalysisUiOutputReference; _a = JSII_RTTI_SYMBOL_1; MeteringComputationQueryQueryDefinitionCostAnalysisUiOutputReference[_a] = { fqn: "rhizo-co-terraform-provider-oci.meteringComputationQuery.MeteringComputationQueryQueryDefinitionCostAnalysisUiOutputReference", version: "1.0.0" }; function meteringComputationQueryQueryDefinitionReportQueryForecastToTerraform(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 { forecast_type: cdktf.stringToTerraform(struct.forecastType), time_forecast_ended: cdktf.stringToTerraform(struct.timeForecastEnded), time_forecast_started: cdktf.stringToTerraform(struct.timeForecastStarted), }; } exports.meteringComputationQueryQueryDefinitionReportQueryForecastToTerraform = meteringComputationQueryQueryDefinitionReportQueryForecastToTerraform; function meteringComputationQueryQueryDefinitionReportQueryForecastToHclTerraform(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 = { forecast_type: { value: cdktf.stringToHclTerraform(struct.forecastType), isBlock: false, type: "simple", storageClassType: "string", }, time_forecast_ended: { value: cdktf.stringToHclTerraform(struct.timeForecastEnded), isBlock: false, type: "simple", storageClassType: "string", }, time_forecast_started: { value: cdktf.stringToHclTerraform(struct.timeForecastStarted), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.meteringComputationQueryQueryDefinitionReportQueryForecastToHclTerraform = meteringComputationQueryQueryDefinitionReportQueryForecastToHclTerraform; class MeteringComputationQueryQueryDefinitionReportQueryForecastOutputReference 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._forecastType !== undefined) { hasAnyValues = true; internalValueResult.forecastType = this._forecastType; } if (this._timeForecastEnded !== undefined) { hasAnyValues = true; internalValueResult.timeForecastEnded = this._timeForecastEnded; } if (this._timeForecastStarted !== undefined) { hasAnyValues = true; internalValueResult.timeForecastStarted = this._timeForecastStarted; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._forecastType = undefined; this._timeForecastEnded = undefined; this._timeForecastStarted = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._forecastType = value.forecastType; this._timeForecastEnded = value.timeForecastEnded; this._timeForecastStarted = value.timeForecastStarted; } } get forecastType() { return this.getStringAttribute('forecast_type'); } set forecastType(value) { this._forecastType = value; } resetForecastType() { this._forecastType = undefined; } // Temporarily expose input value. Use with caution. get forecastTypeInput() { return this._forecastType; } get timeForecastEnded() { return this.getStringAttribute('time_forecast_ended'); } set timeForecastEnded(value) { this._timeForecastEnded = value; } // Temporarily expose input value. Use with caution. get timeForecastEndedInput() { return this._timeForecastEnded; } get timeForecastStarted() { return this.getStringAttribute('time_forecast_started'); } set timeForecastStarted(value) { this._timeForecastStarted = value; } resetTimeForecastStarted() { this._timeForecastStarted = undefined; } // Temporarily expose input value. Use with caution. get timeForecastStartedInput() { return this._timeForecastStarted; } } exports.MeteringComputationQueryQueryDefinitionReportQueryForecastOutputReference = MeteringComputationQueryQueryDefinitionReportQueryForecastOutputReference; _b = JSII_RTTI_SYMBOL_1; MeteringComputationQueryQueryDefinitionReportQueryForecastOutputReference[_b] = { fqn: "rhizo-co-terraform-provider-oci.meteringComputationQuery.MeteringComputationQueryQueryDefinitionReportQueryForecastOutputReference", version: "1.0.0" }; function meteringComputationQueryQueryDefinitionReportQueryGroupByTagToTerraform(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 { key: cdktf.stringToTerraform(struct.key), namespace: cdktf.stringToTerraform(struct.namespace), value: cdktf.stringToTerraform(struct.value), }; } exports.meteringComputationQueryQueryDefinitionReportQueryGroupByTagToTerraform = meteringComputationQueryQueryDefinitionReportQueryGroupByTagToTerraform; function meteringComputationQueryQueryDefinitionReportQueryGroupByTagToHclTerraform(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 = { key: { value: cdktf.stringToHclTerraform(struct.key), isBlock: false, type: "simple", storageClassType: "string", }, namespace: { value: cdktf.stringToHclTerraform(struct.namespace), isBlock: false, type: "simple", storageClassType: "string", }, value: { value: cdktf.stringToHclTerraform(struct.value), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.meteringComputationQueryQueryDefinitionReportQueryGroupByTagToHclTerraform = meteringComputationQueryQueryDefinitionReportQueryGroupByTagToHclTerraform; class MeteringComputationQueryQueryDefinitionReportQueryGroupByTagOutputReference extends cdktf.ComplexObject { /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) { super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); this.isEmptyObject = false; } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._key !== undefined) { hasAnyValues = true; internalValueResult.key = this._key; } if (this._namespace !== undefined) { hasAnyValues = true; internalValueResult.namespace = this._namespace; } if (this._value !== undefined) { hasAnyValues = true; internalValueResult.value = this._value; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._key = undefined; this._namespace = undefined; this._value = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; this._key = value.key; this._namespace = value.namespace; this._value = value.value; } } get key() { return this.getStringAttribute('key'); } set key(value) { this._key = value; } resetKey() { this._key = undefined; } // Temporarily expose input value. Use with caution. get keyInput() { return this._key; } get namespace() { return this.getStringAttribute('namespace'); } set namespace(value) { this._namespace = value; } resetNamespace() { this._namespace = undefined; } // Temporarily expose input value. Use with caution. get namespaceInput() { return this._namespace; } get value() { return this.getStringAttribute('value'); } set value(value) { this._value = value; } resetValue() { this._value = undefined; } // Temporarily expose input value. Use with caution. get valueInput() { return this._value; } } exports.MeteringComputationQueryQueryDefinitionReportQueryGroupByTagOutputReference = MeteringComputationQueryQueryDefinitionReportQueryGroupByTagOutputReference; _c = JSII_RTTI_SYMBOL_1; MeteringComputationQueryQueryDefinitionReportQueryGroupByTagOutputReference[_c] = { fqn: "rhizo-co-terraform-provider-oci.meteringComputationQuery.MeteringComputationQueryQueryDefinitionReportQueryGroupByTagOutputReference", version: "1.0.0" }; class MeteringComputationQueryQueryDefinitionReportQueryGroupByTagList extends cdktf.ComplexList { /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource, terraformAttribute, wrapsSet) { super(terraformResource, terraformAttribute, wrapsSet); this.terraformResource = terraformResource; this.terraformAttribute = terraformAttribute; this.wrapsSet = wrapsSet; } /** * @param index the index of the item to return */ get(index) { return new MeteringComputationQueryQueryDefinitionReportQueryGroupByTagOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.MeteringComputationQueryQueryDefinitionReportQueryGroupByTagList = MeteringComputationQueryQueryDefinitionReportQueryGroupByTagList; _d = JSII_RTTI_SYMBOL_1; MeteringComputationQueryQueryDefinitionReportQueryGroupByTagList[_d] = { fqn: "rhizo-co-terraform-provider-oci.meteringComputationQuery.MeteringComputationQueryQueryDefinitionReportQueryGroupByTagList", version: "1.0.0" }; function meteringComputationQueryQueryDefinitionReportQueryToTerraform(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 { compartment_depth: cdktf.numberToTerraform(struct.compartmentDepth), date_range_name: cdktf.stringToTerraform(struct.dateRangeName), filter: cdktf.stringToTerraform(struct.filter), granularity: cdktf.stringToTerraform(struct.granularity), group_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.groupBy), is_aggregate_by_time: cdktf.booleanToTerraform(struct.isAggregateByTime), query_type: cdktf.stringToTerraform(struct.queryType), tenant_id: cdktf.stringToTerraform(struct.tenantId), time_usage_ended: cdktf.stringToTerraform(struct.timeUsageEnded), time_usage_started: cdktf.stringToTerraform(struct.timeUsageStarted), forecast: meteringComputationQueryQueryDefinitionReportQueryForecastToTerraform(struct.forecast), group_by_tag: cdktf.listMapper(meteringComputationQueryQueryDefinitionReportQueryGroupByTagToTerraform, true)(struct.groupByTag), }; } exports.meteringComputationQueryQueryDefinitionReportQueryToTerraform = meteringComputationQueryQueryDefinitionReportQueryToTerraform; function meteringComputationQueryQueryDefinitionReportQueryToHclTerraform(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 = { compartment_depth: { value: cdktf.numberToHclTerraform(struct.compartmentDepth), isBlock: false, type: "simple", storageClassType: "number", }, date_range_name: { value: cdktf.stringToHclTerraform(struct.dateRangeName), isBlock: false, type: "simple", storageClassType: "string", }, filter: { value: cdktf.stringToHclTerraform(struct.filter), isBlock: false, type: "simple", storageClassType: "string", }, granularity: { value: cdktf.stringToHclTerraform(struct.granularity), isBlock: false, type: "simple", storageClassType: "string", }, group_by: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.groupBy), isBlock: false, type: "list", storageClassType: "stringList", }, is_aggregate_by_time: { value: cdktf.booleanToHclTerraform(struct.isAggregateByTime), isBlock: false, type: "simple", storageClassType: "boolean", }, query_type: { value: cdktf.stringToHclTerraform(struct.queryType), isBlock: false, type: "simple", storageClassType: "string", }, tenant_id: { value: cdktf.stringToHclTerraform(struct.tenantId), isBlock: false, type: "simple", storageClassType: "string", }, time_usage_ended: { value: cdktf.stringToHclTerraform(struct.timeUsageEnded), isBlock: false, type: "simple", storageClassType: "string", }, time_usage_started: { value: cdktf.stringToHclTerraform(struct.timeUsageStarted), isBlock: false, type: "simple", storageClassType: "string", }, forecast: { value: meteringComputationQueryQueryDefinitionReportQueryForecastToHclTerraform(struct.forecast), isBlock: true, type: "list", storageClassType: "MeteringComputationQueryQueryDefinitionReportQueryForecastList", }, group_by_tag: { value: cdktf.listMapperHcl(meteringComputationQueryQueryDefinitionReportQueryGroupByTagToHclTerraform, true)(struct.groupByTag), isBlock: true, type: "list", storageClassType: "MeteringComputationQueryQueryDefinitionReportQueryGroupByTagList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.meteringComputationQueryQueryDefinitionReportQueryToHclTerraform = meteringComputationQueryQueryDefinitionReportQueryToHclTerraform; class MeteringComputationQueryQueryDefinitionReportQueryOutputReference 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; // forecast - computed: false, optional: true, required: false this._forecast = new MeteringComputationQueryQueryDefinitionReportQueryForecastOutputReference(this, "forecast"); // group_by_tag - computed: false, optional: true, required: false this._groupByTag = new MeteringComputationQueryQueryDefinitionReportQueryGroupByTagList(this, "group_by_tag", false); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._compartmentDepth !== undefined) { hasAnyValues = true; internalValueResult.compartmentDepth = this._compartmentDepth; } if (this._dateRangeName !== undefined) { hasAnyValues = true; internalValueResult.dateRangeName = this._dateRangeName; } if (this._filter !== undefined) { hasAnyValues = true; internalValueResult.filter = this._filter; } if (this._granularity !== undefined) { hasAnyValues = true; internalValueResult.granularity = this._granularity; } if (this._groupBy !== undefined) { hasAnyValues = true; internalValueResult.groupBy = this._groupBy; } if (this._isAggregateByTime !== undefined) { hasAnyValues = true; internalValueResult.isAggregateByTime = this._isAggregateByTime; } if (this._queryType !== undefined) { hasAnyValues = true; internalValueResult.queryType = this._queryType; } if (this._tenantId !== undefined) { hasAnyValues = true; internalValueResult.tenantId = this._tenantId; } if (this._timeUsageEnded !== undefined) { hasAnyValues = true; internalValueResult.timeUsageEnded = this._timeUsageEnded; } if (this._timeUsageStarted !== undefined) { hasAnyValues = true; internalValueResult.timeUsageStarted = this._timeUsageStarted; } if (this._forecast?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.forecast = this._forecast?.internalValue; } if (this._groupByTag?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.groupByTag = this._groupByTag?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._compartmentDepth = undefined; this._dateRangeName = undefined; this._filter = undefined; this._granularity = undefined; this._groupBy = undefined; this._isAggregateByTime = undefined; this._queryType = undefined; this._tenantId = undefined; this._timeUsageEnded = undefined; this._timeUsageStarted = undefined; this._forecast.internalValue = undefined; this._groupByTag.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._compartmentDepth = value.compartmentDepth; this._dateRangeName = value.dateRangeName; this._filter = value.filter; this._granularity = value.granularity; this._groupBy = value.groupBy; this._isAggregateByTime = value.isAggregateByTime; this._queryType = value.queryType; this._tenantId = value.tenantId; this._timeUsageEnded = value.timeUsageEnded; this._timeUsageStarted = value.timeUsageStarted; this._forecast.internalValue = value.forecast; this._groupByTag.internalValue = value.groupByTag; } } get compartmentDepth() { return this.getNumberAttribute('compartment_depth'); } set compartmentDepth(value) { this._compartmentDepth = value; } resetCompartmentDepth() { this._compartmentDepth = undefined; } // Temporarily expose input value. Use with caution. get compartmentDepthInput() { return this._compartmentDepth; } get dateRangeName() { return this.getStringAttribute('date_range_name'); } set dateRangeName(value) { this._dateRangeName = value; } resetDateRangeName() { this._dateRangeName = undefined; } // Temporarily expose input value. Use with caution. get dateRangeNameInput() { return this._dateRangeName; } get filter() { return this.getStringAttribute('filter'); } set filter(value) { this._filter = value; } resetFilter() { this._filter = undefined; } // Temporarily expose input value. Use with caution. get filterInput() { return this._filter; } get granularity() { return this.getStringAttribute('granularity'); } set granularity(value) { this._granularity = value; } // Temporarily expose input value. Use with caution. get granularityInput() { return this._granularity; } get groupBy() { return this.getListAttribute('group_by'); } set groupBy(value) { this._groupBy = value; } resetGroupBy() { this._groupBy = undefined; } // Temporarily expose input value. Use with caution. get groupByInput() { return this._groupBy; } get isAggregateByTime() { return this.getBooleanAttribute('is_aggregate_by_time'); } set isAggregateByTime(value) { this._isAggregateByTime = value; } resetIsAggregateByTime() { this._isAggregateByTime = undefined; } // Temporarily expose input value. Use with caution. get isAggregateByTimeInput() { return this._isAggregateByTime; } get queryType() { return this.getStringAttribute('query_type'); } set queryType(value) { this._queryType = value; } resetQueryType() { this._queryType = undefined; } // Temporarily expose input value. Use with caution. get queryTypeInput() { return this._queryType; } get tenantId() { return this.getStringAttribute('tenant_id'); } set tenantId(value) { this._tenantId = value; } // Temporarily expose input value. Use with caution. get tenantIdInput() { return this._tenantId; } get timeUsageEnded() { return this.getStringAttribute('time_usage_ended'); } set timeUsageEnded(value) { this._timeUsageEnded = value; } resetTimeUsageEnded() { this._timeUsageEnded = undefined; } // Temporarily expose input value. Use with caution. get timeUsageEndedInput() { return this._timeUsageEnded; } get timeUsageStarted() { return this.getStringAttribute('time_usage_started'); } set timeUsageStarted(value) { this._timeUsageStarted = value; } resetTimeUsageStarted() { this._timeUsageStarted = undefined; } // Temporarily expose input value. Use with caution. get timeUsageStartedInput() { return this._timeUsageStarted; } get forecast() { return this._forecast; } putForecast(value) { this._forecast.internalValue = value; } resetForecast() { this._forecast.internalValue = undefined; } // Temporarily expose input value. Use with caution. get forecastInput() { return this._forecast.internalValue; } get groupByTag() { return this._groupByTag; } putGroupByTag(value) { this._groupByTag.internalValue = value; } resetGroupByTag() { this._groupByTag.internalValue = undefined; } // Temporarily expose input value. Use with caution. get groupByTagInput() { return this._groupByTag.internalValue; } } exports.MeteringComputationQueryQueryDefinitionReportQueryOutputReference = MeteringComputationQueryQueryDefinitionReportQueryOutputReference; _e = JSII_RTTI_SYMBOL_1; MeteringComputationQueryQueryDefinitionReportQueryOutputReference[_e] = { fqn: "rhizo-co-terraform-provider-oci.meteringComputationQuery.MeteringComputationQueryQueryDefinitionReportQueryOutputReference", version: "1.0.0" }; function meteringComputationQueryQueryDefinitionToTerraform(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 { display_name: cdktf.stringToTerraform(struct.displayName), version: cdktf.numberToTerraform(struct.version), cost_analysis_ui: meteringComputationQueryQueryDefinitionCostAnalysisUiToTerraform(struct.costAnalysisUi), report_query: meteringComputationQueryQueryDefinitionReportQueryToTerraform(struct.reportQuery), }; } exports.meteringComputationQueryQueryDefinitionToTerraform = meteringComputationQueryQueryDefinitionToTerraform; function meteringComputationQueryQueryDefinitionToHclTerraform(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 = { display_name: { value: cdktf.stringToHclTerraform(struct.displayName), isBlock: false, type: "simple", storageClassType: "string", }, version: { value: cdktf.numberToHclTerraform(struct.version), isBlock: false, type: "simple", storageClassType: "number", }, cost_analysis_ui: { value: meteringComputationQueryQueryDefinitionCostAnalysisUiToHclTerraform(struct.costAnalysisUi), isBlock: true, type: "list", storageClassType: "MeteringComputationQueryQueryDefinitionCostAnalysisUiList", }, report_query: { value: meteringComputationQueryQueryDefinitionReportQueryToHclTerraform(struct.reportQuery), isBlock: true, type: "list", storageClassType: "MeteringComputationQueryQueryDefinitionReportQueryList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.meteringComputationQueryQueryDefinitionToHclTerraform = meteringComputationQueryQueryDefinitionToHclTerraform; class MeteringComputationQueryQueryDefinitionOutputReference 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; // cost_analysis_ui - computed: false, optional: false, required: true this._costAnalysisUi = new MeteringComputationQueryQueryDefinitionCostAnalysisUiOutputReference(this, "cost_analysis_ui"); // report_query - computed: false, optional: false, required: true this._reportQuery = new MeteringComputationQueryQueryDefinitionReportQueryOutputReference(this, "report_query"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._displayName !== undefined) { hasAnyValues = true; internalValueResult.displayName = this._displayName; } if (this._version !== undefined) { hasAnyValues = true; internalValueResult.version = this._version; } if (this._costAnalysisUi?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.costAnalysisUi = this._costAnalysisUi?.internalValue; } if (this._reportQuery?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.reportQuery = this._reportQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._displayName = undefined; this._version = undefined; this._costAnalysisUi.internalValue = undefined; this._reportQuery.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._displayName = value.displayName; this._version = value.version; this._costAnalysisUi.internalValue = value.costAnalysisUi; this._reportQuery.internalValue = value.reportQuery; } } get displayName() { return this.getStringAttribute('display_name'); } set displayName(value) { this._displayName = value; } // Temporarily expose input value. Use with caution. get displayNameInput() { return this._displayName; } get version() { return this.getNumberAttribute('version'); } set version(value) { this._version = value; } // Temporarily expose input value. Use with caution. get versionInput() { return this._version; } get costAnalysisUi() { return this._costAnalysisUi; } putCostAnalysisUi(value) { this._costAnalysisUi.internalValue = value; } // Temporarily expose input value. Use with caution. get costAnalysisUiInput() { return this._costAnalysisUi.internalValue; } get reportQuery() { return this._reportQuery; } putReportQuery(value) { this._reportQuery.internalValue = value; } // Temporarily expose input value. Use with caution. get reportQueryInput() { return this._reportQuery.internalValue; } } exports.MeteringComputationQueryQueryDefinitionOutputReference = MeteringComputationQueryQueryDefinitionOutputReference; _f = JSII_RTTI_SYMBOL_1; MeteringComputationQueryQueryDefinitionOutputReference[_f] = { fqn: "rhizo-co-terraform-provider-oci.meteringComputationQuery.MeteringComputationQueryQueryDefinitionOutputReference", version: "1.0.0" }; function meteringComputationQueryTimeoutsToTerraform(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), }; } exports.meteringComputationQueryTimeoutsToTerraform = meteringComputationQueryTimeoutsToTerraform; function meteringComputationQueryTimeoutsToHclTerraform(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)); } exports.meteringComputationQueryTimeoutsToHclTerraform = meteringComputationQueryTimeoutsToHclTerraform; class MeteringComputationQueryTimeoutsOutputReference 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.MeteringComputationQueryTimeoutsOutputReference = MeteringComputationQueryTimeoutsOutputReference; _g = JSII_RTTI_SYMBOL_1; MeteringComputationQueryTimeoutsOutputReference[_g] = { fqn: "rhizo-co-terraform-provider-oci.meteringComputationQuery.MeteringComputationQueryTimeoutsOutputReference", version: "1.0.0" }; /** * Represents a {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/metering_computation_query oci_metering_computation_query} */ class MeteringComputationQuery extends cdktf.TerraformResource { // ============== // STATIC Methods // ============== /** * Generates CDKTF code for importing a MeteringComputationQuery 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 MeteringComputationQuery to import * @param importFromId The id of the existing MeteringComputationQuery that should be imported. Refer to the {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/metering_computation_query#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the MeteringComputationQuery to import is found */ static generateConfigForImport(scope, importToId, importFromId, provider) { return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "oci_metering_computation_query", importId: importFromId, provider }); } // =========== // INITIALIZER // =========== /** * Create a new {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/metering_computation_query oci_metering_computation_query} 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 MeteringComputationQueryConfig */ constructor(scope, id, config) { super(scope, id, { terraformResourceType: 'oci_metering_computation_query', terraformGeneratorMetadata: { providerName: 'oci', providerVersion: '6.18.0', providerVersionConstraint: '~> 6.18.0' }, provider: config.provider, dependsOn: config.dependsOn, count: config.count, lifecycle: config.lifecycle, provisioners: config.provisioners, connection: config.connection, forEach: config.forEach }); // query_definition - computed: false, optional: false, required: true this._queryDefinition = new MeteringComputationQueryQueryDefinitionOutputReference(this, "query_definition"); // timeouts - computed: false, optional: true, required: false this._timeouts = new MeteringComputationQueryTimeoutsOutputReference(this, "timeouts"); this._compartmentId = config.compartmentId; this._id = config.id; this._queryDefinition.internalValue = config.queryDefinition; this._timeouts.internalValue = config.timeouts; } get compartmentId() { return this.getStringAttribute('compartment_id'); } set compartmentId(value) { this._compartmentId = value; } // Temporarily expose input value. Use with caution. get compartmentIdInput() { return this._compartmentId; } 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 queryDefinition() { return this._queryDefinition; } putQueryDefinition(value) { this._queryDefinition.internalValue = value; } // Temporarily expose input value. Use with caution. get queryDefinitionInput() { return this._queryDefinition.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 { compartment_id: cdktf.stringToTerraform(this._compartmentId), id: cdktf.stringToTerraform(this._id), query_definition: meteringComputationQueryQueryDefinitionToTerraform(this._queryDefinition.internalValue), timeouts: meteringComputationQueryTimeoutsToTerraform(this._timeouts.internalValue), }; } synthesizeHclAttributes() { const attrs = { compartment_id: { value: cdktf.stringToHclTerraform(this._compartmentId), isBlock: false, type: "simple", storageClassType: "string", }, id: { value: cdktf.stringToHclTerraform(this._id), isBlock: false, type: "simple", storageClassType: "string", }, query_definition: { value: meteringComputationQueryQueryDefinitionToHclTerraform(this._queryDefinition.internalValue), isBlock: true, type: "list", storageClassType: "MeteringComputationQueryQueryDefinitionList", }, timeouts: { value: meteringComputationQueryTimeoutsToHclTerraform(this._timeouts.internalValue), isBlock: true, type: "struct", storageClassType: "MeteringComputationQueryTimeouts", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } } exports.MeteringComputationQuery = MeteringComputationQuery; _h = JSII_RTTI_SYMBOL_1; MeteringComputationQuery[_h] = { fqn: "rhizo-co-terraform-provider-oci.meteringComputationQuery.MeteringComputationQuery", version: "1.0.0" }; // ================= // STATIC PROPERTIES // ================= MeteringComputationQuery.tfResourceType = "oci_metering_computation_query"; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbWV0ZXJpbmctY29tcHV0YXRpb24tcXVlcnkvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFJQSwrQkFBK0I7QUF3Qy9CLFNBQWdCLGdFQUFnRSxDQUFDLE1BQXFJO0lBQ3BOLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFBQyxPQUFPLE1BQU0sQ0FBQztJQUFDLENBQUM7SUFDNUYsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLG9IQUFvSCxDQUFDLENBQUM7SUFDeEksQ0FBQztJQUNELE9BQU87UUFDTCxLQUFLLEVBQUUsS0FBSyxDQUFDLGlCQUFpQixDQUFDLE1BQU8sQ0FBQyxLQUFLLENBQUM7UUFDN0MsbUJBQW1CLEVBQUUsS0FBSyxDQUFDLGtCQUFrQixDQUFDLE1BQU8sQ0FBQyxpQkFBaUIsQ0FBQztLQUN6RSxDQUFBO0FBQ0gsQ0FBQztBQVRELDRJQVNDO0FBR0QsU0