/// <summary>
 /// Initializes a new instance of the <see cref="RecipientPhoneAuthentication" /> class.
 /// </summary>
 /// <param name="RecipMayProvideNumber">Boolean. When set to **true**, the recipient can supply a phone number their choice..</param>
 /// <param name="RecipMayProvideNumberMetadata">RecipMayProvideNumberMetadata.</param>
 /// <param name="RecordVoicePrint">Reserved..</param>
 /// <param name="RecordVoicePrintMetadata">RecordVoicePrintMetadata.</param>
 /// <param name="SenderProvidedNumbers">An Array containing a list of phone numbers the recipient may use for SMS text authentication. .</param>
 /// <param name="SenderProvidedNumbersMetadata">SenderProvidedNumbersMetadata.</param>
 /// <param name="ValidateRecipProvidedNumber"> Reserved..</param>
 /// <param name="ValidateRecipProvidedNumberMetadata">ValidateRecipProvidedNumberMetadata.</param>
 public RecipientPhoneAuthentication(string RecipMayProvideNumber = default(string), PropertyMetadata RecipMayProvideNumberMetadata = default(PropertyMetadata), string RecordVoicePrint = default(string), PropertyMetadata RecordVoicePrintMetadata = default(PropertyMetadata), List <string> SenderProvidedNumbers = default(List <string>), PropertyMetadata SenderProvidedNumbersMetadata = default(PropertyMetadata), string ValidateRecipProvidedNumber = default(string), PropertyMetadata ValidateRecipProvidedNumberMetadata = default(PropertyMetadata))
 {
     this.RecipMayProvideNumber         = RecipMayProvideNumber;
     this.RecipMayProvideNumberMetadata = RecipMayProvideNumberMetadata;
     this.RecordVoicePrint                    = RecordVoicePrint;
     this.RecordVoicePrintMetadata            = RecordVoicePrintMetadata;
     this.SenderProvidedNumbers               = SenderProvidedNumbers;
     this.SenderProvidedNumbersMetadata       = SenderProvidedNumbersMetadata;
     this.ValidateRecipProvidedNumber         = ValidateRecipProvidedNumber;
     this.ValidateRecipProvidedNumberMetadata = ValidateRecipProvidedNumberMetadata;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="RecipientIdentityPhoneNumber" /> class.
 /// </summary>
 /// <param name="CountryCode">CountryCode.</param>
 /// <param name="CountryCodeLock">CountryCodeLock.</param>
 /// <param name="CountryCodeMetadata">CountryCodeMetadata.</param>
 /// <param name="Extension">Extension.</param>
 /// <param name="ExtensionMetadata">ExtensionMetadata.</param>
 /// <param name="Number">Number.</param>
 /// <param name="NumberMetadata">NumberMetadata.</param>
 public RecipientIdentityPhoneNumber(string CountryCode = default(string), string CountryCodeLock = default(string), PropertyMetadata CountryCodeMetadata = default(PropertyMetadata), string Extension = default(string), PropertyMetadata ExtensionMetadata = default(PropertyMetadata), string Number = default(string), PropertyMetadata NumberMetadata = default(PropertyMetadata))
 {
     this.CountryCode         = CountryCode;
     this.CountryCodeLock     = CountryCodeLock;
     this.CountryCodeMetadata = CountryCodeMetadata;
     this.Extension           = Extension;
     this.ExtensionMetadata   = ExtensionMetadata;
     this.Number         = Number;
     this.NumberMetadata = NumberMetadata;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="PaymentDetails" /> class.
 /// </summary>
 /// <param name="AllowedPaymentMethods">.</param>
 /// <param name="ChargeId">.</param>
 /// <param name="CurrencyCode">.</param>
 /// <param name="CurrencyCodeMetadata">CurrencyCodeMetadata.</param>
 /// <param name="GatewayAccountId">.</param>
 /// <param name="GatewayAccountIdMetadata">GatewayAccountIdMetadata.</param>
 /// <param name="GatewayDisplayName">.</param>
 /// <param name="GatewayName">.</param>
 /// <param name="LineItems">.</param>
 /// <param name="PaymentOption">.</param>
 /// <param name="Status">Indicates the envelope status. Valid values are:  * sent - The envelope is sent to the recipients.  * created - The envelope is saved as a draft and can be modified and sent later..</param>
 /// <param name="Total">Total.</param>
 public PaymentDetails(List <string> AllowedPaymentMethods = default(List <string>), string ChargeId = default(string), string CurrencyCode = default(string), PropertyMetadata CurrencyCodeMetadata = default(PropertyMetadata), string GatewayAccountId = default(string), PropertyMetadata GatewayAccountIdMetadata = default(PropertyMetadata), string GatewayDisplayName = default(string), string GatewayName = default(string), List <PaymentLineItem> LineItems = default(List <PaymentLineItem>), string PaymentOption = default(string), string Status = default(string), Money Total = default(Money))
 {
     this.AllowedPaymentMethods = AllowedPaymentMethods;
     this.ChargeId                 = ChargeId;
     this.CurrencyCode             = CurrencyCode;
     this.CurrencyCodeMetadata     = CurrencyCodeMetadata;
     this.GatewayAccountId         = GatewayAccountId;
     this.GatewayAccountIdMetadata = GatewayAccountIdMetadata;
     this.GatewayDisplayName       = GatewayDisplayName;
     this.GatewayName              = GatewayName;
     this.LineItems                = LineItems;
     this.PaymentOption            = PaymentOption;
     this.Status = Status;
     this.Total  = Total;
 }