import { Value } from '../../cloudformation/Value';
import { DefinitionProps } from './application/DefinitionProps';
import { Attribute } from '../../cloudformation/Attribute';
import { AwsResource } from '../../cloudformation/resources/AwsResource';
export type ApplicationAttributes = {
    ApplicationArn: Attribute<string>;
    ApplicationId: Attribute<string>;
};
export type Application = AwsResource<'AWS::M2::Application', ApplicationProperties, ApplicationAttributes>;
/**
  Specifies a new application with given parameters. Requires an existing runtime environment and application definition file.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-m2-application.html">the AWS Docs</a>
*/
export declare function application(applicationProps: ApplicationProperties): Application;
/**
  Specifies a new application with given parameters. Requires an existing runtime environment and application definition file.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-m2-application.html">the AWS Docs</a>
*/
export interface ApplicationProperties {
    /** <code>Description</code>  <a name="cfn-m2-application-description"></a>
  The description of the application.<br />
  
  Required: No<br />
  
  Minimum: <code>0</code><br />
  
  Maximum: <code>500</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>;
    /** <code>KmsKeyId</code>  <a name="cfn-m2-application-kmskeyid"></a>
  The identifier of a customer managed key.<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> */
    kmsKeyId?: Value<string>;
    /** <code>Definition</code>  <a name="cfn-m2-application-definition"></a>
  The application definition for a particular application. You can specify either inline JSON or an Amazon S3 bucket location.<br />
  For information about application definitions, see the <a href="https://docs.aws.amazon.com/m2/latest/userguide/applications-m2-definition.html">AWS Mainframe Modernization User Guide</a>.<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> */
    definition: DefinitionProps;
    /** <code>EngineType</code>  <a name="cfn-m2-application-enginetype"></a>
  The type of the target platform for this application.<br />
  
  Required: Yes<br />
  
  Allowed values: <code>bluage | microfocus</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> */
    engineType: Value<'bluage' | 'microfocus'>;
    /** <code>RoleArn</code>  <a name="cfn-m2-application-rolearn"></a>
  Property description not available.<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> */
    roleArn?: Value<string>;
    /** <code>Tags</code>  <a name="cfn-m2-application-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?: Value<{
        [key: string]: Value<string>;
    }>;
    /** <code>Name</code>  <a name="cfn-m2-application-name"></a>
  The name of the application.<br />
  
  Required: Yes<br />
  
  Pattern: <code>[A-Za-z0-9][A-Za-z0-9_\-]{1,59}</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> */
    name: Value<string>;
}
