import { Value } from '../../../cloudformation/Value';
import { KafkaActionHeaderProps } from './KafkaActionHeaderProps';
/**
  Send messages to an Amazon Managed Streaming for Apache Kafka (Amazon MSK) or self-managed Apache Kafka cluster.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-kafkaaction.html">the AWS Docs</a>
*/
export interface KafkaActionProps {
    /** <code>Partition</code>  <a name="cfn-iot-topicrule-kafkaaction-partition"></a>
  The Kafka message partition.<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> */
    partition?: Value<string>;
    /** <code>ClientProperties</code>  <a name="cfn-iot-topicrule-kafkaaction-clientproperties"></a>
  Properties of the Apache Kafka producer client.<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> */
    clientProperties: Value<{
        [key: string]: Value<string>;
    }>;
    /**  */
    headers?: KafkaActionHeaderProps[];
    /** <code>Topic</code>  <a name="cfn-iot-topicrule-kafkaaction-topic"></a>
  The Kafka topic for messages to be sent to the Kafka broker.<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> */
    topic: Value<string>;
    /** <code>DestinationArn</code>  <a name="cfn-iot-topicrule-kafkaaction-destinationarn"></a>
  The ARN of Kafka action’s VPC <code>TopicRuleDestination</code>.<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> */
    destinationArn: Value<string>;
    /** <code>Key</code>  <a name="cfn-iot-topicrule-kafkaaction-key"></a>
  The Kafka message key.<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> */
    key?: Value<string>;
}
