import { DynamoDBv2Props } from './DynamoDBv2Props';
import { IotEventsProps } from './IotEventsProps';
import { IotSiteWiseProps } from './IotSiteWiseProps';
import { SqsProps } from './SqsProps';
import { FirehoseProps } from './FirehoseProps';
import { DynamoDBProps } from './DynamoDBProps';
import { IotTopicPublishProps } from './IotTopicPublishProps';
import { SnsProps } from './SnsProps';
import { LambdaProps } from './LambdaProps';
/**
  Specifies one of the following actions to receive notifications when the alarm state changes.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-alarmmodel-alarmaction.html">the AWS Docs</a>
*/
export interface AlarmActionProps {
    /** <p> */
    dynamoDBv2?: DynamoDBv2Props;
    /** <code>IotEvents</code>  <a name="cfn-iotevents-alarmmodel-alarmaction-iotevents"></a>
  Sends an AWS IoT Events input, passing in information about the detector model instance and the event that triggered the action.<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> */
    iotEvents?: IotEventsProps;
    /** <p> */
    iotSiteWise?: IotSiteWiseProps;
    /** <code>Sqs</code>  <a name="cfn-iotevents-alarmmodel-alarmaction-sqs"></a>
  Sends information about the detector model instance and the event that triggered the action to an Amazon SQS queue.<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> */
    sqs?: SqsProps;
    /** <code>Firehose</code>  <a name="cfn-iotevents-alarmmodel-alarmaction-firehose"></a>
  Sends information about the detector model instance and the event that triggered the action to an Amazon Kinesis Data Firehose delivery stream.<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> */
    firehose?: FirehoseProps;
    /** <p> */
    dynamoDB?: DynamoDBProps;
    /** <code>IotTopicPublish</code>  <a name="cfn-iotevents-alarmmodel-alarmaction-iottopicpublish"></a>
  Information required to publish the MQTT message through the AWS IoT message broker.<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> */
    iotTopicPublish?: IotTopicPublishProps;
    /** <code>Sns</code>  <a name="cfn-iotevents-alarmmodel-alarmaction-sns"></a>
  Information required to publish the Amazon SNS message.<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> */
    sns?: SnsProps;
    /** <code>Lambda</code>  <a name="cfn-iotevents-alarmmodel-alarmaction-lambda"></a>
  Calls a Lambda function, passing in information about the detector model instance and the event that triggered the action.<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> */
    lambda?: LambdaProps;
}
