7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/lex-models/LexModelBuildingService_EXPORTS.h>
10#include <aws/lex-models/model/ObfuscationSetting.h>
11#include <aws/lex-models/model/Prompt.h>
12#include <aws/lex-models/model/SlotConstraint.h>
13#include <aws/lex-models/model/SlotDefaultValueSpec.h>
24namespace LexModelBuildingService {
34 AWS_LEXMODELBUILDINGSERVICE_API
Slot() =
default;
45 template <
typename NameT = Aws::String>
47 m_nameHasBeenSet =
true;
48 m_name = std::forward<NameT>(value);
50 template <
typename NameT = Aws::String>
52 SetName(std::forward<NameT>(value));
63 template <
typename DescriptionT = Aws::String>
65 m_descriptionHasBeenSet =
true;
66 m_description = std::forward<DescriptionT>(value);
68 template <
typename DescriptionT = Aws::String>
82 m_slotConstraintHasBeenSet =
true;
83 m_slotConstraint = value;
98 template <
typename SlotTypeT = Aws::String>
100 m_slotTypeHasBeenSet =
true;
101 m_slotType = std::forward<SlotTypeT>(value);
103 template <
typename SlotTypeT = Aws::String>
116 template <
typename SlotTypeVersionT = Aws::String>
118 m_slotTypeVersionHasBeenSet =
true;
119 m_slotTypeVersion = std::forward<SlotTypeVersionT>(value);
121 template <
typename SlotTypeVersionT = Aws::String>
134 template <
typename ValueElicitationPromptT = Prompt>
136 m_valueElicitationPromptHasBeenSet =
true;
137 m_valueElicitationPrompt = std::forward<ValueElicitationPromptT>(value);
139 template <
typename ValueElicitationPromptT = Prompt>
157 m_priorityHasBeenSet =
true;
175 template <
typename SampleUtterancesT = Aws::Vector<Aws::String>>
177 m_sampleUtterancesHasBeenSet =
true;
178 m_sampleUtterances = std::forward<SampleUtterancesT>(value);
180 template <
typename SampleUtterancesT = Aws::Vector<Aws::String>>
185 template <
typename SampleUtterancesT = Aws::String>
187 m_sampleUtterancesHasBeenSet =
true;
188 m_sampleUtterances.emplace_back(std::forward<SampleUtterancesT>(value));
201 template <
typename ResponseCardT = Aws::String>
203 m_responseCardHasBeenSet =
true;
204 m_responseCard = std::forward<ResponseCardT>(value);
206 template <
typename ResponseCardT = Aws::String>
225 m_obfuscationSettingHasBeenSet =
true;
226 m_obfuscationSetting = value;
242 template <
typename DefaultValueSpecT = SlotDefaultValueSpec>
244 m_defaultValueSpecHasBeenSet =
true;
245 m_defaultValueSpec = std::forward<DefaultValueSpecT>(value);
247 template <
typename DefaultValueSpecT = SlotDefaultValueSpec>
264 Prompt m_valueElicitationPrompt;
274 SlotDefaultValueSpec m_defaultValueSpec;
275 bool m_nameHasBeenSet =
false;
276 bool m_descriptionHasBeenSet =
false;
277 bool m_slotConstraintHasBeenSet =
false;
278 bool m_slotTypeHasBeenSet =
false;
279 bool m_slotTypeVersionHasBeenSet =
false;
280 bool m_valueElicitationPromptHasBeenSet =
false;
281 bool m_priorityHasBeenSet =
false;
282 bool m_sampleUtterancesHasBeenSet =
false;
283 bool m_responseCardHasBeenSet =
false;
284 bool m_obfuscationSettingHasBeenSet =
false;
285 bool m_defaultValueSpecHasBeenSet =
false;
SlotConstraint GetSlotConstraint() const
const Aws::String & GetDescription() const
void SetSlotType(SlotTypeT &&value)
bool SlotTypeHasBeenSet() const
void SetName(NameT &&value)
bool DefaultValueSpecHasBeenSet() const
Slot & WithPriority(int value)
Slot & WithName(NameT &&value)
void SetSampleUtterances(SampleUtterancesT &&value)
Slot & WithSlotConstraint(SlotConstraint value)
bool SlotTypeVersionHasBeenSet() const
void SetSlotTypeVersion(SlotTypeVersionT &&value)
bool ResponseCardHasBeenSet() const
const Aws::String & GetName() const
bool SlotConstraintHasBeenSet() const
void SetValueElicitationPrompt(ValueElicitationPromptT &&value)
bool DescriptionHasBeenSet() const
const SlotDefaultValueSpec & GetDefaultValueSpec() const
bool PriorityHasBeenSet() const
AWS_LEXMODELBUILDINGSERVICE_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_LEXMODELBUILDINGSERVICE_API Slot()=default
const Prompt & GetValueElicitationPrompt() const
Slot & WithSlotTypeVersion(SlotTypeVersionT &&value)
void SetResponseCard(ResponseCardT &&value)
AWS_LEXMODELBUILDINGSERVICE_API Slot(Aws::Utils::Json::JsonView jsonValue)
bool SampleUtterancesHasBeenSet() const
void SetSlotConstraint(SlotConstraint value)
void SetPriority(int value)
void SetDescription(DescriptionT &&value)
Slot & WithSlotType(SlotTypeT &&value)
bool ValueElicitationPromptHasBeenSet() const
void SetDefaultValueSpec(DefaultValueSpecT &&value)
Slot & WithDefaultValueSpec(DefaultValueSpecT &&value)
const Aws::String & GetSlotType() const
const Aws::String & GetSlotTypeVersion() const
Slot & WithObfuscationSetting(ObfuscationSetting value)
Slot & AddSampleUtterances(SampleUtterancesT &&value)
ObfuscationSetting GetObfuscationSetting() const
bool NameHasBeenSet() const
Slot & WithValueElicitationPrompt(ValueElicitationPromptT &&value)
bool ObfuscationSettingHasBeenSet() const
AWS_LEXMODELBUILDINGSERVICE_API Slot & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetObfuscationSetting(ObfuscationSetting value)
const Aws::String & GetResponseCard() const
Slot & WithSampleUtterances(SampleUtterancesT &&value)
const Aws::Vector< Aws::String > & GetSampleUtterances() const
Slot & WithResponseCard(ResponseCardT &&value)
Slot & WithDescription(DescriptionT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue