/**
 * @typedef {object} ShopeeProductBodyVariation
 * @property {number} item_id
 * @property {number} shop_id
 * @property {number} quantity
 * @property {number} tz_offset_in_minutes
 * @property {SelectedTiers} selected_tiers
 * @property {string} device_sz_fingerprint
 */
/**
 * @typedef {object} SelectedTiers
 * @property {number} 0
 */

/**
 * @typedef {object} ShopeeProductSelectVariation
 * @property {ProductPrice} product_price
 * @property {number} stock
 * @property {SelectedVariation} selected_variation
 * @property {PromotionInfo} promotion_info
 * @property {ButtonGroup} button_group
 * @property {object} ongoing_banner
 * @property {object} teaser_banner
 * @property {object} price_breakdown
 * @property {TierVariationDisplayIndicators[]} tier_variation_display_indicators
 * @property {number} max_quantity
 * @property {object} product_shipping
 */
/**
 * @typedef {object} ProductPrice
 * @property {object} discount
 * @property {object} installment_info
 * @property {object} spl_installment_info
 * @property {string} pack_size
 * @property {boolean} hide_price
 * @property {Price} price
 * @property {object} price_before_discount
 * @property {object} presale_price
 * @property {object} lowest_past_price
 * @property {object} labels
 * @property {boolean} hide_discount
 * @property {object} discount_text
 * @property {object} show_final_price_indicator
 * @property {object} final_price_vouchers
 * @property {boolean} has_final_price
 * @property {object} final_price_info
 */
/**
 * @typedef {object} Price
 * @property {number} single_value
 * @property {number} range_min
 * @property {number} range_max
 * @property {object} price_mask
 */
/**
 * @typedef {object} SelectedVariation
 * @property {any[]} reminder_text
 * @property {PromotionLabels} promotion_labels
 * @property {number} max_quantity
 * @property {object} max_quantity_display
 */
/**
 * @typedef {object} PromotionLabels
 * @property {object} is_live_streaming_ongoing
 * @property {object} live_streaming_promotion_type
 * @property {object} wholesale_text
 * @property {string} pre_order_text
 * @property {object} wholesale_label
 */
/**
 * @typedef {object} PromotionInfo
 * @property {object} spl
 * @property {object} spl_lite
 * @property {object} installment
 * @property {object} wholesale
 * @property {object} insurance
 * @property {object} item_installment_eligibility
 */
/**
 * @typedef {object} ButtonGroup
 * @property {object} buy_with_voucher
 * @property {object} ineligible_user_platform_exclusive_sku
 */
/**
 * @typedef {object} TierVariationDisplayIndicators
 * @property {string} title
 * @property {Options[]} options
 * @property {object} title_tr
 * @property {object} selling_points
 */
/**
 * @typedef {object} Options
 * @property {string} name
 * @property {string} image
 * @property {number} display_indicator
 * @property {object} name_tr
 */
