AWS SDK for C++

AWS SDK for C++ Version 1.11.748

Loading...
Searching...
No Matches
ImageResponseCard.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/lexv2-models/LexModelsV2_EXPORTS.h>
10#include <aws/lexv2-models/model/Button.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace LexModelsV2 {
22namespace Model {
23
33 public:
34 AWS_LEXMODELSV2_API ImageResponseCard() = default;
35 AWS_LEXMODELSV2_API ImageResponseCard(Aws::Utils::Json::JsonView jsonValue);
37 AWS_LEXMODELSV2_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
44 inline const Aws::String& GetTitle() const { return m_title; }
45 inline bool TitleHasBeenSet() const { return m_titleHasBeenSet; }
46 template <typename TitleT = Aws::String>
47 void SetTitle(TitleT&& value) {
48 m_titleHasBeenSet = true;
49 m_title = std::forward<TitleT>(value);
50 }
51 template <typename TitleT = Aws::String>
52 ImageResponseCard& WithTitle(TitleT&& value) {
53 SetTitle(std::forward<TitleT>(value));
54 return *this;
55 }
57
59
63 inline const Aws::String& GetSubtitle() const { return m_subtitle; }
64 inline bool SubtitleHasBeenSet() const { return m_subtitleHasBeenSet; }
65 template <typename SubtitleT = Aws::String>
66 void SetSubtitle(SubtitleT&& value) {
67 m_subtitleHasBeenSet = true;
68 m_subtitle = std::forward<SubtitleT>(value);
69 }
70 template <typename SubtitleT = Aws::String>
71 ImageResponseCard& WithSubtitle(SubtitleT&& value) {
72 SetSubtitle(std::forward<SubtitleT>(value));
73 return *this;
74 }
76
78
83 inline const Aws::String& GetImageUrl() const { return m_imageUrl; }
84 inline bool ImageUrlHasBeenSet() const { return m_imageUrlHasBeenSet; }
85 template <typename ImageUrlT = Aws::String>
86 void SetImageUrl(ImageUrlT&& value) {
87 m_imageUrlHasBeenSet = true;
88 m_imageUrl = std::forward<ImageUrlT>(value);
89 }
90 template <typename ImageUrlT = Aws::String>
91 ImageResponseCard& WithImageUrl(ImageUrlT&& value) {
92 SetImageUrl(std::forward<ImageUrlT>(value));
93 return *this;
94 }
96
98
103 inline const Aws::Vector<Button>& GetButtons() const { return m_buttons; }
104 inline bool ButtonsHasBeenSet() const { return m_buttonsHasBeenSet; }
105 template <typename ButtonsT = Aws::Vector<Button>>
106 void SetButtons(ButtonsT&& value) {
107 m_buttonsHasBeenSet = true;
108 m_buttons = std::forward<ButtonsT>(value);
109 }
110 template <typename ButtonsT = Aws::Vector<Button>>
111 ImageResponseCard& WithButtons(ButtonsT&& value) {
112 SetButtons(std::forward<ButtonsT>(value));
113 return *this;
114 }
115 template <typename ButtonsT = Button>
116 ImageResponseCard& AddButtons(ButtonsT&& value) {
117 m_buttonsHasBeenSet = true;
118 m_buttons.emplace_back(std::forward<ButtonsT>(value));
119 return *this;
120 }
122 private:
123 Aws::String m_title;
124
125 Aws::String m_subtitle;
126
127 Aws::String m_imageUrl;
128
129 Aws::Vector<Button> m_buttons;
130 bool m_titleHasBeenSet = false;
131 bool m_subtitleHasBeenSet = false;
132 bool m_imageUrlHasBeenSet = false;
133 bool m_buttonsHasBeenSet = false;
134};
135
136} // namespace Model
137} // namespace LexModelsV2
138} // namespace Aws
ImageResponseCard & WithImageUrl(ImageUrlT &&value)
ImageResponseCard & AddButtons(ButtonsT &&value)
ImageResponseCard & WithButtons(ButtonsT &&value)
AWS_LEXMODELSV2_API ImageResponseCard(Aws::Utils::Json::JsonView jsonValue)
AWS_LEXMODELSV2_API ImageResponseCard & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< Button > & GetButtons() const
AWS_LEXMODELSV2_API ImageResponseCard()=default
ImageResponseCard & WithTitle(TitleT &&value)
ImageResponseCard & WithSubtitle(SubtitleT &&value)
AWS_LEXMODELSV2_API Aws::Utils::Json::JsonValue Jsonize() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue