import { WorkflowStepProps } from './workflow/WorkflowStepProps';
import { Value } from '../../cloudformation/Value';
import { Tag } from '../Tag';
import { Attribute } from '../../cloudformation/Attribute';
import { AwsResource } from '../../cloudformation/resources/AwsResource';
export type WorkflowAttributes = {
    WorkflowId: Attribute<string>;
    Arn: Attribute<string>;
};
export type Workflow = AwsResource<'AWS::Transfer::Workflow', WorkflowProperties, WorkflowAttributes>;
/**
  Allows you to create a workflow with specified steps and step details the workflow invokes after file transfer completes. After creating a workflow, you can associate the workflow created with any transfer servers by specifying the <code>workflow-details</code> field in <code>CreateServer</code> and <code>UpdateServer</code> operations.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-workflow.html">the AWS Docs</a>
*/
export declare function workflow(workflowProps: WorkflowProperties): Workflow;
/**
  Allows you to create a workflow with specified steps and step details the workflow invokes after file transfer completes. After creating a workflow, you can associate the workflow created with any transfer servers by specifying the <code>workflow-details</code> field in <code>CreateServer</code> and <code>UpdateServer</code> operations.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-workflow.html">the AWS Docs</a>
*/
export interface WorkflowProperties {
    /** <code>Steps</code>  <a name="cfn-transfer-workflow-steps"></a>
  Specifies the details for the steps that are in the specified workflow.<br />
  
  Required: Yes<br />
  
  Maximum: <code>8</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> */
    steps: WorkflowStepProps[];
    /** <code>Description</code>  <a name="cfn-transfer-workflow-description"></a>
  Specifies the text description for the workflow.<br />
  
  Required: No<br />
  
  Maximum: <code>256</code><br />
  
  Pattern: <code>^[\w- ]*$</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> */
    description?: Value<string>;
    /** <code>OnExceptionSteps</code>  <a name="cfn-transfer-workflow-onexceptionsteps"></a>
  Specifies the steps (actions) to take if errors are encountered during execution of the workflow.<br />
  
  Required: No<br />
  
  Maximum: <code>8</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> */
    onExceptionSteps?: WorkflowStepProps[];
    /** <code>Tags</code>  <a name="cfn-transfer-workflow-tags"></a>
  Key-value pairs that can be used to group and search for workflows. Tags are metadata attached to workflows for any purpose.<br />
  
  Required: No<br />
  
  Maximum: <code>50</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> */
    tags?: Tag[];
}
