import { Value } from '../../../cloudformation/Value';
import { UserPropertyProps } from './UserPropertyProps';
/**
  Specifies MQTT Version 5.0 headers information. For more information, see <a href="https://docs.aws.amazon.com/iot/latest/developerguide/mqtt.html">MQTT</a> in the IoT Core Developer Guide.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-republishactionheaders.html">the AWS Docs</a>
*/
export interface RepublishActionHeadersProps {
    /** <code>CorrelationData</code>  <a name="cfn-iot-topicrule-republishactionheaders-correlationdata"></a>
  The base64-encoded binary data used by the sender of the request message to identify which request the response message is for.<br />
  For more information, see <a href="https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901115"> Correlation Data</a> in the MQTT Version 5.0 specification.<br />
  Supports <a href="https://docs.aws.amazon.com/iot/latest/developerguide/iot-substitution-templates.html">substitution templates</a>.<br />
  This binary data must be base64-encoded.
  
  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> */
    correlationData?: Value<string>;
    /** <code>UserProperties</code>  <a name="cfn-iot-topicrule-republishactionheaders-userproperties"></a>
  An array of key-value pairs that you define in the MQTT5 header.<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> */
    userProperties?: UserPropertyProps[];
    /** <code>PayloadFormatIndicator</code>  <a name="cfn-iot-topicrule-republishactionheaders-payloadformatindicator"></a>
  An <code>Enum</code> string value that indicates whether the payload is formatted as UTF-8.<br />
  Valid values are <code>UNSPECIFIED_BYTES</code> and <code>UTF8_DATA</code>.<br />
  For more information, see <a href="https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901111"> Payload Format Indicator</a> from the MQTT Version 5.0 specification.<br />
  Supports <a href="https://docs.aws.amazon.com/iot/latest/developerguide/iot-substitution-templates.html">substitution templates</a>.<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> */
    payloadFormatIndicator?: Value<string>;
    /** <code>ContentType</code>  <a name="cfn-iot-topicrule-republishactionheaders-contenttype"></a>
  A UTF-8 encoded string that describes the content of the publishing message.<br />
  For more information, see <a href="https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901118"> Content Type</a> in the MQTT Version 5.0 specification.<br />
  Supports <a href="https://docs.aws.amazon.com/iot/latest/developerguide/iot-substitution-templates.html">substitution templates</a>.<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> */
    contentType?: Value<string>;
    /** <code>MessageExpiry</code>  <a name="cfn-iot-topicrule-republishactionheaders-messageexpiry"></a>
  A user-defined integer value that represents the message expiry interval at the broker. If the messages haven’t been sent to the subscribers within that interval, the message expires and is removed. The value of <code>messageExpiry</code> represents the number of seconds before it expires. For more information about the limits of <code>messageExpiry</code>, see <a href="https://docs.aws.amazon.com/general/latest/gr/iot-core.html#limits_iot">Message broker and protocol limits and quotas</a> in the IoT Core Reference Guide.<br />
  Supports <a href="https://docs.aws.amazon.com/iot/latest/developerguide/iot-substitution-templates.html">substitution templates</a>.<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> */
    messageExpiry?: Value<string>;
    /** <code>ResponseTopic</code>  <a name="cfn-iot-topicrule-republishactionheaders-responsetopic"></a>
  A UTF-8 encoded string that’s used as the topic name for a response message. The response topic is used to describe the topic to which the receiver should publish as part of the request-response flow. The topic must not contain wildcard characters.<br />
  For more information, see <a href="https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901114"> Response Topic</a> in the MQTT Version 5.0 specification.<br />
  Supports <a href="https://docs.aws.amazon.com/iot/latest/developerguide/iot-substitution-templates.html">substitution templates</a>.<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> */
    responseTopic?: Value<string>;
}
