@cdktf/provider-newrelic
Version:
Prebuilt newrelic Provider for Terraform CDK (cdktf)
1,281 lines • 190 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ServiceLevel = exports.ServiceLevelObjectiveOutputReference = exports.ServiceLevelObjectiveTimeWindowOutputReference = exports.ServiceLevelObjectiveTimeWindowRollingOutputReference = exports.ServiceLevelEventsOutputReference = exports.ServiceLevelEventsValidEventsOutputReference = exports.ServiceLevelEventsValidEventsSelectOutputReference = exports.ServiceLevelEventsGoodEventsOutputReference = exports.ServiceLevelEventsGoodEventsSelectOutputReference = exports.ServiceLevelEventsBadEventsOutputReference = exports.ServiceLevelEventsBadEventsSelectOutputReference = void 0;
exports.serviceLevelEventsBadEventsSelectToTerraform = serviceLevelEventsBadEventsSelectToTerraform;
exports.serviceLevelEventsBadEventsSelectToHclTerraform = serviceLevelEventsBadEventsSelectToHclTerraform;
exports.serviceLevelEventsBadEventsToTerraform = serviceLevelEventsBadEventsToTerraform;
exports.serviceLevelEventsBadEventsToHclTerraform = serviceLevelEventsBadEventsToHclTerraform;
exports.serviceLevelEventsGoodEventsSelectToTerraform = serviceLevelEventsGoodEventsSelectToTerraform;
exports.serviceLevelEventsGoodEventsSelectToHclTerraform = serviceLevelEventsGoodEventsSelectToHclTerraform;
exports.serviceLevelEventsGoodEventsToTerraform = serviceLevelEventsGoodEventsToTerraform;
exports.serviceLevelEventsGoodEventsToHclTerraform = serviceLevelEventsGoodEventsToHclTerraform;
exports.serviceLevelEventsValidEventsSelectToTerraform = serviceLevelEventsValidEventsSelectToTerraform;
exports.serviceLevelEventsValidEventsSelectToHclTerraform = serviceLevelEventsValidEventsSelectToHclTerraform;
exports.serviceLevelEventsValidEventsToTerraform = serviceLevelEventsValidEventsToTerraform;
exports.serviceLevelEventsValidEventsToHclTerraform = serviceLevelEventsValidEventsToHclTerraform;
exports.serviceLevelEventsToTerraform = serviceLevelEventsToTerraform;
exports.serviceLevelEventsToHclTerraform = serviceLevelEventsToHclTerraform;
exports.serviceLevelObjectiveTimeWindowRollingToTerraform = serviceLevelObjectiveTimeWindowRollingToTerraform;
exports.serviceLevelObjectiveTimeWindowRollingToHclTerraform = serviceLevelObjectiveTimeWindowRollingToHclTerraform;
exports.serviceLevelObjectiveTimeWindowToTerraform = serviceLevelObjectiveTimeWindowToTerraform;
exports.serviceLevelObjectiveTimeWindowToHclTerraform = serviceLevelObjectiveTimeWindowToHclTerraform;
exports.serviceLevelObjectiveToTerraform = serviceLevelObjectiveToTerraform;
exports.serviceLevelObjectiveToHclTerraform = serviceLevelObjectiveToHclTerraform;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function serviceLevelEventsBadEventsSelectToTerraform(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 {
attribute: cdktf.stringToTerraform(struct.attribute),
function: cdktf.stringToTerraform(struct.function),
threshold: cdktf.numberToTerraform(struct.threshold),
};
}
function serviceLevelEventsBadEventsSelectToHclTerraform(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 = {
attribute: {
value: cdktf.stringToHclTerraform(struct.attribute),
isBlock: false,
type: "simple",
storageClassType: "string",
},
function: {
value: cdktf.stringToHclTerraform(struct.function),
isBlock: false,
type: "simple",
storageClassType: "string",
},
threshold: {
value: cdktf.numberToHclTerraform(struct.threshold),
isBlock: false,
type: "simple",
storageClassType: "number",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class ServiceLevelEventsBadEventsSelectOutputReference 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._attribute !== undefined) {
hasAnyValues = true;
internalValueResult.attribute = this._attribute;
}
if (this._function !== undefined) {
hasAnyValues = true;
internalValueResult.function = this._function;
}
if (this._threshold !== undefined) {
hasAnyValues = true;
internalValueResult.threshold = this._threshold;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._attribute = undefined;
this._function = undefined;
this._threshold = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._attribute = value.attribute;
this._function = value.function;
this._threshold = value.threshold;
}
}
get attribute() {
return this.getStringAttribute('attribute');
}
set attribute(value) {
this._attribute = value;
}
resetAttribute() {
this._attribute = undefined;
}
// Temporarily expose input value. Use with caution.
get attributeInput() {
return this._attribute;
}
get function() {
return this.getStringAttribute('function');
}
set function(value) {
this._function = value;
}
// Temporarily expose input value. Use with caution.
get functionInput() {
return this._function;
}
get threshold() {
return this.getNumberAttribute('threshold');
}
set threshold(value) {
this._threshold = value;
}
resetThreshold() {
this._threshold = undefined;
}
// Temporarily expose input value. Use with caution.
get thresholdInput() {
return this._threshold;
}
}
exports.ServiceLevelEventsBadEventsSelectOutputReference = ServiceLevelEventsBadEventsSelectOutputReference;
_a = JSII_RTTI_SYMBOL_1;
ServiceLevelEventsBadEventsSelectOutputReference[_a] = { fqn: "@cdktf/provider-newrelic.serviceLevel.ServiceLevelEventsBadEventsSelectOutputReference", version: "12.28.0" };
function serviceLevelEventsBadEventsToTerraform(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 {
from: cdktf.stringToTerraform(struct.from),
where: cdktf.stringToTerraform(struct.where),
select: serviceLevelEventsBadEventsSelectToTerraform(struct.select),
};
}
function serviceLevelEventsBadEventsToHclTerraform(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 = {
from: {
value: cdktf.stringToHclTerraform(struct.from),
isBlock: false,
type: "simple",
storageClassType: "string",
},
where: {
value: cdktf.stringToHclTerraform(struct.where),
isBlock: false,
type: "simple",
storageClassType: "string",
},
select: {
value: serviceLevelEventsBadEventsSelectToHclTerraform(struct.select),
isBlock: true,
type: "list",
storageClassType: "ServiceLevelEventsBadEventsSelectList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class ServiceLevelEventsBadEventsOutputReference 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;
// select - computed: false, optional: true, required: false
this._select = new ServiceLevelEventsBadEventsSelectOutputReference(this, "select");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._from !== undefined) {
hasAnyValues = true;
internalValueResult.from = this._from;
}
if (this._where !== undefined) {
hasAnyValues = true;
internalValueResult.where = this._where;
}
if (this._select?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.select = this._select?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._from = undefined;
this._where = undefined;
this._select.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._from = value.from;
this._where = value.where;
this._select.internalValue = value.select;
}
}
get from() {
return this.getStringAttribute('from');
}
set from(value) {
this._from = value;
}
// Temporarily expose input value. Use with caution.
get fromInput() {
return this._from;
}
get where() {
return this.getStringAttribute('where');
}
set where(value) {
this._where = value;
}
resetWhere() {
this._where = undefined;
}
// Temporarily expose input value. Use with caution.
get whereInput() {
return this._where;
}
get select() {
return this._select;
}
putSelect(value) {
this._select.internalValue = value;
}
resetSelect() {
this._select.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get selectInput() {
return this._select.internalValue;
}
}
exports.ServiceLevelEventsBadEventsOutputReference = ServiceLevelEventsBadEventsOutputReference;
_b = JSII_RTTI_SYMBOL_1;
ServiceLevelEventsBadEventsOutputReference[_b] = { fqn: "@cdktf/provider-newrelic.serviceLevel.ServiceLevelEventsBadEventsOutputReference", version: "12.28.0" };
function serviceLevelEventsGoodEventsSelectToTerraform(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 {
attribute: cdktf.stringToTerraform(struct.attribute),
function: cdktf.stringToTerraform(struct.function),
threshold: cdktf.numberToTerraform(struct.threshold),
};
}
function serviceLevelEventsGoodEventsSelectToHclTerraform(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 = {
attribute: {
value: cdktf.stringToHclTerraform(struct.attribute),
isBlock: false,
type: "simple",
storageClassType: "string",
},
function: {
value: cdktf.stringToHclTerraform(struct.function),
isBlock: false,
type: "simple",
storageClassType: "string",
},
threshold: {
value: cdktf.numberToHclTerraform(struct.threshold),
isBlock: false,
type: "simple",
storageClassType: "number",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class ServiceLevelEventsGoodEventsSelectOutputReference 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._attribute !== undefined) {
hasAnyValues = true;
internalValueResult.attribute = this._attribute;
}
if (this._function !== undefined) {
hasAnyValues = true;
internalValueResult.function = this._function;
}
if (this._threshold !== undefined) {
hasAnyValues = true;
internalValueResult.threshold = this._threshold;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._attribute = undefined;
this._function = undefined;
this._threshold = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._attribute = value.attribute;
this._function = value.function;
this._threshold = value.threshold;
}
}
get attribute() {
return this.getStringAttribute('attribute');
}
set attribute(value) {
this._attribute = value;
}
resetAttribute() {
this._attribute = undefined;
}
// Temporarily expose input value. Use with caution.
get attributeInput() {
return this._attribute;
}
get function() {
return this.getStringAttribute('function');
}
set function(value) {
this._function = value;
}
// Temporarily expose input value. Use with caution.
get functionInput() {
return this._function;
}
get threshold() {
return this.getNumberAttribute('threshold');
}
set threshold(value) {
this._threshold = value;
}
resetThreshold() {
this._threshold = undefined;
}
// Temporarily expose input value. Use with caution.
get thresholdInput() {
return this._threshold;
}
}
exports.ServiceLevelEventsGoodEventsSelectOutputReference = ServiceLevelEventsGoodEventsSelectOutputReference;
_c = JSII_RTTI_SYMBOL_1;
ServiceLevelEventsGoodEventsSelectOutputReference[_c] = { fqn: "@cdktf/provider-newrelic.serviceLevel.ServiceLevelEventsGoodEventsSelectOutputReference", version: "12.28.0" };
function serviceLevelEventsGoodEventsToTerraform(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 {
from: cdktf.stringToTerraform(struct.from),
where: cdktf.stringToTerraform(struct.where),
select: serviceLevelEventsGoodEventsSelectToTerraform(struct.select),
};
}
function serviceLevelEventsGoodEventsToHclTerraform(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 = {
from: {
value: cdktf.stringToHclTerraform(struct.from),
isBlock: false,
type: "simple",
storageClassType: "string",
},
where: {
value: cdktf.stringToHclTerraform(struct.where),
isBlock: false,
type: "simple",
storageClassType: "string",
},
select: {
value: serviceLevelEventsGoodEventsSelectToHclTerraform(struct.select),
isBlock: true,
type: "list",
storageClassType: "ServiceLevelEventsGoodEventsSelectList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class ServiceLevelEventsGoodEventsOutputReference 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;
// select - computed: false, optional: true, required: false
this._select = new ServiceLevelEventsGoodEventsSelectOutputReference(this, "select");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._from !== undefined) {
hasAnyValues = true;
internalValueResult.from = this._from;
}
if (this._where !== undefined) {
hasAnyValues = true;
internalValueResult.where = this._where;
}
if (this._select?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.select = this._select?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._from = undefined;
this._where = undefined;
this._select.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._from = value.from;
this._where = value.where;
this._select.internalValue = value.select;
}
}
get from() {
return this.getStringAttribute('from');
}
set from(value) {
this._from = value;
}
// Temporarily expose input value. Use with caution.
get fromInput() {
return this._from;
}
get where() {
return this.getStringAttribute('where');
}
set where(value) {
this._where = value;
}
resetWhere() {
this._where = undefined;
}
// Temporarily expose input value. Use with caution.
get whereInput() {
return this._where;
}
get select() {
return this._select;
}
putSelect(value) {
this._select.internalValue = value;
}
resetSelect() {
this._select.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get selectInput() {
return this._select.internalValue;
}
}
exports.ServiceLevelEventsGoodEventsOutputReference = ServiceLevelEventsGoodEventsOutputReference;
_d = JSII_RTTI_SYMBOL_1;
ServiceLevelEventsGoodEventsOutputReference[_d] = { fqn: "@cdktf/provider-newrelic.serviceLevel.ServiceLevelEventsGoodEventsOutputReference", version: "12.28.0" };
function serviceLevelEventsValidEventsSelectToTerraform(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 {
attribute: cdktf.stringToTerraform(struct.attribute),
function: cdktf.stringToTerraform(struct.function),
threshold: cdktf.numberToTerraform(struct.threshold),
};
}
function serviceLevelEventsValidEventsSelectToHclTerraform(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 = {
attribute: {
value: cdktf.stringToHclTerraform(struct.attribute),
isBlock: false,
type: "simple",
storageClassType: "string",
},
function: {
value: cdktf.stringToHclTerraform(struct.function),
isBlock: false,
type: "simple",
storageClassType: "string",
},
threshold: {
value: cdktf.numberToHclTerraform(struct.threshold),
isBlock: false,
type: "simple",
storageClassType: "number",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class ServiceLevelEventsValidEventsSelectOutputReference 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._attribute !== undefined) {
hasAnyValues = true;
internalValueResult.attribute = this._attribute;
}
if (this._function !== undefined) {
hasAnyValues = true;
internalValueResult.function = this._function;
}
if (this._threshold !== undefined) {
hasAnyValues = true;
internalValueResult.threshold = this._threshold;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._attribute = undefined;
this._function = undefined;
this._threshold = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._attribute = value.attribute;
this._function = value.function;
this._threshold = value.threshold;
}
}
get attribute() {
return this.getStringAttribute('attribute');
}
set attribute(value) {
this._attribute = value;
}
resetAttribute() {
this._attribute = undefined;
}
// Temporarily expose input value. Use with caution.
get attributeInput() {
return this._attribute;
}
get function() {
return this.getStringAttribute('function');
}
set function(value) {
this._function = value;
}
// Temporarily expose input value. Use with caution.
get functionInput() {
return this._function;
}
get threshold() {
return this.getNumberAttribute('threshold');
}
set threshold(value) {
this._threshold = value;
}
resetThreshold() {
this._threshold = undefined;
}
// Temporarily expose input value. Use with caution.
get thresholdInput() {
return this._threshold;
}
}
exports.ServiceLevelEventsValidEventsSelectOutputReference = ServiceLevelEventsValidEventsSelectOutputReference;
_e = JSII_RTTI_SYMBOL_1;
ServiceLevelEventsValidEventsSelectOutputReference[_e] = { fqn: "@cdktf/provider-newrelic.serviceLevel.ServiceLevelEventsValidEventsSelectOutputReference", version: "12.28.0" };
function serviceLevelEventsValidEventsToTerraform(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 {
from: cdktf.stringToTerraform(struct.from),
where: cdktf.stringToTerraform(struct.where),
select: serviceLevelEventsValidEventsSelectToTerraform(struct.select),
};
}
function serviceLevelEventsValidEventsToHclTerraform(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 = {
from: {
value: cdktf.stringToHclTerraform(struct.from),
isBlock: false,
type: "simple",
storageClassType: "string",
},
where: {
value: cdktf.stringToHclTerraform(struct.where),
isBlock: false,
type: "simple",
storageClassType: "string",
},
select: {
value: serviceLevelEventsValidEventsSelectToHclTerraform(struct.select),
isBlock: true,
type: "list",
storageClassType: "ServiceLevelEventsValidEventsSelectList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class ServiceLevelEventsValidEventsOutputReference 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;
// select - computed: false, optional: true, required: false
this._select = new ServiceLevelEventsValidEventsSelectOutputReference(this, "select");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._from !== undefined) {
hasAnyValues = true;
internalValueResult.from = this._from;
}
if (this._where !== undefined) {
hasAnyValues = true;
internalValueResult.where = this._where;
}
if (this._select?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.select = this._select?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._from = undefined;
this._where = undefined;
this._select.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._from = value.from;
this._where = value.where;
this._select.internalValue = value.select;
}
}
get from() {
return this.getStringAttribute('from');
}
set from(value) {
this._from = value;
}
// Temporarily expose input value. Use with caution.
get fromInput() {
return this._from;
}
get where() {
return this.getStringAttribute('where');
}
set where(value) {
this._where = value;
}
resetWhere() {
this._where = undefined;
}
// Temporarily expose input value. Use with caution.
get whereInput() {
return this._where;
}
get select() {
return this._select;
}
putSelect(value) {
this._select.internalValue = value;
}
resetSelect() {
this._select.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get selectInput() {
return this._select.internalValue;
}
}
exports.ServiceLevelEventsValidEventsOutputReference = ServiceLevelEventsValidEventsOutputReference;
_f = JSII_RTTI_SYMBOL_1;
ServiceLevelEventsValidEventsOutputReference[_f] = { fqn: "@cdktf/provider-newrelic.serviceLevel.ServiceLevelEventsValidEventsOutputReference", version: "12.28.0" };
function serviceLevelEventsToTerraform(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 {
account_id: cdktf.numberToTerraform(struct.accountId),
bad_events: serviceLevelEventsBadEventsToTerraform(struct.badEvents),
good_events: serviceLevelEventsGoodEventsToTerraform(struct.goodEvents),
valid_events: serviceLevelEventsValidEventsToTerraform(struct.validEvents),
};
}
function serviceLevelEventsToHclTerraform(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 = {
account_id: {
value: cdktf.numberToHclTerraform(struct.accountId),
isBlock: false,
type: "simple",
storageClassType: "number",
},
bad_events: {
value: serviceLevelEventsBadEventsToHclTerraform(struct.badEvents),
isBlock: true,
type: "list",
storageClassType: "ServiceLevelEventsBadEventsList",
},
good_events: {
value: serviceLevelEventsGoodEventsToHclTerraform(struct.goodEvents),
isBlock: true,
type: "list",
storageClassType: "ServiceLevelEventsGoodEventsList",
},
valid_events: {
value: serviceLevelEventsValidEventsToHclTerraform(struct.validEvents),
isBlock: true,
type: "list",
storageClassType: "ServiceLevelEventsValidEventsList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class ServiceLevelEventsOutputReference 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;
// bad_events - computed: false, optional: true, required: false
this._badEvents = new ServiceLevelEventsBadEventsOutputReference(this, "bad_events");
// good_events - computed: false, optional: true, required: false
this._goodEvents = new ServiceLevelEventsGoodEventsOutputReference(this, "good_events");
// valid_events - computed: false, optional: false, required: true
this._validEvents = new ServiceLevelEventsValidEventsOutputReference(this, "valid_events");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._accountId !== undefined) {
hasAnyValues = true;
internalValueResult.accountId = this._accountId;
}
if (this._badEvents?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.badEvents = this._badEvents?.internalValue;
}
if (this._goodEvents?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.goodEvents = this._goodEvents?.internalValue;
}
if (this._validEvents?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.validEvents = this._validEvents?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._accountId = undefined;
this._badEvents.internalValue = undefined;
this._goodEvents.internalValue = undefined;
this._validEvents.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._accountId = value.accountId;
this._badEvents.internalValue = value.badEvents;
this._goodEvents.internalValue = value.goodEvents;
this._validEvents.internalValue = value.validEvents;
}
}
get accountId() {
return this.getNumberAttribute('account_id');
}
set accountId(value) {
this._accountId = value;
}
// Temporarily expose input value. Use with caution.
get accountIdInput() {
return this._accountId;
}
get badEvents() {
return this._badEvents;
}
putBadEvents(value) {
this._badEvents.internalValue = value;
}
resetBadEvents() {
this._badEvents.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get badEventsInput() {
return this._badEvents.internalValue;
}
get goodEvents() {
return this._goodEvents;
}
putGoodEvents(value) {
this._goodEvents.internalValue = value;
}
resetGoodEvents() {
this._goodEvents.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get goodEventsInput() {
return this._goodEvents.internalValue;
}
get validEvents() {
return this._validEvents;
}
putValidEvents(value) {
this._validEvents.internalValue = value;
}
// Temporarily expose input value. Use with caution.
get validEventsInput() {
return this._validEvents.internalValue;
}
}
exports.ServiceLevelEventsOutputReference = ServiceLevelEventsOutputReference;
_g = JSII_RTTI_SYMBOL_1;
ServiceLevelEventsOutputReference[_g] = { fqn: "@cdktf/provider-newrelic.serviceLevel.ServiceLevelEventsOutputReference", version: "12.28.0" };
function serviceLevelObjectiveTimeWindowRollingToTerraform(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 {
count: cdktf.numberToTerraform(struct.count),
unit: cdktf.stringToTerraform(struct.unit),
};
}
function serviceLevelObjectiveTimeWindowRollingToHclTerraform(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 = {
count: {
value: cdktf.numberToHclTerraform(struct.count),
isBlock: false,
type: "simple",
storageClassType: "number",
},
unit: {
value: cdktf.stringToHclTerraform(struct.unit),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class ServiceLevelObjectiveTimeWindowRollingOutputReference 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._count !== undefined) {
hasAnyValues = true;
internalValueResult.count = this._count;
}
if (this._unit !== undefined) {
hasAnyValues = true;
internalValueResult.unit = this._unit;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._count = undefined;
this._unit = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._count = value.count;
this._unit = value.unit;
}
}
get count() {
return this.getNumberAttribute('count');
}
set count(value) {
this._count = value;
}
// Temporarily expose input value. Use with caution.
get countInput() {
return this._count;
}
get unit() {
return this.getStringAttribute('unit');
}
set unit(value) {
this._unit = value;
}
// Temporarily expose input value. Use with caution.
get unitInput() {
return this._unit;
}
}
exports.ServiceLevelObjectiveTimeWindowRollingOutputReference = ServiceLevelObjectiveTimeWindowRollingOutputReference;
_h = JSII_RTTI_SYMBOL_1;
ServiceLevelObjectiveTimeWindowRollingOutputReference[_h] = { fqn: "@cdktf/provider-newrelic.serviceLevel.ServiceLevelObjectiveTimeWindowRollingOutputReference", version: "12.28.0" };
function serviceLevelObjectiveTimeWindowToTerraform(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 {
rolling: serviceLevelObjectiveTimeWindowRollingToTerraform(struct.rolling),
};
}
function serviceLevelObjectiveTimeWindowToHclTerraform(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 = {
rolling: {
value: serviceLevelObjectiveTimeWindowRollingToHclTerraform(struct.rolling),
isBlock: true,
type: "list",
storageClassType: "ServiceLevelObjectiveTimeWindowRollingList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class ServiceLevelObjectiveTimeWindowOutputReference 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;
// rolling - computed: false, optional: false, required: true
this._rolling = new ServiceLevelObjectiveTimeWindowRollingOutputReference(this, "rolling");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._rolling?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.rolling = this._rolling?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._rolling.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._rolling.internalValue = value.rolling;
}
}
get rolling() {
return this._rolling;
}
putRolling(value) {
this._rolling.internalValue = value;
}
// Temporarily expose input value. Use with caution.
get rollingInput() {
return this._rolling.internalValue;
}
}
exports.ServiceLevelObjectiveTimeWindowOutputReference = ServiceLevelObjectiveTimeWindowOutputReference;
_j = JSII_RTTI_SYMBOL_1;
ServiceLevelObjectiveTimeWindowOutputReference[_j] = { fqn: "@cdktf/provider-newrelic.serviceLevel.ServiceLevelObjectiveTimeWindowOutputReference", version: "12.28.0" };
function serviceLevelObjectiveToTerraform(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 {
description: cdktf.stringToTerraform(struct.description),
name: cdktf.stringToTerraform(struct.name),
target: cdktf.numberToTerraform(struct.target),
time_window: serviceLevelObjectiveTimeWindowToTerraform(struct.timeWindow),
};
}
function serviceLevelObjectiveToHclTerraform(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 = {
description: {
value: cdktf.stringToHclTerraform(struct.description),
isBlock: false,
type: "simple",
storageClassType: "string",
},
name: {
value: cdktf.stringToHclTerraform(struct.name),
isBlock: false,
type: "simple",
storageClassType: "string",
},
target: {
value: cdktf.numberToHclTerraform(struct.target),
isBlock: false,
type: "simple",
storageClassType: "number",
},
time_window: {
value: serviceLevelObjectiveTimeWindowToHclTerraform(struct.timeWindow),
isBlock: true,
type: "list",
storageClassType: "ServiceLevelObjectiveTimeWindowList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class ServiceLevelObjectiveOutputReference 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;
// time_window - computed: false, optional: false, required: true
this._timeWindow = new ServiceLevelObjectiveTimeWindowOutputReference(this, "time_window");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._description !== undefined) {
hasAnyValues = true;
internalValueResult.description = this._description;
}
if (this._name !== undefined) {
hasAnyValues = true;
internalValueResult.name = this._name;
}
if (this._target !== undefined) {
hasAnyValues = true;
internalValueResult.target = this._target;
}
if (this._timeWindow?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.timeWindow = this._timeWindow?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._description = undefined;
this._name = undefined;
this._target = undefined;
this._timeWindow.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._description = value.description;
this._name = value.name;
this._target = value.target;
this._timeWindow.internalValue = value.timeWindow;
}
}
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 name() {
return this.getStringAttribute('name');
}
set name(value) {
this._name = value;
}
resetName() {
this._name = undefined;
}
// Temporarily expose input value. Use with caution.
get nameInput() {
return this._name;
}
get target() {
return this.getNumberAttribute('target');
}
set target(value) {
this._target = value;
}
// Temporarily expose input value. Use with caution.
get targetInput() {
return this._target;
}
get timeWindow() {
return this._timeWindow;
}
putTimeWindow(value) {
this._timeWindow.internalValue = value;
}
// Temporarily expose input value. Use with caution.
get timeWindowInput() {
return this._timeWindow.internalValue;
}
}
exports.ServiceLevelObjectiveOutputReference = ServiceLevelObjectiveOutputReference;
_k = JSII_RTTI_SYMBOL_1;
ServiceLevelObjectiveOutputReference[_k] = { fqn: "@cdktf/provider-newrelic.serviceLevel.ServiceLevelObjectiveOutputReference", version: "12.28.0" };
/**
* Represents a {@link https://registry.terraform.io/providers/newrelic/newrelic/3.59.0/docs/resources/service_level newrelic_service_level}
*/
class ServiceLevel extends cdktf.TerraformResource {
// ==============
// STATIC Methods
// ==============
/**
* Generates CDKTF code for importing a ServiceLevel 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 ServiceLevel to import
* @param importFromId The id of the existing ServiceLevel that should be imported. Refer to the {@link https://registry.terraform.io/providers/newrelic/newrelic/3.59.0/docs/resources/service_level#import import section} in the documentation of this resource for the id to use
* @param provider? Optional instance of the provider where the ServiceLevel to import is found
*/
static generateConfigForImport(scope, importToId, importFromId, provider) {
return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "newrelic_service_level", importId: importFromId, provider });
}
// ===========
// INITIALIZER
// ===========
/**
* Create a new {@link https://registry.terraform.io/providers/newrelic/newrelic/3.59.0/docs/resources/service_level newrelic_service_level} 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 ServiceLevelConfig
*/
constructor(scope, id, config) {
super(scope, id, {
terraformResourceType: 'newrelic_service_level',
terraformGeneratorMetadata: {
providerName: 'newrelic',
providerVersion: '3.59.0',
providerVersionConstraint: '~> 3.7'
},
provider: config.provider,
dependsOn: config.dependsOn,
count: config.count,
lifecycle: config.lifecycle,
provisioners: config.provisioners,
connection: config.connection,
forEach: config.forEach
});
// events - co