/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace AmplifyUIBuilder { namespace Model { /** *

Represents the data binding configuration for a form's input fields at * runtime.You can use FormInputBindingPropertiesValue to add exposed * properties to a form to allow different values to be entered when a form is * reused in different places in an app.

See Also:

AWS * API Reference

*/ class FormInputBindingPropertiesValue { public: AWS_AMPLIFYUIBUILDER_API FormInputBindingPropertiesValue(); AWS_AMPLIFYUIBUILDER_API FormInputBindingPropertiesValue(Aws::Utils::Json::JsonView jsonValue); AWS_AMPLIFYUIBUILDER_API FormInputBindingPropertiesValue& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_AMPLIFYUIBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The property type.

*/ inline const Aws::String& GetType() const{ return m_type; } /** *

The property type.

*/ inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } /** *

The property type.

*/ inline void SetType(const Aws::String& value) { m_typeHasBeenSet = true; m_type = value; } /** *

The property type.

*/ inline void SetType(Aws::String&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } /** *

The property type.

*/ inline void SetType(const char* value) { m_typeHasBeenSet = true; m_type.assign(value); } /** *

The property type.

*/ inline FormInputBindingPropertiesValue& WithType(const Aws::String& value) { SetType(value); return *this;} /** *

The property type.

*/ inline FormInputBindingPropertiesValue& WithType(Aws::String&& value) { SetType(std::move(value)); return *this;} /** *

The property type.

*/ inline FormInputBindingPropertiesValue& WithType(const char* value) { SetType(value); return *this;} /** *

Describes the properties to customize with data at runtime.

*/ inline const FormInputBindingPropertiesValueProperties& GetBindingProperties() const{ return m_bindingProperties; } /** *

Describes the properties to customize with data at runtime.

*/ inline bool BindingPropertiesHasBeenSet() const { return m_bindingPropertiesHasBeenSet; } /** *

Describes the properties to customize with data at runtime.

*/ inline void SetBindingProperties(const FormInputBindingPropertiesValueProperties& value) { m_bindingPropertiesHasBeenSet = true; m_bindingProperties = value; } /** *

Describes the properties to customize with data at runtime.

*/ inline void SetBindingProperties(FormInputBindingPropertiesValueProperties&& value) { m_bindingPropertiesHasBeenSet = true; m_bindingProperties = std::move(value); } /** *

Describes the properties to customize with data at runtime.

*/ inline FormInputBindingPropertiesValue& WithBindingProperties(const FormInputBindingPropertiesValueProperties& value) { SetBindingProperties(value); return *this;} /** *

Describes the properties to customize with data at runtime.

*/ inline FormInputBindingPropertiesValue& WithBindingProperties(FormInputBindingPropertiesValueProperties&& value) { SetBindingProperties(std::move(value)); return *this;} private: Aws::String m_type; bool m_typeHasBeenSet = false; FormInputBindingPropertiesValueProperties m_bindingProperties; bool m_bindingPropertiesHasBeenSet = false; }; } // namespace Model } // namespace AmplifyUIBuilder } // namespace Aws