/// <summary>
 /// Initializes a new instance of the <see cref="CatalogItemVariation"/> class.
 /// </summary>
 /// <param name="itemId">item_id.</param>
 /// <param name="name">name.</param>
 /// <param name="sku">sku.</param>
 /// <param name="upc">upc.</param>
 /// <param name="ordinal">ordinal.</param>
 /// <param name="pricingType">pricing_type.</param>
 /// <param name="priceMoney">price_money.</param>
 /// <param name="locationOverrides">location_overrides.</param>
 /// <param name="trackInventory">track_inventory.</param>
 /// <param name="inventoryAlertType">inventory_alert_type.</param>
 /// <param name="inventoryAlertThreshold">inventory_alert_threshold.</param>
 /// <param name="userData">user_data.</param>
 /// <param name="serviceDuration">service_duration.</param>
 /// <param name="availableForBooking">available_for_booking.</param>
 /// <param name="itemOptionValues">item_option_values.</param>
 /// <param name="measurementUnitId">measurement_unit_id.</param>
 /// <param name="stockable">stockable.</param>
 /// <param name="teamMemberIds">team_member_ids.</param>
 /// <param name="stockableConversion">stockable_conversion.</param>
 public CatalogItemVariation(
     string itemId           = null,
     string name             = null,
     string sku              = null,
     string upc              = null,
     int?ordinal             = null,
     string pricingType      = null,
     Models.Money priceMoney = null,
     IList <Models.ItemVariationLocationOverrides> locationOverrides = null,
     bool?trackInventory          = null,
     string inventoryAlertType    = null,
     long?inventoryAlertThreshold = null,
     string userData          = null,
     long?serviceDuration     = null,
     bool?availableForBooking = null,
     IList <Models.CatalogItemOptionValueForItemVariation> itemOptionValues = null,
     string measurementUnitId     = null,
     bool?stockable               = null,
     IList <string> teamMemberIds = null,
     Models.CatalogStockConversion stockableConversion = null)
 {
     this.ItemId                  = itemId;
     this.Name                    = name;
     this.Sku                     = sku;
     this.Upc                     = upc;
     this.Ordinal                 = ordinal;
     this.PricingType             = pricingType;
     this.PriceMoney              = priceMoney;
     this.LocationOverrides       = locationOverrides;
     this.TrackInventory          = trackInventory;
     this.InventoryAlertType      = inventoryAlertType;
     this.InventoryAlertThreshold = inventoryAlertThreshold;
     this.UserData                = userData;
     this.ServiceDuration         = serviceDuration;
     this.AvailableForBooking     = availableForBooking;
     this.ItemOptionValues        = itemOptionValues;
     this.MeasurementUnitId       = measurementUnitId;
     this.Stockable               = stockable;
     this.TeamMemberIds           = teamMemberIds;
     this.StockableConversion     = stockableConversion;
 }
 /// <summary>
 /// StockableConversion.
 /// </summary>
 /// <param name="stockableConversion"> stockableConversion. </param>
 /// <returns> Builder. </returns>
 public Builder StockableConversion(Models.CatalogStockConversion stockableConversion)
 {
     this.stockableConversion = stockableConversion;
     return(this);
 }