import { Value } from '../../cloudformation/Value';
import { ProvisionedConcurrencyConfigurationProps } from './version/ProvisionedConcurrencyConfigurationProps';
import { RuntimePolicyProps } from './version/RuntimePolicyProps';
import { Attribute } from '../../cloudformation/Attribute';
import { AwsResource } from '../../cloudformation/resources/AwsResource';
export type VersionAttributes = {
    FunctionArn: Attribute<string>;
    Version: Attribute<string>;
};
export type Version = AwsResource<'AWS::Lambda::Version', VersionProperties, VersionAttributes>;
/**
  The <code>AWS::Lambda::Version</code> resource creates a <a href="https://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html">version</a> from the current code and configuration of a function. Use versions to create a snapshot of your function code and configuration that doesn’t change.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html">the AWS Docs</a>
*/
export declare function version(versionProps: VersionProperties): Version;
/**
  The <code>AWS::Lambda::Version</code> resource creates a <a href="https://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html">version</a> from the current code and configuration of a function. Use versions to create a snapshot of your function code and configuration that doesn’t change.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html">the AWS Docs</a>
*/
export interface VersionProperties {
    /** <p> */
    functionName: Value<string>;
    /** <code>ProvisionedConcurrencyConfig</code>  <a name="cfn-lambda-version-provisionedconcurrencyconfig"></a>
  Specifies a provisioned concurrency configuration for a function’s version. Updates are not supported for this property.<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> */
    provisionedConcurrencyConfig?: ProvisionedConcurrencyConfigurationProps;
    /** <code>Description</code>  <a name="cfn-lambda-version-description"></a>
  A description for the version to override the description in the function configuration. Updates are not supported for this property.<br />
  
  Required: No<br />
  
  Minimum: <code>0</code><br />
  
  Maximum: <code>256</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> */
    description?: Value<string>;
    /**  */
    runtimePolicy?: RuntimePolicyProps;
    /** <code>CodeSha256</code>  <a name="cfn-lambda-version-codesha256"></a>
  Only publish a version if the hash value matches the value that’s specified. Use this option to avoid publishing a version if the function code has changed since you last updated it. Updates are not supported for this property.<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> */
    codeSha256?: Value<string>;
}
