import { Value } from '../../cloudformation/Value';
import { Attribute } from '../../cloudformation/Attribute';
import { AwsResource } from '../../cloudformation/resources/AwsResource';
export type AlarmAttributes = {
    AlarmArn: Attribute<string>;
    State: Attribute<string>;
};
export type Alarm = AwsResource<'AWS::Lightsail::Alarm', AlarmProperties, AlarmAttributes>;
/**
  The <code>AWS::Lightsail::Alarm</code> resource specifies an alarm that can be used to monitor a single metric for one of your Lightsail resources.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-alarm.html">the AWS Docs</a>
*/
export declare function alarm(alarmProps: AlarmProperties): Alarm;
/**
  The <code>AWS::Lightsail::Alarm</code> resource specifies an alarm that can be used to monitor a single metric for one of your Lightsail resources.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-alarm.html">the AWS Docs</a>
*/
export interface AlarmProperties {
    /** <code>MetricName</code>  <a name="cfn-lightsail-alarm-metricname"></a>
  The name of the metric associated with the alarm.<br />
  
  Required: Yes<br />
  
  Allowed values: <code>BurstCapacityPercentage | BurstCapacityTime | ClientTLSNegotiationErrorCount | CPUUtilization | DatabaseConnections | DiskQueueDepth | FreeStorageSpace | HealthyHostCount | HTTPCode_Instance_2XX_Count | HTTPCode_Instance_3XX_Count | HTTPCode_Instance_4XX_Count | HTTPCode_Instance_5XX_Count | HTTPCode_LB_4XX_Count | HTTPCode_LB_5XX_Count | InstanceResponseTime | NetworkIn | NetworkOut | NetworkReceiveThroughput | NetworkTransmitThroughput | RejectedConnectionCount | RequestCount | StatusCheckFailed | StatusCheckFailed_Instance | StatusCheckFailed_System | UnhealthyHostCount</code><br />
  
  Update requires: Updates are not supported. */
    metricName: Value<'BurstCapacityPercentage' | 'BurstCapacityTime' | 'ClientTLSNegotiationErrorCount' | 'CPUUtilization' | 'DatabaseConnections' | 'DiskQueueDepth' | 'FreeStorageSpace' | 'HealthyHostCount' | 'HTTPCode_Instance_2XX_Count' | 'HTTPCode_Instance_3XX_Count' | 'HTTPCode_Instance_4XX_Count' | 'HTTPCode_Instance_5XX_Count' | 'HTTPCode_LB_4XX_Count' | 'HTTPCode_LB_5XX_Count' | 'InstanceResponseTime' | 'NetworkIn' | 'NetworkOut' | 'NetworkReceiveThroughput' | 'NetworkTransmitThroughput' | 'RejectedConnectionCount' | 'RequestCount' | 'StatusCheckFailed' | 'StatusCheckFailed_Instance' | 'StatusCheckFailed_System' | 'UnhealthyHostCount'>;
    /** <code>ComparisonOperator</code>  <a name="cfn-lightsail-alarm-comparisonoperator"></a>
  The arithmetic operation to use when comparing the specified statistic and threshold.<br />
  
  Required: Yes<br />
  
  Allowed values: <code>GreaterThanOrEqualToThreshold | GreaterThanThreshold | LessThanOrEqualToThreshold | LessThanThreshold</code><br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    comparisonOperator: Value<'GreaterThanOrEqualToThreshold' | 'GreaterThanThreshold' | 'LessThanOrEqualToThreshold' | 'LessThanThreshold'>;
    /** <p> */
    treatMissingData?: Value<string>;
    /** <code>AlarmName</code>  <a name="cfn-lightsail-alarm-alarmname"></a>
  The name of the alarm.<br />
  
  Required: Yes<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    alarmName: Value<string>;
    /** <code>ContactProtocols</code>  <a name="cfn-lightsail-alarm-contactprotocols"></a>
  The contact protocols for the alarm, such as <code>Email</code>, <code>SMS</code> (text messaging), or both.<br />
  
  Allowed Values: <code>Email</code> | <code>SMS</code><br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    contactProtocols?: Value<Value<string>[]>;
    /** <code>MonitoredResourceName</code>  <a name="cfn-lightsail-alarm-monitoredresourcename"></a>
  The name of the Lightsail resource that the alarm monitors.<br />
  
  Required: Yes<br />
  
  Update requires: Updates are not supported. */
    monitoredResourceName: Value<string>;
    /** <code>EvaluationPeriods</code>  <a name="cfn-lightsail-alarm-evaluationperiods"></a>
  The number of periods over which data is compared to the specified threshold.<br />
  
  Required: Yes<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    evaluationPeriods: Value<number>;
    /** <code>NotificationEnabled</code>  <a name="cfn-lightsail-alarm-notificationenabled"></a>
  A Boolean value indicating whether the alarm is enabled.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    notificationEnabled?: Value<boolean>;
    /** <code>DatapointsToAlarm</code>  <a name="cfn-lightsail-alarm-datapointstoalarm"></a>
  The number of data points within the evaluation periods that must be breaching to cause the alarm to go to the <code>ALARM</code> state.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    datapointsToAlarm?: Value<number>;
    /** <code>NotificationTriggers</code>  <a name="cfn-lightsail-alarm-notificationtriggers"></a>
  The alarm states that trigger a notification.<br />
  To specify the <code>OK</code> and <code>INSUFFICIENT_DATA</code> values, you must also specify <code>ContactProtocols</code> values. Otherwise, the <code>OK</code> and <code>INSUFFICIENT_DATA</code> values will not take effect and the stack will drift.
  
  Allowed Values: <code>OK</code> | <code>ALARM</code> | <code>INSUFFICIENT_DATA</code><br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    notificationTriggers?: Value<Value<string>[]>;
    /** <code>Threshold</code>  <a name="cfn-lightsail-alarm-threshold"></a>
  The value against which the specified statistic is compared.<br />
  
  Required: Yes<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    threshold: Value<number>;
}
