import { InputDefinitionProps } from './input/InputDefinitionProps';
import { Value } from '../../cloudformation/Value';
import { Tag } from '../Tag';
import { AwsResource } from '../../cloudformation/resources/AwsResource';
/**
  The AWS::IoTEvents::Input resource creates an input. To monitor your devices and processes, they must have a way to get telemetry data into AWS IoT Events. This is done by sending messages as <em>inputs</em> to AWS IoT Events. For more information, see <a href="https://docs.aws.amazon.com/iotevents/latest/developerguide/how-to-use-iotevents.html"> How to Use AWS IoT Events</a> in the <em>AWS IoT Events Developer Guide</em>.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-input.html">the AWS Docs</a>
*/
export type Input = AwsResource<'AWS::IoTEvents::Input', InputProperties>;
export declare function input(inputProps: InputProperties): Input;
/**
  The AWS::IoTEvents::Input resource creates an input. To monitor your devices and processes, they must have a way to get telemetry data into AWS IoT Events. This is done by sending messages as <em>inputs</em> to AWS IoT Events. For more information, see <a href="https://docs.aws.amazon.com/iotevents/latest/developerguide/how-to-use-iotevents.html"> How to Use AWS IoT Events</a> in the <em>AWS IoT Events Developer Guide</em>.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-input.html">the AWS Docs</a>
*/
export interface InputProperties {
    /** <code>InputDefinition</code>  <a name="cfn-iotevents-input-inputdefinition"></a>
  The definition of the input.<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> */
    inputDefinition: InputDefinitionProps;
    /** <code>InputName</code>  <a name="cfn-iotevents-input-inputname"></a>
  The name of the input.<br />
  
  Required: No<br />
  
  Minimum: <code>1</code><br />
  
  Maximum: <code>128</code><br />
  
  Pattern: <code>^[a-zA-Z][a-zA-Z0-9_]*$</code><br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    inputName?: Value<string>;
    /** <code>InputDescription</code>  <a name="cfn-iotevents-input-inputdescription"></a>
  A brief description of the input.<br />
  
  Required: No<br />
  
  Maximum: <code>128</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> */
    inputDescription?: Value<string>;
    /** <code>Tags</code>  <a name="cfn-iotevents-input-tags"></a>
  An array of key-value pairs to apply to this resource.<br />
  For more information, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html">Tag</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> */
    tags?: Tag[];
}
