terminal-shop 3.6.1 → 3.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (274) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +34 -0
  3. data/README.md +3 -3
  4. data/lib/terminal_shop/errors.rb +1 -1
  5. data/lib/terminal_shop/file_part.rb +2 -2
  6. data/lib/terminal_shop/internal/transport/base_client.rb +77 -5
  7. data/lib/terminal_shop/internal/transport/pooled_net_requester.rb +14 -0
  8. data/lib/terminal_shop/internal/type/array_of.rb +1 -1
  9. data/lib/terminal_shop/internal/type/base_model.rb +62 -30
  10. data/lib/terminal_shop/internal/type/converter.rb +18 -0
  11. data/lib/terminal_shop/internal/type/enum.rb +5 -4
  12. data/lib/terminal_shop/internal/type/hash_of.rb +1 -1
  13. data/lib/terminal_shop/internal/type/request_parameters.rb +4 -4
  14. data/lib/terminal_shop/internal/type/union.rb +1 -0
  15. data/lib/terminal_shop/internal/util.rb +57 -1
  16. data/lib/terminal_shop/internal.rb +6 -0
  17. data/lib/terminal_shop/models/address.rb +3 -3
  18. data/lib/terminal_shop/models/address_get_response.rb +3 -3
  19. data/lib/terminal_shop/models/address_list_response.rb +3 -3
  20. data/lib/terminal_shop/models/app.rb +3 -3
  21. data/lib/terminal_shop/models/app_get_response.rb +3 -3
  22. data/lib/terminal_shop/models/app_list_response.rb +3 -3
  23. data/lib/terminal_shop/models/card.rb +7 -7
  24. data/lib/terminal_shop/models/card_collect_response.rb +0 -1
  25. data/lib/terminal_shop/models/card_create_params.rb +0 -1
  26. data/lib/terminal_shop/models/card_get_response.rb +3 -3
  27. data/lib/terminal_shop/models/card_list_response.rb +3 -3
  28. data/lib/terminal_shop/models/cart.rb +13 -13
  29. data/lib/terminal_shop/models/cart_convert_response.rb +3 -3
  30. data/lib/terminal_shop/models/cart_get_response.rb +3 -3
  31. data/lib/terminal_shop/models/cart_set_item_response.rb +3 -3
  32. data/lib/terminal_shop/models/order.rb +24 -24
  33. data/lib/terminal_shop/models/order_get_response.rb +3 -3
  34. data/lib/terminal_shop/models/order_list_response.rb +3 -3
  35. data/lib/terminal_shop/models/product.rb +14 -14
  36. data/lib/terminal_shop/models/product_get_response.rb +3 -3
  37. data/lib/terminal_shop/models/product_list_response.rb +3 -3
  38. data/lib/terminal_shop/models/product_variant.rb +6 -6
  39. data/lib/terminal_shop/models/profile.rb +6 -6
  40. data/lib/terminal_shop/models/profile_me_response.rb +3 -3
  41. data/lib/terminal_shop/models/profile_update_response.rb +3 -3
  42. data/lib/terminal_shop/models/subscription.rb +18 -9
  43. data/lib/terminal_shop/models/subscription_get_response.rb +3 -3
  44. data/lib/terminal_shop/models/subscription_list_response.rb +3 -3
  45. data/lib/terminal_shop/models/subscription_update_params.rb +15 -6
  46. data/lib/terminal_shop/models/subscription_update_response.rb +3 -3
  47. data/lib/terminal_shop/models/token.rb +3 -3
  48. data/lib/terminal_shop/models/token_create_response.rb +0 -1
  49. data/lib/terminal_shop/models/token_get_response.rb +3 -4
  50. data/lib/terminal_shop/models/token_list_response.rb +3 -3
  51. data/lib/terminal_shop/models/view_init_response.rb +30 -31
  52. data/lib/terminal_shop/models.rb +27 -0
  53. data/lib/terminal_shop/request_options.rb +4 -0
  54. data/lib/terminal_shop/resources/address.rb +1 -1
  55. data/lib/terminal_shop/resources/app.rb +1 -1
  56. data/lib/terminal_shop/resources/card.rb +1 -2
  57. data/lib/terminal_shop/resources/cart.rb +3 -3
  58. data/lib/terminal_shop/resources/email.rb +1 -1
  59. data/lib/terminal_shop/resources/order.rb +1 -1
  60. data/lib/terminal_shop/resources/profile.rb +1 -1
  61. data/lib/terminal_shop/resources/subscription.rb +5 -5
  62. data/lib/terminal_shop/version.rb +1 -1
  63. data/lib/terminal_shop.rb +3 -0
  64. data/rbi/terminal_shop/client.rbi +9 -5
  65. data/rbi/terminal_shop/errors.rbi +35 -16
  66. data/rbi/terminal_shop/file_part.rbi +9 -6
  67. data/rbi/terminal_shop/internal/transport/base_client.rbi +165 -77
  68. data/rbi/terminal_shop/internal/transport/pooled_net_requester.rbi +29 -13
  69. data/rbi/terminal_shop/internal/type/array_of.rbi +34 -24
  70. data/rbi/terminal_shop/internal/type/base_model.rbi +155 -70
  71. data/rbi/terminal_shop/internal/type/base_page.rbi +13 -8
  72. data/rbi/terminal_shop/internal/type/boolean.rbi +16 -14
  73. data/rbi/terminal_shop/internal/type/converter.rbi +72 -28
  74. data/rbi/terminal_shop/internal/type/enum.rbi +24 -13
  75. data/rbi/terminal_shop/internal/type/file_input.rbi +8 -4
  76. data/rbi/terminal_shop/internal/type/hash_of.rbi +34 -24
  77. data/rbi/terminal_shop/internal/type/request_parameters.rbi +14 -4
  78. data/rbi/terminal_shop/internal/type/union.rbi +53 -22
  79. data/rbi/terminal_shop/internal/type/unknown.rbi +16 -6
  80. data/rbi/terminal_shop/internal/util.rbi +236 -91
  81. data/rbi/terminal_shop/internal.rbi +2 -0
  82. data/rbi/terminal_shop/models/address.rbi +25 -19
  83. data/rbi/terminal_shop/models/address_create_params.rbi +28 -19
  84. data/rbi/terminal_shop/models/address_create_response.rbi +14 -3
  85. data/rbi/terminal_shop/models/address_delete_params.rbi +18 -5
  86. data/rbi/terminal_shop/models/address_delete_response.rbi +13 -3
  87. data/rbi/terminal_shop/models/address_get_params.rbi +15 -5
  88. data/rbi/terminal_shop/models/address_get_response.rbi +17 -7
  89. data/rbi/terminal_shop/models/address_list_params.rbi +18 -5
  90. data/rbi/terminal_shop/models/address_list_response.rbi +18 -6
  91. data/rbi/terminal_shop/models/app.rbi +23 -4
  92. data/rbi/terminal_shop/models/app_create_params.rbi +18 -6
  93. data/rbi/terminal_shop/models/app_create_response.rbi +37 -9
  94. data/rbi/terminal_shop/models/app_delete_params.rbi +15 -5
  95. data/rbi/terminal_shop/models/app_delete_response.rbi +13 -3
  96. data/rbi/terminal_shop/models/app_get_params.rbi +15 -5
  97. data/rbi/terminal_shop/models/app_get_response.rbi +17 -7
  98. data/rbi/terminal_shop/models/app_list_params.rbi +15 -5
  99. data/rbi/terminal_shop/models/app_list_response.rbi +18 -6
  100. data/rbi/terminal_shop/models/card.rbi +37 -14
  101. data/rbi/terminal_shop/models/card_collect_params.rbi +18 -5
  102. data/rbi/terminal_shop/models/card_collect_response.rbi +40 -9
  103. data/rbi/terminal_shop/models/card_create_params.rbi +17 -6
  104. data/rbi/terminal_shop/models/card_create_response.rbi +14 -3
  105. data/rbi/terminal_shop/models/card_delete_params.rbi +15 -5
  106. data/rbi/terminal_shop/models/card_delete_response.rbi +13 -3
  107. data/rbi/terminal_shop/models/card_get_params.rbi +15 -5
  108. data/rbi/terminal_shop/models/card_get_response.rbi +17 -7
  109. data/rbi/terminal_shop/models/card_list_params.rbi +15 -5
  110. data/rbi/terminal_shop/models/card_list_response.rbi +18 -6
  111. data/rbi/terminal_shop/models/cart.rbi +93 -36
  112. data/rbi/terminal_shop/models/cart_clear_params.rbi +15 -5
  113. data/rbi/terminal_shop/models/cart_clear_response.rbi +13 -3
  114. data/rbi/terminal_shop/models/cart_convert_params.rbi +18 -5
  115. data/rbi/terminal_shop/models/cart_convert_response.rbi +17 -7
  116. data/rbi/terminal_shop/models/cart_get_params.rbi +15 -5
  117. data/rbi/terminal_shop/models/cart_get_response.rbi +17 -7
  118. data/rbi/terminal_shop/models/cart_set_address_params.rbi +20 -6
  119. data/rbi/terminal_shop/models/cart_set_address_response.rbi +13 -3
  120. data/rbi/terminal_shop/models/cart_set_card_params.rbi +20 -6
  121. data/rbi/terminal_shop/models/cart_set_card_response.rbi +13 -3
  122. data/rbi/terminal_shop/models/cart_set_item_params.rbi +22 -11
  123. data/rbi/terminal_shop/models/cart_set_item_response.rbi +17 -7
  124. data/rbi/terminal_shop/models/email_create_params.rbi +20 -6
  125. data/rbi/terminal_shop/models/email_create_response.rbi +13 -3
  126. data/rbi/terminal_shop/models/order.rbi +172 -87
  127. data/rbi/terminal_shop/models/order_create_params.rbi +23 -14
  128. data/rbi/terminal_shop/models/order_create_response.rbi +14 -3
  129. data/rbi/terminal_shop/models/order_get_params.rbi +15 -5
  130. data/rbi/terminal_shop/models/order_get_response.rbi +17 -7
  131. data/rbi/terminal_shop/models/order_list_params.rbi +15 -5
  132. data/rbi/terminal_shop/models/order_list_response.rbi +18 -6
  133. data/rbi/terminal_shop/models/product.rbi +78 -44
  134. data/rbi/terminal_shop/models/product_get_params.rbi +15 -5
  135. data/rbi/terminal_shop/models/product_get_response.rbi +17 -7
  136. data/rbi/terminal_shop/models/product_list_params.rbi +18 -5
  137. data/rbi/terminal_shop/models/product_list_response.rbi +18 -6
  138. data/rbi/terminal_shop/models/product_variant.rbi +46 -15
  139. data/rbi/terminal_shop/models/profile.rbi +39 -21
  140. data/rbi/terminal_shop/models/profile_me_params.rbi +15 -5
  141. data/rbi/terminal_shop/models/profile_me_response.rbi +17 -7
  142. data/rbi/terminal_shop/models/profile_update_params.rbi +23 -6
  143. data/rbi/terminal_shop/models/profile_update_response.rbi +17 -7
  144. data/rbi/terminal_shop/models/region.rbi +7 -6
  145. data/rbi/terminal_shop/models/subscription.rbi +82 -46
  146. data/rbi/terminal_shop/models/subscription_create_params.rbi +18 -5
  147. data/rbi/terminal_shop/models/subscription_create_response.rbi +13 -3
  148. data/rbi/terminal_shop/models/subscription_delete_params.rbi +18 -5
  149. data/rbi/terminal_shop/models/subscription_delete_response.rbi +13 -3
  150. data/rbi/terminal_shop/models/subscription_get_params.rbi +18 -5
  151. data/rbi/terminal_shop/models/subscription_get_response.rbi +19 -7
  152. data/rbi/terminal_shop/models/subscription_list_params.rbi +18 -5
  153. data/rbi/terminal_shop/models/subscription_list_response.rbi +20 -6
  154. data/rbi/terminal_shop/models/subscription_update_params.rbi +81 -42
  155. data/rbi/terminal_shop/models/subscription_update_response.rbi +19 -7
  156. data/rbi/terminal_shop/models/token.rbi +16 -4
  157. data/rbi/terminal_shop/models/token_create_params.rbi +18 -5
  158. data/rbi/terminal_shop/models/token_create_response.rbi +39 -9
  159. data/rbi/terminal_shop/models/token_delete_params.rbi +18 -5
  160. data/rbi/terminal_shop/models/token_delete_response.rbi +13 -3
  161. data/rbi/terminal_shop/models/token_get_params.rbi +15 -5
  162. data/rbi/terminal_shop/models/token_get_response.rbi +17 -7
  163. data/rbi/terminal_shop/models/token_list_params.rbi +15 -5
  164. data/rbi/terminal_shop/models/token_list_response.rbi +18 -6
  165. data/rbi/terminal_shop/models/view_init_params.rbi +15 -5
  166. data/rbi/terminal_shop/models/view_init_response.rbi +72 -47
  167. data/rbi/terminal_shop/request_options.rbi +18 -7
  168. data/rbi/terminal_shop/resources/address.rbi +28 -13
  169. data/rbi/terminal_shop/resources/app.rbi +30 -12
  170. data/rbi/terminal_shop/resources/card.rbi +37 -14
  171. data/rbi/terminal_shop/resources/cart.rbi +45 -16
  172. data/rbi/terminal_shop/resources/email.rbi +9 -4
  173. data/rbi/terminal_shop/resources/order.rbi +21 -10
  174. data/rbi/terminal_shop/resources/product.rbi +16 -6
  175. data/rbi/terminal_shop/resources/profile.rbi +16 -6
  176. data/rbi/terminal_shop/resources/subscription.rbi +43 -27
  177. data/rbi/terminal_shop/resources/token.rbi +30 -11
  178. data/rbi/terminal_shop/resources/view.rbi +9 -3
  179. data/sig/terminal_shop/internal/transport/base_client.rbs +16 -1
  180. data/sig/terminal_shop/internal/transport/pooled_net_requester.rbs +2 -0
  181. data/sig/terminal_shop/internal/type/base_model.rbs +11 -5
  182. data/sig/terminal_shop/internal/type/base_page.rbs +1 -1
  183. data/sig/terminal_shop/internal/type/converter.rbs +2 -0
  184. data/sig/terminal_shop/internal/type/enum.rbs +1 -0
  185. data/sig/terminal_shop/internal/type/request_parameters.rbs +5 -1
  186. data/sig/terminal_shop/internal/type/union.rbs +1 -0
  187. data/sig/terminal_shop/internal/util.rbs +13 -0
  188. data/sig/terminal_shop/internal.rbs +2 -0
  189. data/sig/terminal_shop/models/address.rbs +0 -2
  190. data/sig/terminal_shop/models/address_create_params.rbs +0 -2
  191. data/sig/terminal_shop/models/address_create_response.rbs +0 -2
  192. data/sig/terminal_shop/models/address_delete_params.rbs +0 -2
  193. data/sig/terminal_shop/models/address_delete_response.rbs +0 -2
  194. data/sig/terminal_shop/models/address_get_params.rbs +0 -2
  195. data/sig/terminal_shop/models/address_get_response.rbs +3 -5
  196. data/sig/terminal_shop/models/address_list_params.rbs +0 -2
  197. data/sig/terminal_shop/models/address_list_response.rbs +3 -6
  198. data/sig/terminal_shop/models/app.rbs +0 -2
  199. data/sig/terminal_shop/models/app_create_params.rbs +0 -2
  200. data/sig/terminal_shop/models/app_create_response.rbs +0 -4
  201. data/sig/terminal_shop/models/app_delete_params.rbs +0 -2
  202. data/sig/terminal_shop/models/app_delete_response.rbs +0 -2
  203. data/sig/terminal_shop/models/app_get_params.rbs +0 -2
  204. data/sig/terminal_shop/models/app_get_response.rbs +3 -5
  205. data/sig/terminal_shop/models/app_list_params.rbs +0 -2
  206. data/sig/terminal_shop/models/app_list_response.rbs +3 -5
  207. data/sig/terminal_shop/models/card.rbs +3 -7
  208. data/sig/terminal_shop/models/card_collect_params.rbs +0 -2
  209. data/sig/terminal_shop/models/card_collect_response.rbs +0 -4
  210. data/sig/terminal_shop/models/card_create_params.rbs +0 -2
  211. data/sig/terminal_shop/models/card_create_response.rbs +0 -2
  212. data/sig/terminal_shop/models/card_delete_params.rbs +0 -2
  213. data/sig/terminal_shop/models/card_delete_response.rbs +0 -2
  214. data/sig/terminal_shop/models/card_get_params.rbs +0 -2
  215. data/sig/terminal_shop/models/card_get_response.rbs +3 -5
  216. data/sig/terminal_shop/models/card_list_params.rbs +0 -2
  217. data/sig/terminal_shop/models/card_list_response.rbs +3 -5
  218. data/sig/terminal_shop/models/cart.rbs +11 -19
  219. data/sig/terminal_shop/models/cart_clear_params.rbs +0 -2
  220. data/sig/terminal_shop/models/cart_clear_response.rbs +0 -2
  221. data/sig/terminal_shop/models/cart_convert_params.rbs +0 -2
  222. data/sig/terminal_shop/models/cart_convert_response.rbs +3 -5
  223. data/sig/terminal_shop/models/cart_get_params.rbs +0 -2
  224. data/sig/terminal_shop/models/cart_get_response.rbs +3 -5
  225. data/sig/terminal_shop/models/cart_set_address_params.rbs +0 -2
  226. data/sig/terminal_shop/models/cart_set_address_response.rbs +0 -2
  227. data/sig/terminal_shop/models/cart_set_card_params.rbs +0 -2
  228. data/sig/terminal_shop/models/cart_set_card_response.rbs +0 -2
  229. data/sig/terminal_shop/models/cart_set_item_params.rbs +0 -2
  230. data/sig/terminal_shop/models/cart_set_item_response.rbs +3 -5
  231. data/sig/terminal_shop/models/email_create_params.rbs +0 -2
  232. data/sig/terminal_shop/models/email_create_response.rbs +0 -2
  233. data/sig/terminal_shop/models/order.rbs +18 -28
  234. data/sig/terminal_shop/models/order_create_params.rbs +0 -2
  235. data/sig/terminal_shop/models/order_create_response.rbs +0 -2
  236. data/sig/terminal_shop/models/order_get_params.rbs +0 -2
  237. data/sig/terminal_shop/models/order_get_response.rbs +3 -5
  238. data/sig/terminal_shop/models/order_list_params.rbs +0 -2
  239. data/sig/terminal_shop/models/order_list_response.rbs +3 -5
  240. data/sig/terminal_shop/models/product.rbs +14 -18
  241. data/sig/terminal_shop/models/product_get_params.rbs +0 -2
  242. data/sig/terminal_shop/models/product_get_response.rbs +3 -5
  243. data/sig/terminal_shop/models/product_list_params.rbs +0 -2
  244. data/sig/terminal_shop/models/product_list_response.rbs +3 -6
  245. data/sig/terminal_shop/models/product_variant.rbs +5 -9
  246. data/sig/terminal_shop/models/profile.rbs +3 -7
  247. data/sig/terminal_shop/models/profile_me_params.rbs +0 -2
  248. data/sig/terminal_shop/models/profile_me_response.rbs +3 -5
  249. data/sig/terminal_shop/models/profile_update_params.rbs +0 -2
  250. data/sig/terminal_shop/models/profile_update_response.rbs +3 -5
  251. data/sig/terminal_shop/models/subscription.rbs +8 -14
  252. data/sig/terminal_shop/models/subscription_create_params.rbs +0 -2
  253. data/sig/terminal_shop/models/subscription_create_response.rbs +0 -2
  254. data/sig/terminal_shop/models/subscription_delete_params.rbs +0 -2
  255. data/sig/terminal_shop/models/subscription_delete_response.rbs +0 -2
  256. data/sig/terminal_shop/models/subscription_get_params.rbs +0 -2
  257. data/sig/terminal_shop/models/subscription_get_response.rbs +3 -6
  258. data/sig/terminal_shop/models/subscription_list_params.rbs +0 -2
  259. data/sig/terminal_shop/models/subscription_list_response.rbs +3 -7
  260. data/sig/terminal_shop/models/subscription_update_params.rbs +3 -9
  261. data/sig/terminal_shop/models/subscription_update_response.rbs +3 -6
  262. data/sig/terminal_shop/models/token.rbs +0 -2
  263. data/sig/terminal_shop/models/token_create_params.rbs +0 -2
  264. data/sig/terminal_shop/models/token_create_response.rbs +0 -4
  265. data/sig/terminal_shop/models/token_delete_params.rbs +0 -2
  266. data/sig/terminal_shop/models/token_delete_response.rbs +0 -2
  267. data/sig/terminal_shop/models/token_get_params.rbs +0 -2
  268. data/sig/terminal_shop/models/token_get_response.rbs +3 -5
  269. data/sig/terminal_shop/models/token_list_params.rbs +0 -2
  270. data/sig/terminal_shop/models/token_list_response.rbs +3 -5
  271. data/sig/terminal_shop/models/view_init_params.rbs +0 -2
  272. data/sig/terminal_shop/models/view_init_response.rbs +27 -31
  273. data/sig/terminal_shop/request_options.rbs +1 -1
  274. metadata +2 -2
@@ -3,6 +3,11 @@
3
3
  module TerminalShop
4
4
  module Models
5
5
  class ProductAPI < TerminalShop::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(TerminalShop::ProductAPI, TerminalShop::Internal::AnyHash)
9
+ end
10
+
6
11
  # Unique object identifier. The format and length of IDs may change over time.
7
12
  sig { returns(String) }
8
13
  attr_accessor :id
@@ -16,7 +21,7 @@ module TerminalShop
16
21
  attr_accessor :name
17
22
 
18
23
  # List of variants of the product.
19
- sig { returns(T::Array[TerminalShop::Models::ProductVariant]) }
24
+ sig { returns(T::Array[TerminalShop::ProductVariant]) }
20
25
  attr_accessor :variants
21
26
 
22
27
  # Order of the product used when displaying a sorted list of products.
@@ -27,17 +32,23 @@ module TerminalShop
27
32
  attr_writer :order
28
33
 
29
34
  # Whether the product must be or can be subscribed to.
30
- sig { returns(T.nilable(TerminalShop::Models::ProductAPI::Subscription::TaggedSymbol)) }
35
+ sig do
36
+ returns(T.nilable(TerminalShop::ProductAPI::Subscription::TaggedSymbol))
37
+ end
31
38
  attr_reader :subscription
32
39
 
33
- sig { params(subscription: TerminalShop::Models::ProductAPI::Subscription::OrSymbol).void }
40
+ sig do
41
+ params(
42
+ subscription: TerminalShop::ProductAPI::Subscription::OrSymbol
43
+ ).void
44
+ end
34
45
  attr_writer :subscription
35
46
 
36
47
  # Tags for the product.
37
- sig { returns(T.nilable(TerminalShop::Models::ProductAPI::Tags)) }
48
+ sig { returns(T.nilable(TerminalShop::ProductAPI::Tags)) }
38
49
  attr_reader :tags
39
50
 
40
- sig { params(tags: T.any(TerminalShop::Models::ProductAPI::Tags, TerminalShop::Internal::AnyHash)).void }
51
+ sig { params(tags: TerminalShop::ProductAPI::Tags::OrHash).void }
41
52
  attr_writer :tags
42
53
 
43
54
  # Product sold in the Terminal shop.
@@ -46,12 +57,11 @@ module TerminalShop
46
57
  id: String,
47
58
  description: String,
48
59
  name: String,
49
- variants: T::Array[T.any(TerminalShop::Models::ProductVariant, TerminalShop::Internal::AnyHash)],
60
+ variants: T::Array[TerminalShop::ProductVariant::OrHash],
50
61
  order: Integer,
51
- subscription: TerminalShop::Models::ProductAPI::Subscription::OrSymbol,
52
- tags: T.any(TerminalShop::Models::ProductAPI::Tags, TerminalShop::Internal::AnyHash)
53
- )
54
- .returns(T.attached_class)
62
+ subscription: TerminalShop::ProductAPI::Subscription::OrSymbol,
63
+ tags: TerminalShop::ProductAPI::Tags::OrHash
64
+ ).returns(T.attached_class)
55
65
  end
56
66
  def self.new(
57
67
  # Unique object identifier. The format and length of IDs may change over time.
@@ -68,38 +78,56 @@ module TerminalShop
68
78
  subscription: nil,
69
79
  # Tags for the product.
70
80
  tags: nil
71
- ); end
81
+ )
82
+ end
83
+
72
84
  sig do
73
- override
74
- .returns(
75
- {
76
- id: String,
77
- description: String,
78
- name: String,
79
- variants: T::Array[TerminalShop::Models::ProductVariant],
80
- order: Integer,
81
- subscription: TerminalShop::Models::ProductAPI::Subscription::TaggedSymbol,
82
- tags: TerminalShop::Models::ProductAPI::Tags
83
- }
84
- )
85
+ override.returns(
86
+ {
87
+ id: String,
88
+ description: String,
89
+ name: String,
90
+ variants: T::Array[TerminalShop::ProductVariant],
91
+ order: Integer,
92
+ subscription: TerminalShop::ProductAPI::Subscription::TaggedSymbol,
93
+ tags: TerminalShop::ProductAPI::Tags
94
+ }
95
+ )
96
+ end
97
+ def to_hash
85
98
  end
86
- def to_hash; end
87
99
 
88
100
  # Whether the product must be or can be subscribed to.
89
101
  module Subscription
90
102
  extend TerminalShop::Internal::Type::Enum
91
103
 
92
- TaggedSymbol = T.type_alias { T.all(Symbol, TerminalShop::Models::ProductAPI::Subscription) }
104
+ TaggedSymbol =
105
+ T.type_alias { T.all(Symbol, TerminalShop::ProductAPI::Subscription) }
93
106
  OrSymbol = T.type_alias { T.any(Symbol, String) }
94
107
 
95
- ALLOWED = T.let(:allowed, TerminalShop::Models::ProductAPI::Subscription::TaggedSymbol)
96
- REQUIRED = T.let(:required, TerminalShop::Models::ProductAPI::Subscription::TaggedSymbol)
108
+ ALLOWED =
109
+ T.let(:allowed, TerminalShop::ProductAPI::Subscription::TaggedSymbol)
110
+ REQUIRED =
111
+ T.let(:required, TerminalShop::ProductAPI::Subscription::TaggedSymbol)
97
112
 
98
- sig { override.returns(T::Array[TerminalShop::Models::ProductAPI::Subscription::TaggedSymbol]) }
99
- def self.values; end
113
+ sig do
114
+ override.returns(
115
+ T::Array[TerminalShop::ProductAPI::Subscription::TaggedSymbol]
116
+ )
117
+ end
118
+ def self.values
119
+ end
100
120
  end
101
121
 
102
122
  class Tags < TerminalShop::Internal::Type::BaseModel
123
+ OrHash =
124
+ T.type_alias do
125
+ T.any(
126
+ TerminalShop::ProductAPI::Tags,
127
+ TerminalShop::Internal::AnyHash
128
+ )
129
+ end
130
+
103
131
  sig { returns(T.nilable(String)) }
104
132
  attr_reader :app
105
133
 
@@ -145,26 +173,32 @@ module TerminalShop
145
173
  market_eu: T::Boolean,
146
174
  market_global: T::Boolean,
147
175
  market_na: T::Boolean
148
- )
149
- .returns(T.attached_class)
176
+ ).returns(T.attached_class)
150
177
  end
151
- def self.new(app: nil, color: nil, featured: nil, market_eu: nil, market_global: nil, market_na: nil)
178
+ def self.new(
179
+ app: nil,
180
+ color: nil,
181
+ featured: nil,
182
+ market_eu: nil,
183
+ market_global: nil,
184
+ market_na: nil
185
+ )
152
186
  end
153
187
 
154
188
  sig do
155
- override
156
- .returns(
157
- {
158
- app: String,
159
- color: String,
160
- featured: T::Boolean,
161
- market_eu: T::Boolean,
162
- market_global: T::Boolean,
163
- market_na: T::Boolean
164
- }
165
- )
189
+ override.returns(
190
+ {
191
+ app: String,
192
+ color: String,
193
+ featured: T::Boolean,
194
+ market_eu: T::Boolean,
195
+ market_global: T::Boolean,
196
+ market_na: T::Boolean
197
+ }
198
+ )
199
+ end
200
+ def to_hash
166
201
  end
167
- def to_hash; end
168
202
  end
169
203
  end
170
204
  end
@@ -6,14 +6,24 @@ module TerminalShop
6
6
  extend TerminalShop::Internal::Type::RequestParameters::Converter
7
7
  include TerminalShop::Internal::Type::RequestParameters
8
8
 
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(TerminalShop::ProductGetParams, TerminalShop::Internal::AnyHash)
12
+ end
13
+
9
14
  sig do
10
- params(request_options: T.any(TerminalShop::RequestOptions, TerminalShop::Internal::AnyHash))
11
- .returns(T.attached_class)
15
+ params(request_options: TerminalShop::RequestOptions::OrHash).returns(
16
+ T.attached_class
17
+ )
18
+ end
19
+ def self.new(request_options: {})
12
20
  end
13
- def self.new(request_options: {}); end
14
21
 
15
- sig { override.returns({request_options: TerminalShop::RequestOptions}) }
16
- def to_hash; end
22
+ sig do
23
+ override.returns({ request_options: TerminalShop::RequestOptions })
24
+ end
25
+ def to_hash
26
+ end
17
27
  end
18
28
  end
19
29
  end
@@ -3,23 +3,33 @@
3
3
  module TerminalShop
4
4
  module Models
5
5
  class ProductGetResponse < TerminalShop::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ TerminalShop::Models::ProductGetResponse,
10
+ TerminalShop::Internal::AnyHash
11
+ )
12
+ end
13
+
6
14
  # Product sold in the Terminal shop.
7
- sig { returns(TerminalShop::Models::ProductAPI) }
15
+ sig { returns(TerminalShop::ProductAPI) }
8
16
  attr_reader :data
9
17
 
10
- sig { params(data: T.any(TerminalShop::Models::ProductAPI, TerminalShop::Internal::AnyHash)).void }
18
+ sig { params(data: TerminalShop::ProductAPI::OrHash).void }
11
19
  attr_writer :data
12
20
 
13
21
  sig do
14
- params(data: T.any(TerminalShop::Models::ProductAPI, TerminalShop::Internal::AnyHash))
15
- .returns(T.attached_class)
22
+ params(data: TerminalShop::ProductAPI::OrHash).returns(T.attached_class)
16
23
  end
17
24
  def self.new(
18
25
  # Product sold in the Terminal shop.
19
26
  data:
20
- ); end
21
- sig { override.returns({data: TerminalShop::Models::ProductAPI}) }
22
- def to_hash; end
27
+ )
28
+ end
29
+
30
+ sig { override.returns({ data: TerminalShop::ProductAPI }) }
31
+ def to_hash
32
+ end
23
33
  end
24
34
  end
25
35
  end
@@ -6,14 +6,27 @@ module TerminalShop
6
6
  extend TerminalShop::Internal::Type::RequestParameters::Converter
7
7
  include TerminalShop::Internal::Type::RequestParameters
8
8
 
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ TerminalShop::ProductListParams,
13
+ TerminalShop::Internal::AnyHash
14
+ )
15
+ end
16
+
9
17
  sig do
10
- params(request_options: T.any(TerminalShop::RequestOptions, TerminalShop::Internal::AnyHash))
11
- .returns(T.attached_class)
18
+ params(request_options: TerminalShop::RequestOptions::OrHash).returns(
19
+ T.attached_class
20
+ )
21
+ end
22
+ def self.new(request_options: {})
12
23
  end
13
- def self.new(request_options: {}); end
14
24
 
15
- sig { override.returns({request_options: TerminalShop::RequestOptions}) }
16
- def to_hash; end
25
+ sig do
26
+ override.returns({ request_options: TerminalShop::RequestOptions })
27
+ end
28
+ def to_hash
29
+ end
17
30
  end
18
31
  end
19
32
  end
@@ -3,20 +3,32 @@
3
3
  module TerminalShop
4
4
  module Models
5
5
  class ProductListResponse < TerminalShop::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ TerminalShop::Models::ProductListResponse,
10
+ TerminalShop::Internal::AnyHash
11
+ )
12
+ end
13
+
6
14
  # A list of products.
7
- sig { returns(T::Array[TerminalShop::Models::ProductAPI]) }
15
+ sig { returns(T::Array[TerminalShop::ProductAPI]) }
8
16
  attr_accessor :data
9
17
 
10
18
  sig do
11
- params(data: T::Array[T.any(TerminalShop::Models::ProductAPI, TerminalShop::Internal::AnyHash)])
12
- .returns(T.attached_class)
19
+ params(data: T::Array[TerminalShop::ProductAPI::OrHash]).returns(
20
+ T.attached_class
21
+ )
13
22
  end
14
23
  def self.new(
15
24
  # A list of products.
16
25
  data:
17
- ); end
18
- sig { override.returns({data: T::Array[TerminalShop::Models::ProductAPI]}) }
19
- def to_hash; end
26
+ )
27
+ end
28
+
29
+ sig { override.returns({ data: T::Array[TerminalShop::ProductAPI] }) }
30
+ def to_hash
31
+ end
20
32
  end
21
33
  end
22
34
  end
@@ -3,6 +3,11 @@
3
3
  module TerminalShop
4
4
  module Models
5
5
  class ProductVariant < TerminalShop::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(TerminalShop::ProductVariant, TerminalShop::Internal::AnyHash)
9
+ end
10
+
6
11
  # Unique object identifier. The format and length of IDs may change over time.
7
12
  sig { returns(String) }
8
13
  attr_accessor :id
@@ -23,10 +28,10 @@ module TerminalShop
23
28
  attr_writer :description
24
29
 
25
30
  # Tags for the product variant.
26
- sig { returns(T.nilable(TerminalShop::Models::ProductVariant::Tags)) }
31
+ sig { returns(T.nilable(TerminalShop::ProductVariant::Tags)) }
27
32
  attr_reader :tags
28
33
 
29
- sig { params(tags: T.any(TerminalShop::Models::ProductVariant::Tags, TerminalShop::Internal::AnyHash)).void }
34
+ sig { params(tags: TerminalShop::ProductVariant::Tags::OrHash).void }
30
35
  attr_writer :tags
31
36
 
32
37
  # Variant of a product in the Terminal shop.
@@ -36,9 +41,8 @@ module TerminalShop
36
41
  name: String,
37
42
  price: Integer,
38
43
  description: String,
39
- tags: T.any(TerminalShop::Models::ProductVariant::Tags, TerminalShop::Internal::AnyHash)
40
- )
41
- .returns(T.attached_class)
44
+ tags: TerminalShop::ProductVariant::Tags::OrHash
45
+ ).returns(T.attached_class)
42
46
  end
43
47
  def self.new(
44
48
  # Unique object identifier. The format and length of IDs may change over time.
@@ -51,16 +55,32 @@ module TerminalShop
51
55
  description: nil,
52
56
  # Tags for the product variant.
53
57
  tags: nil
54
- ); end
58
+ )
59
+ end
60
+
55
61
  sig do
56
- override
57
- .returns(
58
- {id: String, name: String, price: Integer, description: String, tags: TerminalShop::Models::ProductVariant::Tags}
59
- )
62
+ override.returns(
63
+ {
64
+ id: String,
65
+ name: String,
66
+ price: Integer,
67
+ description: String,
68
+ tags: TerminalShop::ProductVariant::Tags
69
+ }
70
+ )
71
+ end
72
+ def to_hash
60
73
  end
61
- def to_hash; end
62
74
 
63
75
  class Tags < TerminalShop::Internal::Type::BaseModel
76
+ OrHash =
77
+ T.type_alias do
78
+ T.any(
79
+ TerminalShop::ProductVariant::Tags,
80
+ TerminalShop::Internal::AnyHash
81
+ )
82
+ end
83
+
64
84
  sig { returns(T.nilable(String)) }
65
85
  attr_reader :app
66
86
 
@@ -87,10 +107,20 @@ module TerminalShop
87
107
 
88
108
  # Tags for the product variant.
89
109
  sig do
90
- params(app: String, market_eu: T::Boolean, market_global: T::Boolean, market_na: T::Boolean)
91
- .returns(T.attached_class)
110
+ params(
111
+ app: String,
112
+ market_eu: T::Boolean,
113
+ market_global: T::Boolean,
114
+ market_na: T::Boolean
115
+ ).returns(T.attached_class)
116
+ end
117
+ def self.new(
118
+ app: nil,
119
+ market_eu: nil,
120
+ market_global: nil,
121
+ market_na: nil
122
+ )
92
123
  end
93
- def self.new(app: nil, market_eu: nil, market_global: nil, market_na: nil); end
94
124
 
95
125
  sig do
96
126
  override.returns(
@@ -102,7 +132,8 @@ module TerminalShop
102
132
  }
103
133
  )
104
134
  end
105
- def to_hash; end
135
+ def to_hash
136
+ end
106
137
  end
107
138
  end
108
139
  end
@@ -3,26 +3,43 @@
3
3
  module TerminalShop
4
4
  module Models
5
5
  class ProfileAPI < TerminalShop::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(TerminalShop::ProfileAPI, TerminalShop::Internal::AnyHash)
9
+ end
10
+
6
11
  # A Terminal shop user. (We have users, btw.)
7
- sig { returns(TerminalShop::Models::ProfileAPI::User) }
12
+ sig { returns(TerminalShop::ProfileAPI::User) }
8
13
  attr_reader :user
9
14
 
10
- sig { params(user: T.any(TerminalShop::Models::ProfileAPI::User, TerminalShop::Internal::AnyHash)).void }
15
+ sig { params(user: TerminalShop::ProfileAPI::User::OrHash).void }
11
16
  attr_writer :user
12
17
 
13
18
  # A Terminal shop user's profile. (We have users, btw.)
14
19
  sig do
15
- params(user: T.any(TerminalShop::Models::ProfileAPI::User, TerminalShop::Internal::AnyHash))
16
- .returns(T.attached_class)
20
+ params(user: TerminalShop::ProfileAPI::User::OrHash).returns(
21
+ T.attached_class
22
+ )
17
23
  end
18
24
  def self.new(
19
25
  # A Terminal shop user. (We have users, btw.)
20
26
  user:
21
- ); end
22
- sig { override.returns({user: TerminalShop::Models::ProfileAPI::User}) }
23
- def to_hash; end
27
+ )
28
+ end
29
+
30
+ sig { override.returns({ user: TerminalShop::ProfileAPI::User }) }
31
+ def to_hash
32
+ end
24
33
 
25
34
  class User < TerminalShop::Internal::Type::BaseModel
35
+ OrHash =
36
+ T.type_alias do
37
+ T.any(
38
+ TerminalShop::ProfileAPI::User,
39
+ TerminalShop::Internal::AnyHash
40
+ )
41
+ end
42
+
26
43
  # Unique object identifier. The format and length of IDs may change over time.
27
44
  sig { returns(String) }
28
45
  attr_accessor :id
@@ -51,8 +68,7 @@ module TerminalShop
51
68
  fingerprint: T.nilable(String),
52
69
  name: T.nilable(String),
53
70
  stripe_customer_id: String
54
- )
55
- .returns(T.attached_class)
71
+ ).returns(T.attached_class)
56
72
  end
57
73
  def self.new(
58
74
  # Unique object identifier. The format and length of IDs may change over time.
@@ -65,20 +81,22 @@ module TerminalShop
65
81
  name:,
66
82
  # Stripe customer ID of the user.
67
83
  stripe_customer_id:
68
- ); end
84
+ )
85
+ end
86
+
69
87
  sig do
70
- override
71
- .returns(
72
- {
73
- id: String,
74
- email: T.nilable(String),
75
- fingerprint: T.nilable(String),
76
- name: T.nilable(String),
77
- stripe_customer_id: String
78
- }
79
- )
88
+ override.returns(
89
+ {
90
+ id: String,
91
+ email: T.nilable(String),
92
+ fingerprint: T.nilable(String),
93
+ name: T.nilable(String),
94
+ stripe_customer_id: String
95
+ }
96
+ )
97
+ end
98
+ def to_hash
80
99
  end
81
- def to_hash; end
82
100
  end
83
101
  end
84
102
  end
@@ -6,14 +6,24 @@ module TerminalShop
6
6
  extend TerminalShop::Internal::Type::RequestParameters::Converter
7
7
  include TerminalShop::Internal::Type::RequestParameters
8
8
 
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(TerminalShop::ProfileMeParams, TerminalShop::Internal::AnyHash)
12
+ end
13
+
9
14
  sig do
10
- params(request_options: T.any(TerminalShop::RequestOptions, TerminalShop::Internal::AnyHash))
11
- .returns(T.attached_class)
15
+ params(request_options: TerminalShop::RequestOptions::OrHash).returns(
16
+ T.attached_class
17
+ )
18
+ end
19
+ def self.new(request_options: {})
12
20
  end
13
- def self.new(request_options: {}); end
14
21
 
15
- sig { override.returns({request_options: TerminalShop::RequestOptions}) }
16
- def to_hash; end
22
+ sig do
23
+ override.returns({ request_options: TerminalShop::RequestOptions })
24
+ end
25
+ def to_hash
26
+ end
17
27
  end
18
28
  end
19
29
  end
@@ -3,23 +3,33 @@
3
3
  module TerminalShop
4
4
  module Models
5
5
  class ProfileMeResponse < TerminalShop::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ TerminalShop::Models::ProfileMeResponse,
10
+ TerminalShop::Internal::AnyHash
11
+ )
12
+ end
13
+
6
14
  # A Terminal shop user's profile. (We have users, btw.)
7
- sig { returns(TerminalShop::Models::ProfileAPI) }
15
+ sig { returns(TerminalShop::ProfileAPI) }
8
16
  attr_reader :data
9
17
 
10
- sig { params(data: T.any(TerminalShop::Models::ProfileAPI, TerminalShop::Internal::AnyHash)).void }
18
+ sig { params(data: TerminalShop::ProfileAPI::OrHash).void }
11
19
  attr_writer :data
12
20
 
13
21
  sig do
14
- params(data: T.any(TerminalShop::Models::ProfileAPI, TerminalShop::Internal::AnyHash))
15
- .returns(T.attached_class)
22
+ params(data: TerminalShop::ProfileAPI::OrHash).returns(T.attached_class)
16
23
  end
17
24
  def self.new(
18
25
  # A Terminal shop user's profile. (We have users, btw.)
19
26
  data:
20
- ); end
21
- sig { override.returns({data: TerminalShop::Models::ProfileAPI}) }
22
- def to_hash; end
27
+ )
28
+ end
29
+
30
+ sig { override.returns({ data: TerminalShop::ProfileAPI }) }
31
+ def to_hash
32
+ end
23
33
  end
24
34
  end
25
35
  end
@@ -6,6 +6,14 @@ module TerminalShop
6
6
  extend TerminalShop::Internal::Type::RequestParameters::Converter
7
7
  include TerminalShop::Internal::Type::RequestParameters
8
8
 
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ TerminalShop::ProfileUpdateParams,
13
+ TerminalShop::Internal::AnyHash
14
+ )
15
+ end
16
+
9
17
  sig { returns(String) }
10
18
  attr_accessor :email
11
19
 
@@ -16,14 +24,23 @@ module TerminalShop
16
24
  params(
17
25
  email: String,
18
26
  name: String,
19
- request_options: T.any(TerminalShop::RequestOptions, TerminalShop::Internal::AnyHash)
20
- )
21
- .returns(T.attached_class)
27
+ request_options: TerminalShop::RequestOptions::OrHash
28
+ ).returns(T.attached_class)
29
+ end
30
+ def self.new(email:, name:, request_options: {})
22
31
  end
23
- def self.new(email:, name:, request_options: {}); end
24
32
 
25
- sig { override.returns({email: String, name: String, request_options: TerminalShop::RequestOptions}) }
26
- def to_hash; end
33
+ sig do
34
+ override.returns(
35
+ {
36
+ email: String,
37
+ name: String,
38
+ request_options: TerminalShop::RequestOptions
39
+ }
40
+ )
41
+ end
42
+ def to_hash
43
+ end
27
44
  end
28
45
  end
29
46
  end