import { Value } from '../../cloudformation/Value';
import { Attribute } from '../../cloudformation/Attribute';
import { AwsResource } from '../../cloudformation/resources/AwsResource';
export type StateMachineVersionAttributes = {
    Arn: Attribute<string>;
};
export type StateMachineVersion = AwsResource<'AWS::StepFunctions::StateMachineVersion', StateMachineVersionProperties, StateMachineVersionAttributes>;
/**
  Represents a state machine <a href="https://docs.aws.amazon.com/step-functions/latest/dg/concepts-state-machine-version.html">version</a>. A published version uses the latest state machine <a href="https://docs.aws.amazon.com/step-functions/latest/dg/concepts-state-machine-version.html">https://docs.aws.amazon.com/step-functions/latest/dg/concepts-state-machine-version.html</a>. A revision is an immutable, read-only snapshot of a state machine’s definition and configuration.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachineversion.html">the AWS Docs</a>
*/
export declare function stateMachineVersion(stateMachineVersionProps: StateMachineVersionProperties): StateMachineVersion;
/**
  Represents a state machine <a href="https://docs.aws.amazon.com/step-functions/latest/dg/concepts-state-machine-version.html">version</a>. A published version uses the latest state machine <a href="https://docs.aws.amazon.com/step-functions/latest/dg/concepts-state-machine-version.html">https://docs.aws.amazon.com/step-functions/latest/dg/concepts-state-machine-version.html</a>. A revision is an immutable, read-only snapshot of a state machine’s definition and configuration.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachineversion.html">the AWS Docs</a>
*/
export interface StateMachineVersionProperties {
    /** <code>Description</code>  <a name="cfn-stepfunctions-statemachineversion-description"></a>
  An optional description of the state machine version.<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>StateMachineRevisionId</code>  <a name="cfn-stepfunctions-statemachineversion-statemachinerevisionid"></a>
  Identifier for a state machine revision, which is an immutable, read-only snapshot of a state machine’s definition and configuration.<br />
  Only publish the state machine version if the current state machine’s revision ID matches the specified ID. Use this option to avoid publishing a version if the state machine has changed since you last updated it.<br />
  To specify the initial state machine revision, set the value as <code>INITIAL</code>.<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> */
    stateMachineRevisionId?: Value<string>;
    /** <code>StateMachineArn</code>  <a name="cfn-stepfunctions-statemachineversion-statemachinearn"></a>
  The Amazon Resource Name (ARN) of the state machine.<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> */
    stateMachineArn: Value<string>;
}
