/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Specifies the message template to use for the message, for each type of
* channel.See Also:
AWS
* API Reference
The email template to use for the message.
*/ inline const Template& GetEmailTemplate() const{ return m_emailTemplate; } /** *The email template to use for the message.
*/ inline bool EmailTemplateHasBeenSet() const { return m_emailTemplateHasBeenSet; } /** *The email template to use for the message.
*/ inline void SetEmailTemplate(const Template& value) { m_emailTemplateHasBeenSet = true; m_emailTemplate = value; } /** *The email template to use for the message.
*/ inline void SetEmailTemplate(Template&& value) { m_emailTemplateHasBeenSet = true; m_emailTemplate = std::move(value); } /** *The email template to use for the message.
*/ inline TemplateConfiguration& WithEmailTemplate(const Template& value) { SetEmailTemplate(value); return *this;} /** *The email template to use for the message.
*/ inline TemplateConfiguration& WithEmailTemplate(Template&& value) { SetEmailTemplate(std::move(value)); return *this;} /** *The push notification template to use for the message.
*/ inline const Template& GetPushTemplate() const{ return m_pushTemplate; } /** *The push notification template to use for the message.
*/ inline bool PushTemplateHasBeenSet() const { return m_pushTemplateHasBeenSet; } /** *The push notification template to use for the message.
*/ inline void SetPushTemplate(const Template& value) { m_pushTemplateHasBeenSet = true; m_pushTemplate = value; } /** *The push notification template to use for the message.
*/ inline void SetPushTemplate(Template&& value) { m_pushTemplateHasBeenSet = true; m_pushTemplate = std::move(value); } /** *The push notification template to use for the message.
*/ inline TemplateConfiguration& WithPushTemplate(const Template& value) { SetPushTemplate(value); return *this;} /** *The push notification template to use for the message.
*/ inline TemplateConfiguration& WithPushTemplate(Template&& value) { SetPushTemplate(std::move(value)); return *this;} /** *The SMS template to use for the message.
*/ inline const Template& GetSMSTemplate() const{ return m_sMSTemplate; } /** *The SMS template to use for the message.
*/ inline bool SMSTemplateHasBeenSet() const { return m_sMSTemplateHasBeenSet; } /** *The SMS template to use for the message.
*/ inline void SetSMSTemplate(const Template& value) { m_sMSTemplateHasBeenSet = true; m_sMSTemplate = value; } /** *The SMS template to use for the message.
*/ inline void SetSMSTemplate(Template&& value) { m_sMSTemplateHasBeenSet = true; m_sMSTemplate = std::move(value); } /** *The SMS template to use for the message.
*/ inline TemplateConfiguration& WithSMSTemplate(const Template& value) { SetSMSTemplate(value); return *this;} /** *The SMS template to use for the message.
*/ inline TemplateConfiguration& WithSMSTemplate(Template&& value) { SetSMSTemplate(std::move(value)); return *this;} /** *The voice template to use for the message. This object isn't supported for * campaigns.
*/ inline const Template& GetVoiceTemplate() const{ return m_voiceTemplate; } /** *The voice template to use for the message. This object isn't supported for * campaigns.
*/ inline bool VoiceTemplateHasBeenSet() const { return m_voiceTemplateHasBeenSet; } /** *The voice template to use for the message. This object isn't supported for * campaigns.
*/ inline void SetVoiceTemplate(const Template& value) { m_voiceTemplateHasBeenSet = true; m_voiceTemplate = value; } /** *The voice template to use for the message. This object isn't supported for * campaigns.
*/ inline void SetVoiceTemplate(Template&& value) { m_voiceTemplateHasBeenSet = true; m_voiceTemplate = std::move(value); } /** *The voice template to use for the message. This object isn't supported for * campaigns.
*/ inline TemplateConfiguration& WithVoiceTemplate(const Template& value) { SetVoiceTemplate(value); return *this;} /** *The voice template to use for the message. This object isn't supported for * campaigns.
*/ inline TemplateConfiguration& WithVoiceTemplate(Template&& value) { SetVoiceTemplate(std::move(value)); return *this;} /** *The InApp template to use for the message. The InApp template object is not * supported for SendMessages.
*/ inline const Template& GetInAppTemplate() const{ return m_inAppTemplate; } /** *The InApp template to use for the message. The InApp template object is not * supported for SendMessages.
*/ inline bool InAppTemplateHasBeenSet() const { return m_inAppTemplateHasBeenSet; } /** *The InApp template to use for the message. The InApp template object is not * supported for SendMessages.
*/ inline void SetInAppTemplate(const Template& value) { m_inAppTemplateHasBeenSet = true; m_inAppTemplate = value; } /** *The InApp template to use for the message. The InApp template object is not * supported for SendMessages.
*/ inline void SetInAppTemplate(Template&& value) { m_inAppTemplateHasBeenSet = true; m_inAppTemplate = std::move(value); } /** *The InApp template to use for the message. The InApp template object is not * supported for SendMessages.
*/ inline TemplateConfiguration& WithInAppTemplate(const Template& value) { SetInAppTemplate(value); return *this;} /** *The InApp template to use for the message. The InApp template object is not * supported for SendMessages.
*/ inline TemplateConfiguration& WithInAppTemplate(Template&& value) { SetInAppTemplate(std::move(value)); return *this;} private: Template m_emailTemplate; bool m_emailTemplateHasBeenSet = false; Template m_pushTemplate; bool m_pushTemplateHasBeenSet = false; Template m_sMSTemplate; bool m_sMSTemplateHasBeenSet = false; Template m_voiceTemplate; bool m_voiceTemplateHasBeenSet = false; Template m_inAppTemplate; bool m_inAppTemplateHasBeenSet = false; }; } // namespace Model } // namespace Pinpoint } // namespace Aws