import { Value } from '../../cloudformation/Value';
import { FormCTAProps } from './form/FormCTAProps';
import { FieldConfigProps } from './form/FieldConfigProps';
import { SectionalElementProps } from './form/SectionalElementProps';
import { FormDataTypeConfigProps } from './form/FormDataTypeConfigProps';
import { FormStyleProps } from './form/FormStyleProps';
import { Attribute } from '../../cloudformation/Attribute';
import { AwsResource } from '../../cloudformation/resources/AwsResource';
export type FormAttributes = {
    Id: Attribute<string>;
};
export type Form = AwsResource<'AWS::AmplifyUIBuilder::Form', FormProperties, FormAttributes>;
/**
  The AWS::AmplifyUIBuilder::Form resource specifies all of the information that is required to create a form.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplifyuibuilder-form.html">the AWS Docs</a>
*/
export declare function form(formProps: FormProperties): Form;
/**
  The AWS::AmplifyUIBuilder::Form resource specifies all of the information that is required to create a form.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplifyuibuilder-form.html">the AWS Docs</a>
*/
export interface FormProperties {
    /** <code>FormActionType</code>  <a name="cfn-amplifyuibuilder-form-formactiontype"></a>
  Specifies whether to perform a create or update action on the form.<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> */
    formActionType: Value<string>;
    /** <code>Cta</code>  <a name="cfn-amplifyuibuilder-form-cta"></a>
  The <code>FormCTA</code> object that stores the call to action configuration for the form.<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> */
    cta?: FormCTAProps;
    /** <code>Fields</code>  <a name="cfn-amplifyuibuilder-form-fields"></a>
  The configuration information for the form’s fields.<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> */
    fields: {
        [key: string]: FieldConfigProps;
    };
    /** <code>SchemaVersion</code>  <a name="cfn-amplifyuibuilder-form-schemaversion"></a>
  The schema version of the form.<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> */
    schemaVersion: Value<string>;
    /** <code>AppId</code>  <a name="cfn-amplifyuibuilder-form-appid"></a>
  The unique ID of the Amplify app associated with the form.<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> */
    appId?: Value<string>;
    /** <code>EnvironmentName</code>  <a name="cfn-amplifyuibuilder-form-environmentname"></a>
  The name of the backend environment that is a part of the Amplify app.<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> */
    environmentName?: Value<string>;
    /** <code>LabelDecorator</code>  <a name="cfn-amplifyuibuilder-form-labeldecorator"></a>
  Specifies an icon or decoration to display on the form.<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> */
    labelDecorator?: Value<string>;
    /** <code>SectionalElements</code>  <a name="cfn-amplifyuibuilder-form-sectionalelements"></a>
  The configuration information for the visual helper elements for the form. These elements are not associated with any data.<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> */
    sectionalElements: {
        [key: string]: SectionalElementProps;
    };
    /** <code>DataType</code>  <a name="cfn-amplifyuibuilder-form-datatype"></a>
  The type of data source to use to create the form.<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> */
    dataType: FormDataTypeConfigProps;
    /** <code>Style</code>  <a name="cfn-amplifyuibuilder-form-style"></a>
  The configuration for the form’s style.<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> */
    style: FormStyleProps;
    /** <code>Tags</code>  <a name="cfn-amplifyuibuilder-form-tags"></a>
  One or more key-value pairs to use when tagging the form data.<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> */
    tags?: Value<{
        [key: string]: Value<string>;
    }>;
    /** <code>Name</code>  <a name="cfn-amplifyuibuilder-form-name"></a>
  The name of the form.<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> */
    name: Value<string>;
}
