7#include <aws/qconnect/QConnect_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/qconnect/model/VisibilityStatus.h>
10#include <aws/qconnect/model/AIGuardrailTopicPolicyConfig.h>
11#include <aws/qconnect/model/AIGuardrailContentPolicyConfig.h>
12#include <aws/qconnect/model/AIGuardrailWordPolicyConfig.h>
13#include <aws/qconnect/model/AIGuardrailSensitiveInformationPolicyConfig.h>
14#include <aws/qconnect/model/AIGuardrailContextualGroundingPolicyConfig.h>
15#include <aws/core/utils/memory/stl/AWSMap.h>
16#include <aws/qconnect/model/Status.h>
17#include <aws/core/utils/DateTime.h>
56 template<
typename AssistantIdT = Aws::String>
57 void SetAssistantId(AssistantIdT&& value) { m_assistantIdHasBeenSet =
true; m_assistantId = std::forward<AssistantIdT>(value); }
58 template<
typename AssistantIdT = Aws::String>
68 template<
typename AssistantArnT = Aws::String>
69 void SetAssistantArn(AssistantArnT&& value) { m_assistantArnHasBeenSet =
true; m_assistantArn = std::forward<AssistantArnT>(value); }
70 template<
typename AssistantArnT = Aws::String>
80 template<
typename AiGuardrailArnT = Aws::String>
81 void SetAiGuardrailArn(AiGuardrailArnT&& value) { m_aiGuardrailArnHasBeenSet =
true; m_aiGuardrailArn = std::forward<AiGuardrailArnT>(value); }
82 template<
typename AiGuardrailArnT = Aws::String>
92 template<
typename AiGuardrailIdT = Aws::String>
93 void SetAiGuardrailId(AiGuardrailIdT&& value) { m_aiGuardrailIdHasBeenSet =
true; m_aiGuardrailId = std::forward<AiGuardrailIdT>(value); }
94 template<
typename AiGuardrailIdT = Aws::String>
104 template<
typename NameT = Aws::String>
105 void SetName(NameT&& value) { m_nameHasBeenSet =
true; m_name = std::forward<NameT>(value); }
106 template<
typename NameT = Aws::String>
126 template<
typename BlockedInputMessagingT = Aws::String>
127 void SetBlockedInputMessaging(BlockedInputMessagingT&& value) { m_blockedInputMessagingHasBeenSet =
true; m_blockedInputMessaging = std::forward<BlockedInputMessagingT>(value); }
128 template<
typename BlockedInputMessagingT = Aws::String>
138 template<
typename BlockedOutputsMessagingT = Aws::String>
139 void SetBlockedOutputsMessaging(BlockedOutputsMessagingT&& value) { m_blockedOutputsMessagingHasBeenSet =
true; m_blockedOutputsMessaging = std::forward<BlockedOutputsMessagingT>(value); }
140 template<
typename BlockedOutputsMessagingT = Aws::String>
150 template<
typename DescriptionT = Aws::String>
151 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet =
true; m_description = std::forward<DescriptionT>(value); }
152 template<
typename DescriptionT = Aws::String>
163 template<
typename TopicPolicyConfigT = AIGuardrailTopicPolicyConfig>
164 void SetTopicPolicyConfig(TopicPolicyConfigT&& value) { m_topicPolicyConfigHasBeenSet =
true; m_topicPolicyConfig = std::forward<TopicPolicyConfigT>(value); }
165 template<
typename TopicPolicyConfigT = AIGuardrailTopicPolicyConfig>
175 template<
typename ContentPolicyConfigT = AIGuardrailContentPolicyConfig>
176 void SetContentPolicyConfig(ContentPolicyConfigT&& value) { m_contentPolicyConfigHasBeenSet =
true; m_contentPolicyConfig = std::forward<ContentPolicyConfigT>(value); }
177 template<
typename ContentPolicyConfigT = AIGuardrailContentPolicyConfig>
188 template<
typename WordPolicyConfigT = AIGuardrailWordPolicyConfig>
189 void SetWordPolicyConfig(WordPolicyConfigT&& value) { m_wordPolicyConfigHasBeenSet =
true; m_wordPolicyConfig = std::forward<WordPolicyConfigT>(value); }
190 template<
typename WordPolicyConfigT = AIGuardrailWordPolicyConfig>
201 template<
typename SensitiveInformationPolicyConfigT = AIGuardrailSensitiveInformationPolicyConfig>
202 void SetSensitiveInformationPolicyConfig(SensitiveInformationPolicyConfigT&& value) { m_sensitiveInformationPolicyConfigHasBeenSet =
true; m_sensitiveInformationPolicyConfig = std::forward<SensitiveInformationPolicyConfigT>(value); }
203 template<
typename SensitiveInformationPolicyConfigT = AIGuardrailSensitiveInformationPolicyConfig>
214 template<
typename ContextualGroundingPolicyConfigT = AIGuardrailContextualGroundingPolicyConfig>
215 void SetContextualGroundingPolicyConfig(ContextualGroundingPolicyConfigT&& value) { m_contextualGroundingPolicyConfigHasBeenSet =
true; m_contextualGroundingPolicyConfig = std::forward<ContextualGroundingPolicyConfigT>(value); }
216 template<
typename ContextualGroundingPolicyConfigT = AIGuardrailContextualGroundingPolicyConfig>
226 template<
typename TagsT = Aws::Map<Aws::String, Aws::String>>
227 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
228 template<
typename TagsT = Aws::Map<Aws::String, Aws::String>>
230 template<
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
232 m_tagsHasBeenSet =
true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
return *
this;
252 template<
typename ModifiedTimeT = Aws::Utils::DateTime>
253 void SetModifiedTime(ModifiedTimeT&& value) { m_modifiedTimeHasBeenSet =
true; m_modifiedTime = std::forward<ModifiedTimeT>(value); }
254 template<
typename ModifiedTimeT = Aws::Utils::DateTime>
260 bool m_assistantIdHasBeenSet =
false;
263 bool m_assistantArnHasBeenSet =
false;
266 bool m_aiGuardrailArnHasBeenSet =
false;
269 bool m_aiGuardrailIdHasBeenSet =
false;
272 bool m_nameHasBeenSet =
false;
275 bool m_visibilityStatusHasBeenSet =
false;
278 bool m_blockedInputMessagingHasBeenSet =
false;
281 bool m_blockedOutputsMessagingHasBeenSet =
false;
284 bool m_descriptionHasBeenSet =
false;
286 AIGuardrailTopicPolicyConfig m_topicPolicyConfig;
287 bool m_topicPolicyConfigHasBeenSet =
false;
289 AIGuardrailContentPolicyConfig m_contentPolicyConfig;
290 bool m_contentPolicyConfigHasBeenSet =
false;
292 AIGuardrailWordPolicyConfig m_wordPolicyConfig;
293 bool m_wordPolicyConfigHasBeenSet =
false;
295 AIGuardrailSensitiveInformationPolicyConfig m_sensitiveInformationPolicyConfig;
296 bool m_sensitiveInformationPolicyConfigHasBeenSet =
false;
298 AIGuardrailContextualGroundingPolicyConfig m_contextualGroundingPolicyConfig;
299 bool m_contextualGroundingPolicyConfigHasBeenSet =
false;
302 bool m_tagsHasBeenSet =
false;
305 bool m_statusHasBeenSet =
false;
308 bool m_modifiedTimeHasBeenSet =
false;
bool AssistantIdHasBeenSet() const
AIGuardrailData & WithStatus(Status value)
const AIGuardrailContextualGroundingPolicyConfig & GetContextualGroundingPolicyConfig() const
AIGuardrailData & WithVisibilityStatus(VisibilityStatus value)
VisibilityStatus GetVisibilityStatus() const
bool SensitiveInformationPolicyConfigHasBeenSet() const
const AIGuardrailContentPolicyConfig & GetContentPolicyConfig() const
AIGuardrailData & WithName(NameT &&value)
const AIGuardrailTopicPolicyConfig & GetTopicPolicyConfig() const
const Aws::String & GetAiGuardrailArn() const
void SetTopicPolicyConfig(TopicPolicyConfigT &&value)
const Aws::String & GetAssistantArn() const
bool DescriptionHasBeenSet() const
const Aws::String & GetBlockedOutputsMessaging() const
AWS_QCONNECT_API AIGuardrailData & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_QCONNECT_API AIGuardrailData()=default
bool BlockedInputMessagingHasBeenSet() const
const Aws::Map< Aws::String, Aws::String > & GetTags() const
void SetAiGuardrailArn(AiGuardrailArnT &&value)
AIGuardrailData & WithWordPolicyConfig(WordPolicyConfigT &&value)
AIGuardrailData & WithAiGuardrailArn(AiGuardrailArnT &&value)
AIGuardrailData & WithAssistantId(AssistantIdT &&value)
void SetSensitiveInformationPolicyConfig(SensitiveInformationPolicyConfigT &&value)
void SetContentPolicyConfig(ContentPolicyConfigT &&value)
void SetVisibilityStatus(VisibilityStatus value)
void SetAssistantId(AssistantIdT &&value)
void SetAiGuardrailId(AiGuardrailIdT &&value)
bool ContextualGroundingPolicyConfigHasBeenSet() const
AIGuardrailData & WithBlockedInputMessaging(BlockedInputMessagingT &&value)
const Aws::String & GetBlockedInputMessaging() const
AWS_QCONNECT_API AIGuardrailData(Aws::Utils::Json::JsonView jsonValue)
void SetStatus(Status value)
AIGuardrailData & WithAiGuardrailId(AiGuardrailIdT &&value)
const Aws::String & GetDescription() const
bool AiGuardrailArnHasBeenSet() const
bool TopicPolicyConfigHasBeenSet() const
const AIGuardrailWordPolicyConfig & GetWordPolicyConfig() const
AIGuardrailData & WithAssistantArn(AssistantArnT &&value)
bool TagsHasBeenSet() const
bool ContentPolicyConfigHasBeenSet() const
bool WordPolicyConfigHasBeenSet() const
AIGuardrailData & AddTags(TagsKeyT &&key, TagsValueT &&value)
const Aws::Utils::DateTime & GetModifiedTime() const
bool NameHasBeenSet() const
AIGuardrailData & WithSensitiveInformationPolicyConfig(SensitiveInformationPolicyConfigT &&value)
bool AssistantArnHasBeenSet() const
const AIGuardrailSensitiveInformationPolicyConfig & GetSensitiveInformationPolicyConfig() const
void SetDescription(DescriptionT &&value)
void SetBlockedOutputsMessaging(BlockedOutputsMessagingT &&value)
void SetBlockedInputMessaging(BlockedInputMessagingT &&value)
bool BlockedOutputsMessagingHasBeenSet() const
AIGuardrailData & WithDescription(DescriptionT &&value)
const Aws::String & GetAssistantId() const
void SetModifiedTime(ModifiedTimeT &&value)
void SetAssistantArn(AssistantArnT &&value)
AIGuardrailData & WithContextualGroundingPolicyConfig(ContextualGroundingPolicyConfigT &&value)
void SetWordPolicyConfig(WordPolicyConfigT &&value)
bool StatusHasBeenSet() const
void SetName(NameT &&value)
bool VisibilityStatusHasBeenSet() const
bool ModifiedTimeHasBeenSet() const
bool AiGuardrailIdHasBeenSet() const
const Aws::String & GetName() const
const Aws::String & GetAiGuardrailId() const
void SetTags(TagsT &&value)
AWS_QCONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
AIGuardrailData & WithBlockedOutputsMessaging(BlockedOutputsMessagingT &&value)
AIGuardrailData & WithTopicPolicyConfig(TopicPolicyConfigT &&value)
AIGuardrailData & WithContentPolicyConfig(ContentPolicyConfigT &&value)
AIGuardrailData & WithTags(TagsT &&value)
AIGuardrailData & WithModifiedTime(ModifiedTimeT &&value)
void SetContextualGroundingPolicyConfig(ContextualGroundingPolicyConfigT &&value)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue