All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.shell.apitest.models.UsageRestriction Maven / Gradle / Ivy

/*
 * ShellCardManagementAPIsLib
 *
 * This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
 */

package com.shell.apitest.models;

import com.fasterxml.jackson.annotation.JsonGetter;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonSetter;

/**
 * This is a model class for UsageRestriction type.
 */
public class UsageRestriction {
    private String level;
    private Double dailySpend;
    private Double dailySpendAccumulated;
    private Double dailySpendBalance;
    private Boolean dailySpendOverride;
    private Double dailySpendThreshold;
    private Double weeklySpend;
    private Double weeklySpendAccumulated;
    private Double weeklySpendBalance;
    private Boolean weeklySpendOverride;
    private Double weeklySpendThreshold;
    private Double monthlySpend;
    private Double monthlySpendAccumulated;
    private Double monthlySpendBalance;
    private Boolean monthlySpendOverride;
    private Double perTransactionSpend;
    private Boolean perTransactionSpendOverride;
    private Double annualSpend;
    private Double annualSpendAccumulated;
    private Double annualSpendBalance;
    private Boolean annualSpendOverride;
    private Double annualSpendThreshold;
    private Double lifeTimeSpend;
    private Double lifeTimeSpendAccumulated;
    private Double lifeTimeSpendBalance;
    private Boolean lifeTimeSpendOverride;
    private Double lifeTimeSpendThreshold;
    private Double dailyVolume;
    private Double dailyVolumeAccumulated;
    private Double dailyVolumeBalance;
    private Double dailyVolumeOverride;
    private Double dailyVolumeThreshold;
    private Double weeklyVolume;
    private Double weeklyVolumeAccumulated;
    private Double weeklyVolumeBalance;
    private Boolean weeklyVolumeOverride;
    private Double weeklyVolumeThreshold;
    private Double monthlyVolume;
    private Double monthlyVolumeAccumulated;
    private Double monthlyVolumeBalance;
    private Boolean monthlyVolumeOverride;
    private Double monthlyVolumeThreshold;
    private Double perTransactionVolume;
    private Boolean perTransactionVolumeOverride;
    private Double annualVolume;
    private Double annualVolumeAccumulated;
    private Double annualVolumeBalance;
    private Boolean annualVolumeOverride;
    private Double annualVolumeThreshold;
    private Double lifeTimeVolume;
    private Double lifeTimeVolumeAccumulated;
    private Double lifeTimeVolumeBalance;
    private Boolean lifeTimeVolumeOverride;
    private Double lifeTimeVolumeThreshold;
    private Double dailyTransactionCount;
    private Double dailyTransactionAccumulated;
    private Double dailyTransactionBalance;
    private Boolean dailyTransactionOverride;
    private Double dailyTransactionThreshold;
    private Double weeklyTransactionCount;
    private Double weeklyTransactionAccumulated;
    private Double weeklyTransactionBalance;
    private Boolean weeklyTransactionOverride;
    private Double weeklyTransactionThreshold;
    private Double monthlyTransactionCount;
    private Double monthlyTransactionAccumulated;
    private Double monthlyTransactionBalance;
    private Boolean monthlyTransactionOverride;
    private Double monthlyTransactionThreshold;
    private Double annualTransactionCount;
    private Double annualTransactionAccumulated;
    private Double annualTransactionBalance;
    private Boolean annualTransactionOverride;
    private Double annualTransactionThreshold;
    private Double lifeTimeTransactionCount;
    private Double lifeTimeTransactionAccumulated;
    private Double lifeTimeTransactionBalance;
    private Boolean lifeTimeTransactionOverride;
    private Double lifeTimeTransactionThreshold;

    /**
     * Default constructor.
     */
    public UsageRestriction() {
    }

    /**
     * Initialization constructor.
     * @param  level  String value for level.
     * @param  dailySpend  Double value for dailySpend.
     * @param  dailySpendAccumulated  Double value for dailySpendAccumulated.
     * @param  dailySpendBalance  Double value for dailySpendBalance.
     * @param  dailySpendOverride  Boolean value for dailySpendOverride.
     * @param  dailySpendThreshold  Double value for dailySpendThreshold.
     * @param  weeklySpend  Double value for weeklySpend.
     * @param  weeklySpendAccumulated  Double value for weeklySpendAccumulated.
     * @param  weeklySpendBalance  Double value for weeklySpendBalance.
     * @param  weeklySpendOverride  Boolean value for weeklySpendOverride.
     * @param  weeklySpendThreshold  Double value for weeklySpendThreshold.
     * @param  monthlySpend  Double value for monthlySpend.
     * @param  monthlySpendAccumulated  Double value for monthlySpendAccumulated.
     * @param  monthlySpendBalance  Double value for monthlySpendBalance.
     * @param  monthlySpendOverride  Boolean value for monthlySpendOverride.
     * @param  perTransactionSpend  Double value for perTransactionSpend.
     * @param  perTransactionSpendOverride  Boolean value for perTransactionSpendOverride.
     * @param  annualSpend  Double value for annualSpend.
     * @param  annualSpendAccumulated  Double value for annualSpendAccumulated.
     * @param  annualSpendBalance  Double value for annualSpendBalance.
     * @param  annualSpendOverride  Boolean value for annualSpendOverride.
     * @param  annualSpendThreshold  Double value for annualSpendThreshold.
     * @param  lifeTimeSpend  Double value for lifeTimeSpend.
     * @param  lifeTimeSpendAccumulated  Double value for lifeTimeSpendAccumulated.
     * @param  lifeTimeSpendBalance  Double value for lifeTimeSpendBalance.
     * @param  lifeTimeSpendOverride  Boolean value for lifeTimeSpendOverride.
     * @param  lifeTimeSpendThreshold  Double value for lifeTimeSpendThreshold.
     * @param  dailyVolume  Double value for dailyVolume.
     * @param  dailyVolumeAccumulated  Double value for dailyVolumeAccumulated.
     * @param  dailyVolumeBalance  Double value for dailyVolumeBalance.
     * @param  dailyVolumeOverride  Double value for dailyVolumeOverride.
     * @param  dailyVolumeThreshold  Double value for dailyVolumeThreshold.
     * @param  weeklyVolume  Double value for weeklyVolume.
     * @param  weeklyVolumeAccumulated  Double value for weeklyVolumeAccumulated.
     * @param  weeklyVolumeBalance  Double value for weeklyVolumeBalance.
     * @param  weeklyVolumeOverride  Boolean value for weeklyVolumeOverride.
     * @param  weeklyVolumeThreshold  Double value for weeklyVolumeThreshold.
     * @param  monthlyVolume  Double value for monthlyVolume.
     * @param  monthlyVolumeAccumulated  Double value for monthlyVolumeAccumulated.
     * @param  monthlyVolumeBalance  Double value for monthlyVolumeBalance.
     * @param  monthlyVolumeOverride  Boolean value for monthlyVolumeOverride.
     * @param  monthlyVolumeThreshold  Double value for monthlyVolumeThreshold.
     * @param  perTransactionVolume  Double value for perTransactionVolume.
     * @param  perTransactionVolumeOverride  Boolean value for perTransactionVolumeOverride.
     * @param  annualVolume  Double value for annualVolume.
     * @param  annualVolumeAccumulated  Double value for annualVolumeAccumulated.
     * @param  annualVolumeBalance  Double value for annualVolumeBalance.
     * @param  annualVolumeOverride  Boolean value for annualVolumeOverride.
     * @param  annualVolumeThreshold  Double value for annualVolumeThreshold.
     * @param  lifeTimeVolume  Double value for lifeTimeVolume.
     * @param  lifeTimeVolumeAccumulated  Double value for lifeTimeVolumeAccumulated.
     * @param  lifeTimeVolumeBalance  Double value for lifeTimeVolumeBalance.
     * @param  lifeTimeVolumeOverride  Boolean value for lifeTimeVolumeOverride.
     * @param  lifeTimeVolumeThreshold  Double value for lifeTimeVolumeThreshold.
     * @param  dailyTransactionCount  Double value for dailyTransactionCount.
     * @param  dailyTransactionAccumulated  Double value for dailyTransactionAccumulated.
     * @param  dailyTransactionBalance  Double value for dailyTransactionBalance.
     * @param  dailyTransactionOverride  Boolean value for dailyTransactionOverride.
     * @param  dailyTransactionThreshold  Double value for dailyTransactionThreshold.
     * @param  weeklyTransactionCount  Double value for weeklyTransactionCount.
     * @param  weeklyTransactionAccumulated  Double value for weeklyTransactionAccumulated.
     * @param  weeklyTransactionBalance  Double value for weeklyTransactionBalance.
     * @param  weeklyTransactionOverride  Boolean value for weeklyTransactionOverride.
     * @param  weeklyTransactionThreshold  Double value for weeklyTransactionThreshold.
     * @param  monthlyTransactionCount  Double value for monthlyTransactionCount.
     * @param  monthlyTransactionAccumulated  Double value for monthlyTransactionAccumulated.
     * @param  monthlyTransactionBalance  Double value for monthlyTransactionBalance.
     * @param  monthlyTransactionOverride  Boolean value for monthlyTransactionOverride.
     * @param  monthlyTransactionThreshold  Double value for monthlyTransactionThreshold.
     * @param  annualTransactionCount  Double value for annualTransactionCount.
     * @param  annualTransactionAccumulated  Double value for annualTransactionAccumulated.
     * @param  annualTransactionBalance  Double value for annualTransactionBalance.
     * @param  annualTransactionOverride  Boolean value for annualTransactionOverride.
     * @param  annualTransactionThreshold  Double value for annualTransactionThreshold.
     * @param  lifeTimeTransactionCount  Double value for lifeTimeTransactionCount.
     * @param  lifeTimeTransactionAccumulated  Double value for lifeTimeTransactionAccumulated.
     * @param  lifeTimeTransactionBalance  Double value for lifeTimeTransactionBalance.
     * @param  lifeTimeTransactionOverride  Boolean value for lifeTimeTransactionOverride.
     * @param  lifeTimeTransactionThreshold  Double value for lifeTimeTransactionThreshold.
     */
    public UsageRestriction(
            String level,
            Double dailySpend,
            Double dailySpendAccumulated,
            Double dailySpendBalance,
            Boolean dailySpendOverride,
            Double dailySpendThreshold,
            Double weeklySpend,
            Double weeklySpendAccumulated,
            Double weeklySpendBalance,
            Boolean weeklySpendOverride,
            Double weeklySpendThreshold,
            Double monthlySpend,
            Double monthlySpendAccumulated,
            Double monthlySpendBalance,
            Boolean monthlySpendOverride,
            Double perTransactionSpend,
            Boolean perTransactionSpendOverride,
            Double annualSpend,
            Double annualSpendAccumulated,
            Double annualSpendBalance,
            Boolean annualSpendOverride,
            Double annualSpendThreshold,
            Double lifeTimeSpend,
            Double lifeTimeSpendAccumulated,
            Double lifeTimeSpendBalance,
            Boolean lifeTimeSpendOverride,
            Double lifeTimeSpendThreshold,
            Double dailyVolume,
            Double dailyVolumeAccumulated,
            Double dailyVolumeBalance,
            Double dailyVolumeOverride,
            Double dailyVolumeThreshold,
            Double weeklyVolume,
            Double weeklyVolumeAccumulated,
            Double weeklyVolumeBalance,
            Boolean weeklyVolumeOverride,
            Double weeklyVolumeThreshold,
            Double monthlyVolume,
            Double monthlyVolumeAccumulated,
            Double monthlyVolumeBalance,
            Boolean monthlyVolumeOverride,
            Double monthlyVolumeThreshold,
            Double perTransactionVolume,
            Boolean perTransactionVolumeOverride,
            Double annualVolume,
            Double annualVolumeAccumulated,
            Double annualVolumeBalance,
            Boolean annualVolumeOverride,
            Double annualVolumeThreshold,
            Double lifeTimeVolume,
            Double lifeTimeVolumeAccumulated,
            Double lifeTimeVolumeBalance,
            Boolean lifeTimeVolumeOverride,
            Double lifeTimeVolumeThreshold,
            Double dailyTransactionCount,
            Double dailyTransactionAccumulated,
            Double dailyTransactionBalance,
            Boolean dailyTransactionOverride,
            Double dailyTransactionThreshold,
            Double weeklyTransactionCount,
            Double weeklyTransactionAccumulated,
            Double weeklyTransactionBalance,
            Boolean weeklyTransactionOverride,
            Double weeklyTransactionThreshold,
            Double monthlyTransactionCount,
            Double monthlyTransactionAccumulated,
            Double monthlyTransactionBalance,
            Boolean monthlyTransactionOverride,
            Double monthlyTransactionThreshold,
            Double annualTransactionCount,
            Double annualTransactionAccumulated,
            Double annualTransactionBalance,
            Boolean annualTransactionOverride,
            Double annualTransactionThreshold,
            Double lifeTimeTransactionCount,
            Double lifeTimeTransactionAccumulated,
            Double lifeTimeTransactionBalance,
            Boolean lifeTimeTransactionOverride,
            Double lifeTimeTransactionThreshold) {
        this.level = level;
        this.dailySpend = dailySpend;
        this.dailySpendAccumulated = dailySpendAccumulated;
        this.dailySpendBalance = dailySpendBalance;
        this.dailySpendOverride = dailySpendOverride;
        this.dailySpendThreshold = dailySpendThreshold;
        this.weeklySpend = weeklySpend;
        this.weeklySpendAccumulated = weeklySpendAccumulated;
        this.weeklySpendBalance = weeklySpendBalance;
        this.weeklySpendOverride = weeklySpendOverride;
        this.weeklySpendThreshold = weeklySpendThreshold;
        this.monthlySpend = monthlySpend;
        this.monthlySpendAccumulated = monthlySpendAccumulated;
        this.monthlySpendBalance = monthlySpendBalance;
        this.monthlySpendOverride = monthlySpendOverride;
        this.perTransactionSpend = perTransactionSpend;
        this.perTransactionSpendOverride = perTransactionSpendOverride;
        this.annualSpend = annualSpend;
        this.annualSpendAccumulated = annualSpendAccumulated;
        this.annualSpendBalance = annualSpendBalance;
        this.annualSpendOverride = annualSpendOverride;
        this.annualSpendThreshold = annualSpendThreshold;
        this.lifeTimeSpend = lifeTimeSpend;
        this.lifeTimeSpendAccumulated = lifeTimeSpendAccumulated;
        this.lifeTimeSpendBalance = lifeTimeSpendBalance;
        this.lifeTimeSpendOverride = lifeTimeSpendOverride;
        this.lifeTimeSpendThreshold = lifeTimeSpendThreshold;
        this.dailyVolume = dailyVolume;
        this.dailyVolumeAccumulated = dailyVolumeAccumulated;
        this.dailyVolumeBalance = dailyVolumeBalance;
        this.dailyVolumeOverride = dailyVolumeOverride;
        this.dailyVolumeThreshold = dailyVolumeThreshold;
        this.weeklyVolume = weeklyVolume;
        this.weeklyVolumeAccumulated = weeklyVolumeAccumulated;
        this.weeklyVolumeBalance = weeklyVolumeBalance;
        this.weeklyVolumeOverride = weeklyVolumeOverride;
        this.weeklyVolumeThreshold = weeklyVolumeThreshold;
        this.monthlyVolume = monthlyVolume;
        this.monthlyVolumeAccumulated = monthlyVolumeAccumulated;
        this.monthlyVolumeBalance = monthlyVolumeBalance;
        this.monthlyVolumeOverride = monthlyVolumeOverride;
        this.monthlyVolumeThreshold = monthlyVolumeThreshold;
        this.perTransactionVolume = perTransactionVolume;
        this.perTransactionVolumeOverride = perTransactionVolumeOverride;
        this.annualVolume = annualVolume;
        this.annualVolumeAccumulated = annualVolumeAccumulated;
        this.annualVolumeBalance = annualVolumeBalance;
        this.annualVolumeOverride = annualVolumeOverride;
        this.annualVolumeThreshold = annualVolumeThreshold;
        this.lifeTimeVolume = lifeTimeVolume;
        this.lifeTimeVolumeAccumulated = lifeTimeVolumeAccumulated;
        this.lifeTimeVolumeBalance = lifeTimeVolumeBalance;
        this.lifeTimeVolumeOverride = lifeTimeVolumeOverride;
        this.lifeTimeVolumeThreshold = lifeTimeVolumeThreshold;
        this.dailyTransactionCount = dailyTransactionCount;
        this.dailyTransactionAccumulated = dailyTransactionAccumulated;
        this.dailyTransactionBalance = dailyTransactionBalance;
        this.dailyTransactionOverride = dailyTransactionOverride;
        this.dailyTransactionThreshold = dailyTransactionThreshold;
        this.weeklyTransactionCount = weeklyTransactionCount;
        this.weeklyTransactionAccumulated = weeklyTransactionAccumulated;
        this.weeklyTransactionBalance = weeklyTransactionBalance;
        this.weeklyTransactionOverride = weeklyTransactionOverride;
        this.weeklyTransactionThreshold = weeklyTransactionThreshold;
        this.monthlyTransactionCount = monthlyTransactionCount;
        this.monthlyTransactionAccumulated = monthlyTransactionAccumulated;
        this.monthlyTransactionBalance = monthlyTransactionBalance;
        this.monthlyTransactionOverride = monthlyTransactionOverride;
        this.monthlyTransactionThreshold = monthlyTransactionThreshold;
        this.annualTransactionCount = annualTransactionCount;
        this.annualTransactionAccumulated = annualTransactionAccumulated;
        this.annualTransactionBalance = annualTransactionBalance;
        this.annualTransactionOverride = annualTransactionOverride;
        this.annualTransactionThreshold = annualTransactionThreshold;
        this.lifeTimeTransactionCount = lifeTimeTransactionCount;
        this.lifeTimeTransactionAccumulated = lifeTimeTransactionAccumulated;
        this.lifeTimeTransactionBalance = lifeTimeTransactionBalance;
        this.lifeTimeTransactionOverride = lifeTimeTransactionOverride;
        this.lifeTimeTransactionThreshold = lifeTimeTransactionThreshold;
    }

    /**
     * Getter for Level.
     * Usage limit is applied on the card from this level. Valid values – • Inherited • Card When
     * Card level usage restrictions are not present, the API will return the inherited
     * restrictions. Note: -This field is deprecated. Instead, use ‘Override’.
     * @return Returns the String
     */
    @JsonGetter("Level")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public String getLevel() {
        return level;
    }

    /**
     * Setter for Level.
     * Usage limit is applied on the card from this level. Valid values – • Inherited • Card When
     * Card level usage restrictions are not present, the API will return the inherited
     * restrictions. Note: -This field is deprecated. Instead, use ‘Override’.
     * @param level Value for String
     */
    @JsonSetter("Level")
    public void setLevel(String level) {
        this.level = level;
    }

    /**
     * Getter for DailySpend.
     * Maximum spend value (amount) allowed per day. Card limit ‘0’ represents the value is
     * inherited and inherited limit could be calculated by adding accumulated and balance. However,
     * Inherited limit ‘0’ represents unlimited.
     * @return Returns the Double
     */
    @JsonGetter("DailySpend")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getDailySpend() {
        return dailySpend;
    }

    /**
     * Setter for DailySpend.
     * Maximum spend value (amount) allowed per day. Card limit ‘0’ represents the value is
     * inherited and inherited limit could be calculated by adding accumulated and balance. However,
     * Inherited limit ‘0’ represents unlimited.
     * @param dailySpend Value for Double
     */
    @JsonSetter("DailySpend")
    public void setDailySpend(Double dailySpend) {
        this.dailySpend = dailySpend;
    }

    /**
     * Getter for DailySpendAccumulated.
     * Balance spend value (amount) available for rest of the day.
     * @return Returns the Double
     */
    @JsonGetter("DailySpendAccumulated")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getDailySpendAccumulated() {
        return dailySpendAccumulated;
    }

    /**
     * Setter for DailySpendAccumulated.
     * Balance spend value (amount) available for rest of the day.
     * @param dailySpendAccumulated Value for Double
     */
    @JsonSetter("DailySpendAccumulated")
    public void setDailySpendAccumulated(Double dailySpendAccumulated) {
        this.dailySpendAccumulated = dailySpendAccumulated;
    }

    /**
     * Getter for DailySpendBalance.
     * Balance spend value (amount) available for rest of the day.
     * @return Returns the Double
     */
    @JsonGetter("DailySpendBalance")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getDailySpendBalance() {
        return dailySpendBalance;
    }

    /**
     * Setter for DailySpendBalance.
     * Balance spend value (amount) available for rest of the day.
     * @param dailySpendBalance Value for Double
     */
    @JsonSetter("DailySpendBalance")
    public void setDailySpendBalance(Double dailySpendBalance) {
        this.dailySpendBalance = dailySpendBalance;
    }

    /**
     * Getter for DailySpendOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @return Returns the Boolean
     */
    @JsonGetter("DailySpendOverride")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Boolean getDailySpendOverride() {
        return dailySpendOverride;
    }

    /**
     * Setter for DailySpendOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @param dailySpendOverride Value for Boolean
     */
    @JsonSetter("DailySpendOverride")
    public void setDailySpendOverride(Boolean dailySpendOverride) {
        this.dailySpendOverride = dailySpendOverride;
    }

    /**
     * Getter for DailySpendThreshold.
     * The limit to trigger an alert if the balance after a transaction reaches it or below. 0
     * indicates no alerts will be sent. Not present if not set (issuer value threshold limit
     * applies if available). Not present for COUNT type velocity. Example: 50.55
     * @return Returns the Double
     */
    @JsonGetter("DailySpendThreshold")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getDailySpendThreshold() {
        return dailySpendThreshold;
    }

    /**
     * Setter for DailySpendThreshold.
     * The limit to trigger an alert if the balance after a transaction reaches it or below. 0
     * indicates no alerts will be sent. Not present if not set (issuer value threshold limit
     * applies if available). Not present for COUNT type velocity. Example: 50.55
     * @param dailySpendThreshold Value for Double
     */
    @JsonSetter("DailySpendThreshold")
    public void setDailySpendThreshold(Double dailySpendThreshold) {
        this.dailySpendThreshold = dailySpendThreshold;
    }

    /**
     * Getter for WeeklySpend.
     * Maximum spend value (amount) allowed per week. Card limit ‘0’ represents the value is
     * inherited and inherited limit could be calculated by adding accumulated and balance. However,
     * Inherited limit ‘0’ represents unlimited.
     * @return Returns the Double
     */
    @JsonGetter("WeeklySpend")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getWeeklySpend() {
        return weeklySpend;
    }

    /**
     * Setter for WeeklySpend.
     * Maximum spend value (amount) allowed per week. Card limit ‘0’ represents the value is
     * inherited and inherited limit could be calculated by adding accumulated and balance. However,
     * Inherited limit ‘0’ represents unlimited.
     * @param weeklySpend Value for Double
     */
    @JsonSetter("WeeklySpend")
    public void setWeeklySpend(Double weeklySpend) {
        this.weeklySpend = weeklySpend;
    }

    /**
     * Getter for WeeklySpendAccumulated.
     * Value (amount) spent during the week.
     * @return Returns the Double
     */
    @JsonGetter("WeeklySpendAccumulated")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getWeeklySpendAccumulated() {
        return weeklySpendAccumulated;
    }

    /**
     * Setter for WeeklySpendAccumulated.
     * Value (amount) spent during the week.
     * @param weeklySpendAccumulated Value for Double
     */
    @JsonSetter("WeeklySpendAccumulated")
    public void setWeeklySpendAccumulated(Double weeklySpendAccumulated) {
        this.weeklySpendAccumulated = weeklySpendAccumulated;
    }

    /**
     * Getter for WeeklySpendBalance.
     * Balance spend value (amount) available for rest of the week.
     * @return Returns the Double
     */
    @JsonGetter("WeeklySpendBalance")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getWeeklySpendBalance() {
        return weeklySpendBalance;
    }

    /**
     * Setter for WeeklySpendBalance.
     * Balance spend value (amount) available for rest of the week.
     * @param weeklySpendBalance Value for Double
     */
    @JsonSetter("WeeklySpendBalance")
    public void setWeeklySpendBalance(Double weeklySpendBalance) {
        this.weeklySpendBalance = weeklySpendBalance;
    }

    /**
     * Getter for WeeklySpendOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @return Returns the Boolean
     */
    @JsonGetter("WeeklySpendOverride")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Boolean getWeeklySpendOverride() {
        return weeklySpendOverride;
    }

    /**
     * Setter for WeeklySpendOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @param weeklySpendOverride Value for Boolean
     */
    @JsonSetter("WeeklySpendOverride")
    public void setWeeklySpendOverride(Boolean weeklySpendOverride) {
        this.weeklySpendOverride = weeklySpendOverride;
    }

    /**
     * Getter for WeeklySpendThreshold.
     * The limit to trigger an alert if the balance after a transaction reaches it or below. 0
     * indicates no alerts will be sent. Not present if not set (issuer value threshold limit
     * applies if available). Not present for COUNT type velocity. Example: 50.55 This is an
     * optional output field.
     * @return Returns the Double
     */
    @JsonGetter("WeeklySpendThreshold")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getWeeklySpendThreshold() {
        return weeklySpendThreshold;
    }

    /**
     * Setter for WeeklySpendThreshold.
     * The limit to trigger an alert if the balance after a transaction reaches it or below. 0
     * indicates no alerts will be sent. Not present if not set (issuer value threshold limit
     * applies if available). Not present for COUNT type velocity. Example: 50.55 This is an
     * optional output field.
     * @param weeklySpendThreshold Value for Double
     */
    @JsonSetter("WeeklySpendThreshold")
    public void setWeeklySpendThreshold(Double weeklySpendThreshold) {
        this.weeklySpendThreshold = weeklySpendThreshold;
    }

    /**
     * Getter for MonthlySpend.
     * Maximum spend value (amount) allowed per month. Card limit ‘0’ represents the value is
     * inherited and inherited limit could be calculated by adding accumulated and balance. However,
     * Inherited limit ‘0’ represents unlimited.
     * @return Returns the Double
     */
    @JsonGetter("MonthlySpend")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getMonthlySpend() {
        return monthlySpend;
    }

    /**
     * Setter for MonthlySpend.
     * Maximum spend value (amount) allowed per month. Card limit ‘0’ represents the value is
     * inherited and inherited limit could be calculated by adding accumulated and balance. However,
     * Inherited limit ‘0’ represents unlimited.
     * @param monthlySpend Value for Double
     */
    @JsonSetter("MonthlySpend")
    public void setMonthlySpend(Double monthlySpend) {
        this.monthlySpend = monthlySpend;
    }

    /**
     * Getter for MonthlySpendAccumulated.
     * Value (amount) spent during the month.
     * @return Returns the Double
     */
    @JsonGetter("MonthlySpendAccumulated")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getMonthlySpendAccumulated() {
        return monthlySpendAccumulated;
    }

    /**
     * Setter for MonthlySpendAccumulated.
     * Value (amount) spent during the month.
     * @param monthlySpendAccumulated Value for Double
     */
    @JsonSetter("MonthlySpendAccumulated")
    public void setMonthlySpendAccumulated(Double monthlySpendAccumulated) {
        this.monthlySpendAccumulated = monthlySpendAccumulated;
    }

    /**
     * Getter for MonthlySpendBalance.
     * Balance spend value (amount) available for rest of the month.
     * @return Returns the Double
     */
    @JsonGetter("MonthlySpendBalance")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getMonthlySpendBalance() {
        return monthlySpendBalance;
    }

    /**
     * Setter for MonthlySpendBalance.
     * Balance spend value (amount) available for rest of the month.
     * @param monthlySpendBalance Value for Double
     */
    @JsonSetter("MonthlySpendBalance")
    public void setMonthlySpendBalance(Double monthlySpendBalance) {
        this.monthlySpendBalance = monthlySpendBalance;
    }

    /**
     * Getter for MonthlySpendOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @return Returns the Boolean
     */
    @JsonGetter("MonthlySpendOverride")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Boolean getMonthlySpendOverride() {
        return monthlySpendOverride;
    }

    /**
     * Setter for MonthlySpendOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @param monthlySpendOverride Value for Boolean
     */
    @JsonSetter("MonthlySpendOverride")
    public void setMonthlySpendOverride(Boolean monthlySpendOverride) {
        this.monthlySpendOverride = monthlySpendOverride;
    }

    /**
     * Getter for PerTransactionSpend.
     * Maximum spend value (amount) allowed per transaction. Card limit ‘0’ represents the value is
     * inherited and inherited limit could be calculated by adding accumulated and balance. However,
     * Inherited limit ‘0’ represents unlimited.
     * @return Returns the Double
     */
    @JsonGetter("PerTransactionSpend")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getPerTransactionSpend() {
        return perTransactionSpend;
    }

    /**
     * Setter for PerTransactionSpend.
     * Maximum spend value (amount) allowed per transaction. Card limit ‘0’ represents the value is
     * inherited and inherited limit could be calculated by adding accumulated and balance. However,
     * Inherited limit ‘0’ represents unlimited.
     * @param perTransactionSpend Value for Double
     */
    @JsonSetter("PerTransactionSpend")
    public void setPerTransactionSpend(Double perTransactionSpend) {
        this.perTransactionSpend = perTransactionSpend;
    }

    /**
     * Getter for PerTransactionSpendOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @return Returns the Boolean
     */
    @JsonGetter("PerTransactionSpendOverride")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Boolean getPerTransactionSpendOverride() {
        return perTransactionSpendOverride;
    }

    /**
     * Setter for PerTransactionSpendOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @param perTransactionSpendOverride Value for Boolean
     */
    @JsonSetter("PerTransactionSpendOverride")
    public void setPerTransactionSpendOverride(Boolean perTransactionSpendOverride) {
        this.perTransactionSpendOverride = perTransactionSpendOverride;
    }

    /**
     * Getter for AnnualSpend.
     * Maximum spend value (amount) allowed per annum. Card limit ‘0’ represents the value is
     * inherited and inherited limit could be calculated by adding accumulated and balance. However,
     * Inherited limit ‘0’ represents unlimited.
     * @return Returns the Double
     */
    @JsonGetter("AnnualSpend")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getAnnualSpend() {
        return annualSpend;
    }

    /**
     * Setter for AnnualSpend.
     * Maximum spend value (amount) allowed per annum. Card limit ‘0’ represents the value is
     * inherited and inherited limit could be calculated by adding accumulated and balance. However,
     * Inherited limit ‘0’ represents unlimited.
     * @param annualSpend Value for Double
     */
    @JsonSetter("AnnualSpend")
    public void setAnnualSpend(Double annualSpend) {
        this.annualSpend = annualSpend;
    }

    /**
     * Getter for AnnualSpendAccumulated.
     * Value (amount) spent during the year.
     * @return Returns the Double
     */
    @JsonGetter("AnnualSpendAccumulated")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getAnnualSpendAccumulated() {
        return annualSpendAccumulated;
    }

    /**
     * Setter for AnnualSpendAccumulated.
     * Value (amount) spent during the year.
     * @param annualSpendAccumulated Value for Double
     */
    @JsonSetter("AnnualSpendAccumulated")
    public void setAnnualSpendAccumulated(Double annualSpendAccumulated) {
        this.annualSpendAccumulated = annualSpendAccumulated;
    }

    /**
     * Getter for AnnualSpendBalance.
     * Balance spend value (amount) available for rest of the year.
     * @return Returns the Double
     */
    @JsonGetter("AnnualSpendBalance")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getAnnualSpendBalance() {
        return annualSpendBalance;
    }

    /**
     * Setter for AnnualSpendBalance.
     * Balance spend value (amount) available for rest of the year.
     * @param annualSpendBalance Value for Double
     */
    @JsonSetter("AnnualSpendBalance")
    public void setAnnualSpendBalance(Double annualSpendBalance) {
        this.annualSpendBalance = annualSpendBalance;
    }

    /**
     * Getter for AnnualSpendOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @return Returns the Boolean
     */
    @JsonGetter("AnnualSpendOverride")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Boolean getAnnualSpendOverride() {
        return annualSpendOverride;
    }

    /**
     * Setter for AnnualSpendOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @param annualSpendOverride Value for Boolean
     */
    @JsonSetter("AnnualSpendOverride")
    public void setAnnualSpendOverride(Boolean annualSpendOverride) {
        this.annualSpendOverride = annualSpendOverride;
    }

    /**
     * Getter for AnnualSpendThreshold.
     * The limit to trigger an alert if the balance after a transaction reaches it or below. 0
     * indicates no alerts will be sent. Not present if not set (issuer value threshold limit
     * applies if available). Not present for COUNT type velocity. Example: 50.55 This is an
     * optional output field.
     * @return Returns the Double
     */
    @JsonGetter("AnnualSpendThreshold")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getAnnualSpendThreshold() {
        return annualSpendThreshold;
    }

    /**
     * Setter for AnnualSpendThreshold.
     * The limit to trigger an alert if the balance after a transaction reaches it or below. 0
     * indicates no alerts will be sent. Not present if not set (issuer value threshold limit
     * applies if available). Not present for COUNT type velocity. Example: 50.55 This is an
     * optional output field.
     * @param annualSpendThreshold Value for Double
     */
    @JsonSetter("AnnualSpendThreshold")
    public void setAnnualSpendThreshold(Double annualSpendThreshold) {
        this.annualSpendThreshold = annualSpendThreshold;
    }

    /**
     * Getter for LifeTimeSpend.
     * Maximum spend value (amount) allowed in card’s life time. Card limit ‘0’ represents the value
     * is inherited and inherited limit could be calculated by adding accumulated and balance.
     * However, Inherited limit ‘0’ represents unlimited
     * @return Returns the Double
     */
    @JsonGetter("LifeTimeSpend")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getLifeTimeSpend() {
        return lifeTimeSpend;
    }

    /**
     * Setter for LifeTimeSpend.
     * Maximum spend value (amount) allowed in card’s life time. Card limit ‘0’ represents the value
     * is inherited and inherited limit could be calculated by adding accumulated and balance.
     * However, Inherited limit ‘0’ represents unlimited
     * @param lifeTimeSpend Value for Double
     */
    @JsonSetter("LifeTimeSpend")
    public void setLifeTimeSpend(Double lifeTimeSpend) {
        this.lifeTimeSpend = lifeTimeSpend;
    }

    /**
     * Getter for LifeTimeSpendAccumulated.
     * Value (amount) spent during the card’s life time
     * @return Returns the Double
     */
    @JsonGetter("LifeTimeSpendAccumulated")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getLifeTimeSpendAccumulated() {
        return lifeTimeSpendAccumulated;
    }

    /**
     * Setter for LifeTimeSpendAccumulated.
     * Value (amount) spent during the card’s life time
     * @param lifeTimeSpendAccumulated Value for Double
     */
    @JsonSetter("LifeTimeSpendAccumulated")
    public void setLifeTimeSpendAccumulated(Double lifeTimeSpendAccumulated) {
        this.lifeTimeSpendAccumulated = lifeTimeSpendAccumulated;
    }

    /**
     * Getter for LifeTimeSpendBalance.
     * Balance spend value (amount) available for rest of the card’s life time.
     * @return Returns the Double
     */
    @JsonGetter("LifeTimeSpendBalance")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getLifeTimeSpendBalance() {
        return lifeTimeSpendBalance;
    }

    /**
     * Setter for LifeTimeSpendBalance.
     * Balance spend value (amount) available for rest of the card’s life time.
     * @param lifeTimeSpendBalance Value for Double
     */
    @JsonSetter("LifeTimeSpendBalance")
    public void setLifeTimeSpendBalance(Double lifeTimeSpendBalance) {
        this.lifeTimeSpendBalance = lifeTimeSpendBalance;
    }

    /**
     * Getter for LifeTimeSpendOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @return Returns the Boolean
     */
    @JsonGetter("LifeTimeSpendOverride")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Boolean getLifeTimeSpendOverride() {
        return lifeTimeSpendOverride;
    }

    /**
     * Setter for LifeTimeSpendOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @param lifeTimeSpendOverride Value for Boolean
     */
    @JsonSetter("LifeTimeSpendOverride")
    public void setLifeTimeSpendOverride(Boolean lifeTimeSpendOverride) {
        this.lifeTimeSpendOverride = lifeTimeSpendOverride;
    }

    /**
     * Getter for LifeTimeSpendThreshold.
     * The limit to trigger an alert if the balance after a transaction reaches it or below. 0
     * indicates no alerts will be sent. Not present if not set (issuer value threshold limit
     * applies if available). Not present for COUNT type velocity. Example: 50.55 This is an
     * optional output field.
     * @return Returns the Double
     */
    @JsonGetter("LifeTimeSpendThreshold")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getLifeTimeSpendThreshold() {
        return lifeTimeSpendThreshold;
    }

    /**
     * Setter for LifeTimeSpendThreshold.
     * The limit to trigger an alert if the balance after a transaction reaches it or below. 0
     * indicates no alerts will be sent. Not present if not set (issuer value threshold limit
     * applies if available). Not present for COUNT type velocity. Example: 50.55 This is an
     * optional output field.
     * @param lifeTimeSpendThreshold Value for Double
     */
    @JsonSetter("LifeTimeSpendThreshold")
    public void setLifeTimeSpendThreshold(Double lifeTimeSpendThreshold) {
        this.lifeTimeSpendThreshold = lifeTimeSpendThreshold;
    }

    /**
     * Getter for DailyVolume.
     * Maximum volume (quantity) allowed per day. Card limit ‘0’ represents the value is inherited
     * and inherited limit could be calculated by adding accumulated and balance. However, Inherited
     * limit ‘0’ represents unlimited.
     * @return Returns the Double
     */
    @JsonGetter("DailyVolume")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getDailyVolume() {
        return dailyVolume;
    }

    /**
     * Setter for DailyVolume.
     * Maximum volume (quantity) allowed per day. Card limit ‘0’ represents the value is inherited
     * and inherited limit could be calculated by adding accumulated and balance. However, Inherited
     * limit ‘0’ represents unlimited.
     * @param dailyVolume Value for Double
     */
    @JsonSetter("DailyVolume")
    public void setDailyVolume(Double dailyVolume) {
        this.dailyVolume = dailyVolume;
    }

    /**
     * Getter for DailyVolumeAccumulated.
     * Volume (quantity) bought during the day.
     * @return Returns the Double
     */
    @JsonGetter("DailyVolumeAccumulated")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getDailyVolumeAccumulated() {
        return dailyVolumeAccumulated;
    }

    /**
     * Setter for DailyVolumeAccumulated.
     * Volume (quantity) bought during the day.
     * @param dailyVolumeAccumulated Value for Double
     */
    @JsonSetter("DailyVolumeAccumulated")
    public void setDailyVolumeAccumulated(Double dailyVolumeAccumulated) {
        this.dailyVolumeAccumulated = dailyVolumeAccumulated;
    }

    /**
     * Getter for DailyVolumeBalance.
     * Balance volume (quantity) available for rest of the day.
     * @return Returns the Double
     */
    @JsonGetter("DailyVolumeBalance")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getDailyVolumeBalance() {
        return dailyVolumeBalance;
    }

    /**
     * Setter for DailyVolumeBalance.
     * Balance volume (quantity) available for rest of the day.
     * @param dailyVolumeBalance Value for Double
     */
    @JsonSetter("DailyVolumeBalance")
    public void setDailyVolumeBalance(Double dailyVolumeBalance) {
        this.dailyVolumeBalance = dailyVolumeBalance;
    }

    /**
     * Getter for DailyVolumeOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @return Returns the Double
     */
    @JsonGetter("DailyVolumeOverride")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getDailyVolumeOverride() {
        return dailyVolumeOverride;
    }

    /**
     * Setter for DailyVolumeOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @param dailyVolumeOverride Value for Double
     */
    @JsonSetter("DailyVolumeOverride")
    public void setDailyVolumeOverride(Double dailyVolumeOverride) {
        this.dailyVolumeOverride = dailyVolumeOverride;
    }

    /**
     * Getter for DailyVolumeThreshold.
     * The limit to trigger an alert if the balance after a transaction reaches it or below. 0
     * indicates no alerts will be sent. Not present if not set (issuer value threshold limit
     * applies if available). Not present for COUNT type velocity. Example: 50.55 This is an
     * optional output field.
     * @return Returns the Double
     */
    @JsonGetter("DailyVolumeThreshold")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getDailyVolumeThreshold() {
        return dailyVolumeThreshold;
    }

    /**
     * Setter for DailyVolumeThreshold.
     * The limit to trigger an alert if the balance after a transaction reaches it or below. 0
     * indicates no alerts will be sent. Not present if not set (issuer value threshold limit
     * applies if available). Not present for COUNT type velocity. Example: 50.55 This is an
     * optional output field.
     * @param dailyVolumeThreshold Value for Double
     */
    @JsonSetter("DailyVolumeThreshold")
    public void setDailyVolumeThreshold(Double dailyVolumeThreshold) {
        this.dailyVolumeThreshold = dailyVolumeThreshold;
    }

    /**
     * Getter for WeeklyVolume.
     * Maximum volume (quantity) allowed per week. Card limit ‘0’ represents the value is inherited
     * and inherited limit could be calculated by adding accumulated and balance. However, Inherited
     * limit ‘0’ represents unlimited.
     * @return Returns the Double
     */
    @JsonGetter("WeeklyVolume")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getWeeklyVolume() {
        return weeklyVolume;
    }

    /**
     * Setter for WeeklyVolume.
     * Maximum volume (quantity) allowed per week. Card limit ‘0’ represents the value is inherited
     * and inherited limit could be calculated by adding accumulated and balance. However, Inherited
     * limit ‘0’ represents unlimited.
     * @param weeklyVolume Value for Double
     */
    @JsonSetter("WeeklyVolume")
    public void setWeeklyVolume(Double weeklyVolume) {
        this.weeklyVolume = weeklyVolume;
    }

    /**
     * Getter for WeeklyVolumeAccumulated.
     * Volume (quantity) bought during the week.
     * @return Returns the Double
     */
    @JsonGetter("WeeklyVolumeAccumulated")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getWeeklyVolumeAccumulated() {
        return weeklyVolumeAccumulated;
    }

    /**
     * Setter for WeeklyVolumeAccumulated.
     * Volume (quantity) bought during the week.
     * @param weeklyVolumeAccumulated Value for Double
     */
    @JsonSetter("WeeklyVolumeAccumulated")
    public void setWeeklyVolumeAccumulated(Double weeklyVolumeAccumulated) {
        this.weeklyVolumeAccumulated = weeklyVolumeAccumulated;
    }

    /**
     * Getter for WeeklyVolumeBalance.
     * Balance volume (quantity) available for rest of the week.
     * @return Returns the Double
     */
    @JsonGetter("WeeklyVolumeBalance")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getWeeklyVolumeBalance() {
        return weeklyVolumeBalance;
    }

    /**
     * Setter for WeeklyVolumeBalance.
     * Balance volume (quantity) available for rest of the week.
     * @param weeklyVolumeBalance Value for Double
     */
    @JsonSetter("WeeklyVolumeBalance")
    public void setWeeklyVolumeBalance(Double weeklyVolumeBalance) {
        this.weeklyVolumeBalance = weeklyVolumeBalance;
    }

    /**
     * Getter for WeeklyVolumeOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @return Returns the Boolean
     */
    @JsonGetter("WeeklyVolumeOverride")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Boolean getWeeklyVolumeOverride() {
        return weeklyVolumeOverride;
    }

    /**
     * Setter for WeeklyVolumeOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @param weeklyVolumeOverride Value for Boolean
     */
    @JsonSetter("WeeklyVolumeOverride")
    public void setWeeklyVolumeOverride(Boolean weeklyVolumeOverride) {
        this.weeklyVolumeOverride = weeklyVolumeOverride;
    }

    /**
     * Getter for WeeklyVolumeThreshold.
     * The limit to trigger an alert if the balance after a transaction reaches it or below. 0
     * indicates no alerts will be sent. Not present if not set (issuer value threshold limit
     * applies if available). Not present for COUNT type velocity. Example: 50.55 This is an
     * optional output field.
     * @return Returns the Double
     */
    @JsonGetter("WeeklyVolumeThreshold")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getWeeklyVolumeThreshold() {
        return weeklyVolumeThreshold;
    }

    /**
     * Setter for WeeklyVolumeThreshold.
     * The limit to trigger an alert if the balance after a transaction reaches it or below. 0
     * indicates no alerts will be sent. Not present if not set (issuer value threshold limit
     * applies if available). Not present for COUNT type velocity. Example: 50.55 This is an
     * optional output field.
     * @param weeklyVolumeThreshold Value for Double
     */
    @JsonSetter("WeeklyVolumeThreshold")
    public void setWeeklyVolumeThreshold(Double weeklyVolumeThreshold) {
        this.weeklyVolumeThreshold = weeklyVolumeThreshold;
    }

    /**
     * Getter for MonthlyVolume.
     * Maximum volume (quantity) allowed per month. Card limit ‘0’ represents the value is inherited
     * and inherited limit could be calculated by adding accumulated and balance. However, Inherited
     * limit ‘0’ represents unlimited.
     * @return Returns the Double
     */
    @JsonGetter("MonthlyVolume")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getMonthlyVolume() {
        return monthlyVolume;
    }

    /**
     * Setter for MonthlyVolume.
     * Maximum volume (quantity) allowed per month. Card limit ‘0’ represents the value is inherited
     * and inherited limit could be calculated by adding accumulated and balance. However, Inherited
     * limit ‘0’ represents unlimited.
     * @param monthlyVolume Value for Double
     */
    @JsonSetter("MonthlyVolume")
    public void setMonthlyVolume(Double monthlyVolume) {
        this.monthlyVolume = monthlyVolume;
    }

    /**
     * Getter for MonthlyVolumeAccumulated.
     * Volume (quantity) bought during the month.
     * @return Returns the Double
     */
    @JsonGetter("MonthlyVolumeAccumulated")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getMonthlyVolumeAccumulated() {
        return monthlyVolumeAccumulated;
    }

    /**
     * Setter for MonthlyVolumeAccumulated.
     * Volume (quantity) bought during the month.
     * @param monthlyVolumeAccumulated Value for Double
     */
    @JsonSetter("MonthlyVolumeAccumulated")
    public void setMonthlyVolumeAccumulated(Double monthlyVolumeAccumulated) {
        this.monthlyVolumeAccumulated = monthlyVolumeAccumulated;
    }

    /**
     * Getter for MonthlyVolumeBalance.
     * Balance volume (quantity) available for rest of the month.
     * @return Returns the Double
     */
    @JsonGetter("MonthlyVolumeBalance")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getMonthlyVolumeBalance() {
        return monthlyVolumeBalance;
    }

    /**
     * Setter for MonthlyVolumeBalance.
     * Balance volume (quantity) available for rest of the month.
     * @param monthlyVolumeBalance Value for Double
     */
    @JsonSetter("MonthlyVolumeBalance")
    public void setMonthlyVolumeBalance(Double monthlyVolumeBalance) {
        this.monthlyVolumeBalance = monthlyVolumeBalance;
    }

    /**
     * Getter for MonthlyVolumeOverride.
     * Indicate if the limit is overridden or default. (False for default).
     * @return Returns the Boolean
     */
    @JsonGetter("MonthlyVolumeOverride")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Boolean getMonthlyVolumeOverride() {
        return monthlyVolumeOverride;
    }

    /**
     * Setter for MonthlyVolumeOverride.
     * Indicate if the limit is overridden or default. (False for default).
     * @param monthlyVolumeOverride Value for Boolean
     */
    @JsonSetter("MonthlyVolumeOverride")
    public void setMonthlyVolumeOverride(Boolean monthlyVolumeOverride) {
        this.monthlyVolumeOverride = monthlyVolumeOverride;
    }

    /**
     * Getter for MonthlyVolumeThreshold.
     * The limit to trigger an alert if the balance after a transaction reaches it or below. 0
     * indicates no alerts will be sent. Not present if not set (issuer value threshold limit
     * applies if available). Not present for COUNT type velocity. Example: 50.55 This is an
     * optional output field.
     * @return Returns the Double
     */
    @JsonGetter("MonthlyVolumeThreshold")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getMonthlyVolumeThreshold() {
        return monthlyVolumeThreshold;
    }

    /**
     * Setter for MonthlyVolumeThreshold.
     * The limit to trigger an alert if the balance after a transaction reaches it or below. 0
     * indicates no alerts will be sent. Not present if not set (issuer value threshold limit
     * applies if available). Not present for COUNT type velocity. Example: 50.55 This is an
     * optional output field.
     * @param monthlyVolumeThreshold Value for Double
     */
    @JsonSetter("MonthlyVolumeThreshold")
    public void setMonthlyVolumeThreshold(Double monthlyVolumeThreshold) {
        this.monthlyVolumeThreshold = monthlyVolumeThreshold;
    }

    /**
     * Getter for PerTransactionVolume.
     * Maximum volume (quantity) allowed per transaction. Card limit ‘0’ represents the value is
     * inherited and inherited limit could be calculated by adding accumulated and balance. However,
     * Inherited limit ‘0’ represents unlimited.
     * @return Returns the Double
     */
    @JsonGetter("PerTransactionVolume")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getPerTransactionVolume() {
        return perTransactionVolume;
    }

    /**
     * Setter for PerTransactionVolume.
     * Maximum volume (quantity) allowed per transaction. Card limit ‘0’ represents the value is
     * inherited and inherited limit could be calculated by adding accumulated and balance. However,
     * Inherited limit ‘0’ represents unlimited.
     * @param perTransactionVolume Value for Double
     */
    @JsonSetter("PerTransactionVolume")
    public void setPerTransactionVolume(Double perTransactionVolume) {
        this.perTransactionVolume = perTransactionVolume;
    }

    /**
     * Getter for PerTransactionVolumeOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @return Returns the Boolean
     */
    @JsonGetter("PerTransactionVolumeOverride")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Boolean getPerTransactionVolumeOverride() {
        return perTransactionVolumeOverride;
    }

    /**
     * Setter for PerTransactionVolumeOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @param perTransactionVolumeOverride Value for Boolean
     */
    @JsonSetter("PerTransactionVolumeOverride")
    public void setPerTransactionVolumeOverride(Boolean perTransactionVolumeOverride) {
        this.perTransactionVolumeOverride = perTransactionVolumeOverride;
    }

    /**
     * Getter for AnnualVolume.
     * Maximum volume (quantity) allowed per annum. Card limit ‘0’ represents the value is inherited
     * and inherited limit could be calculated by adding accumulated and balance. However, Inherited
     * limit ‘0’ represents unlimited.
     * @return Returns the Double
     */
    @JsonGetter("AnnualVolume")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getAnnualVolume() {
        return annualVolume;
    }

    /**
     * Setter for AnnualVolume.
     * Maximum volume (quantity) allowed per annum. Card limit ‘0’ represents the value is inherited
     * and inherited limit could be calculated by adding accumulated and balance. However, Inherited
     * limit ‘0’ represents unlimited.
     * @param annualVolume Value for Double
     */
    @JsonSetter("AnnualVolume")
    public void setAnnualVolume(Double annualVolume) {
        this.annualVolume = annualVolume;
    }

    /**
     * Getter for AnnualVolumeAccumulated.
     * Volume (quantity) bought during the year.
     * @return Returns the Double
     */
    @JsonGetter("AnnualVolumeAccumulated")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getAnnualVolumeAccumulated() {
        return annualVolumeAccumulated;
    }

    /**
     * Setter for AnnualVolumeAccumulated.
     * Volume (quantity) bought during the year.
     * @param annualVolumeAccumulated Value for Double
     */
    @JsonSetter("AnnualVolumeAccumulated")
    public void setAnnualVolumeAccumulated(Double annualVolumeAccumulated) {
        this.annualVolumeAccumulated = annualVolumeAccumulated;
    }

    /**
     * Getter for AnnualVolumeBalance.
     * Balance volume (quantity) available for rest of the year.
     * @return Returns the Double
     */
    @JsonGetter("AnnualVolumeBalance")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getAnnualVolumeBalance() {
        return annualVolumeBalance;
    }

    /**
     * Setter for AnnualVolumeBalance.
     * Balance volume (quantity) available for rest of the year.
     * @param annualVolumeBalance Value for Double
     */
    @JsonSetter("AnnualVolumeBalance")
    public void setAnnualVolumeBalance(Double annualVolumeBalance) {
        this.annualVolumeBalance = annualVolumeBalance;
    }

    /**
     * Getter for AnnualVolumeOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @return Returns the Boolean
     */
    @JsonGetter("AnnualVolumeOverride")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Boolean getAnnualVolumeOverride() {
        return annualVolumeOverride;
    }

    /**
     * Setter for AnnualVolumeOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @param annualVolumeOverride Value for Boolean
     */
    @JsonSetter("AnnualVolumeOverride")
    public void setAnnualVolumeOverride(Boolean annualVolumeOverride) {
        this.annualVolumeOverride = annualVolumeOverride;
    }

    /**
     * Getter for AnnualVolumeThreshold.
     * The limit to trigger an alert if the balance after a transaction reaches it or below. 0
     * indicates no alerts will be sent. Not present if not set (issuer value threshold limit
     * applies if available). Not present for COUNT type velocity. Example: 50.55 This is an
     * optional output field.
     * @return Returns the Double
     */
    @JsonGetter("AnnualVolumeThreshold")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getAnnualVolumeThreshold() {
        return annualVolumeThreshold;
    }

    /**
     * Setter for AnnualVolumeThreshold.
     * The limit to trigger an alert if the balance after a transaction reaches it or below. 0
     * indicates no alerts will be sent. Not present if not set (issuer value threshold limit
     * applies if available). Not present for COUNT type velocity. Example: 50.55 This is an
     * optional output field.
     * @param annualVolumeThreshold Value for Double
     */
    @JsonSetter("AnnualVolumeThreshold")
    public void setAnnualVolumeThreshold(Double annualVolumeThreshold) {
        this.annualVolumeThreshold = annualVolumeThreshold;
    }

    /**
     * Getter for LifeTimeVolume.
     * Maximum volume (quantity) allowed in the card’s life time. Card limit ‘0’ represents the
     * value is inherited and inherited limit could be calculated by adding accumulated and balance.
     * However, Inherited limit ‘0’ represents unlimited.
     * @return Returns the Double
     */
    @JsonGetter("LifeTimeVolume")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getLifeTimeVolume() {
        return lifeTimeVolume;
    }

    /**
     * Setter for LifeTimeVolume.
     * Maximum volume (quantity) allowed in the card’s life time. Card limit ‘0’ represents the
     * value is inherited and inherited limit could be calculated by adding accumulated and balance.
     * However, Inherited limit ‘0’ represents unlimited.
     * @param lifeTimeVolume Value for Double
     */
    @JsonSetter("LifeTimeVolume")
    public void setLifeTimeVolume(Double lifeTimeVolume) {
        this.lifeTimeVolume = lifeTimeVolume;
    }

    /**
     * Getter for LifeTimeVolumeAccumulated.
     * Volume (quantity) bought during the card’s life time.
     * @return Returns the Double
     */
    @JsonGetter("LifeTimeVolumeAccumulated")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getLifeTimeVolumeAccumulated() {
        return lifeTimeVolumeAccumulated;
    }

    /**
     * Setter for LifeTimeVolumeAccumulated.
     * Volume (quantity) bought during the card’s life time.
     * @param lifeTimeVolumeAccumulated Value for Double
     */
    @JsonSetter("LifeTimeVolumeAccumulated")
    public void setLifeTimeVolumeAccumulated(Double lifeTimeVolumeAccumulated) {
        this.lifeTimeVolumeAccumulated = lifeTimeVolumeAccumulated;
    }

    /**
     * Getter for LifeTimeVolumeBalance.
     * Balance volume (quantity) available for rest of the card’s life time.
     * @return Returns the Double
     */
    @JsonGetter("LifeTimeVolumeBalance")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getLifeTimeVolumeBalance() {
        return lifeTimeVolumeBalance;
    }

    /**
     * Setter for LifeTimeVolumeBalance.
     * Balance volume (quantity) available for rest of the card’s life time.
     * @param lifeTimeVolumeBalance Value for Double
     */
    @JsonSetter("LifeTimeVolumeBalance")
    public void setLifeTimeVolumeBalance(Double lifeTimeVolumeBalance) {
        this.lifeTimeVolumeBalance = lifeTimeVolumeBalance;
    }

    /**
     * Getter for LifeTimeVolumeOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @return Returns the Boolean
     */
    @JsonGetter("LifeTimeVolumeOverride")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Boolean getLifeTimeVolumeOverride() {
        return lifeTimeVolumeOverride;
    }

    /**
     * Setter for LifeTimeVolumeOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @param lifeTimeVolumeOverride Value for Boolean
     */
    @JsonSetter("LifeTimeVolumeOverride")
    public void setLifeTimeVolumeOverride(Boolean lifeTimeVolumeOverride) {
        this.lifeTimeVolumeOverride = lifeTimeVolumeOverride;
    }

    /**
     * Getter for LifeTimeVolumeThreshold.
     * The limit to trigger an alert if the balance after a transaction reaches it or below. 0
     * indicates no alerts will be sent. Not present if not set (issuer value threshold limit
     * applies if available). Not present for COUNT type velocity. Example: 50.55 This is an
     * optional output field.
     * @return Returns the Double
     */
    @JsonGetter("LifeTimeVolumeThreshold")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getLifeTimeVolumeThreshold() {
        return lifeTimeVolumeThreshold;
    }

    /**
     * Setter for LifeTimeVolumeThreshold.
     * The limit to trigger an alert if the balance after a transaction reaches it or below. 0
     * indicates no alerts will be sent. Not present if not set (issuer value threshold limit
     * applies if available). Not present for COUNT type velocity. Example: 50.55 This is an
     * optional output field.
     * @param lifeTimeVolumeThreshold Value for Double
     */
    @JsonSetter("LifeTimeVolumeThreshold")
    public void setLifeTimeVolumeThreshold(Double lifeTimeVolumeThreshold) {
        this.lifeTimeVolumeThreshold = lifeTimeVolumeThreshold;
    }

    /**
     * Getter for DailyTransactionCount.
     * Maximum number of transactions allowed per day. Card limit ‘0’ represents the value is
     * inherited and inherited limit could be calculated by adding accumulated and balance. However,
     * Inherited limit ‘0’ represents unlimited
     * @return Returns the Double
     */
    @JsonGetter("DailyTransactionCount")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getDailyTransactionCount() {
        return dailyTransactionCount;
    }

    /**
     * Setter for DailyTransactionCount.
     * Maximum number of transactions allowed per day. Card limit ‘0’ represents the value is
     * inherited and inherited limit could be calculated by adding accumulated and balance. However,
     * Inherited limit ‘0’ represents unlimited
     * @param dailyTransactionCount Value for Double
     */
    @JsonSetter("DailyTransactionCount")
    public void setDailyTransactionCount(Double dailyTransactionCount) {
        this.dailyTransactionCount = dailyTransactionCount;
    }

    /**
     * Getter for DailyTransactionAccumulated.
     * Number of times the card is used during the day.
     * @return Returns the Double
     */
    @JsonGetter("DailyTransactionAccumulated")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getDailyTransactionAccumulated() {
        return dailyTransactionAccumulated;
    }

    /**
     * Setter for DailyTransactionAccumulated.
     * Number of times the card is used during the day.
     * @param dailyTransactionAccumulated Value for Double
     */
    @JsonSetter("DailyTransactionAccumulated")
    public void setDailyTransactionAccumulated(Double dailyTransactionAccumulated) {
        this.dailyTransactionAccumulated = dailyTransactionAccumulated;
    }

    /**
     * Getter for DailyTransactionBalance.
     * Number of times the card could be used in rest of the day.
     * @return Returns the Double
     */
    @JsonGetter("DailyTransactionBalance")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getDailyTransactionBalance() {
        return dailyTransactionBalance;
    }

    /**
     * Setter for DailyTransactionBalance.
     * Number of times the card could be used in rest of the day.
     * @param dailyTransactionBalance Value for Double
     */
    @JsonSetter("DailyTransactionBalance")
    public void setDailyTransactionBalance(Double dailyTransactionBalance) {
        this.dailyTransactionBalance = dailyTransactionBalance;
    }

    /**
     * Getter for DailyTransactionOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @return Returns the Boolean
     */
    @JsonGetter("DailyTransactionOverride")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Boolean getDailyTransactionOverride() {
        return dailyTransactionOverride;
    }

    /**
     * Setter for DailyTransactionOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @param dailyTransactionOverride Value for Boolean
     */
    @JsonSetter("DailyTransactionOverride")
    public void setDailyTransactionOverride(Boolean dailyTransactionOverride) {
        this.dailyTransactionOverride = dailyTransactionOverride;
    }

    /**
     * Getter for DailyTransactionThreshold.
     * The limit to trigger an alert if the balance after a transaction reaches it or below. 0
     * indicates no alerts will be sent. Not present if not set (issuer value threshold limit
     * applies if available). Not present for COUNT type velocity. Example: 50.55 This is an
     * optional output field.
     * @return Returns the Double
     */
    @JsonGetter("DailyTransactionThreshold")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getDailyTransactionThreshold() {
        return dailyTransactionThreshold;
    }

    /**
     * Setter for DailyTransactionThreshold.
     * The limit to trigger an alert if the balance after a transaction reaches it or below. 0
     * indicates no alerts will be sent. Not present if not set (issuer value threshold limit
     * applies if available). Not present for COUNT type velocity. Example: 50.55 This is an
     * optional output field.
     * @param dailyTransactionThreshold Value for Double
     */
    @JsonSetter("DailyTransactionThreshold")
    public void setDailyTransactionThreshold(Double dailyTransactionThreshold) {
        this.dailyTransactionThreshold = dailyTransactionThreshold;
    }

    /**
     * Getter for WeeklyTransactionCount.
     * Maximum number of transactions allowed per week. Card limit ‘0’ represents the value is
     * inherited and inherited limit could be calculated by adding accumulated and balance. However,
     * Inherited limit ‘0’ represents unlimited.
     * @return Returns the Double
     */
    @JsonGetter("WeeklyTransactionCount")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getWeeklyTransactionCount() {
        return weeklyTransactionCount;
    }

    /**
     * Setter for WeeklyTransactionCount.
     * Maximum number of transactions allowed per week. Card limit ‘0’ represents the value is
     * inherited and inherited limit could be calculated by adding accumulated and balance. However,
     * Inherited limit ‘0’ represents unlimited.
     * @param weeklyTransactionCount Value for Double
     */
    @JsonSetter("WeeklyTransactionCount")
    public void setWeeklyTransactionCount(Double weeklyTransactionCount) {
        this.weeklyTransactionCount = weeklyTransactionCount;
    }

    /**
     * Getter for WeeklyTransactionAccumulated.
     * Number of times the card is used during the week
     * @return Returns the Double
     */
    @JsonGetter("WeeklyTransactionAccumulated")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getWeeklyTransactionAccumulated() {
        return weeklyTransactionAccumulated;
    }

    /**
     * Setter for WeeklyTransactionAccumulated.
     * Number of times the card is used during the week
     * @param weeklyTransactionAccumulated Value for Double
     */
    @JsonSetter("WeeklyTransactionAccumulated")
    public void setWeeklyTransactionAccumulated(Double weeklyTransactionAccumulated) {
        this.weeklyTransactionAccumulated = weeklyTransactionAccumulated;
    }

    /**
     * Getter for WeeklyTransactionBalance.
     * Number of times the card could be used in rest of the week.
     * @return Returns the Double
     */
    @JsonGetter("WeeklyTransactionBalance")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getWeeklyTransactionBalance() {
        return weeklyTransactionBalance;
    }

    /**
     * Setter for WeeklyTransactionBalance.
     * Number of times the card could be used in rest of the week.
     * @param weeklyTransactionBalance Value for Double
     */
    @JsonSetter("WeeklyTransactionBalance")
    public void setWeeklyTransactionBalance(Double weeklyTransactionBalance) {
        this.weeklyTransactionBalance = weeklyTransactionBalance;
    }

    /**
     * Getter for WeeklyTransactionOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @return Returns the Boolean
     */
    @JsonGetter("WeeklyTransactionOverride")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Boolean getWeeklyTransactionOverride() {
        return weeklyTransactionOverride;
    }

    /**
     * Setter for WeeklyTransactionOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @param weeklyTransactionOverride Value for Boolean
     */
    @JsonSetter("WeeklyTransactionOverride")
    public void setWeeklyTransactionOverride(Boolean weeklyTransactionOverride) {
        this.weeklyTransactionOverride = weeklyTransactionOverride;
    }

    /**
     * Getter for WeeklyTransactionThreshold.
     * The limit to trigger an alert if the balance after a transaction reaches it or below. 0
     * indicates no alerts will be sent. Not present if not set (issuer value threshold limit
     * applies if available). Not present for COUNT type velocity. Example: 50.55 This is an
     * optional output field.
     * @return Returns the Double
     */
    @JsonGetter("WeeklyTransactionThreshold")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getWeeklyTransactionThreshold() {
        return weeklyTransactionThreshold;
    }

    /**
     * Setter for WeeklyTransactionThreshold.
     * The limit to trigger an alert if the balance after a transaction reaches it or below. 0
     * indicates no alerts will be sent. Not present if not set (issuer value threshold limit
     * applies if available). Not present for COUNT type velocity. Example: 50.55 This is an
     * optional output field.
     * @param weeklyTransactionThreshold Value for Double
     */
    @JsonSetter("WeeklyTransactionThreshold")
    public void setWeeklyTransactionThreshold(Double weeklyTransactionThreshold) {
        this.weeklyTransactionThreshold = weeklyTransactionThreshold;
    }

    /**
     * Getter for MonthlyTransactionCount.
     * Maximum number of transactions allowed per month. Card limit ‘0’ represents the value is
     * inherited and inherited limit could be calculated by adding accumulated and balance. However,
     * Inherited limit ‘0’ represents unlimited.
     * @return Returns the Double
     */
    @JsonGetter("MonthlyTransactionCount")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getMonthlyTransactionCount() {
        return monthlyTransactionCount;
    }

    /**
     * Setter for MonthlyTransactionCount.
     * Maximum number of transactions allowed per month. Card limit ‘0’ represents the value is
     * inherited and inherited limit could be calculated by adding accumulated and balance. However,
     * Inherited limit ‘0’ represents unlimited.
     * @param monthlyTransactionCount Value for Double
     */
    @JsonSetter("MonthlyTransactionCount")
    public void setMonthlyTransactionCount(Double monthlyTransactionCount) {
        this.monthlyTransactionCount = monthlyTransactionCount;
    }

    /**
     * Getter for MonthlyTransactionAccumulated.
     * Number of times the card is used during the month
     * @return Returns the Double
     */
    @JsonGetter("MonthlyTransactionAccumulated")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getMonthlyTransactionAccumulated() {
        return monthlyTransactionAccumulated;
    }

    /**
     * Setter for MonthlyTransactionAccumulated.
     * Number of times the card is used during the month
     * @param monthlyTransactionAccumulated Value for Double
     */
    @JsonSetter("MonthlyTransactionAccumulated")
    public void setMonthlyTransactionAccumulated(Double monthlyTransactionAccumulated) {
        this.monthlyTransactionAccumulated = monthlyTransactionAccumulated;
    }

    /**
     * Getter for MonthlyTransactionBalance.
     * Number of times the card could be used in rest of the month.
     * @return Returns the Double
     */
    @JsonGetter("MonthlyTransactionBalance")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getMonthlyTransactionBalance() {
        return monthlyTransactionBalance;
    }

    /**
     * Setter for MonthlyTransactionBalance.
     * Number of times the card could be used in rest of the month.
     * @param monthlyTransactionBalance Value for Double
     */
    @JsonSetter("MonthlyTransactionBalance")
    public void setMonthlyTransactionBalance(Double monthlyTransactionBalance) {
        this.monthlyTransactionBalance = monthlyTransactionBalance;
    }

    /**
     * Getter for MonthlyTransactionOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @return Returns the Boolean
     */
    @JsonGetter("MonthlyTransactionOverride")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Boolean getMonthlyTransactionOverride() {
        return monthlyTransactionOverride;
    }

    /**
     * Setter for MonthlyTransactionOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @param monthlyTransactionOverride Value for Boolean
     */
    @JsonSetter("MonthlyTransactionOverride")
    public void setMonthlyTransactionOverride(Boolean monthlyTransactionOverride) {
        this.monthlyTransactionOverride = monthlyTransactionOverride;
    }

    /**
     * Getter for MonthlyTransactionThreshold.
     * The limit to trigger an alert if the balance after a transaction reaches it or below. 0
     * indicates no alerts will be sent. Not present if not set (issuer value threshold limit
     * applies if available). Not present for COUNT type velocity. Example: 50.55 This is an
     * optional output field.
     * @return Returns the Double
     */
    @JsonGetter("MonthlyTransactionThreshold")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getMonthlyTransactionThreshold() {
        return monthlyTransactionThreshold;
    }

    /**
     * Setter for MonthlyTransactionThreshold.
     * The limit to trigger an alert if the balance after a transaction reaches it or below. 0
     * indicates no alerts will be sent. Not present if not set (issuer value threshold limit
     * applies if available). Not present for COUNT type velocity. Example: 50.55 This is an
     * optional output field.
     * @param monthlyTransactionThreshold Value for Double
     */
    @JsonSetter("MonthlyTransactionThreshold")
    public void setMonthlyTransactionThreshold(Double monthlyTransactionThreshold) {
        this.monthlyTransactionThreshold = monthlyTransactionThreshold;
    }

    /**
     * Getter for AnnualTransactionCount.
     * Maximum number of transactions allowed per annum. Card limit ‘0’ represents the value is
     * inherited and inherited limit could be calculated by adding accumulated and balance.
     * @return Returns the Double
     */
    @JsonGetter("AnnualTransactionCount")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getAnnualTransactionCount() {
        return annualTransactionCount;
    }

    /**
     * Setter for AnnualTransactionCount.
     * Maximum number of transactions allowed per annum. Card limit ‘0’ represents the value is
     * inherited and inherited limit could be calculated by adding accumulated and balance.
     * @param annualTransactionCount Value for Double
     */
    @JsonSetter("AnnualTransactionCount")
    public void setAnnualTransactionCount(Double annualTransactionCount) {
        this.annualTransactionCount = annualTransactionCount;
    }

    /**
     * Getter for AnnualTransactionAccumulated.
     * Number of times the card is used during the year.
     * @return Returns the Double
     */
    @JsonGetter("AnnualTransactionAccumulated")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getAnnualTransactionAccumulated() {
        return annualTransactionAccumulated;
    }

    /**
     * Setter for AnnualTransactionAccumulated.
     * Number of times the card is used during the year.
     * @param annualTransactionAccumulated Value for Double
     */
    @JsonSetter("AnnualTransactionAccumulated")
    public void setAnnualTransactionAccumulated(Double annualTransactionAccumulated) {
        this.annualTransactionAccumulated = annualTransactionAccumulated;
    }

    /**
     * Getter for AnnualTransactionBalance.
     * Number of times the card could be used in rest of the year.
     * @return Returns the Double
     */
    @JsonGetter("AnnualTransactionBalance")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getAnnualTransactionBalance() {
        return annualTransactionBalance;
    }

    /**
     * Setter for AnnualTransactionBalance.
     * Number of times the card could be used in rest of the year.
     * @param annualTransactionBalance Value for Double
     */
    @JsonSetter("AnnualTransactionBalance")
    public void setAnnualTransactionBalance(Double annualTransactionBalance) {
        this.annualTransactionBalance = annualTransactionBalance;
    }

    /**
     * Getter for AnnualTransactionOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @return Returns the Boolean
     */
    @JsonGetter("AnnualTransactionOverride")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Boolean getAnnualTransactionOverride() {
        return annualTransactionOverride;
    }

    /**
     * Setter for AnnualTransactionOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @param annualTransactionOverride Value for Boolean
     */
    @JsonSetter("AnnualTransactionOverride")
    public void setAnnualTransactionOverride(Boolean annualTransactionOverride) {
        this.annualTransactionOverride = annualTransactionOverride;
    }

    /**
     * Getter for AnnualTransactionThreshold.
     * The limit to trigger an alert if the balance after a transaction reaches it or below. 0
     * indicates no alerts will be sent. Not present if not set (issuer value threshold limit
     * applies if available). Not present for COUNT type velocity. Example: 50.55 This is an
     * optional output field.
     * @return Returns the Double
     */
    @JsonGetter("AnnualTransactionThreshold")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getAnnualTransactionThreshold() {
        return annualTransactionThreshold;
    }

    /**
     * Setter for AnnualTransactionThreshold.
     * The limit to trigger an alert if the balance after a transaction reaches it or below. 0
     * indicates no alerts will be sent. Not present if not set (issuer value threshold limit
     * applies if available). Not present for COUNT type velocity. Example: 50.55 This is an
     * optional output field.
     * @param annualTransactionThreshold Value for Double
     */
    @JsonSetter("AnnualTransactionThreshold")
    public void setAnnualTransactionThreshold(Double annualTransactionThreshold) {
        this.annualTransactionThreshold = annualTransactionThreshold;
    }

    /**
     * Getter for LifeTimeTransactionCount.
     * Maximum number of transactions allowed in the card’s life time. Card limit ‘0’ represents the
     * value is inherited and inherited limit could be calculated by adding accumulated and balance.
     * However, Inherited limit ‘0’ represents unlimited.
     * @return Returns the Double
     */
    @JsonGetter("LifeTimeTransactionCount")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getLifeTimeTransactionCount() {
        return lifeTimeTransactionCount;
    }

    /**
     * Setter for LifeTimeTransactionCount.
     * Maximum number of transactions allowed in the card’s life time. Card limit ‘0’ represents the
     * value is inherited and inherited limit could be calculated by adding accumulated and balance.
     * However, Inherited limit ‘0’ represents unlimited.
     * @param lifeTimeTransactionCount Value for Double
     */
    @JsonSetter("LifeTimeTransactionCount")
    public void setLifeTimeTransactionCount(Double lifeTimeTransactionCount) {
        this.lifeTimeTransactionCount = lifeTimeTransactionCount;
    }

    /**
     * Getter for LifeTimeTransactionAccumulated.
     * Number of times the card is used during the card’s life time.
     * @return Returns the Double
     */
    @JsonGetter("LifeTimeTransactionAccumulated")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getLifeTimeTransactionAccumulated() {
        return lifeTimeTransactionAccumulated;
    }

    /**
     * Setter for LifeTimeTransactionAccumulated.
     * Number of times the card is used during the card’s life time.
     * @param lifeTimeTransactionAccumulated Value for Double
     */
    @JsonSetter("LifeTimeTransactionAccumulated")
    public void setLifeTimeTransactionAccumulated(Double lifeTimeTransactionAccumulated) {
        this.lifeTimeTransactionAccumulated = lifeTimeTransactionAccumulated;
    }

    /**
     * Getter for LifeTimeTransactionBalance.
     * Number of times the card could be used in rest of the card’s life time.
     * @return Returns the Double
     */
    @JsonGetter("LifeTimeTransactionBalance")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getLifeTimeTransactionBalance() {
        return lifeTimeTransactionBalance;
    }

    /**
     * Setter for LifeTimeTransactionBalance.
     * Number of times the card could be used in rest of the card’s life time.
     * @param lifeTimeTransactionBalance Value for Double
     */
    @JsonSetter("LifeTimeTransactionBalance")
    public void setLifeTimeTransactionBalance(Double lifeTimeTransactionBalance) {
        this.lifeTimeTransactionBalance = lifeTimeTransactionBalance;
    }

    /**
     * Getter for LifeTimeTransactionOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @return Returns the Boolean
     */
    @JsonGetter("LifeTimeTransactionOverride")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Boolean getLifeTimeTransactionOverride() {
        return lifeTimeTransactionOverride;
    }

    /**
     * Setter for LifeTimeTransactionOverride.
     * Indicate if the limit is overridden or default. (False for default). Example: false
     * @param lifeTimeTransactionOverride Value for Boolean
     */
    @JsonSetter("LifeTimeTransactionOverride")
    public void setLifeTimeTransactionOverride(Boolean lifeTimeTransactionOverride) {
        this.lifeTimeTransactionOverride = lifeTimeTransactionOverride;
    }

    /**
     * Getter for LifeTimeTransactionThreshold.
     * The limit to trigger an alert if the balance after a transaction reaches it or below. 0
     * indicates no alerts will be sent. Not present if not set (issuer value threshold limit
     * applies if available). Not present for COUNT type velocity. Example: 50.55 This is an
     * optional output field.
     * @return Returns the Double
     */
    @JsonGetter("LifeTimeTransactionThreshold")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Double getLifeTimeTransactionThreshold() {
        return lifeTimeTransactionThreshold;
    }

    /**
     * Setter for LifeTimeTransactionThreshold.
     * The limit to trigger an alert if the balance after a transaction reaches it or below. 0
     * indicates no alerts will be sent. Not present if not set (issuer value threshold limit
     * applies if available). Not present for COUNT type velocity. Example: 50.55 This is an
     * optional output field.
     * @param lifeTimeTransactionThreshold Value for Double
     */
    @JsonSetter("LifeTimeTransactionThreshold")
    public void setLifeTimeTransactionThreshold(Double lifeTimeTransactionThreshold) {
        this.lifeTimeTransactionThreshold = lifeTimeTransactionThreshold;
    }

    /**
     * Converts this UsageRestriction into string format.
     * @return String representation of this class
     */
    @Override
    public String toString() {
        return "UsageRestriction [" + "level=" + level + ", dailySpend=" + dailySpend
                + ", dailySpendAccumulated=" + dailySpendAccumulated + ", dailySpendBalance="
                + dailySpendBalance + ", dailySpendOverride=" + dailySpendOverride
                + ", dailySpendThreshold=" + dailySpendThreshold + ", weeklySpend=" + weeklySpend
                + ", weeklySpendAccumulated=" + weeklySpendAccumulated + ", weeklySpendBalance="
                + weeklySpendBalance + ", weeklySpendOverride=" + weeklySpendOverride
                + ", weeklySpendThreshold=" + weeklySpendThreshold + ", monthlySpend="
                + monthlySpend + ", monthlySpendAccumulated=" + monthlySpendAccumulated
                + ", monthlySpendBalance=" + monthlySpendBalance + ", monthlySpendOverride="
                + monthlySpendOverride + ", perTransactionSpend=" + perTransactionSpend
                + ", perTransactionSpendOverride=" + perTransactionSpendOverride + ", annualSpend="
                + annualSpend + ", annualSpendAccumulated=" + annualSpendAccumulated
                + ", annualSpendBalance=" + annualSpendBalance + ", annualSpendOverride="
                + annualSpendOverride + ", annualSpendThreshold=" + annualSpendThreshold
                + ", lifeTimeSpend=" + lifeTimeSpend + ", lifeTimeSpendAccumulated="
                + lifeTimeSpendAccumulated + ", lifeTimeSpendBalance=" + lifeTimeSpendBalance
                + ", lifeTimeSpendOverride=" + lifeTimeSpendOverride + ", lifeTimeSpendThreshold="
                + lifeTimeSpendThreshold + ", dailyVolume=" + dailyVolume
                + ", dailyVolumeAccumulated=" + dailyVolumeAccumulated + ", dailyVolumeBalance="
                + dailyVolumeBalance + ", dailyVolumeOverride=" + dailyVolumeOverride
                + ", dailyVolumeThreshold=" + dailyVolumeThreshold + ", weeklyVolume="
                + weeklyVolume + ", weeklyVolumeAccumulated=" + weeklyVolumeAccumulated
                + ", weeklyVolumeBalance=" + weeklyVolumeBalance + ", weeklyVolumeOverride="
                + weeklyVolumeOverride + ", weeklyVolumeThreshold=" + weeklyVolumeThreshold
                + ", monthlyVolume=" + monthlyVolume + ", monthlyVolumeAccumulated="
                + monthlyVolumeAccumulated + ", monthlyVolumeBalance=" + monthlyVolumeBalance
                + ", monthlyVolumeOverride=" + monthlyVolumeOverride + ", monthlyVolumeThreshold="
                + monthlyVolumeThreshold + ", perTransactionVolume=" + perTransactionVolume
                + ", perTransactionVolumeOverride=" + perTransactionVolumeOverride
                + ", annualVolume=" + annualVolume + ", annualVolumeAccumulated="
                + annualVolumeAccumulated + ", annualVolumeBalance=" + annualVolumeBalance
                + ", annualVolumeOverride=" + annualVolumeOverride + ", annualVolumeThreshold="
                + annualVolumeThreshold + ", lifeTimeVolume=" + lifeTimeVolume
                + ", lifeTimeVolumeAccumulated=" + lifeTimeVolumeAccumulated
                + ", lifeTimeVolumeBalance=" + lifeTimeVolumeBalance + ", lifeTimeVolumeOverride="
                + lifeTimeVolumeOverride + ", lifeTimeVolumeThreshold=" + lifeTimeVolumeThreshold
                + ", dailyTransactionCount=" + dailyTransactionCount
                + ", dailyTransactionAccumulated=" + dailyTransactionAccumulated
                + ", dailyTransactionBalance=" + dailyTransactionBalance
                + ", dailyTransactionOverride=" + dailyTransactionOverride
                + ", dailyTransactionThreshold=" + dailyTransactionThreshold
                + ", weeklyTransactionCount=" + weeklyTransactionCount
                + ", weeklyTransactionAccumulated=" + weeklyTransactionAccumulated
                + ", weeklyTransactionBalance=" + weeklyTransactionBalance
                + ", weeklyTransactionOverride=" + weeklyTransactionOverride
                + ", weeklyTransactionThreshold=" + weeklyTransactionThreshold
                + ", monthlyTransactionCount=" + monthlyTransactionCount
                + ", monthlyTransactionAccumulated=" + monthlyTransactionAccumulated
                + ", monthlyTransactionBalance=" + monthlyTransactionBalance
                + ", monthlyTransactionOverride=" + monthlyTransactionOverride
                + ", monthlyTransactionThreshold=" + monthlyTransactionThreshold
                + ", annualTransactionCount=" + annualTransactionCount
                + ", annualTransactionAccumulated=" + annualTransactionAccumulated
                + ", annualTransactionBalance=" + annualTransactionBalance
                + ", annualTransactionOverride=" + annualTransactionOverride
                + ", annualTransactionThreshold=" + annualTransactionThreshold
                + ", lifeTimeTransactionCount=" + lifeTimeTransactionCount
                + ", lifeTimeTransactionAccumulated=" + lifeTimeTransactionAccumulated
                + ", lifeTimeTransactionBalance=" + lifeTimeTransactionBalance
                + ", lifeTimeTransactionOverride=" + lifeTimeTransactionOverride
                + ", lifeTimeTransactionThreshold=" + lifeTimeTransactionThreshold + "]";
    }

    /**
     * Builds a new {@link UsageRestriction.Builder} object.
     * Creates the instance with the state of the current model.
     * @return a new {@link UsageRestriction.Builder} object
     */
    public Builder toBuilder() {
        Builder builder = new Builder()
                .level(getLevel())
                .dailySpend(getDailySpend())
                .dailySpendAccumulated(getDailySpendAccumulated())
                .dailySpendBalance(getDailySpendBalance())
                .dailySpendOverride(getDailySpendOverride())
                .dailySpendThreshold(getDailySpendThreshold())
                .weeklySpend(getWeeklySpend())
                .weeklySpendAccumulated(getWeeklySpendAccumulated())
                .weeklySpendBalance(getWeeklySpendBalance())
                .weeklySpendOverride(getWeeklySpendOverride())
                .weeklySpendThreshold(getWeeklySpendThreshold())
                .monthlySpend(getMonthlySpend())
                .monthlySpendAccumulated(getMonthlySpendAccumulated())
                .monthlySpendBalance(getMonthlySpendBalance())
                .monthlySpendOverride(getMonthlySpendOverride())
                .perTransactionSpend(getPerTransactionSpend())
                .perTransactionSpendOverride(getPerTransactionSpendOverride())
                .annualSpend(getAnnualSpend())
                .annualSpendAccumulated(getAnnualSpendAccumulated())
                .annualSpendBalance(getAnnualSpendBalance())
                .annualSpendOverride(getAnnualSpendOverride())
                .annualSpendThreshold(getAnnualSpendThreshold())
                .lifeTimeSpend(getLifeTimeSpend())
                .lifeTimeSpendAccumulated(getLifeTimeSpendAccumulated())
                .lifeTimeSpendBalance(getLifeTimeSpendBalance())
                .lifeTimeSpendOverride(getLifeTimeSpendOverride())
                .lifeTimeSpendThreshold(getLifeTimeSpendThreshold())
                .dailyVolume(getDailyVolume())
                .dailyVolumeAccumulated(getDailyVolumeAccumulated())
                .dailyVolumeBalance(getDailyVolumeBalance())
                .dailyVolumeOverride(getDailyVolumeOverride())
                .dailyVolumeThreshold(getDailyVolumeThreshold())
                .weeklyVolume(getWeeklyVolume())
                .weeklyVolumeAccumulated(getWeeklyVolumeAccumulated())
                .weeklyVolumeBalance(getWeeklyVolumeBalance())
                .weeklyVolumeOverride(getWeeklyVolumeOverride())
                .weeklyVolumeThreshold(getWeeklyVolumeThreshold())
                .monthlyVolume(getMonthlyVolume())
                .monthlyVolumeAccumulated(getMonthlyVolumeAccumulated())
                .monthlyVolumeBalance(getMonthlyVolumeBalance())
                .monthlyVolumeOverride(getMonthlyVolumeOverride())
                .monthlyVolumeThreshold(getMonthlyVolumeThreshold())
                .perTransactionVolume(getPerTransactionVolume())
                .perTransactionVolumeOverride(getPerTransactionVolumeOverride())
                .annualVolume(getAnnualVolume())
                .annualVolumeAccumulated(getAnnualVolumeAccumulated())
                .annualVolumeBalance(getAnnualVolumeBalance())
                .annualVolumeOverride(getAnnualVolumeOverride())
                .annualVolumeThreshold(getAnnualVolumeThreshold())
                .lifeTimeVolume(getLifeTimeVolume())
                .lifeTimeVolumeAccumulated(getLifeTimeVolumeAccumulated())
                .lifeTimeVolumeBalance(getLifeTimeVolumeBalance())
                .lifeTimeVolumeOverride(getLifeTimeVolumeOverride())
                .lifeTimeVolumeThreshold(getLifeTimeVolumeThreshold())
                .dailyTransactionCount(getDailyTransactionCount())
                .dailyTransactionAccumulated(getDailyTransactionAccumulated())
                .dailyTransactionBalance(getDailyTransactionBalance())
                .dailyTransactionOverride(getDailyTransactionOverride())
                .dailyTransactionThreshold(getDailyTransactionThreshold())
                .weeklyTransactionCount(getWeeklyTransactionCount())
                .weeklyTransactionAccumulated(getWeeklyTransactionAccumulated())
                .weeklyTransactionBalance(getWeeklyTransactionBalance())
                .weeklyTransactionOverride(getWeeklyTransactionOverride())
                .weeklyTransactionThreshold(getWeeklyTransactionThreshold())
                .monthlyTransactionCount(getMonthlyTransactionCount())
                .monthlyTransactionAccumulated(getMonthlyTransactionAccumulated())
                .monthlyTransactionBalance(getMonthlyTransactionBalance())
                .monthlyTransactionOverride(getMonthlyTransactionOverride())
                .monthlyTransactionThreshold(getMonthlyTransactionThreshold())
                .annualTransactionCount(getAnnualTransactionCount())
                .annualTransactionAccumulated(getAnnualTransactionAccumulated())
                .annualTransactionBalance(getAnnualTransactionBalance())
                .annualTransactionOverride(getAnnualTransactionOverride())
                .annualTransactionThreshold(getAnnualTransactionThreshold())
                .lifeTimeTransactionCount(getLifeTimeTransactionCount())
                .lifeTimeTransactionAccumulated(getLifeTimeTransactionAccumulated())
                .lifeTimeTransactionBalance(getLifeTimeTransactionBalance())
                .lifeTimeTransactionOverride(getLifeTimeTransactionOverride())
                .lifeTimeTransactionThreshold(getLifeTimeTransactionThreshold());
        return builder;
    }

    /**
     * Class to build instances of {@link UsageRestriction}.
     */
    public static class Builder {
        private String level;
        private Double dailySpend;
        private Double dailySpendAccumulated;
        private Double dailySpendBalance;
        private Boolean dailySpendOverride;
        private Double dailySpendThreshold;
        private Double weeklySpend;
        private Double weeklySpendAccumulated;
        private Double weeklySpendBalance;
        private Boolean weeklySpendOverride;
        private Double weeklySpendThreshold;
        private Double monthlySpend;
        private Double monthlySpendAccumulated;
        private Double monthlySpendBalance;
        private Boolean monthlySpendOverride;
        private Double perTransactionSpend;
        private Boolean perTransactionSpendOverride;
        private Double annualSpend;
        private Double annualSpendAccumulated;
        private Double annualSpendBalance;
        private Boolean annualSpendOverride;
        private Double annualSpendThreshold;
        private Double lifeTimeSpend;
        private Double lifeTimeSpendAccumulated;
        private Double lifeTimeSpendBalance;
        private Boolean lifeTimeSpendOverride;
        private Double lifeTimeSpendThreshold;
        private Double dailyVolume;
        private Double dailyVolumeAccumulated;
        private Double dailyVolumeBalance;
        private Double dailyVolumeOverride;
        private Double dailyVolumeThreshold;
        private Double weeklyVolume;
        private Double weeklyVolumeAccumulated;
        private Double weeklyVolumeBalance;
        private Boolean weeklyVolumeOverride;
        private Double weeklyVolumeThreshold;
        private Double monthlyVolume;
        private Double monthlyVolumeAccumulated;
        private Double monthlyVolumeBalance;
        private Boolean monthlyVolumeOverride;
        private Double monthlyVolumeThreshold;
        private Double perTransactionVolume;
        private Boolean perTransactionVolumeOverride;
        private Double annualVolume;
        private Double annualVolumeAccumulated;
        private Double annualVolumeBalance;
        private Boolean annualVolumeOverride;
        private Double annualVolumeThreshold;
        private Double lifeTimeVolume;
        private Double lifeTimeVolumeAccumulated;
        private Double lifeTimeVolumeBalance;
        private Boolean lifeTimeVolumeOverride;
        private Double lifeTimeVolumeThreshold;
        private Double dailyTransactionCount;
        private Double dailyTransactionAccumulated;
        private Double dailyTransactionBalance;
        private Boolean dailyTransactionOverride;
        private Double dailyTransactionThreshold;
        private Double weeklyTransactionCount;
        private Double weeklyTransactionAccumulated;
        private Double weeklyTransactionBalance;
        private Boolean weeklyTransactionOverride;
        private Double weeklyTransactionThreshold;
        private Double monthlyTransactionCount;
        private Double monthlyTransactionAccumulated;
        private Double monthlyTransactionBalance;
        private Boolean monthlyTransactionOverride;
        private Double monthlyTransactionThreshold;
        private Double annualTransactionCount;
        private Double annualTransactionAccumulated;
        private Double annualTransactionBalance;
        private Boolean annualTransactionOverride;
        private Double annualTransactionThreshold;
        private Double lifeTimeTransactionCount;
        private Double lifeTimeTransactionAccumulated;
        private Double lifeTimeTransactionBalance;
        private Boolean lifeTimeTransactionOverride;
        private Double lifeTimeTransactionThreshold;



        /**
         * Setter for level.
         * @param  level  String value for level.
         * @return Builder
         */
        public Builder level(String level) {
            this.level = level;
            return this;
        }

        /**
         * Setter for dailySpend.
         * @param  dailySpend  Double value for dailySpend.
         * @return Builder
         */
        public Builder dailySpend(Double dailySpend) {
            this.dailySpend = dailySpend;
            return this;
        }

        /**
         * Setter for dailySpendAccumulated.
         * @param  dailySpendAccumulated  Double value for dailySpendAccumulated.
         * @return Builder
         */
        public Builder dailySpendAccumulated(Double dailySpendAccumulated) {
            this.dailySpendAccumulated = dailySpendAccumulated;
            return this;
        }

        /**
         * Setter for dailySpendBalance.
         * @param  dailySpendBalance  Double value for dailySpendBalance.
         * @return Builder
         */
        public Builder dailySpendBalance(Double dailySpendBalance) {
            this.dailySpendBalance = dailySpendBalance;
            return this;
        }

        /**
         * Setter for dailySpendOverride.
         * @param  dailySpendOverride  Boolean value for dailySpendOverride.
         * @return Builder
         */
        public Builder dailySpendOverride(Boolean dailySpendOverride) {
            this.dailySpendOverride = dailySpendOverride;
            return this;
        }

        /**
         * Setter for dailySpendThreshold.
         * @param  dailySpendThreshold  Double value for dailySpendThreshold.
         * @return Builder
         */
        public Builder dailySpendThreshold(Double dailySpendThreshold) {
            this.dailySpendThreshold = dailySpendThreshold;
            return this;
        }

        /**
         * Setter for weeklySpend.
         * @param  weeklySpend  Double value for weeklySpend.
         * @return Builder
         */
        public Builder weeklySpend(Double weeklySpend) {
            this.weeklySpend = weeklySpend;
            return this;
        }

        /**
         * Setter for weeklySpendAccumulated.
         * @param  weeklySpendAccumulated  Double value for weeklySpendAccumulated.
         * @return Builder
         */
        public Builder weeklySpendAccumulated(Double weeklySpendAccumulated) {
            this.weeklySpendAccumulated = weeklySpendAccumulated;
            return this;
        }

        /**
         * Setter for weeklySpendBalance.
         * @param  weeklySpendBalance  Double value for weeklySpendBalance.
         * @return Builder
         */
        public Builder weeklySpendBalance(Double weeklySpendBalance) {
            this.weeklySpendBalance = weeklySpendBalance;
            return this;
        }

        /**
         * Setter for weeklySpendOverride.
         * @param  weeklySpendOverride  Boolean value for weeklySpendOverride.
         * @return Builder
         */
        public Builder weeklySpendOverride(Boolean weeklySpendOverride) {
            this.weeklySpendOverride = weeklySpendOverride;
            return this;
        }

        /**
         * Setter for weeklySpendThreshold.
         * @param  weeklySpendThreshold  Double value for weeklySpendThreshold.
         * @return Builder
         */
        public Builder weeklySpendThreshold(Double weeklySpendThreshold) {
            this.weeklySpendThreshold = weeklySpendThreshold;
            return this;
        }

        /**
         * Setter for monthlySpend.
         * @param  monthlySpend  Double value for monthlySpend.
         * @return Builder
         */
        public Builder monthlySpend(Double monthlySpend) {
            this.monthlySpend = monthlySpend;
            return this;
        }

        /**
         * Setter for monthlySpendAccumulated.
         * @param  monthlySpendAccumulated  Double value for monthlySpendAccumulated.
         * @return Builder
         */
        public Builder monthlySpendAccumulated(Double monthlySpendAccumulated) {
            this.monthlySpendAccumulated = monthlySpendAccumulated;
            return this;
        }

        /**
         * Setter for monthlySpendBalance.
         * @param  monthlySpendBalance  Double value for monthlySpendBalance.
         * @return Builder
         */
        public Builder monthlySpendBalance(Double monthlySpendBalance) {
            this.monthlySpendBalance = monthlySpendBalance;
            return this;
        }

        /**
         * Setter for monthlySpendOverride.
         * @param  monthlySpendOverride  Boolean value for monthlySpendOverride.
         * @return Builder
         */
        public Builder monthlySpendOverride(Boolean monthlySpendOverride) {
            this.monthlySpendOverride = monthlySpendOverride;
            return this;
        }

        /**
         * Setter for perTransactionSpend.
         * @param  perTransactionSpend  Double value for perTransactionSpend.
         * @return Builder
         */
        public Builder perTransactionSpend(Double perTransactionSpend) {
            this.perTransactionSpend = perTransactionSpend;
            return this;
        }

        /**
         * Setter for perTransactionSpendOverride.
         * @param  perTransactionSpendOverride  Boolean value for perTransactionSpendOverride.
         * @return Builder
         */
        public Builder perTransactionSpendOverride(Boolean perTransactionSpendOverride) {
            this.perTransactionSpendOverride = perTransactionSpendOverride;
            return this;
        }

        /**
         * Setter for annualSpend.
         * @param  annualSpend  Double value for annualSpend.
         * @return Builder
         */
        public Builder annualSpend(Double annualSpend) {
            this.annualSpend = annualSpend;
            return this;
        }

        /**
         * Setter for annualSpendAccumulated.
         * @param  annualSpendAccumulated  Double value for annualSpendAccumulated.
         * @return Builder
         */
        public Builder annualSpendAccumulated(Double annualSpendAccumulated) {
            this.annualSpendAccumulated = annualSpendAccumulated;
            return this;
        }

        /**
         * Setter for annualSpendBalance.
         * @param  annualSpendBalance  Double value for annualSpendBalance.
         * @return Builder
         */
        public Builder annualSpendBalance(Double annualSpendBalance) {
            this.annualSpendBalance = annualSpendBalance;
            return this;
        }

        /**
         * Setter for annualSpendOverride.
         * @param  annualSpendOverride  Boolean value for annualSpendOverride.
         * @return Builder
         */
        public Builder annualSpendOverride(Boolean annualSpendOverride) {
            this.annualSpendOverride = annualSpendOverride;
            return this;
        }

        /**
         * Setter for annualSpendThreshold.
         * @param  annualSpendThreshold  Double value for annualSpendThreshold.
         * @return Builder
         */
        public Builder annualSpendThreshold(Double annualSpendThreshold) {
            this.annualSpendThreshold = annualSpendThreshold;
            return this;
        }

        /**
         * Setter for lifeTimeSpend.
         * @param  lifeTimeSpend  Double value for lifeTimeSpend.
         * @return Builder
         */
        public Builder lifeTimeSpend(Double lifeTimeSpend) {
            this.lifeTimeSpend = lifeTimeSpend;
            return this;
        }

        /**
         * Setter for lifeTimeSpendAccumulated.
         * @param  lifeTimeSpendAccumulated  Double value for lifeTimeSpendAccumulated.
         * @return Builder
         */
        public Builder lifeTimeSpendAccumulated(Double lifeTimeSpendAccumulated) {
            this.lifeTimeSpendAccumulated = lifeTimeSpendAccumulated;
            return this;
        }

        /**
         * Setter for lifeTimeSpendBalance.
         * @param  lifeTimeSpendBalance  Double value for lifeTimeSpendBalance.
         * @return Builder
         */
        public Builder lifeTimeSpendBalance(Double lifeTimeSpendBalance) {
            this.lifeTimeSpendBalance = lifeTimeSpendBalance;
            return this;
        }

        /**
         * Setter for lifeTimeSpendOverride.
         * @param  lifeTimeSpendOverride  Boolean value for lifeTimeSpendOverride.
         * @return Builder
         */
        public Builder lifeTimeSpendOverride(Boolean lifeTimeSpendOverride) {
            this.lifeTimeSpendOverride = lifeTimeSpendOverride;
            return this;
        }

        /**
         * Setter for lifeTimeSpendThreshold.
         * @param  lifeTimeSpendThreshold  Double value for lifeTimeSpendThreshold.
         * @return Builder
         */
        public Builder lifeTimeSpendThreshold(Double lifeTimeSpendThreshold) {
            this.lifeTimeSpendThreshold = lifeTimeSpendThreshold;
            return this;
        }

        /**
         * Setter for dailyVolume.
         * @param  dailyVolume  Double value for dailyVolume.
         * @return Builder
         */
        public Builder dailyVolume(Double dailyVolume) {
            this.dailyVolume = dailyVolume;
            return this;
        }

        /**
         * Setter for dailyVolumeAccumulated.
         * @param  dailyVolumeAccumulated  Double value for dailyVolumeAccumulated.
         * @return Builder
         */
        public Builder dailyVolumeAccumulated(Double dailyVolumeAccumulated) {
            this.dailyVolumeAccumulated = dailyVolumeAccumulated;
            return this;
        }

        /**
         * Setter for dailyVolumeBalance.
         * @param  dailyVolumeBalance  Double value for dailyVolumeBalance.
         * @return Builder
         */
        public Builder dailyVolumeBalance(Double dailyVolumeBalance) {
            this.dailyVolumeBalance = dailyVolumeBalance;
            return this;
        }

        /**
         * Setter for dailyVolumeOverride.
         * @param  dailyVolumeOverride  Double value for dailyVolumeOverride.
         * @return Builder
         */
        public Builder dailyVolumeOverride(Double dailyVolumeOverride) {
            this.dailyVolumeOverride = dailyVolumeOverride;
            return this;
        }

        /**
         * Setter for dailyVolumeThreshold.
         * @param  dailyVolumeThreshold  Double value for dailyVolumeThreshold.
         * @return Builder
         */
        public Builder dailyVolumeThreshold(Double dailyVolumeThreshold) {
            this.dailyVolumeThreshold = dailyVolumeThreshold;
            return this;
        }

        /**
         * Setter for weeklyVolume.
         * @param  weeklyVolume  Double value for weeklyVolume.
         * @return Builder
         */
        public Builder weeklyVolume(Double weeklyVolume) {
            this.weeklyVolume = weeklyVolume;
            return this;
        }

        /**
         * Setter for weeklyVolumeAccumulated.
         * @param  weeklyVolumeAccumulated  Double value for weeklyVolumeAccumulated.
         * @return Builder
         */
        public Builder weeklyVolumeAccumulated(Double weeklyVolumeAccumulated) {
            this.weeklyVolumeAccumulated = weeklyVolumeAccumulated;
            return this;
        }

        /**
         * Setter for weeklyVolumeBalance.
         * @param  weeklyVolumeBalance  Double value for weeklyVolumeBalance.
         * @return Builder
         */
        public Builder weeklyVolumeBalance(Double weeklyVolumeBalance) {
            this.weeklyVolumeBalance = weeklyVolumeBalance;
            return this;
        }

        /**
         * Setter for weeklyVolumeOverride.
         * @param  weeklyVolumeOverride  Boolean value for weeklyVolumeOverride.
         * @return Builder
         */
        public Builder weeklyVolumeOverride(Boolean weeklyVolumeOverride) {
            this.weeklyVolumeOverride = weeklyVolumeOverride;
            return this;
        }

        /**
         * Setter for weeklyVolumeThreshold.
         * @param  weeklyVolumeThreshold  Double value for weeklyVolumeThreshold.
         * @return Builder
         */
        public Builder weeklyVolumeThreshold(Double weeklyVolumeThreshold) {
            this.weeklyVolumeThreshold = weeklyVolumeThreshold;
            return this;
        }

        /**
         * Setter for monthlyVolume.
         * @param  monthlyVolume  Double value for monthlyVolume.
         * @return Builder
         */
        public Builder monthlyVolume(Double monthlyVolume) {
            this.monthlyVolume = monthlyVolume;
            return this;
        }

        /**
         * Setter for monthlyVolumeAccumulated.
         * @param  monthlyVolumeAccumulated  Double value for monthlyVolumeAccumulated.
         * @return Builder
         */
        public Builder monthlyVolumeAccumulated(Double monthlyVolumeAccumulated) {
            this.monthlyVolumeAccumulated = monthlyVolumeAccumulated;
            return this;
        }

        /**
         * Setter for monthlyVolumeBalance.
         * @param  monthlyVolumeBalance  Double value for monthlyVolumeBalance.
         * @return Builder
         */
        public Builder monthlyVolumeBalance(Double monthlyVolumeBalance) {
            this.monthlyVolumeBalance = monthlyVolumeBalance;
            return this;
        }

        /**
         * Setter for monthlyVolumeOverride.
         * @param  monthlyVolumeOverride  Boolean value for monthlyVolumeOverride.
         * @return Builder
         */
        public Builder monthlyVolumeOverride(Boolean monthlyVolumeOverride) {
            this.monthlyVolumeOverride = monthlyVolumeOverride;
            return this;
        }

        /**
         * Setter for monthlyVolumeThreshold.
         * @param  monthlyVolumeThreshold  Double value for monthlyVolumeThreshold.
         * @return Builder
         */
        public Builder monthlyVolumeThreshold(Double monthlyVolumeThreshold) {
            this.monthlyVolumeThreshold = monthlyVolumeThreshold;
            return this;
        }

        /**
         * Setter for perTransactionVolume.
         * @param  perTransactionVolume  Double value for perTransactionVolume.
         * @return Builder
         */
        public Builder perTransactionVolume(Double perTransactionVolume) {
            this.perTransactionVolume = perTransactionVolume;
            return this;
        }

        /**
         * Setter for perTransactionVolumeOverride.
         * @param  perTransactionVolumeOverride  Boolean value for perTransactionVolumeOverride.
         * @return Builder
         */
        public Builder perTransactionVolumeOverride(Boolean perTransactionVolumeOverride) {
            this.perTransactionVolumeOverride = perTransactionVolumeOverride;
            return this;
        }

        /**
         * Setter for annualVolume.
         * @param  annualVolume  Double value for annualVolume.
         * @return Builder
         */
        public Builder annualVolume(Double annualVolume) {
            this.annualVolume = annualVolume;
            return this;
        }

        /**
         * Setter for annualVolumeAccumulated.
         * @param  annualVolumeAccumulated  Double value for annualVolumeAccumulated.
         * @return Builder
         */
        public Builder annualVolumeAccumulated(Double annualVolumeAccumulated) {
            this.annualVolumeAccumulated = annualVolumeAccumulated;
            return this;
        }

        /**
         * Setter for annualVolumeBalance.
         * @param  annualVolumeBalance  Double value for annualVolumeBalance.
         * @return Builder
         */
        public Builder annualVolumeBalance(Double annualVolumeBalance) {
            this.annualVolumeBalance = annualVolumeBalance;
            return this;
        }

        /**
         * Setter for annualVolumeOverride.
         * @param  annualVolumeOverride  Boolean value for annualVolumeOverride.
         * @return Builder
         */
        public Builder annualVolumeOverride(Boolean annualVolumeOverride) {
            this.annualVolumeOverride = annualVolumeOverride;
            return this;
        }

        /**
         * Setter for annualVolumeThreshold.
         * @param  annualVolumeThreshold  Double value for annualVolumeThreshold.
         * @return Builder
         */
        public Builder annualVolumeThreshold(Double annualVolumeThreshold) {
            this.annualVolumeThreshold = annualVolumeThreshold;
            return this;
        }

        /**
         * Setter for lifeTimeVolume.
         * @param  lifeTimeVolume  Double value for lifeTimeVolume.
         * @return Builder
         */
        public Builder lifeTimeVolume(Double lifeTimeVolume) {
            this.lifeTimeVolume = lifeTimeVolume;
            return this;
        }

        /**
         * Setter for lifeTimeVolumeAccumulated.
         * @param  lifeTimeVolumeAccumulated  Double value for lifeTimeVolumeAccumulated.
         * @return Builder
         */
        public Builder lifeTimeVolumeAccumulated(Double lifeTimeVolumeAccumulated) {
            this.lifeTimeVolumeAccumulated = lifeTimeVolumeAccumulated;
            return this;
        }

        /**
         * Setter for lifeTimeVolumeBalance.
         * @param  lifeTimeVolumeBalance  Double value for lifeTimeVolumeBalance.
         * @return Builder
         */
        public Builder lifeTimeVolumeBalance(Double lifeTimeVolumeBalance) {
            this.lifeTimeVolumeBalance = lifeTimeVolumeBalance;
            return this;
        }

        /**
         * Setter for lifeTimeVolumeOverride.
         * @param  lifeTimeVolumeOverride  Boolean value for lifeTimeVolumeOverride.
         * @return Builder
         */
        public Builder lifeTimeVolumeOverride(Boolean lifeTimeVolumeOverride) {
            this.lifeTimeVolumeOverride = lifeTimeVolumeOverride;
            return this;
        }

        /**
         * Setter for lifeTimeVolumeThreshold.
         * @param  lifeTimeVolumeThreshold  Double value for lifeTimeVolumeThreshold.
         * @return Builder
         */
        public Builder lifeTimeVolumeThreshold(Double lifeTimeVolumeThreshold) {
            this.lifeTimeVolumeThreshold = lifeTimeVolumeThreshold;
            return this;
        }

        /**
         * Setter for dailyTransactionCount.
         * @param  dailyTransactionCount  Double value for dailyTransactionCount.
         * @return Builder
         */
        public Builder dailyTransactionCount(Double dailyTransactionCount) {
            this.dailyTransactionCount = dailyTransactionCount;
            return this;
        }

        /**
         * Setter for dailyTransactionAccumulated.
         * @param  dailyTransactionAccumulated  Double value for dailyTransactionAccumulated.
         * @return Builder
         */
        public Builder dailyTransactionAccumulated(Double dailyTransactionAccumulated) {
            this.dailyTransactionAccumulated = dailyTransactionAccumulated;
            return this;
        }

        /**
         * Setter for dailyTransactionBalance.
         * @param  dailyTransactionBalance  Double value for dailyTransactionBalance.
         * @return Builder
         */
        public Builder dailyTransactionBalance(Double dailyTransactionBalance) {
            this.dailyTransactionBalance = dailyTransactionBalance;
            return this;
        }

        /**
         * Setter for dailyTransactionOverride.
         * @param  dailyTransactionOverride  Boolean value for dailyTransactionOverride.
         * @return Builder
         */
        public Builder dailyTransactionOverride(Boolean dailyTransactionOverride) {
            this.dailyTransactionOverride = dailyTransactionOverride;
            return this;
        }

        /**
         * Setter for dailyTransactionThreshold.
         * @param  dailyTransactionThreshold  Double value for dailyTransactionThreshold.
         * @return Builder
         */
        public Builder dailyTransactionThreshold(Double dailyTransactionThreshold) {
            this.dailyTransactionThreshold = dailyTransactionThreshold;
            return this;
        }

        /**
         * Setter for weeklyTransactionCount.
         * @param  weeklyTransactionCount  Double value for weeklyTransactionCount.
         * @return Builder
         */
        public Builder weeklyTransactionCount(Double weeklyTransactionCount) {
            this.weeklyTransactionCount = weeklyTransactionCount;
            return this;
        }

        /**
         * Setter for weeklyTransactionAccumulated.
         * @param  weeklyTransactionAccumulated  Double value for weeklyTransactionAccumulated.
         * @return Builder
         */
        public Builder weeklyTransactionAccumulated(Double weeklyTransactionAccumulated) {
            this.weeklyTransactionAccumulated = weeklyTransactionAccumulated;
            return this;
        }

        /**
         * Setter for weeklyTransactionBalance.
         * @param  weeklyTransactionBalance  Double value for weeklyTransactionBalance.
         * @return Builder
         */
        public Builder weeklyTransactionBalance(Double weeklyTransactionBalance) {
            this.weeklyTransactionBalance = weeklyTransactionBalance;
            return this;
        }

        /**
         * Setter for weeklyTransactionOverride.
         * @param  weeklyTransactionOverride  Boolean value for weeklyTransactionOverride.
         * @return Builder
         */
        public Builder weeklyTransactionOverride(Boolean weeklyTransactionOverride) {
            this.weeklyTransactionOverride = weeklyTransactionOverride;
            return this;
        }

        /**
         * Setter for weeklyTransactionThreshold.
         * @param  weeklyTransactionThreshold  Double value for weeklyTransactionThreshold.
         * @return Builder
         */
        public Builder weeklyTransactionThreshold(Double weeklyTransactionThreshold) {
            this.weeklyTransactionThreshold = weeklyTransactionThreshold;
            return this;
        }

        /**
         * Setter for monthlyTransactionCount.
         * @param  monthlyTransactionCount  Double value for monthlyTransactionCount.
         * @return Builder
         */
        public Builder monthlyTransactionCount(Double monthlyTransactionCount) {
            this.monthlyTransactionCount = monthlyTransactionCount;
            return this;
        }

        /**
         * Setter for monthlyTransactionAccumulated.
         * @param  monthlyTransactionAccumulated  Double value for monthlyTransactionAccumulated.
         * @return Builder
         */
        public Builder monthlyTransactionAccumulated(Double monthlyTransactionAccumulated) {
            this.monthlyTransactionAccumulated = monthlyTransactionAccumulated;
            return this;
        }

        /**
         * Setter for monthlyTransactionBalance.
         * @param  monthlyTransactionBalance  Double value for monthlyTransactionBalance.
         * @return Builder
         */
        public Builder monthlyTransactionBalance(Double monthlyTransactionBalance) {
            this.monthlyTransactionBalance = monthlyTransactionBalance;
            return this;
        }

        /**
         * Setter for monthlyTransactionOverride.
         * @param  monthlyTransactionOverride  Boolean value for monthlyTransactionOverride.
         * @return Builder
         */
        public Builder monthlyTransactionOverride(Boolean monthlyTransactionOverride) {
            this.monthlyTransactionOverride = monthlyTransactionOverride;
            return this;
        }

        /**
         * Setter for monthlyTransactionThreshold.
         * @param  monthlyTransactionThreshold  Double value for monthlyTransactionThreshold.
         * @return Builder
         */
        public Builder monthlyTransactionThreshold(Double monthlyTransactionThreshold) {
            this.monthlyTransactionThreshold = monthlyTransactionThreshold;
            return this;
        }

        /**
         * Setter for annualTransactionCount.
         * @param  annualTransactionCount  Double value for annualTransactionCount.
         * @return Builder
         */
        public Builder annualTransactionCount(Double annualTransactionCount) {
            this.annualTransactionCount = annualTransactionCount;
            return this;
        }

        /**
         * Setter for annualTransactionAccumulated.
         * @param  annualTransactionAccumulated  Double value for annualTransactionAccumulated.
         * @return Builder
         */
        public Builder annualTransactionAccumulated(Double annualTransactionAccumulated) {
            this.annualTransactionAccumulated = annualTransactionAccumulated;
            return this;
        }

        /**
         * Setter for annualTransactionBalance.
         * @param  annualTransactionBalance  Double value for annualTransactionBalance.
         * @return Builder
         */
        public Builder annualTransactionBalance(Double annualTransactionBalance) {
            this.annualTransactionBalance = annualTransactionBalance;
            return this;
        }

        /**
         * Setter for annualTransactionOverride.
         * @param  annualTransactionOverride  Boolean value for annualTransactionOverride.
         * @return Builder
         */
        public Builder annualTransactionOverride(Boolean annualTransactionOverride) {
            this.annualTransactionOverride = annualTransactionOverride;
            return this;
        }

        /**
         * Setter for annualTransactionThreshold.
         * @param  annualTransactionThreshold  Double value for annualTransactionThreshold.
         * @return Builder
         */
        public Builder annualTransactionThreshold(Double annualTransactionThreshold) {
            this.annualTransactionThreshold = annualTransactionThreshold;
            return this;
        }

        /**
         * Setter for lifeTimeTransactionCount.
         * @param  lifeTimeTransactionCount  Double value for lifeTimeTransactionCount.
         * @return Builder
         */
        public Builder lifeTimeTransactionCount(Double lifeTimeTransactionCount) {
            this.lifeTimeTransactionCount = lifeTimeTransactionCount;
            return this;
        }

        /**
         * Setter for lifeTimeTransactionAccumulated.
         * @param  lifeTimeTransactionAccumulated  Double value for lifeTimeTransactionAccumulated.
         * @return Builder
         */
        public Builder lifeTimeTransactionAccumulated(Double lifeTimeTransactionAccumulated) {
            this.lifeTimeTransactionAccumulated = lifeTimeTransactionAccumulated;
            return this;
        }

        /**
         * Setter for lifeTimeTransactionBalance.
         * @param  lifeTimeTransactionBalance  Double value for lifeTimeTransactionBalance.
         * @return Builder
         */
        public Builder lifeTimeTransactionBalance(Double lifeTimeTransactionBalance) {
            this.lifeTimeTransactionBalance = lifeTimeTransactionBalance;
            return this;
        }

        /**
         * Setter for lifeTimeTransactionOverride.
         * @param  lifeTimeTransactionOverride  Boolean value for lifeTimeTransactionOverride.
         * @return Builder
         */
        public Builder lifeTimeTransactionOverride(Boolean lifeTimeTransactionOverride) {
            this.lifeTimeTransactionOverride = lifeTimeTransactionOverride;
            return this;
        }

        /**
         * Setter for lifeTimeTransactionThreshold.
         * @param  lifeTimeTransactionThreshold  Double value for lifeTimeTransactionThreshold.
         * @return Builder
         */
        public Builder lifeTimeTransactionThreshold(Double lifeTimeTransactionThreshold) {
            this.lifeTimeTransactionThreshold = lifeTimeTransactionThreshold;
            return this;
        }

        /**
         * Builds a new {@link UsageRestriction} object using the set fields.
         * @return {@link UsageRestriction}
         */
        public UsageRestriction build() {
            return new UsageRestriction(level, dailySpend, dailySpendAccumulated, dailySpendBalance,
                    dailySpendOverride, dailySpendThreshold, weeklySpend, weeklySpendAccumulated,
                    weeklySpendBalance, weeklySpendOverride, weeklySpendThreshold, monthlySpend,
                    monthlySpendAccumulated, monthlySpendBalance, monthlySpendOverride,
                    perTransactionSpend, perTransactionSpendOverride, annualSpend,
                    annualSpendAccumulated, annualSpendBalance, annualSpendOverride,
                    annualSpendThreshold, lifeTimeSpend, lifeTimeSpendAccumulated,
                    lifeTimeSpendBalance, lifeTimeSpendOverride, lifeTimeSpendThreshold,
                    dailyVolume, dailyVolumeAccumulated, dailyVolumeBalance, dailyVolumeOverride,
                    dailyVolumeThreshold, weeklyVolume, weeklyVolumeAccumulated,
                    weeklyVolumeBalance, weeklyVolumeOverride, weeklyVolumeThreshold, monthlyVolume,
                    monthlyVolumeAccumulated, monthlyVolumeBalance, monthlyVolumeOverride,
                    monthlyVolumeThreshold, perTransactionVolume, perTransactionVolumeOverride,
                    annualVolume, annualVolumeAccumulated, annualVolumeBalance,
                    annualVolumeOverride, annualVolumeThreshold, lifeTimeVolume,
                    lifeTimeVolumeAccumulated, lifeTimeVolumeBalance, lifeTimeVolumeOverride,
                    lifeTimeVolumeThreshold, dailyTransactionCount, dailyTransactionAccumulated,
                    dailyTransactionBalance, dailyTransactionOverride, dailyTransactionThreshold,
                    weeklyTransactionCount, weeklyTransactionAccumulated, weeklyTransactionBalance,
                    weeklyTransactionOverride, weeklyTransactionThreshold, monthlyTransactionCount,
                    monthlyTransactionAccumulated, monthlyTransactionBalance,
                    monthlyTransactionOverride, monthlyTransactionThreshold, annualTransactionCount,
                    annualTransactionAccumulated, annualTransactionBalance,
                    annualTransactionOverride, annualTransactionThreshold, lifeTimeTransactionCount,
                    lifeTimeTransactionAccumulated, lifeTimeTransactionBalance,
                    lifeTimeTransactionOverride, lifeTimeTransactionThreshold);
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy