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

Describes the code generation job configuration for a React * project.

See Also:

AWS * API Reference

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

The JavaScript module type.

*/ inline const JSModule& GetModule() const{ return m_module; } /** *

The JavaScript module type.

*/ inline bool ModuleHasBeenSet() const { return m_moduleHasBeenSet; } /** *

The JavaScript module type.

*/ inline void SetModule(const JSModule& value) { m_moduleHasBeenSet = true; m_module = value; } /** *

The JavaScript module type.

*/ inline void SetModule(JSModule&& value) { m_moduleHasBeenSet = true; m_module = std::move(value); } /** *

The JavaScript module type.

*/ inline ReactStartCodegenJobData& WithModule(const JSModule& value) { SetModule(value); return *this;} /** *

The JavaScript module type.

*/ inline ReactStartCodegenJobData& WithModule(JSModule&& value) { SetModule(std::move(value)); return *this;} /** *

The ECMAScript specification to use.

*/ inline const JSTarget& GetTarget() const{ return m_target; } /** *

The ECMAScript specification to use.

*/ inline bool TargetHasBeenSet() const { return m_targetHasBeenSet; } /** *

The ECMAScript specification to use.

*/ inline void SetTarget(const JSTarget& value) { m_targetHasBeenSet = true; m_target = value; } /** *

The ECMAScript specification to use.

*/ inline void SetTarget(JSTarget&& value) { m_targetHasBeenSet = true; m_target = std::move(value); } /** *

The ECMAScript specification to use.

*/ inline ReactStartCodegenJobData& WithTarget(const JSTarget& value) { SetTarget(value); return *this;} /** *

The ECMAScript specification to use.

*/ inline ReactStartCodegenJobData& WithTarget(JSTarget&& value) { SetTarget(std::move(value)); return *this;} /** *

The file type to use for a JavaScript project.

*/ inline const JSScript& GetScript() const{ return m_script; } /** *

The file type to use for a JavaScript project.

*/ inline bool ScriptHasBeenSet() const { return m_scriptHasBeenSet; } /** *

The file type to use for a JavaScript project.

*/ inline void SetScript(const JSScript& value) { m_scriptHasBeenSet = true; m_script = value; } /** *

The file type to use for a JavaScript project.

*/ inline void SetScript(JSScript&& value) { m_scriptHasBeenSet = true; m_script = std::move(value); } /** *

The file type to use for a JavaScript project.

*/ inline ReactStartCodegenJobData& WithScript(const JSScript& value) { SetScript(value); return *this;} /** *

The file type to use for a JavaScript project.

*/ inline ReactStartCodegenJobData& WithScript(JSScript&& value) { SetScript(std::move(value)); return *this;} /** *

Specifies whether the code generation job should render type declaration * files.

*/ inline bool GetRenderTypeDeclarations() const{ return m_renderTypeDeclarations; } /** *

Specifies whether the code generation job should render type declaration * files.

*/ inline bool RenderTypeDeclarationsHasBeenSet() const { return m_renderTypeDeclarationsHasBeenSet; } /** *

Specifies whether the code generation job should render type declaration * files.

*/ inline void SetRenderTypeDeclarations(bool value) { m_renderTypeDeclarationsHasBeenSet = true; m_renderTypeDeclarations = value; } /** *

Specifies whether the code generation job should render type declaration * files.

*/ inline ReactStartCodegenJobData& WithRenderTypeDeclarations(bool value) { SetRenderTypeDeclarations(value); return *this;} /** *

Specifies whether the code generation job should render inline source * maps.

*/ inline bool GetInlineSourceMap() const{ return m_inlineSourceMap; } /** *

Specifies whether the code generation job should render inline source * maps.

*/ inline bool InlineSourceMapHasBeenSet() const { return m_inlineSourceMapHasBeenSet; } /** *

Specifies whether the code generation job should render inline source * maps.

*/ inline void SetInlineSourceMap(bool value) { m_inlineSourceMapHasBeenSet = true; m_inlineSourceMap = value; } /** *

Specifies whether the code generation job should render inline source * maps.

*/ inline ReactStartCodegenJobData& WithInlineSourceMap(bool value) { SetInlineSourceMap(value); return *this;} private: JSModule m_module; bool m_moduleHasBeenSet = false; JSTarget m_target; bool m_targetHasBeenSet = false; JSScript m_script; bool m_scriptHasBeenSet = false; bool m_renderTypeDeclarations; bool m_renderTypeDeclarationsHasBeenSet = false; bool m_inlineSourceMap; bool m_inlineSourceMapHasBeenSet = false; }; } // namespace Model } // namespace AmplifyUIBuilder } // namespace Aws