/* eslint-disable */ /** * This file was automatically generated by json-schema-to-typescript. * DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file, * and run json-schema-to-typescript to regenerate this file. */ export type FormButtonsPosition = "top" | "bottom" | "top_and_bottom"; export type FieldPosition = Fixed | RightOf | Below; export type FixedPosition = "first"; export type FormDataSourceType = "DataStore" | "Custom"; export type FormActionType = "create" | "update"; export type FormStyleConfig = TokenReference | Value; /** * Definition of AWS::AmplifyUIBuilder::Form Resource Type */ export interface AwsAmplifyuibuilderForm { AppId?: string; Cta?: FormCTA; DataType: FormDataTypeConfig; EnvironmentName?: string; Fields: FieldsMap; FormActionType: FormActionType; Id?: string; Name: string; SchemaVersion: string; SectionalElements: SectionalElementMap; Style: FormStyle; Tags?: Tags; } export interface FormCTA { Position?: FormButtonsPosition; Clear?: FormButton; Cancel?: FormButton; Submit?: FormButton; } export interface FormButton { Excluded?: boolean; Children?: string; Position?: FieldPosition; } export interface Fixed { Fixed: FixedPosition; } export interface RightOf { RightOf: string; } export interface Below { Below: string; } export interface FormDataTypeConfig { DataSourceType: FormDataSourceType; DataTypeName: string; } export interface FieldsMap { [k: string]: FieldConfig; } /** * This interface was referenced by `FieldsMap`'s JSON-Schema definition * via the `patternProperty` ".+". */ export interface FieldConfig { Label?: string; Position?: FieldPosition; Excluded?: boolean; InputType?: FieldInputConfig; Validations?: FieldValidationConfiguration[]; } export interface FieldInputConfig { Type: string; Required?: boolean; ReadOnly?: boolean; Placeholder?: string; DefaultValue?: string; DescriptiveText?: string; DefaultChecked?: boolean; DefaultCountryCode?: string; ValueMappings?: ValueMappings; Name?: string; MinValue?: number; MaxValue?: number; Step?: number; Value?: string; IsArray?: boolean; } export interface ValueMappings { Values: ValueMapping[]; } export interface ValueMapping { DisplayValue?: FormInputValueProperty; Value: FormInputValueProperty; } export interface FormInputValueProperty { Value?: string; } export interface FieldValidationConfiguration { Type: string; StrValues?: string[]; NumValues?: number[]; ValidationMessage?: string; } export interface SectionalElementMap { [k: string]: SectionalElement; } /** * This interface was referenced by `SectionalElementMap`'s JSON-Schema definition * via the `patternProperty` ".+". */ export interface SectionalElement { Type: string; Position?: FieldPosition; Text?: string; Level?: number; Orientation?: string; Excluded?: boolean; } export interface FormStyle { HorizontalGap?: FormStyleConfig; VerticalGap?: FormStyleConfig; OuterPadding?: FormStyleConfig; } export interface TokenReference { TokenReference: string; } export interface Value { Value: string; } export interface Tags { /** * This interface was referenced by `Tags`'s JSON-Schema definition * via the `patternProperty` "^(?!aws:)[a-zA-Z+-=._:/]+$". */ [k: string]: string; }