7#include <aws/core/utils/DateTime.h>
8#include <aws/taxsettings/TaxSettings_EXPORTS.h>
9#include <aws/taxsettings/model/Authority.h>
10#include <aws/taxsettings/model/EntityExemptionAccountStatus.h>
11#include <aws/taxsettings/model/TaxExemptionType.h>
22namespace TaxSettings {
43 template <
typename AuthorityT = Authority>
45 m_authorityHasBeenSet =
true;
46 m_authority = std::forward<AuthorityT>(value);
48 template <
typename AuthorityT = Authority>
61 template <
typename EffectiveDateT = Aws::Utils::DateTime>
63 m_effectiveDateHasBeenSet =
true;
64 m_effectiveDate = std::forward<EffectiveDateT>(value);
66 template <
typename EffectiveDateT = Aws::Utils::DateTime>
79 template <
typename ExpirationDateT = Aws::Utils::DateTime>
81 m_expirationDateHasBeenSet =
true;
82 m_expirationDate = std::forward<ExpirationDateT>(value);
84 template <
typename ExpirationDateT = Aws::Utils::DateTime>
98 m_statusHasBeenSet =
true;
113 template <
typename SystemEffectiveDateT = Aws::Utils::DateTime>
115 m_systemEffectiveDateHasBeenSet =
true;
116 m_systemEffectiveDate = std::forward<SystemEffectiveDateT>(value);
118 template <
typename SystemEffectiveDateT = Aws::Utils::DateTime>
131 template <
typename TaxExemptionTypeT = TaxExemptionType>
133 m_taxExemptionTypeHasBeenSet =
true;
134 m_taxExemptionType = std::forward<TaxExemptionTypeT>(value);
136 template <
typename TaxExemptionTypeT = TaxExemptionType>
153 TaxExemptionType m_taxExemptionType;
154 bool m_authorityHasBeenSet =
false;
155 bool m_effectiveDateHasBeenSet =
false;
156 bool m_expirationDateHasBeenSet =
false;
157 bool m_statusHasBeenSet =
false;
158 bool m_systemEffectiveDateHasBeenSet =
false;
159 bool m_taxExemptionTypeHasBeenSet =
false;
void SetStatus(EntityExemptionAccountStatus value)
AWS_TAXSETTINGS_API TaxExemption(Aws::Utils::Json::JsonView jsonValue)
const Aws::Utils::DateTime & GetSystemEffectiveDate() const
AWS_TAXSETTINGS_API TaxExemption & operator=(Aws::Utils::Json::JsonView jsonValue)
const TaxExemptionType & GetTaxExemptionType() const
const Aws::Utils::DateTime & GetEffectiveDate() const
void SetTaxExemptionType(TaxExemptionTypeT &&value)
TaxExemption & WithAuthority(AuthorityT &&value)
bool EffectiveDateHasBeenSet() const
EntityExemptionAccountStatus GetStatus() const
TaxExemption & WithExpirationDate(ExpirationDateT &&value)
void SetExpirationDate(ExpirationDateT &&value)
bool SystemEffectiveDateHasBeenSet() const
bool ExpirationDateHasBeenSet() const
TaxExemption & WithSystemEffectiveDate(SystemEffectiveDateT &&value)
bool StatusHasBeenSet() const
TaxExemption & WithTaxExemptionType(TaxExemptionTypeT &&value)
const Aws::Utils::DateTime & GetExpirationDate() const
AWS_TAXSETTINGS_API TaxExemption()=default
TaxExemption & WithEffectiveDate(EffectiveDateT &&value)
void SetEffectiveDate(EffectiveDateT &&value)
bool AuthorityHasBeenSet() const
void SetSystemEffectiveDate(SystemEffectiveDateT &&value)
TaxExemption & WithStatus(EntityExemptionAccountStatus value)
AWS_TAXSETTINGS_API Aws::Utils::Json::JsonValue Jsonize() const
bool TaxExemptionTypeHasBeenSet() const
void SetAuthority(AuthorityT &&value)
const Authority & GetAuthority() const
EntityExemptionAccountStatus
Aws::Utils::Json::JsonValue JsonValue