@aws-sdk/client-amplifyuibuilder 3.303.0 → 3.306.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -269,6 +269,10 @@ export interface ExchangeCodeForTokenRequestBody {
269
269
  * <p>The location of the application that will receive the access code.</p>
270
270
  */
271
271
  redirectUri: string | undefined;
272
+ /**
273
+ * <p>The ID of the client to request the token from.</p>
274
+ */
275
+ clientId?: string;
272
276
  }
273
277
  /**
274
278
  * @public
@@ -449,106 +453,101 @@ export interface FormDataTypeConfig {
449
453
  }
450
454
  /**
451
455
  * @public
452
- * <p>Describes the configuration for an input field on a form. Use
453
- * <code>FormInputValueProperty</code> to specify the values to render or bind by
454
- * default.</p>
455
- */
456
- export interface FormInputValueProperty {
457
- /**
458
- * <p>The value to assign to the input field.</p>
459
- */
460
- value?: string;
461
- }
462
- /**
463
- * @public
464
- * <p>Associates a complex object with a display value. Use <code>ValueMapping</code> to store
465
- * how to represent complex objects when they are displayed.</p>
456
+ * @enum
466
457
  */
467
- export interface ValueMapping {
468
- /**
469
- * <p>The value to display for the complex object.</p>
470
- */
471
- displayValue?: FormInputValueProperty;
472
- /**
473
- * <p>The complex object.</p>
474
- */
475
- value: FormInputValueProperty | undefined;
476
- }
458
+ export declare const StorageAccessLevel: {
459
+ readonly PRIVATE: "private";
460
+ readonly PROTECTED: "protected";
461
+ readonly PUBLIC: "public";
462
+ };
477
463
  /**
478
464
  * @public
479
- * <p>Represents the data binding configuration for a value map.</p>
480
465
  */
481
- export interface ValueMappings {
482
- /**
483
- * <p>The value and display value pairs.</p>
484
- */
485
- values: ValueMapping[] | undefined;
486
- }
466
+ export type StorageAccessLevel = (typeof StorageAccessLevel)[keyof typeof StorageAccessLevel];
487
467
  /**
488
468
  * @public
489
- * <p>Describes the configuration for the default input values to display for a field.</p>
469
+ * <p>Describes the configuration for the file uploader field.</p>
490
470
  */
491
- export interface FieldInputConfig {
492
- /**
493
- * <p>The input type for the field. </p>
494
- */
495
- type: string | undefined;
496
- /**
497
- * <p>Specifies a field that requires input.</p>
498
- */
499
- required?: boolean;
500
- /**
501
- * <p>Specifies a read only field.</p>
502
- */
503
- readOnly?: boolean;
471
+ export interface FileUploaderFieldConfig {
504
472
  /**
505
- * <p>The text to display as a placeholder for the field.</p>
506
- */
507
- placeholder?: string;
508
- /**
509
- * <p>The default value for the field.</p>
473
+ * <p>The access level to assign to the uploaded files in the Amazon S3 bucket where
474
+ * they are stored. The valid values for this property are <code>private</code>,
475
+ * <code>protected</code>, or <code>public</code>. For detailed information about the
476
+ * permissions associated with each access level, see <a href="https://docs.amplify.aws/lib/storage/configureaccess/q/platform/js/">File access
477
+ * levels</a> in the <i>Amplify documentation</i>.</p>
510
478
  */
511
- defaultValue?: string;
479
+ accessLevel: StorageAccessLevel | string | undefined;
512
480
  /**
513
- * <p>The text to display to describe the field.</p>
481
+ * <p>The file types that are allowed to be uploaded by the file uploader. Provide this
482
+ * information in an array of strings specifying the valid file extensions.</p>
514
483
  */
515
- descriptiveText?: string;
484
+ acceptedFileTypes: string[] | undefined;
516
485
  /**
517
- * <p>Specifies whether a field has a default value.</p>
486
+ * <p>Specifies whether to display or hide the image preview after selecting a file for upload.
487
+ * The default value is <code>true</code> to display the image preview.</p>
518
488
  */
519
- defaultChecked?: boolean;
489
+ showThumbnails?: boolean;
520
490
  /**
521
- * <p>The default country code for a phone number.</p>
491
+ * <p>Allows the file upload operation to be paused and resumed. The default value is
492
+ * <code>false</code>.</p>
493
+ * <p>When <code>isResumable</code> is set to <code>true</code>, the file uploader uses a
494
+ * multipart upload to break the files into chunks before upload. The progress of the upload
495
+ * isn't continuous, because the file uploader uploads a chunk at a time.</p>
522
496
  */
523
- defaultCountryCode?: string;
497
+ isResumable?: boolean;
524
498
  /**
525
- * <p>The information to use to customize the input fields with data at runtime.</p>
499
+ * <p>Specifies the maximum number of files that can be selected to upload. The default value is
500
+ * an unlimited number of files.</p>
526
501
  */
527
- valueMappings?: ValueMappings;
502
+ maxFileCount?: number;
528
503
  /**
529
- * <p>The name of the field.</p>
504
+ * <p>The maximum file size in bytes that the file uploader will accept. The default value is an
505
+ * unlimited file size.</p>
530
506
  */
531
- name?: string;
507
+ maxSize?: number;
508
+ }
509
+ /**
510
+ * @public
511
+ * <p>Represents the data binding configuration for a specific property using data stored in
512
+ * Amazon Web Services. For Amazon Web Services connected properties, you can bind a property to
513
+ * data stored in an Amplify DataStore model.</p>
514
+ */
515
+ export interface FormInputBindingPropertiesValueProperties {
532
516
  /**
533
- * <p>The minimum value to display for the field.</p>
517
+ * <p>An Amplify DataStore model.</p>
534
518
  */
535
- minValue?: number;
519
+ model?: string;
520
+ }
521
+ /**
522
+ * @public
523
+ * <p>Represents the data binding configuration for a form's input fields at runtime.You can use
524
+ * <code>FormInputBindingPropertiesValue</code> to add exposed properties to a form to allow
525
+ * different values to be entered when a form is reused in different places in an app.</p>
526
+ */
527
+ export interface FormInputBindingPropertiesValue {
536
528
  /**
537
- * <p>The maximum value to display for the field.</p>
529
+ * <p>The property type.</p>
538
530
  */
539
- maxValue?: number;
531
+ type?: string;
540
532
  /**
541
- * <p>The stepping increment for a numeric value in a field.</p>
533
+ * <p>Describes the properties to customize with data at runtime.</p>
542
534
  */
543
- step?: number;
535
+ bindingProperties?: FormInputBindingPropertiesValueProperties;
536
+ }
537
+ /**
538
+ * @public
539
+ * <p>Associates a form property to a binding property. This enables exposed properties on the
540
+ * top level form to propagate data to the form's property values.</p>
541
+ */
542
+ export interface FormInputValuePropertyBindingProperties {
544
543
  /**
545
- * <p>The value for the field.</p>
544
+ * <p>The form property to bind to the data field.</p>
546
545
  */
547
- value?: string;
546
+ property: string | undefined;
548
547
  /**
549
- * <p>Specifies whether to render the field as an array. This property is ignored if the <code>dataSourceType</code> for the form is a Data Store.</p>
548
+ * <p>The data field to bind the property to.</p>
550
549
  */
551
- isArray?: boolean;
550
+ field?: string;
552
551
  }
553
552
  /**
554
553
  * @public
@@ -573,32 +572,6 @@ export interface FieldValidationConfiguration {
573
572
  */
574
573
  validationMessage?: string;
575
574
  }
576
- /**
577
- * @public
578
- * <p>Describes the configuration information for a field in a table.</p>
579
- */
580
- export interface FieldConfig {
581
- /**
582
- * <p>The label for the field.</p>
583
- */
584
- label?: string;
585
- /**
586
- * <p>Specifies the field position.</p>
587
- */
588
- position?: FieldPosition;
589
- /**
590
- * <p>Specifies whether to hide a field.</p>
591
- */
592
- excluded?: boolean;
593
- /**
594
- * <p>Describes the configuration for the default input value to display for a field.</p>
595
- */
596
- inputType?: FieldInputConfig;
597
- /**
598
- * <p>The validations to perform on the value in the field.</p>
599
- */
600
- validations?: FieldValidationConfiguration[];
601
- }
602
575
  /**
603
576
  * @public
604
577
  * @enum
@@ -611,6 +584,19 @@ export declare const FormActionType: {
611
584
  * @public
612
585
  */
613
586
  export type FormActionType = (typeof FormActionType)[keyof typeof FormActionType];
587
+ /**
588
+ * @public
589
+ * @enum
590
+ */
591
+ export declare const LabelDecorator: {
592
+ readonly NONE: "none";
593
+ readonly OPTIONAL: "optional";
594
+ readonly REQUIRED: "required";
595
+ };
596
+ /**
597
+ * @public
598
+ */
599
+ export type LabelDecorator = (typeof LabelDecorator)[keyof typeof LabelDecorator];
614
600
  /**
615
601
  * @public
616
602
  * <p>Stores the configuration information for a visual helper element for a form. A sectional
@@ -639,9 +625,14 @@ export interface SectionalElement {
639
625
  level?: number;
640
626
  /**
641
627
  * <p>Specifies the orientation for a <code>Divider</code> sectional element. Valid values are
642
- * <code>horizontal</code> or <code>vertical</code>.</p>
628
+ * <code>horizontal</code> or <code>vertical</code>.</p>
643
629
  */
644
630
  orientation?: string;
631
+ /**
632
+ * <p>Excludes a sectional element that was generated by default for a specified data
633
+ * model.</p>
634
+ */
635
+ excluded?: boolean;
645
636
  }
646
637
  /**
647
638
  * @public
@@ -701,78 +692,61 @@ export interface FormStyle {
701
692
  }
702
693
  /**
703
694
  * @public
704
- * <p>Represents all of the information that is required to create a form.</p>
705
695
  */
706
- export interface CreateFormData {
707
- /**
708
- * <p>The name of the form.</p>
709
- */
710
- name: string | undefined;
711
- /**
712
- * <p>The type of data source to use to create the form.</p>
713
- */
714
- dataType: FormDataTypeConfig | undefined;
715
- /**
716
- * <p>Specifies whether to perform a create or update action on the form.</p>
717
- */
718
- formActionType: FormActionType | string | undefined;
696
+ export interface DeleteFormRequest {
719
697
  /**
720
- * <p>The configuration information for the form's fields.</p>
698
+ * <p>The unique ID of the Amplify app associated with the form to delete.</p>
721
699
  */
722
- fields: Record<string, FieldConfig> | undefined;
700
+ appId: string | undefined;
723
701
  /**
724
- * <p>The configuration for the form's style.</p>
702
+ * <p>The name of the backend environment that is a part of the Amplify app.</p>
725
703
  */
726
- style: FormStyle | undefined;
704
+ environmentName: string | undefined;
727
705
  /**
728
- * <p>The configuration information for the visual helper elements for the form. These elements
729
- * are not associated with any data.</p>
706
+ * <p>The unique ID of the form to delete.</p>
730
707
  */
731
- sectionalElements: Record<string, SectionalElement> | undefined;
708
+ id: string | undefined;
709
+ }
710
+ /**
711
+ * @public
712
+ */
713
+ export interface ExportFormsRequest {
732
714
  /**
733
- * <p>The schema version of the form.</p>
715
+ * <p>The unique ID of the Amplify app to export forms to.</p>
734
716
  */
735
- schemaVersion: string | undefined;
717
+ appId: string | undefined;
736
718
  /**
737
- * <p>The <code>FormCTA</code> object that stores the call to action configuration for the
738
- * form.</p>
719
+ * <p>The name of the backend environment that is a part of the Amplify app.</p>
739
720
  */
740
- cta?: FormCTA;
721
+ environmentName: string | undefined;
741
722
  /**
742
- * <p>One or more key-value pairs to use when tagging the form data.</p>
723
+ * <p>The token to request the next page of results.</p>
743
724
  */
744
- tags?: Record<string, string>;
725
+ nextToken?: string;
745
726
  }
746
727
  /**
747
728
  * @public
748
729
  */
749
- export interface CreateFormRequest {
730
+ export interface GetFormRequest {
750
731
  /**
751
- * <p>The unique ID of the Amplify app to associate with the form.</p>
732
+ * <p>The unique ID of the Amplify app.</p>
752
733
  */
753
734
  appId: string | undefined;
754
735
  /**
755
- * <p>The name of the backend environment that is a part of the Amplify app.</p>
736
+ * <p>The name of the backend environment that is part of the Amplify app.</p>
756
737
  */
757
738
  environmentName: string | undefined;
758
739
  /**
759
- * <p>The unique client token.</p>
760
- */
761
- clientToken?: string;
762
- /**
763
- * <p>Represents the configuration of the form to create.</p>
740
+ * <p>The unique ID of the form.</p>
764
741
  */
765
- formToCreate: CreateFormData | undefined;
742
+ id: string | undefined;
766
743
  }
767
744
  /**
768
745
  * @public
769
- * <p>Contains the configuration settings for a <code>Form</code> user interface (UI) element
770
- * for an Amplify app. A form is a component you can add to your project by specifying a data
771
- * source as the default configuration for the form.</p>
772
746
  */
773
- export interface Form {
747
+ export interface ListFormsRequest {
774
748
  /**
775
- * <p>The unique ID of the Amplify app associated with the form.</p>
749
+ * <p>The unique ID for the Amplify app.</p>
776
750
  */
777
751
  appId: string | undefined;
778
752
  /**
@@ -780,266 +754,56 @@ export interface Form {
780
754
  */
781
755
  environmentName: string | undefined;
782
756
  /**
783
- * <p>The unique ID of the form.</p>
784
- */
785
- id: string | undefined;
786
- /**
787
- * <p>The name of the form.</p>
757
+ * <p>The token to request the next page of results.</p>
788
758
  */
789
- name: string | undefined;
759
+ nextToken?: string;
790
760
  /**
791
- * <p>The operation to perform on the specified form.</p>
761
+ * <p>The maximum number of forms to retrieve.</p>
792
762
  */
793
- formActionType: FormActionType | string | undefined;
763
+ maxResults?: number;
764
+ }
765
+ /**
766
+ * @public
767
+ * <p>Describes the basic information about a form.</p>
768
+ */
769
+ export interface FormSummary {
794
770
  /**
795
- * <p>Stores the configuration for the form's style.</p>
771
+ * <p>The unique ID for the app associated with the form summary.</p>
796
772
  */
797
- style: FormStyle | undefined;
773
+ appId: string | undefined;
798
774
  /**
799
- * <p>The type of data source to use to create the form.</p>
775
+ * <p>The form's data source type.</p>
800
776
  */
801
777
  dataType: FormDataTypeConfig | undefined;
802
778
  /**
803
- * <p>Stores the information about the form's fields.</p>
804
- */
805
- fields: Record<string, FieldConfig> | undefined;
806
- /**
807
- * <p>Stores the visual helper elements for the form that are not associated with any
808
- * data.</p>
779
+ * <p>The name of the backend environment that is part of the Amplify app.</p>
809
780
  */
810
- sectionalElements: Record<string, SectionalElement> | undefined;
781
+ environmentName: string | undefined;
811
782
  /**
812
- * <p>The schema version of the form when it was imported.</p>
783
+ * <p>The type of operation to perform on the form.</p>
813
784
  */
814
- schemaVersion: string | undefined;
785
+ formActionType: FormActionType | string | undefined;
815
786
  /**
816
- * <p>One or more key-value pairs to use when tagging the form.</p>
787
+ * <p>The ID of the form.</p>
817
788
  */
818
- tags?: Record<string, string>;
789
+ id: string | undefined;
819
790
  /**
820
- * <p>Stores the call to action configuration for the form.</p>
791
+ * <p>The name of the form.</p>
821
792
  */
822
- cta?: FormCTA;
793
+ name: string | undefined;
823
794
  }
824
795
  /**
825
796
  * @public
826
797
  */
827
- export interface CreateFormResponse {
798
+ export interface ListFormsResponse {
828
799
  /**
829
- * <p>Describes the configuration of the new form.</p>
800
+ * <p>The list of forms for the Amplify app.</p>
830
801
  */
831
- entity?: Form;
832
- }
833
- /**
834
- * @public
835
- */
836
- export interface DeleteFormRequest {
837
- /**
838
- * <p>The unique ID of the Amplify app associated with the form to delete.</p>
839
- */
840
- appId: string | undefined;
841
- /**
842
- * <p>The name of the backend environment that is a part of the Amplify app.</p>
843
- */
844
- environmentName: string | undefined;
845
- /**
846
- * <p>The unique ID of the form to delete.</p>
847
- */
848
- id: string | undefined;
849
- }
850
- /**
851
- * @public
852
- */
853
- export interface ExportFormsRequest {
854
- /**
855
- * <p>The unique ID of the Amplify app to export forms to.</p>
856
- */
857
- appId: string | undefined;
858
- /**
859
- * <p>The name of the backend environment that is a part of the Amplify app.</p>
860
- */
861
- environmentName: string | undefined;
862
- /**
863
- * <p>The token to request the next page of results.</p>
864
- */
865
- nextToken?: string;
866
- }
867
- /**
868
- * @public
869
- */
870
- export interface ExportFormsResponse {
871
- /**
872
- * <p>Represents the configuration of the exported forms.</p>
873
- */
874
- entities: Form[] | undefined;
875
- /**
876
- * <p>The pagination token that's included if more results are available.</p>
877
- */
878
- nextToken?: string;
879
- }
880
- /**
881
- * @public
882
- */
883
- export interface GetFormRequest {
884
- /**
885
- * <p>The unique ID of the Amplify app.</p>
886
- */
887
- appId: string | undefined;
888
- /**
889
- * <p>The name of the backend environment that is part of the Amplify app.</p>
890
- */
891
- environmentName: string | undefined;
892
- /**
893
- * <p>The unique ID of the form.</p>
894
- */
895
- id: string | undefined;
896
- }
897
- /**
898
- * @public
899
- */
900
- export interface GetFormResponse {
901
- /**
902
- * <p>Represents the configuration settings for the form.</p>
903
- */
904
- form?: Form;
905
- }
906
- /**
907
- * @public
908
- */
909
- export interface ListFormsRequest {
910
- /**
911
- * <p>The unique ID for the Amplify app.</p>
912
- */
913
- appId: string | undefined;
914
- /**
915
- * <p>The name of the backend environment that is a part of the Amplify app.</p>
916
- */
917
- environmentName: string | undefined;
918
- /**
919
- * <p>The token to request the next page of results.</p>
920
- */
921
- nextToken?: string;
922
- /**
923
- * <p>The maximum number of forms to retrieve.</p>
924
- */
925
- maxResults?: number;
926
- }
927
- /**
928
- * @public
929
- * <p>Describes the basic information about a form.</p>
930
- */
931
- export interface FormSummary {
932
- /**
933
- * <p>The unique ID for the app associated with the form summary.</p>
934
- */
935
- appId: string | undefined;
936
- /**
937
- * <p>The form's data source type.</p>
938
- */
939
- dataType: FormDataTypeConfig | undefined;
940
- /**
941
- * <p>The name of the backend environment that is part of the Amplify app.</p>
942
- */
943
- environmentName: string | undefined;
944
- /**
945
- * <p>The type of operation to perform on the form.</p>
946
- */
947
- formActionType: FormActionType | string | undefined;
948
- /**
949
- * <p>The ID of the form.</p>
950
- */
951
- id: string | undefined;
952
- /**
953
- * <p>The name of the form.</p>
954
- */
955
- name: string | undefined;
956
- }
957
- /**
958
- * @public
959
- */
960
- export interface ListFormsResponse {
961
- /**
962
- * <p>The list of forms for the Amplify app.</p>
963
- */
964
- entities: FormSummary[] | undefined;
965
- /**
966
- * <p>The pagination token that's included if more results are available.</p>
967
- */
968
- nextToken?: string;
969
- }
970
- /**
971
- * @public
972
- * <p>Updates and saves all of the information about a form, based on form ID.</p>
973
- */
974
- export interface UpdateFormData {
975
- /**
976
- * <p>The name of the form.</p>
977
- */
978
- name?: string;
979
- /**
980
- * <p>The type of data source to use to create the form.</p>
981
- */
982
- dataType?: FormDataTypeConfig;
983
- /**
984
- * <p>Specifies whether to perform a create or update action on the form.</p>
985
- */
986
- formActionType?: FormActionType | string;
987
- /**
988
- * <p>The configuration information for the form's fields.</p>
989
- */
990
- fields?: Record<string, FieldConfig>;
991
- /**
992
- * <p>The configuration for the form's style.</p>
993
- */
994
- style?: FormStyle;
995
- /**
996
- * <p>The configuration information for the visual helper elements for the form. These elements
997
- * are not associated with any data.</p>
998
- */
999
- sectionalElements?: Record<string, SectionalElement>;
1000
- /**
1001
- * <p>The schema version of the form.</p>
1002
- */
1003
- schemaVersion?: string;
1004
- /**
1005
- * <p>The <code>FormCTA</code> object that stores the call to action configuration for the
1006
- * form.</p>
1007
- */
1008
- cta?: FormCTA;
1009
- }
1010
- /**
1011
- * @public
1012
- */
1013
- export interface UpdateFormRequest {
1014
- /**
1015
- * <p>The unique ID for the Amplify app.</p>
1016
- */
1017
- appId: string | undefined;
1018
- /**
1019
- * <p>The name of the backend environment that is part of the Amplify app.</p>
1020
- */
1021
- environmentName: string | undefined;
1022
- /**
1023
- * <p>The unique ID for the form.</p>
1024
- */
1025
- id: string | undefined;
1026
- /**
1027
- * <p>The unique client token.</p>
1028
- */
1029
- clientToken?: string;
1030
- /**
1031
- * <p>The request accepts the following data in JSON format.</p>
1032
- */
1033
- updatedForm: UpdateFormData | undefined;
1034
- }
1035
- /**
1036
- * @public
1037
- */
1038
- export interface UpdateFormResponse {
1039
- /**
1040
- * <p>Describes the configuration of the updated form.</p>
1041
- */
1042
- entity?: Form;
802
+ entities: FormSummary[] | undefined;
803
+ /**
804
+ * <p>The pagination token that's included if more results are available.</p>
805
+ */
806
+ nextToken?: string;
1043
807
  }
1044
808
  /**
1045
809
  * @public
@@ -1077,7 +841,7 @@ export declare class UnauthorizedException extends __BaseException {
1077
841
  }
1078
842
  /**
1079
843
  * @public
1080
- * <p>Stores the metadata information about a feature on a form or view.</p>
844
+ * <p>Stores the metadata information about a feature on a form.</p>
1081
845
  */
1082
846
  export interface PutMetadataFlagBody {
1083
847
  /**
@@ -1116,6 +880,10 @@ export interface RefreshTokenRequestBody {
1116
880
  * expired.</p>
1117
881
  */
1118
882
  token: string | undefined;
883
+ /**
884
+ * <p>The ID of the client to request the token from.</p>
885
+ */
886
+ clientId?: string;
1119
887
  }
1120
888
  /**
1121
889
  * @public
@@ -1253,6 +1021,27 @@ export interface ListThemesResponse {
1253
1021
  */
1254
1022
  nextToken?: string;
1255
1023
  }
1024
+ /**
1025
+ * @public
1026
+ * <p>Describes the configuration for an input field on a form. Use
1027
+ * <code>FormInputValueProperty</code> to specify the values to render or bind by
1028
+ * default.</p>
1029
+ */
1030
+ export interface FormInputValueProperty {
1031
+ /**
1032
+ * <p>The value to assign to the input field.</p>
1033
+ */
1034
+ value?: string;
1035
+ /**
1036
+ * <p>The information to bind fields to data at runtime.</p>
1037
+ */
1038
+ bindingProperties?: FormInputValuePropertyBindingProperties;
1039
+ /**
1040
+ * <p>A list of form properties to concatenate to create the value to assign to this field
1041
+ * property.</p>
1042
+ */
1043
+ concat?: FormInputValueProperty[];
1044
+ }
1256
1045
  /**
1257
1046
  * @public
1258
1047
  * <p>Describes the configuration of a theme's properties.</p>
@@ -1307,6 +1096,10 @@ export interface Predicate {
1307
1096
  * <p>The value to use when performing the evaluation.</p>
1308
1097
  */
1309
1098
  operand?: string;
1099
+ /**
1100
+ * <p>The type of value to use when performing the evaluation.</p>
1101
+ */
1102
+ operandType?: string;
1310
1103
  }
1311
1104
  /**
1312
1105
  * @public
@@ -1444,6 +1237,21 @@ export interface ComponentProperty {
1444
1237
  */
1445
1238
  property?: string;
1446
1239
  }
1240
+ /**
1241
+ * @public
1242
+ * <p>Associates a complex object with a display value. Use <code>ValueMapping</code> to store
1243
+ * how to represent complex objects when they are displayed.</p>
1244
+ */
1245
+ export interface ValueMapping {
1246
+ /**
1247
+ * <p>The value to display for the complex object.</p>
1248
+ */
1249
+ displayValue?: FormInputValueProperty;
1250
+ /**
1251
+ * <p>The complex object.</p>
1252
+ */
1253
+ value: FormInputValueProperty | undefined;
1254
+ }
1447
1255
  /**
1448
1256
  * @public
1449
1257
  * <p>Represents the data binding configuration for a component at runtime. You can use
@@ -1556,8 +1364,8 @@ export interface UpdateThemeData {
1556
1364
  }
1557
1365
  /**
1558
1366
  * @public
1559
- * <p>Represents the state configuration when an action modifies a property of another
1560
- * element within the same component.</p>
1367
+ * <p>Represents the state configuration when an action modifies a property of another element
1368
+ * within the same component.</p>
1561
1369
  */
1562
1370
  export interface MutationActionSetStateParameter {
1563
1371
  /**
@@ -1686,27 +1494,378 @@ export interface UpdateThemeResponse {
1686
1494
  }
1687
1495
  /**
1688
1496
  * @public
1497
+ * <p>Represents the data binding configuration for a value map.</p>
1689
1498
  */
1690
- export interface ExportThemesResponse {
1499
+ export interface ValueMappings {
1691
1500
  /**
1692
- * <p>Represents the configuration of the exported themes.</p>
1501
+ * <p>The value and display value pairs.</p>
1693
1502
  */
1694
- entities: Theme[] | undefined;
1503
+ values: ValueMapping[] | undefined;
1695
1504
  /**
1696
- * <p>The pagination token that's included if more results are available.</p>
1505
+ * <p>The information to bind fields to data at runtime.</p>
1697
1506
  */
1698
- nextToken?: string;
1507
+ bindingProperties?: Record<string, FormInputBindingPropertiesValue>;
1699
1508
  }
1700
1509
  /**
1701
1510
  * @public
1702
- * <p>Represents the event action configuration for an element of a <code>Component</code>
1703
- * or <code>ComponentChild</code>. Use for the workflow feature in Amplify Studio
1704
- * that allows you to bind events and actions to components. <code>ActionParameters</code>
1705
- * defines the action that is performed when an event occurs on the component.</p>
1511
+ */
1512
+ export interface ExportThemesResponse {
1513
+ /**
1514
+ * <p>Represents the configuration of the exported themes.</p>
1515
+ */
1516
+ entities: Theme[] | undefined;
1517
+ /**
1518
+ * <p>The pagination token that's included if more results are available.</p>
1519
+ */
1520
+ nextToken?: string;
1521
+ }
1522
+ /**
1523
+ * @public
1524
+ * <p>Describes the configuration for the default input values to display for a field.</p>
1525
+ */
1526
+ export interface FieldInputConfig {
1527
+ /**
1528
+ * <p>The input type for the field. </p>
1529
+ */
1530
+ type: string | undefined;
1531
+ /**
1532
+ * <p>Specifies a field that requires input.</p>
1533
+ */
1534
+ required?: boolean;
1535
+ /**
1536
+ * <p>Specifies a read only field.</p>
1537
+ */
1538
+ readOnly?: boolean;
1539
+ /**
1540
+ * <p>The text to display as a placeholder for the field.</p>
1541
+ */
1542
+ placeholder?: string;
1543
+ /**
1544
+ * <p>The default value for the field.</p>
1545
+ */
1546
+ defaultValue?: string;
1547
+ /**
1548
+ * <p>The text to display to describe the field.</p>
1549
+ */
1550
+ descriptiveText?: string;
1551
+ /**
1552
+ * <p>Specifies whether a field has a default value.</p>
1553
+ */
1554
+ defaultChecked?: boolean;
1555
+ /**
1556
+ * <p>The default country code for a phone number.</p>
1557
+ */
1558
+ defaultCountryCode?: string;
1559
+ /**
1560
+ * <p>The information to use to customize the input fields with data at runtime.</p>
1561
+ */
1562
+ valueMappings?: ValueMappings;
1563
+ /**
1564
+ * <p>The name of the field.</p>
1565
+ */
1566
+ name?: string;
1567
+ /**
1568
+ * <p>The minimum value to display for the field.</p>
1569
+ */
1570
+ minValue?: number;
1571
+ /**
1572
+ * <p>The maximum value to display for the field.</p>
1573
+ */
1574
+ maxValue?: number;
1575
+ /**
1576
+ * <p>The stepping increment for a numeric value in a field.</p>
1577
+ */
1578
+ step?: number;
1579
+ /**
1580
+ * <p>The value for the field.</p>
1581
+ */
1582
+ value?: string;
1583
+ /**
1584
+ * <p>Specifies whether to render the field as an array. This property is ignored if the
1585
+ * <code>dataSourceType</code> for the form is a Data Store.</p>
1586
+ */
1587
+ isArray?: boolean;
1588
+ /**
1589
+ * <p>The configuration for the file uploader field.</p>
1590
+ */
1591
+ fileUploaderConfig?: FileUploaderFieldConfig;
1592
+ }
1593
+ /**
1594
+ * @public
1595
+ * <p>Describes the configuration information for a field in a table.</p>
1596
+ */
1597
+ export interface FieldConfig {
1598
+ /**
1599
+ * <p>The label for the field.</p>
1600
+ */
1601
+ label?: string;
1602
+ /**
1603
+ * <p>Specifies the field position.</p>
1604
+ */
1605
+ position?: FieldPosition;
1606
+ /**
1607
+ * <p>Specifies whether to hide a field.</p>
1608
+ */
1609
+ excluded?: boolean;
1610
+ /**
1611
+ * <p>Describes the configuration for the default input value to display for a field.</p>
1612
+ */
1613
+ inputType?: FieldInputConfig;
1614
+ /**
1615
+ * <p>The validations to perform on the value in the field.</p>
1616
+ */
1617
+ validations?: FieldValidationConfiguration[];
1618
+ }
1619
+ /**
1620
+ * @public
1621
+ * <p>Represents all of the information that is required to create a form.</p>
1622
+ */
1623
+ export interface CreateFormData {
1624
+ /**
1625
+ * <p>The name of the form.</p>
1626
+ */
1627
+ name: string | undefined;
1628
+ /**
1629
+ * <p>The type of data source to use to create the form.</p>
1630
+ */
1631
+ dataType: FormDataTypeConfig | undefined;
1632
+ /**
1633
+ * <p>Specifies whether to perform a create or update action on the form.</p>
1634
+ */
1635
+ formActionType: FormActionType | string | undefined;
1636
+ /**
1637
+ * <p>The configuration information for the form's fields.</p>
1638
+ */
1639
+ fields: Record<string, FieldConfig> | undefined;
1640
+ /**
1641
+ * <p>The configuration for the form's style.</p>
1642
+ */
1643
+ style: FormStyle | undefined;
1644
+ /**
1645
+ * <p>The configuration information for the visual helper elements for the form. These elements
1646
+ * are not associated with any data.</p>
1647
+ */
1648
+ sectionalElements: Record<string, SectionalElement> | undefined;
1649
+ /**
1650
+ * <p>The schema version of the form.</p>
1651
+ */
1652
+ schemaVersion: string | undefined;
1653
+ /**
1654
+ * <p>The <code>FormCTA</code> object that stores the call to action configuration for the
1655
+ * form.</p>
1656
+ */
1657
+ cta?: FormCTA;
1658
+ /**
1659
+ * <p>One or more key-value pairs to use when tagging the form data.</p>
1660
+ */
1661
+ tags?: Record<string, string>;
1662
+ /**
1663
+ * <p>Specifies an icon or decoration to display on the form.</p>
1664
+ */
1665
+ labelDecorator?: LabelDecorator | string;
1666
+ }
1667
+ /**
1668
+ * @public
1669
+ * <p>Contains the configuration settings for a <code>Form</code> user interface (UI) element
1670
+ * for an Amplify app. A form is a component you can add to your project by specifying a data
1671
+ * source as the default configuration for the form.</p>
1672
+ */
1673
+ export interface Form {
1674
+ /**
1675
+ * <p>The unique ID of the Amplify app associated with the form.</p>
1676
+ */
1677
+ appId: string | undefined;
1678
+ /**
1679
+ * <p>The name of the backend environment that is a part of the Amplify app.</p>
1680
+ */
1681
+ environmentName: string | undefined;
1682
+ /**
1683
+ * <p>The unique ID of the form.</p>
1684
+ */
1685
+ id: string | undefined;
1686
+ /**
1687
+ * <p>The name of the form.</p>
1688
+ */
1689
+ name: string | undefined;
1690
+ /**
1691
+ * <p>The operation to perform on the specified form.</p>
1692
+ */
1693
+ formActionType: FormActionType | string | undefined;
1694
+ /**
1695
+ * <p>Stores the configuration for the form's style.</p>
1696
+ */
1697
+ style: FormStyle | undefined;
1698
+ /**
1699
+ * <p>The type of data source to use to create the form.</p>
1700
+ */
1701
+ dataType: FormDataTypeConfig | undefined;
1702
+ /**
1703
+ * <p>Stores the information about the form's fields.</p>
1704
+ */
1705
+ fields: Record<string, FieldConfig> | undefined;
1706
+ /**
1707
+ * <p>Stores the visual helper elements for the form that are not associated with any
1708
+ * data.</p>
1709
+ */
1710
+ sectionalElements: Record<string, SectionalElement> | undefined;
1711
+ /**
1712
+ * <p>The schema version of the form when it was imported.</p>
1713
+ */
1714
+ schemaVersion: string | undefined;
1715
+ /**
1716
+ * <p>One or more key-value pairs to use when tagging the form.</p>
1717
+ */
1718
+ tags?: Record<string, string>;
1719
+ /**
1720
+ * <p>Stores the call to action configuration for the form.</p>
1721
+ */
1722
+ cta?: FormCTA;
1723
+ /**
1724
+ * <p>Specifies an icon or decoration to display on the form.</p>
1725
+ */
1726
+ labelDecorator?: LabelDecorator | string;
1727
+ }
1728
+ /**
1729
+ * @public
1730
+ * <p>Updates and saves all of the information about a form, based on form ID.</p>
1731
+ */
1732
+ export interface UpdateFormData {
1733
+ /**
1734
+ * <p>The name of the form.</p>
1735
+ */
1736
+ name?: string;
1737
+ /**
1738
+ * <p>The type of data source to use to create the form.</p>
1739
+ */
1740
+ dataType?: FormDataTypeConfig;
1741
+ /**
1742
+ * <p>Specifies whether to perform a create or update action on the form.</p>
1743
+ */
1744
+ formActionType?: FormActionType | string;
1745
+ /**
1746
+ * <p>The configuration information for the form's fields.</p>
1747
+ */
1748
+ fields?: Record<string, FieldConfig>;
1749
+ /**
1750
+ * <p>The configuration for the form's style.</p>
1751
+ */
1752
+ style?: FormStyle;
1753
+ /**
1754
+ * <p>The configuration information for the visual helper elements for the form. These elements
1755
+ * are not associated with any data.</p>
1756
+ */
1757
+ sectionalElements?: Record<string, SectionalElement>;
1758
+ /**
1759
+ * <p>The schema version of the form.</p>
1760
+ */
1761
+ schemaVersion?: string;
1762
+ /**
1763
+ * <p>The <code>FormCTA</code> object that stores the call to action configuration for the
1764
+ * form.</p>
1765
+ */
1766
+ cta?: FormCTA;
1767
+ /**
1768
+ * <p>Specifies an icon or decoration to display on the form.</p>
1769
+ */
1770
+ labelDecorator?: LabelDecorator | string;
1771
+ }
1772
+ /**
1773
+ * @public
1774
+ */
1775
+ export interface CreateFormRequest {
1776
+ /**
1777
+ * <p>The unique ID of the Amplify app to associate with the form.</p>
1778
+ */
1779
+ appId: string | undefined;
1780
+ /**
1781
+ * <p>The name of the backend environment that is a part of the Amplify app.</p>
1782
+ */
1783
+ environmentName: string | undefined;
1784
+ /**
1785
+ * <p>The unique client token.</p>
1786
+ */
1787
+ clientToken?: string;
1788
+ /**
1789
+ * <p>Represents the configuration of the form to create.</p>
1790
+ */
1791
+ formToCreate: CreateFormData | undefined;
1792
+ }
1793
+ /**
1794
+ * @public
1795
+ */
1796
+ export interface CreateFormResponse {
1797
+ /**
1798
+ * <p>Describes the configuration of the new form.</p>
1799
+ */
1800
+ entity?: Form;
1801
+ }
1802
+ /**
1803
+ * @public
1804
+ */
1805
+ export interface GetFormResponse {
1806
+ /**
1807
+ * <p>Represents the configuration settings for the form.</p>
1808
+ */
1809
+ form?: Form;
1810
+ }
1811
+ /**
1812
+ * @public
1813
+ */
1814
+ export interface UpdateFormRequest {
1815
+ /**
1816
+ * <p>The unique ID for the Amplify app.</p>
1817
+ */
1818
+ appId: string | undefined;
1819
+ /**
1820
+ * <p>The name of the backend environment that is part of the Amplify app.</p>
1821
+ */
1822
+ environmentName: string | undefined;
1823
+ /**
1824
+ * <p>The unique ID for the form.</p>
1825
+ */
1826
+ id: string | undefined;
1827
+ /**
1828
+ * <p>The unique client token.</p>
1829
+ */
1830
+ clientToken?: string;
1831
+ /**
1832
+ * <p>The request accepts the following data in JSON format.</p>
1833
+ */
1834
+ updatedForm: UpdateFormData | undefined;
1835
+ }
1836
+ /**
1837
+ * @public
1838
+ */
1839
+ export interface UpdateFormResponse {
1840
+ /**
1841
+ * <p>Describes the configuration of the updated form.</p>
1842
+ */
1843
+ entity?: Form;
1844
+ }
1845
+ /**
1846
+ * @public
1847
+ */
1848
+ export interface ExportFormsResponse {
1849
+ /**
1850
+ * <p>Represents the configuration of the exported forms.</p>
1851
+ */
1852
+ entities: Form[] | undefined;
1853
+ /**
1854
+ * <p>The pagination token that's included if more results are available.</p>
1855
+ */
1856
+ nextToken?: string;
1857
+ }
1858
+ /**
1859
+ * @public
1860
+ * <p>Represents the event action configuration for an element of a <code>Component</code> or
1861
+ * <code>ComponentChild</code>. Use for the workflow feature in Amplify Studio
1862
+ * that allows you to bind events and actions to components. <code>ActionParameters</code>
1863
+ * defines the action that is performed when an event occurs on the component.</p>
1706
1864
  */
1707
1865
  export interface ActionParameters {
1708
1866
  /**
1709
- * <p>The type of navigation action. Valid values are <code>url</code> and <code>anchor</code>. This value is required for a navigation action.</p>
1867
+ * <p>The type of navigation action. Valid values are <code>url</code> and <code>anchor</code>.
1868
+ * This value is required for a navigation action.</p>
1710
1869
  */
1711
1870
  type?: ComponentProperty;
1712
1871
  /**
@@ -1714,7 +1873,8 @@ export interface ActionParameters {
1714
1873
  */
1715
1874
  url?: ComponentProperty;
1716
1875
  /**
1717
- * <p>The HTML anchor link to the location to open. Specify this value for a navigation action.</p>
1876
+ * <p>The HTML anchor link to the location to open. Specify this value for a navigation
1877
+ * action.</p>
1718
1878
  */
1719
1879
  anchor?: ComponentProperty;
1720
1880
  /**
@@ -1722,12 +1882,12 @@ export interface ActionParameters {
1722
1882
  */
1723
1883
  target?: ComponentProperty;
1724
1884
  /**
1725
- * <p>Specifies whether the user should be signed out globally. Specify this value for an auth sign out action.</p>
1885
+ * <p>Specifies whether the user should be signed out globally. Specify this value for an auth
1886
+ * sign out action.</p>
1726
1887
  */
1727
1888
  global?: ComponentProperty;
1728
1889
  /**
1729
- * <p>The name of the data model. Use when the action performs an operation on an Amplify DataStore
1730
- * model.</p>
1890
+ * <p>The name of the data model. Use when the action performs an operation on an Amplify DataStore model.</p>
1731
1891
  */
1732
1892
  model?: string;
1733
1893
  /**
@@ -1735,8 +1895,9 @@ export interface ActionParameters {
1735
1895
  */
1736
1896
  id?: ComponentProperty;
1737
1897
  /**
1738
- * <p>A dictionary of key-value pairs mapping Amplify Studio properties to fields in a data model. Use when the action
1739
- * performs an operation on an Amplify DataStore model.</p>
1898
+ * <p>A dictionary of key-value pairs mapping Amplify Studio properties to fields
1899
+ * in a data model. Use when the action performs an operation on an Amplify
1900
+ * DataStore model.</p>
1740
1901
  */
1741
1902
  fields?: Record<string, ComponentProperty>;
1742
1903
  /**
@@ -1746,9 +1907,9 @@ export interface ActionParameters {
1746
1907
  }
1747
1908
  /**
1748
1909
  * @public
1749
- * <p>Describes the configuration of an event. You can bind an event and a corresponding
1750
- * action to a <code>Component</code> or a <code>ComponentChild</code>. A button click
1751
- * is an example of an event. </p>
1910
+ * <p>Describes the configuration of an event. You can bind an event and a corresponding action
1911
+ * to a <code>Component</code> or a <code>ComponentChild</code>. A button click is an example of
1912
+ * an event. </p>
1752
1913
  */
1753
1914
  export interface ComponentEvent {
1754
1915
  /**
@@ -1788,8 +1949,9 @@ export interface ComponentChild {
1788
1949
  */
1789
1950
  children?: ComponentChild[];
1790
1951
  /**
1791
- * <p>Describes the events that can be raised on the child component. Use for the workflow feature in Amplify Studio that allows you to
1792
- * bind events and actions to components.</p>
1952
+ * <p>Describes the events that can be raised on the child component. Use for the workflow
1953
+ * feature in Amplify Studio that allows you to bind events and actions to
1954
+ * components.</p>
1793
1955
  */
1794
1956
  events?: Record<string, ComponentEvent>;
1795
1957
  /**
@@ -1876,8 +2038,9 @@ export interface Component {
1876
2038
  */
1877
2039
  tags?: Record<string, string>;
1878
2040
  /**
1879
- * <p>Describes the events that can be raised on the component. Use for the workflow feature in Amplify Studio that allows you to
1880
- * bind events and actions to components.</p>
2041
+ * <p>Describes the events that can be raised on the component. Use for the workflow feature in
2042
+ * Amplify Studio that allows you to bind events and actions to
2043
+ * components.</p>
1881
2044
  */
1882
2045
  events?: Record<string, ComponentEvent>;
1883
2046
  /**