import { Value } from '../../cloudformation/Value';
import { PipeTargetParametersProps } from './pipe/PipeTargetParametersProps';
import { PipeEnrichmentParametersProps } from './pipe/PipeEnrichmentParametersProps';
import { PipeSourceParametersProps } from './pipe/PipeSourceParametersProps';
import { Attribute } from '../../cloudformation/Attribute';
import { AwsResource } from '../../cloudformation/resources/AwsResource';
export type PipeAttributes = {
    StateReason: Attribute<string>;
    CurrentState: Attribute<string>;
    CreationTime: Attribute<string>;
    LastModifiedTime: Attribute<string>;
    Arn: Attribute<string>;
};
export type Pipe = AwsResource<'AWS::Pipes::Pipe', PipeProperties, PipeAttributes>;
/**
  Create a pipe. Amazon EventBridge Pipes connect event sources to targets and reduces the need for specialized knowledge and integration code.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html">the AWS Docs</a>
*/
export declare function pipe(pipeProps: PipeProperties): Pipe;
/**
  Create a pipe. Amazon EventBridge Pipes connect event sources to targets and reduces the need for specialized knowledge and integration code.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html">the AWS Docs</a>
*/
export interface PipeProperties {
    /** <code>Enrichment</code>  <a name="cfn-pipes-pipe-enrichment"></a>
  The ARN of the enrichment resource.<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> */
    enrichment?: Value<string>;
    /** <code>Target</code>  <a name="cfn-pipes-pipe-target"></a>
  The ARN of the target resource.<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> */
    target: Value<string>;
    /** <code>Description</code>  <a name="cfn-pipes-pipe-description"></a>
  A description of the pipe.<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> */
    description?: Value<string>;
    /** <code>DesiredState</code>  <a name="cfn-pipes-pipe-desiredstate"></a>
  The state the pipe should be in.<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> */
    desiredState?: Value<string>;
    /** <code>TargetParameters</code>  <a name="cfn-pipes-pipe-targetparameters"></a>
  The parameters required to set up a target for your pipe.<br />
  For more information about pipe target parameters, including how to use dynamic path parameters, see <a href="https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-target.html">Target parameters</a> in the
  Amazon EventBridge User Guide: 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> */
    targetParameters?: PipeTargetParametersProps;
    /** <code>EnrichmentParameters</code>  <a name="cfn-pipes-pipe-enrichmentparameters"></a>
  The parameters required to set up enrichment on your pipe.<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> */
    enrichmentParameters?: PipeEnrichmentParametersProps;
    /** <code>RoleArn</code>  <a name="cfn-pipes-pipe-rolearn"></a>
  The ARN of the role that allows the pipe to send data to the target.<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> */
    roleArn: Value<string>;
    /** <code>Source</code>  <a name="cfn-pipes-pipe-source"></a>
  The ARN of the source resource.<br />
  
  Required: Yes<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    source: Value<string>;
    /** <code>SourceParameters</code>  <a name="cfn-pipes-pipe-sourceparameters"></a>
  The parameters required to set up a source for your pipe.<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> */
    sourceParameters?: PipeSourceParametersProps;
    /** <code>Tags</code>  <a name="cfn-pipes-pipe-tags"></a>
  The list of key-value pairs to associate with the pipe.<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?: Value<{
        [key: string]: Value<string>;
    }>;
    /** <code>Name</code>  <a name="cfn-pipes-pipe-name"></a>
  The name of the pipe.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    name?: Value<string>;
}
