Module IoTEvents.AlarmModel

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-alarmmodel.html

type acknowledge_flow = {
  1. enabled : bool option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-alarmmodel-acknowledgeflow.html

and tag = {
  1. value : string;
  2. key : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html

and asset_property_variant = {
  1. double_value : string option;
  2. boolean_value : string option;
  3. integer_value : string option;
  4. string_value : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-alarmmodel-assetpropertyvariant.html

and asset_property_timestamp = {
  1. time_in_seconds : string;
  2. offset_in_nanos : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-alarmmodel-assetpropertytimestamp.html

and simple_rule = {
  1. comparison_operator : string;
  2. input_property : string;
  3. threshold : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-alarmmodel-simplerule.html

and initialization_configuration = {
  1. disabled_on_initialization : bool;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-alarmmodel-initializationconfiguration.html

and payload = {
  1. content_expression : string;
  2. type_ : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-alarmmodel-payload.html

and alarm_capabilities = {
  1. acknowledge_flow : acknowledge_flow option;
  2. initialization_configuration : initialization_configuration option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-alarmmodel-alarmcapabilities.html

and dynamo_db = {
  1. table_name : string;
  2. payload_field : string option;
  3. range_key_field : string option;
  4. hash_key_field : string;
  5. range_key_value : string option;
  6. range_key_type : string option;
  7. hash_key_type : string option;
  8. hash_key_value : string;
  9. payload : payload option;
  10. operation : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-alarmmodel-dynamodb.html

and iot_events = {
  1. input_name : string;
  2. payload : payload option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-alarmmodel-iotevents.html

and iot_topic_publish = {
  1. mqtt_topic : string;
  2. payload : payload option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-alarmmodel-iottopicpublish.html

and alarm_rule = {
  1. simple_rule : simple_rule option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-alarmmodel-alarmrule.html

and firehose = {
  1. delivery_stream_name : string;
  2. payload : payload option;
  3. separator : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-alarmmodel-firehose.html

and lambda = {
  1. function_arn : string;
  2. payload : payload option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-alarmmodel-lambda.html

and sns = {
  1. target_arn : string;
  2. payload : payload option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-alarmmodel-sns.html

and dynamo_d_bv2 = {
  1. table_name : string;
  2. payload : payload option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-alarmmodel-dynamodbv2.html

and asset_property_value = {
  1. quality : string option;
  2. value : asset_property_variant;
  3. timestamp : asset_property_timestamp option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-alarmmodel-assetpropertyvalue.html

and sqs = {
  1. use_base64 : bool option;
  2. payload : payload option;
  3. queue_url : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-alarmmodel-sqs.html

and iot_site_wise = {
  1. entry_id : string option;
  2. property_alias : string option;
  3. property_value : asset_property_value option;
  4. asset_id : string option;
  5. property_id : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-alarmmodel-iotsitewise.html

and alarm_action = {
  1. dynamo_d_bv2 : dynamo_d_bv2 option;
  2. iot_events : iot_events option;
  3. iot_site_wise : iot_site_wise option;
  4. sqs : sqs option;
  5. firehose : firehose option;
  6. dynamo_db : dynamo_db option;
  7. iot_topic_publish : iot_topic_publish option;
  8. sns : sns option;
  9. lambda : lambda option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-alarmmodel-alarmaction.html

and alarm_event_actions = {
  1. alarm_actions : alarm_action list option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotevents-alarmmodel-alarmeventactions.html

type properties = {
  1. alarm_rule : alarm_rule;
  2. alarm_model_name : string option;
  3. alarm_model_description : string option;
  4. severity : int option;
  5. alarm_capabilities : alarm_capabilities option;
  6. role_arn : string;
  7. key : string option;
  8. alarm_event_actions : alarm_event_actions option;
  9. tags : tag list option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-alarmmodel.html;

val make_properties : alarm_rule:alarm_rule -> ?alarm_model_name:string -> ?alarm_model_description:string -> ?severity:int -> ?alarm_capabilities:alarm_capabilities -> role_arn:string -> ?key:string -> ?alarm_event_actions:alarm_event_actions -> ?tags:tag list -> unit -> properties
val make_acknowledge_flow : ?enabled:bool -> unit -> acknowledge_flow
val make_tag : value:string -> key:string -> unit -> tag
val make_asset_property_variant : ?double_value:string -> ?boolean_value:string -> ?integer_value:string -> ?string_value:string -> unit -> asset_property_variant
val make_asset_property_timestamp : time_in_seconds:string -> ?offset_in_nanos:string -> unit -> asset_property_timestamp
val make_simple_rule : comparison_operator:string -> input_property:string -> threshold:string -> unit -> simple_rule
val make_initialization_configuration : disabled_on_initialization:bool -> unit -> initialization_configuration
val make_payload : content_expression:string -> type_:string -> unit -> payload
val make_alarm_capabilities : ?acknowledge_flow:acknowledge_flow -> ?initialization_configuration:initialization_configuration -> unit -> alarm_capabilities
val make_dynamo_db : table_name:string -> ?payload_field:string -> ?range_key_field:string -> hash_key_field:string -> ?range_key_value:string -> ?range_key_type:string -> ?hash_key_type:string -> hash_key_value:string -> ?payload:payload -> ?operation:string -> unit -> dynamo_db
val make_iot_events : input_name:string -> ?payload:payload -> unit -> iot_events
val make_iot_topic_publish : mqtt_topic:string -> ?payload:payload -> unit -> iot_topic_publish
val make_alarm_rule : ?simple_rule:simple_rule -> unit -> alarm_rule
val make_firehose : delivery_stream_name:string -> ?payload:payload -> ?separator:string -> unit -> firehose
val make_lambda : function_arn:string -> ?payload:payload -> unit -> lambda
val make_sns : target_arn:string -> ?payload:payload -> unit -> sns
val make_dynamo_d_bv2 : table_name:string -> ?payload:payload -> unit -> dynamo_d_bv2
val make_asset_property_value : ?quality:string -> value:asset_property_variant -> ?timestamp:asset_property_timestamp -> unit -> asset_property_value
val make_sqs : ?use_base64:bool -> ?payload:payload -> queue_url:string -> unit -> sqs
val make_iot_site_wise : ?entry_id:string -> ?property_alias:string -> ?property_value:asset_property_value -> ?asset_id:string -> ?property_id:string -> unit -> iot_site_wise
val make_alarm_action : ?dynamo_d_bv2:dynamo_d_bv2 -> ?iot_events:iot_events -> ?iot_site_wise:iot_site_wise -> ?sqs:sqs -> ?firehose:firehose -> ?dynamo_db:dynamo_db -> ?iot_topic_publish:iot_topic_publish -> ?sns:sns -> ?lambda:lambda -> unit -> alarm_action
val make_alarm_event_actions : ?alarm_actions:alarm_action list -> unit -> alarm_event_actions
val yojson_of_acknowledge_flow : acknowledge_flow -> Yojson.Safe.t
val yojson_of_tag : tag -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_asset_property_variant : asset_property_variant -> Yojson.Safe.t
val yojson_of_asset_property_timestamp : asset_property_timestamp -> Yojson.Safe.t
val yojson_of_simple_rule : simple_rule -> Yojson.Safe.t
val yojson_of_initialization_configuration : initialization_configuration -> Yojson.Safe.t
val yojson_of_payload : payload -> Yojson.Safe.t
val yojson_of_alarm_capabilities : alarm_capabilities -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_dynamo_db : dynamo_db -> Yojson.Safe.t
val yojson_of_iot_events : iot_events -> Yojson.Safe.t
val yojson_of_iot_topic_publish : iot_topic_publish -> Yojson.Safe.t
val yojson_of_alarm_rule : alarm_rule -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_firehose : firehose -> Yojson.Safe.t
val yojson_of_lambda : lambda -> Yojson.Safe.t
val yojson_of_sns : sns -> Yojson.Safe.t
val yojson_of_dynamo_d_bv2 : dynamo_d_bv2 -> Yojson.Safe.t
val yojson_of_asset_property_value : asset_property_value -> Yojson.Safe.t
val yojson_of_sqs : sqs -> Yojson.Safe.t
val yojson_of_iot_site_wise : iot_site_wise -> Yojson.Safe.t
val yojson_of_alarm_action : alarm_action -> Yojson.Safe.t
val yojson_of_alarm_event_actions : alarm_event_actions -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_properties : properties -> [> `Assoc of (string * Yojson.Safe.t) list ]
type attributes = {
  1. ref_ : string;
}
val create_attributes : string -> attributes
val cloudformation_type : string