"use strict";var _a;Object.defineProperty(exports,"__esModule",{value:!0}),exports.AlarmRule=exports.AlarmState=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti");var AlarmState;(function(AlarmState2){AlarmState2.ALARM="ALARM",AlarmState2.OK="OK",AlarmState2.INSUFFICIENT_DATA="INSUFFICIENT_DATA"})(AlarmState=exports.AlarmState||(exports.AlarmState={}));var Operator;(function(Operator2){Operator2.AND="AND",Operator2.OR="OR",Operator2.NOT="NOT"})(Operator||(Operator={}));class AlarmRule{static allOf(...operands){return jsiiDeprecationWarnings.aws_cdk_lib_aws_cloudwatch_IAlarmRule(operands),this.concat(Operator.AND,...operands)}static anyOf(...operands){return jsiiDeprecationWarnings.aws_cdk_lib_aws_cloudwatch_IAlarmRule(operands),this.concat(Operator.OR,...operands)}static not(operand){return jsiiDeprecationWarnings.aws_cdk_lib_aws_cloudwatch_IAlarmRule(operand),new class{renderAlarmRule(){return`(NOT (${operand.renderAlarmRule()}))`}}}static fromBoolean(value){return new class{renderAlarmRule(){return`${String(value).toUpperCase()}`}}}static fromAlarm(alarm,alarmState){return jsiiDeprecationWarnings.aws_cdk_lib_aws_cloudwatch_IAlarm(alarm),jsiiDeprecationWarnings.aws_cdk_lib_aws_cloudwatch_AlarmState(alarmState),new class{renderAlarmRule(){return`${alarmState}("${alarm.alarmArn}")`}}}static fromString(alarmRule){return new class{renderAlarmRule(){return alarmRule}}}static concat(operator,...operands){return new class{renderAlarmRule(){return`(${operands.map(operand=>`${operand.renderAlarmRule()}`).join(` ${operator} `)})`}}}}exports.AlarmRule=AlarmRule,_a=JSII_RTTI_SYMBOL_1,AlarmRule[_a]={fqn:"aws-cdk-lib.aws_cloudwatch.AlarmRule",version:"2.13.0"};
//# sourceMappingURL=alarm-rule.js.map
