terminal-shop 1.8.0 → 2.1.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 (299) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +16 -8
  3. data/lib/terminal-shop/client.rb +2 -1
  4. data/lib/terminal-shop/models/address_create_params.rb +1 -1
  5. data/lib/terminal-shop/models/address_delete_params.rb +1 -1
  6. data/lib/terminal-shop/models/address_get_params.rb +1 -1
  7. data/lib/terminal-shop/models/address_list_params.rb +1 -1
  8. data/lib/terminal-shop/models/app_create_params.rb +1 -1
  9. data/lib/terminal-shop/models/app_delete_params.rb +1 -1
  10. data/lib/terminal-shop/models/app_get_params.rb +1 -1
  11. data/lib/terminal-shop/models/app_list_params.rb +1 -1
  12. data/lib/terminal-shop/models/card_collect_params.rb +1 -1
  13. data/lib/terminal-shop/models/card_create_params.rb +1 -1
  14. data/lib/terminal-shop/models/card_delete_params.rb +1 -1
  15. data/lib/terminal-shop/models/card_get_params.rb +1 -1
  16. data/lib/terminal-shop/models/card_list_params.rb +1 -1
  17. data/lib/terminal-shop/models/cart_clear_params.rb +1 -1
  18. data/lib/terminal-shop/models/cart_convert_params.rb +1 -1
  19. data/lib/terminal-shop/models/cart_get_params.rb +1 -1
  20. data/lib/terminal-shop/models/cart_set_address_params.rb +1 -1
  21. data/lib/terminal-shop/models/cart_set_card_params.rb +1 -1
  22. data/lib/terminal-shop/models/cart_set_item_params.rb +1 -1
  23. data/lib/terminal-shop/models/email_create_params.rb +1 -1
  24. data/lib/terminal-shop/models/order_create_params.rb +1 -1
  25. data/lib/terminal-shop/models/order_get_params.rb +1 -1
  26. data/lib/terminal-shop/models/order_list_params.rb +1 -1
  27. data/lib/terminal-shop/models/product.rb +7 -3
  28. data/lib/terminal-shop/models/product_get_params.rb +1 -1
  29. data/lib/terminal-shop/models/product_list_params.rb +1 -1
  30. data/lib/terminal-shop/models/profile_me_params.rb +1 -1
  31. data/lib/terminal-shop/models/profile_update_params.rb +1 -1
  32. data/lib/terminal-shop/models/region.rb +7 -3
  33. data/lib/terminal-shop/models/subscription.rb +5 -7
  34. data/lib/terminal-shop/models/subscription_create_params.rb +1 -1
  35. data/lib/terminal-shop/models/subscription_delete_params.rb +1 -1
  36. data/lib/terminal-shop/models/subscription_get_params.rb +1 -1
  37. data/lib/terminal-shop/models/subscription_list_params.rb +1 -1
  38. data/lib/terminal-shop/models/token_create_params.rb +1 -1
  39. data/lib/terminal-shop/models/token_delete_params.rb +1 -1
  40. data/lib/terminal-shop/models/token_get_params.rb +1 -1
  41. data/lib/terminal-shop/models/token_list_params.rb +1 -1
  42. data/lib/terminal-shop/models/view_init_params.rb +1 -1
  43. data/lib/terminal-shop/request_options.rb +1 -34
  44. data/lib/terminal-shop/transport/base_client.rb +459 -0
  45. data/lib/terminal-shop/transport/pooled_net_requester.rb +182 -0
  46. data/lib/terminal-shop/type/array_of.rb +110 -0
  47. data/lib/terminal-shop/type/base_model.rb +362 -0
  48. data/lib/terminal-shop/type/base_page.rb +61 -0
  49. data/lib/terminal-shop/type/boolean_model.rb +52 -0
  50. data/lib/terminal-shop/type/converter.rb +217 -0
  51. data/lib/terminal-shop/type/enum.rb +101 -0
  52. data/lib/terminal-shop/type/hash_of.rb +136 -0
  53. data/lib/terminal-shop/type/request_parameters.rb +38 -0
  54. data/lib/terminal-shop/type/union.rb +183 -0
  55. data/lib/terminal-shop/type/unknown.rb +56 -0
  56. data/lib/terminal-shop/type.rb +23 -0
  57. data/lib/terminal-shop/util.rb +19 -12
  58. data/lib/terminal-shop/version.rb +1 -1
  59. data/lib/terminal-shop.rb +28 -5
  60. data/rbi/lib/terminal-shop/client.rbi +19 -31
  61. data/rbi/lib/terminal-shop/errors.rbi +7 -42
  62. data/rbi/lib/terminal-shop/models/address.rbi +15 -51
  63. data/rbi/lib/terminal-shop/models/address_create_params.rbi +27 -48
  64. data/rbi/lib/terminal-shop/models/address_create_response.rbi +1 -6
  65. data/rbi/lib/terminal-shop/models/address_delete_params.rbi +2 -2
  66. data/rbi/lib/terminal-shop/models/address_delete_response.rbi +1 -6
  67. data/rbi/lib/terminal-shop/models/address_get_params.rbi +2 -2
  68. data/rbi/lib/terminal-shop/models/address_get_response.rbi +7 -6
  69. data/rbi/lib/terminal-shop/models/address_list_params.rbi +2 -2
  70. data/rbi/lib/terminal-shop/models/address_list_response.rbi +4 -6
  71. data/rbi/lib/terminal-shop/models/app.rbi +4 -24
  72. data/rbi/lib/terminal-shop/models/app_create_params.rbi +4 -14
  73. data/rbi/lib/terminal-shop/models/app_create_response.rbi +8 -20
  74. data/rbi/lib/terminal-shop/models/app_delete_params.rbi +2 -2
  75. data/rbi/lib/terminal-shop/models/app_delete_response.rbi +1 -6
  76. data/rbi/lib/terminal-shop/models/app_get_params.rbi +2 -2
  77. data/rbi/lib/terminal-shop/models/app_get_response.rbi +4 -6
  78. data/rbi/lib/terminal-shop/models/app_list_params.rbi +2 -2
  79. data/rbi/lib/terminal-shop/models/app_list_response.rbi +4 -6
  80. data/rbi/lib/terminal-shop/models/card.rbi +14 -36
  81. data/rbi/lib/terminal-shop/models/card_collect_params.rbi +2 -2
  82. data/rbi/lib/terminal-shop/models/card_collect_response.rbi +7 -14
  83. data/rbi/lib/terminal-shop/models/card_create_params.rbi +3 -8
  84. data/rbi/lib/terminal-shop/models/card_create_response.rbi +1 -6
  85. data/rbi/lib/terminal-shop/models/card_delete_params.rbi +2 -2
  86. data/rbi/lib/terminal-shop/models/card_delete_response.rbi +1 -6
  87. data/rbi/lib/terminal-shop/models/card_get_params.rbi +2 -2
  88. data/rbi/lib/terminal-shop/models/card_get_response.rbi +4 -6
  89. data/rbi/lib/terminal-shop/models/card_list_params.rbi +2 -2
  90. data/rbi/lib/terminal-shop/models/card_list_response.rbi +4 -6
  91. data/rbi/lib/terminal-shop/models/cart.rbi +34 -88
  92. data/rbi/lib/terminal-shop/models/cart_clear_params.rbi +2 -2
  93. data/rbi/lib/terminal-shop/models/cart_clear_response.rbi +1 -6
  94. data/rbi/lib/terminal-shop/models/cart_convert_params.rbi +2 -2
  95. data/rbi/lib/terminal-shop/models/cart_convert_response.rbi +4 -6
  96. data/rbi/lib/terminal-shop/models/cart_get_params.rbi +2 -2
  97. data/rbi/lib/terminal-shop/models/cart_get_response.rbi +4 -6
  98. data/rbi/lib/terminal-shop/models/cart_set_address_params.rbi +3 -8
  99. data/rbi/lib/terminal-shop/models/cart_set_address_response.rbi +1 -6
  100. data/rbi/lib/terminal-shop/models/cart_set_card_params.rbi +3 -8
  101. data/rbi/lib/terminal-shop/models/cart_set_card_response.rbi +1 -6
  102. data/rbi/lib/terminal-shop/models/cart_set_item_params.rbi +4 -14
  103. data/rbi/lib/terminal-shop/models/cart_set_item_response.rbi +4 -6
  104. data/rbi/lib/terminal-shop/models/email_create_params.rbi +3 -8
  105. data/rbi/lib/terminal-shop/models/email_create_response.rbi +1 -6
  106. data/rbi/lib/terminal-shop/models/order.rbi +52 -139
  107. data/rbi/lib/terminal-shop/models/order_create_params.rbi +5 -20
  108. data/rbi/lib/terminal-shop/models/order_create_response.rbi +1 -6
  109. data/rbi/lib/terminal-shop/models/order_get_params.rbi +2 -2
  110. data/rbi/lib/terminal-shop/models/order_get_response.rbi +4 -6
  111. data/rbi/lib/terminal-shop/models/order_list_params.rbi +2 -2
  112. data/rbi/lib/terminal-shop/models/order_list_response.rbi +4 -6
  113. data/rbi/lib/terminal-shop/models/product.rbi +43 -77
  114. data/rbi/lib/terminal-shop/models/product_get_params.rbi +2 -2
  115. data/rbi/lib/terminal-shop/models/product_get_response.rbi +7 -6
  116. data/rbi/lib/terminal-shop/models/product_list_params.rbi +2 -2
  117. data/rbi/lib/terminal-shop/models/product_list_response.rbi +4 -6
  118. data/rbi/lib/terminal-shop/models/product_variant.rbi +3 -18
  119. data/rbi/lib/terminal-shop/models/profile.rbi +12 -36
  120. data/rbi/lib/terminal-shop/models/profile_me_params.rbi +2 -2
  121. data/rbi/lib/terminal-shop/models/profile_me_response.rbi +7 -6
  122. data/rbi/lib/terminal-shop/models/profile_update_params.rbi +4 -14
  123. data/rbi/lib/terminal-shop/models/profile_update_response.rbi +7 -6
  124. data/rbi/lib/terminal-shop/models/region.rbi +10 -5
  125. data/rbi/lib/terminal-shop/models/subscription.rbi +28 -75
  126. data/rbi/lib/terminal-shop/models/subscription_create_params.rbi +2 -2
  127. data/rbi/lib/terminal-shop/models/subscription_create_response.rbi +1 -6
  128. data/rbi/lib/terminal-shop/models/subscription_delete_params.rbi +2 -2
  129. data/rbi/lib/terminal-shop/models/subscription_delete_response.rbi +1 -6
  130. data/rbi/lib/terminal-shop/models/subscription_get_params.rbi +2 -2
  131. data/rbi/lib/terminal-shop/models/subscription_get_response.rbi +7 -6
  132. data/rbi/lib/terminal-shop/models/subscription_list_params.rbi +2 -2
  133. data/rbi/lib/terminal-shop/models/subscription_list_response.rbi +3 -8
  134. data/rbi/lib/terminal-shop/models/token.rbi +3 -18
  135. data/rbi/lib/terminal-shop/models/token_create_params.rbi +2 -2
  136. data/rbi/lib/terminal-shop/models/token_create_response.rbi +8 -20
  137. data/rbi/lib/terminal-shop/models/token_delete_params.rbi +2 -2
  138. data/rbi/lib/terminal-shop/models/token_delete_response.rbi +1 -6
  139. data/rbi/lib/terminal-shop/models/token_get_params.rbi +2 -2
  140. data/rbi/lib/terminal-shop/models/token_get_response.rbi +4 -6
  141. data/rbi/lib/terminal-shop/models/token_list_params.rbi +2 -2
  142. data/rbi/lib/terminal-shop/models/token_list_response.rbi +4 -6
  143. data/rbi/lib/terminal-shop/models/view_init_params.rbi +2 -2
  144. data/rbi/lib/terminal-shop/models/view_init_response.rbi +44 -82
  145. data/rbi/lib/terminal-shop/request_options.rbi +8 -67
  146. data/rbi/lib/terminal-shop/resources/address.rbi +4 -4
  147. data/rbi/lib/terminal-shop/resources/app.rbi +4 -4
  148. data/rbi/lib/terminal-shop/resources/card.rbi +5 -5
  149. data/rbi/lib/terminal-shop/resources/cart.rbi +6 -6
  150. data/rbi/lib/terminal-shop/resources/email.rbi +1 -1
  151. data/rbi/lib/terminal-shop/resources/order.rbi +3 -3
  152. data/rbi/lib/terminal-shop/resources/product.rbi +2 -2
  153. data/rbi/lib/terminal-shop/resources/profile.rbi +2 -2
  154. data/rbi/lib/terminal-shop/resources/subscription.rbi +5 -4
  155. data/rbi/lib/terminal-shop/resources/token.rbi +4 -4
  156. data/rbi/lib/terminal-shop/resources/view.rbi +1 -1
  157. data/rbi/lib/terminal-shop/transport/base_client.rbi +208 -0
  158. data/rbi/lib/terminal-shop/transport/pooled_net_requester.rbi +64 -0
  159. data/rbi/lib/terminal-shop/type/array_of.rbi +82 -0
  160. data/rbi/lib/terminal-shop/type/base_model.rbi +194 -0
  161. data/rbi/lib/terminal-shop/type/base_page.rbi +38 -0
  162. data/rbi/lib/terminal-shop/type/boolean_model.rbi +41 -0
  163. data/rbi/lib/terminal-shop/type/converter.rbi +101 -0
  164. data/rbi/lib/terminal-shop/type/enum.rbi +58 -0
  165. data/rbi/lib/terminal-shop/type/hash_of.rbi +85 -0
  166. data/rbi/lib/terminal-shop/type/request_parameters.rbi +20 -0
  167. data/rbi/lib/terminal-shop/type/union.rbi +68 -0
  168. data/rbi/lib/terminal-shop/type/unknown.rbi +37 -0
  169. data/rbi/lib/terminal-shop/type.rbi +23 -0
  170. data/rbi/lib/terminal-shop/util.rbi +24 -13
  171. data/rbi/lib/terminal-shop/version.rbi +1 -1
  172. data/sig/terminal-shop/client.rbs +9 -9
  173. data/sig/terminal-shop/errors.rbs +17 -17
  174. data/sig/terminal-shop/models/address.rbs +11 -15
  175. data/sig/terminal-shop/models/address_create_params.rbs +12 -17
  176. data/sig/terminal-shop/models/address_create_response.rbs +1 -6
  177. data/sig/terminal-shop/models/address_delete_params.rbs +2 -7
  178. data/sig/terminal-shop/models/address_delete_response.rbs +1 -6
  179. data/sig/terminal-shop/models/address_get_params.rbs +2 -7
  180. data/sig/terminal-shop/models/address_get_response.rbs +1 -6
  181. data/sig/terminal-shop/models/address_list_params.rbs +2 -7
  182. data/sig/terminal-shop/models/address_list_response.rbs +1 -6
  183. data/sig/terminal-shop/models/app.rbs +6 -5
  184. data/sig/terminal-shop/models/app_create_params.rbs +6 -11
  185. data/sig/terminal-shop/models/app_create_response.rbs +4 -12
  186. data/sig/terminal-shop/models/app_delete_params.rbs +2 -7
  187. data/sig/terminal-shop/models/app_delete_response.rbs +1 -6
  188. data/sig/terminal-shop/models/app_get_params.rbs +2 -6
  189. data/sig/terminal-shop/models/app_get_response.rbs +1 -5
  190. data/sig/terminal-shop/models/app_list_params.rbs +2 -6
  191. data/sig/terminal-shop/models/app_list_response.rbs +1 -6
  192. data/sig/terminal-shop/models/card.rbs +7 -16
  193. data/sig/terminal-shop/models/card_collect_params.rbs +2 -7
  194. data/sig/terminal-shop/models/card_collect_response.rbs +4 -12
  195. data/sig/terminal-shop/models/card_create_params.rbs +5 -7
  196. data/sig/terminal-shop/models/card_create_response.rbs +1 -6
  197. data/sig/terminal-shop/models/card_delete_params.rbs +2 -7
  198. data/sig/terminal-shop/models/card_delete_response.rbs +1 -6
  199. data/sig/terminal-shop/models/card_get_params.rbs +2 -6
  200. data/sig/terminal-shop/models/card_get_response.rbs +1 -6
  201. data/sig/terminal-shop/models/card_list_params.rbs +2 -6
  202. data/sig/terminal-shop/models/card_list_response.rbs +1 -6
  203. data/sig/terminal-shop/models/cart.rbs +20 -34
  204. data/sig/terminal-shop/models/cart_clear_params.rbs +2 -7
  205. data/sig/terminal-shop/models/cart_clear_response.rbs +1 -6
  206. data/sig/terminal-shop/models/cart_convert_params.rbs +2 -7
  207. data/sig/terminal-shop/models/cart_convert_response.rbs +1 -6
  208. data/sig/terminal-shop/models/cart_get_params.rbs +2 -6
  209. data/sig/terminal-shop/models/cart_get_response.rbs +1 -6
  210. data/sig/terminal-shop/models/cart_set_address_params.rbs +5 -10
  211. data/sig/terminal-shop/models/cart_set_address_response.rbs +1 -6
  212. data/sig/terminal-shop/models/cart_set_card_params.rbs +5 -7
  213. data/sig/terminal-shop/models/cart_set_card_response.rbs +1 -6
  214. data/sig/terminal-shop/models/cart_set_item_params.rbs +6 -11
  215. data/sig/terminal-shop/models/cart_set_item_response.rbs +1 -6
  216. data/sig/terminal-shop/models/email_create_params.rbs +5 -7
  217. data/sig/terminal-shop/models/email_create_response.rbs +1 -6
  218. data/sig/terminal-shop/models/order.rbs +31 -50
  219. data/sig/terminal-shop/models/order_create_params.rbs +7 -12
  220. data/sig/terminal-shop/models/order_create_response.rbs +1 -6
  221. data/sig/terminal-shop/models/order_get_params.rbs +2 -6
  222. data/sig/terminal-shop/models/order_get_response.rbs +1 -6
  223. data/sig/terminal-shop/models/order_list_params.rbs +2 -7
  224. data/sig/terminal-shop/models/order_list_response.rbs +1 -6
  225. data/sig/terminal-shop/models/product.rbs +20 -27
  226. data/sig/terminal-shop/models/product_get_params.rbs +2 -7
  227. data/sig/terminal-shop/models/product_get_response.rbs +1 -6
  228. data/sig/terminal-shop/models/product_list_params.rbs +2 -7
  229. data/sig/terminal-shop/models/product_list_response.rbs +1 -6
  230. data/sig/terminal-shop/models/product_variant.rbs +1 -5
  231. data/sig/terminal-shop/models/profile.rbs +8 -17
  232. data/sig/terminal-shop/models/profile_me_params.rbs +2 -7
  233. data/sig/terminal-shop/models/profile_me_response.rbs +1 -6
  234. data/sig/terminal-shop/models/profile_update_params.rbs +6 -11
  235. data/sig/terminal-shop/models/profile_update_response.rbs +1 -6
  236. data/sig/terminal-shop/models/region.rbs +4 -2
  237. data/sig/terminal-shop/models/subscription.rbs +15 -27
  238. data/sig/terminal-shop/models/subscription_create_params.rbs +2 -7
  239. data/sig/terminal-shop/models/subscription_create_response.rbs +1 -6
  240. data/sig/terminal-shop/models/subscription_delete_params.rbs +2 -7
  241. data/sig/terminal-shop/models/subscription_delete_response.rbs +1 -6
  242. data/sig/terminal-shop/models/subscription_get_params.rbs +2 -7
  243. data/sig/terminal-shop/models/subscription_get_response.rbs +1 -6
  244. data/sig/terminal-shop/models/subscription_list_params.rbs +2 -7
  245. data/sig/terminal-shop/models/subscription_list_response.rbs +3 -6
  246. data/sig/terminal-shop/models/token.rbs +1 -5
  247. data/sig/terminal-shop/models/token_create_params.rbs +2 -7
  248. data/sig/terminal-shop/models/token_create_response.rbs +4 -12
  249. data/sig/terminal-shop/models/token_delete_params.rbs +2 -7
  250. data/sig/terminal-shop/models/token_delete_response.rbs +1 -6
  251. data/sig/terminal-shop/models/token_get_params.rbs +2 -6
  252. data/sig/terminal-shop/models/token_get_response.rbs +1 -6
  253. data/sig/terminal-shop/models/token_list_params.rbs +2 -7
  254. data/sig/terminal-shop/models/token_list_response.rbs +1 -6
  255. data/sig/terminal-shop/models/view_init_params.rbs +2 -6
  256. data/sig/terminal-shop/models/view_init_response.rbs +15 -23
  257. data/sig/terminal-shop/request_options.rbs +2 -12
  258. data/sig/terminal-shop/resources/address.rbs +22 -41
  259. data/sig/terminal-shop/resources/app.rbs +16 -34
  260. data/sig/terminal-shop/resources/card.rbs +18 -40
  261. data/sig/terminal-shop/resources/cart.rbs +22 -47
  262. data/sig/terminal-shop/resources/email.rbs +4 -8
  263. data/sig/terminal-shop/resources/order.rbs +13 -26
  264. data/sig/terminal-shop/resources/product.rbs +7 -16
  265. data/sig/terminal-shop/resources/profile.rbs +8 -16
  266. data/sig/terminal-shop/resources/subscription.rbs +21 -43
  267. data/sig/terminal-shop/resources/token.rbs +14 -32
  268. data/sig/terminal-shop/resources/view.rbs +3 -7
  269. data/sig/terminal-shop/transport/base_client.rbs +110 -0
  270. data/sig/terminal-shop/transport/pooled_net_requester.rbs +39 -0
  271. data/sig/terminal-shop/type/array_of.rbs +36 -0
  272. data/sig/terminal-shop/type/base_model.rbs +73 -0
  273. data/sig/terminal-shop/type/base_page.rbs +22 -0
  274. data/sig/terminal-shop/type/boolean_model.rbs +18 -0
  275. data/sig/terminal-shop/type/converter.rbs +42 -0
  276. data/sig/terminal-shop/type/enum.rbs +22 -0
  277. data/sig/terminal-shop/type/hash_of.rbs +36 -0
  278. data/sig/terminal-shop/type/request_parameters.rbs +13 -0
  279. data/sig/terminal-shop/type/union.rbs +40 -0
  280. data/sig/terminal-shop/type/unknown.rbs +18 -0
  281. data/sig/terminal-shop/type.rbs +22 -0
  282. data/sig/terminal-shop/util.rbs +5 -5
  283. data/sig/terminal-shop/version.rbs +1 -1
  284. metadata +41 -17
  285. data/lib/terminal-shop/base_client.rb +0 -456
  286. data/lib/terminal-shop/base_model.rb +0 -1188
  287. data/lib/terminal-shop/base_page.rb +0 -60
  288. data/lib/terminal-shop/extern.rb +0 -7
  289. data/lib/terminal-shop/pooled_net_requester.rb +0 -169
  290. data/rbi/lib/terminal-shop/base_client.rbi +0 -198
  291. data/rbi/lib/terminal-shop/base_model.rbi +0 -622
  292. data/rbi/lib/terminal-shop/base_page.rbi +0 -38
  293. data/rbi/lib/terminal-shop/extern.rbi +0 -7
  294. data/rbi/lib/terminal-shop/pooled_net_requester.rbi +0 -48
  295. data/sig/terminal-shop/base_client.rbs +0 -108
  296. data/sig/terminal-shop/base_model.rbs +0 -246
  297. data/sig/terminal-shop/base_page.rbs +0 -20
  298. data/sig/terminal-shop/extern.rbs +0 -4
  299. data/sig/terminal-shop/pooled_net_requester.rbs +0 -35
@@ -1,622 +0,0 @@
1
- # typed: strong
2
-
3
- module TerminalShop
4
- # @api private
5
- module Converter
6
- Input = T.type_alias { T.any(TerminalShop::Converter, T::Class[T.anything]) }
7
-
8
- # @api private
9
- sig { overridable.params(value: T.anything).returns(T.anything) }
10
- def coerce(value)
11
- end
12
-
13
- # @api private
14
- sig { overridable.params(value: T.anything).returns(T.anything) }
15
- def dump(value)
16
- end
17
-
18
- # @api private
19
- sig do
20
- overridable
21
- .params(value: T.anything)
22
- .returns(T.any([T::Boolean, T.anything, NilClass], [T::Boolean, T::Boolean, Integer]))
23
- end
24
- def try_strict_coerce(value)
25
- end
26
-
27
- class << self
28
- # @api private
29
- sig do
30
- params(
31
- spec: T.any(
32
- {
33
- const: T.nilable(T.any(NilClass, T::Boolean, Integer, Float, Symbol)),
34
- enum: T.nilable(T.proc.returns(TerminalShop::Converter::Input)),
35
- union: T.nilable(T.proc.returns(TerminalShop::Converter::Input))
36
- },
37
- T.proc.returns(TerminalShop::Converter::Input),
38
- TerminalShop::Converter::Input
39
- )
40
- )
41
- .returns(T.proc.returns(T.anything).void)
42
- end
43
- def self.type_info(spec)
44
- end
45
-
46
- # @api private
47
- #
48
- # Based on `target`, transform `value` into `target`, to the extent possible:
49
- #
50
- # 1. if the given `value` conforms to `target` already, return the given `value`
51
- # 2. if it's possible and safe to convert the given `value` to `target`, then the
52
- # converted value
53
- # 3. otherwise, the given `value` unaltered
54
- sig { params(target: TerminalShop::Converter::Input, value: T.anything).returns(T.anything) }
55
- def self.coerce(target, value)
56
- end
57
-
58
- # @api private
59
- sig { params(target: TerminalShop::Converter::Input, value: T.anything).returns(T.anything) }
60
- def self.dump(target, value)
61
- end
62
-
63
- # @api private
64
- #
65
- # The underlying algorithm for computing maximal compatibility is subject to
66
- # future improvements.
67
- #
68
- # Similar to `#.coerce`, used to determine the best union variant to decode into.
69
- #
70
- # 1. determine if strict-ish coercion is possible
71
- # 2. return either result of successful coercion or if loose coercion is possible
72
- # 3. return a score for recursively tallied count for fields that can be coerced
73
- sig { params(target: TerminalShop::Converter::Input, value: T.anything).returns(T.anything) }
74
- def self.try_strict_coerce(target, value)
75
- end
76
- end
77
- end
78
-
79
- # @api private
80
- #
81
- # When we don't know what to expect for the value.
82
- class Unknown
83
- extend TerminalShop::Converter
84
-
85
- abstract!
86
- final!
87
-
88
- sig(:final) { params(other: T.anything).returns(T::Boolean) }
89
- def self.===(other)
90
- end
91
-
92
- sig(:final) { params(other: T.anything).returns(T::Boolean) }
93
- def self.==(other)
94
- end
95
-
96
- class << self
97
- # @api private
98
- sig(:final) { override.params(value: T.anything).returns(T.anything) }
99
- def coerce(value)
100
- end
101
-
102
- # @api private
103
- sig(:final) { override.params(value: T.anything).returns(T.anything) }
104
- def dump(value)
105
- end
106
-
107
- # @api private
108
- sig(:final) do
109
- override
110
- .params(value: T.anything)
111
- .returns(T.any([T::Boolean, T.anything, NilClass], [T::Boolean, T::Boolean, Integer]))
112
- end
113
- def try_strict_coerce(value)
114
- end
115
- end
116
- end
117
-
118
- # @api private
119
- #
120
- # Ruby has no Boolean class; this is something for models to refer to.
121
- class BooleanModel
122
- extend TerminalShop::Converter
123
-
124
- abstract!
125
- final!
126
-
127
- sig(:final) { params(other: T.anything).returns(T::Boolean) }
128
- def self.===(other)
129
- end
130
-
131
- sig(:final) { params(other: T.anything).returns(T::Boolean) }
132
- def self.==(other)
133
- end
134
-
135
- class << self
136
- # @api private
137
- sig(:final) do
138
- override.params(value: T.any(T::Boolean, T.anything)).returns(T.any(T::Boolean, T.anything))
139
- end
140
- def coerce(value)
141
- end
142
-
143
- # @api private
144
- sig(:final) do
145
- override.params(value: T.any(T::Boolean, T.anything)).returns(T.any(T::Boolean, T.anything))
146
- end
147
- def dump(value)
148
- end
149
-
150
- # @api private
151
- sig(:final) do
152
- override
153
- .params(value: T.anything)
154
- .returns(T.any([T::Boolean, T.anything, NilClass], [T::Boolean, T::Boolean, Integer]))
155
- end
156
- def try_strict_coerce(value)
157
- end
158
- end
159
- end
160
-
161
- # @api private
162
- #
163
- # A value from among a specified list of options. OpenAPI enum values map to Ruby
164
- # values in the SDK as follows:
165
- #
166
- # 1. boolean => true | false
167
- # 2. integer => Integer
168
- # 3. float => Float
169
- # 4. string => Symbol
170
- #
171
- # We can therefore convert string values to Symbols, but can't convert other
172
- # values safely.
173
- class Enum
174
- extend TerminalShop::Converter
175
-
176
- abstract!
177
-
178
- Value = type_template(:out)
179
-
180
- class << self
181
- # All of the valid Symbol values for this enum.
182
- sig { overridable.returns(T::Array[Value]) }
183
- def values
184
- end
185
-
186
- # @api private
187
- #
188
- # Guard against thread safety issues by instantiating `@values`.
189
- sig { void }
190
- private def finalize!
191
- end
192
- end
193
-
194
- sig { params(other: T.anything).returns(T::Boolean) }
195
- def self.===(other)
196
- end
197
-
198
- sig { params(other: T.anything).returns(T::Boolean) }
199
- def self.==(other)
200
- end
201
-
202
- class << self
203
- # @api private
204
- sig { override.params(value: T.any(String, Symbol, T.anything)).returns(T.any(Symbol, T.anything)) }
205
- def coerce(value)
206
- end
207
-
208
- # @api private
209
- sig { override.params(value: T.any(Symbol, T.anything)).returns(T.any(Symbol, T.anything)) }
210
- def dump(value)
211
- end
212
-
213
- # @api private
214
- sig do
215
- override
216
- .params(value: T.anything)
217
- .returns(T.any([T::Boolean, T.anything, NilClass], [T::Boolean, T::Boolean, Integer]))
218
- end
219
- def try_strict_coerce(value)
220
- end
221
- end
222
- end
223
-
224
- # @api private
225
- class Union
226
- extend TerminalShop::Converter
227
-
228
- abstract!
229
-
230
- Variants = type_template(:out)
231
-
232
- class << self
233
- # @api private
234
- #
235
- # All of the specified variant info for this union.
236
- sig { returns(T::Array[[T.nilable(Symbol), T.proc.returns(Variants)]]) }
237
- private def known_variants
238
- end
239
-
240
- # @api private
241
- sig { returns(T::Array[[T.nilable(Symbol), Variants]]) }
242
- protected def derefed_variants
243
- end
244
-
245
- # All of the specified variants for this union.
246
- sig { overridable.returns(T::Array[Variants]) }
247
- def variants
248
- end
249
-
250
- # @api private
251
- sig { params(property: Symbol).void }
252
- private def discriminator(property)
253
- end
254
-
255
- # @api private
256
- sig do
257
- params(
258
- key: T.any(Symbol, T::Hash[Symbol, T.anything], T.proc.returns(Variants), Variants),
259
- spec: T.any(T::Hash[Symbol, T.anything], T.proc.returns(Variants), Variants)
260
- )
261
- .void
262
- end
263
- private def variant(key, spec = nil)
264
- end
265
-
266
- # @api private
267
- sig { params(value: T.anything).returns(T.nilable(Variants)) }
268
- private def resolve_variant(value)
269
- end
270
- end
271
-
272
- sig { params(other: T.anything).returns(T::Boolean) }
273
- def self.===(other)
274
- end
275
-
276
- sig { params(other: T.anything).returns(T::Boolean) }
277
- def self.==(other)
278
- end
279
-
280
- class << self
281
- # @api private
282
- sig { override.params(value: T.anything).returns(T.anything) }
283
- def coerce(value)
284
- end
285
-
286
- # @api private
287
- sig { override.params(value: T.anything).returns(T.anything) }
288
- def dump(value)
289
- end
290
-
291
- # @api private
292
- sig do
293
- override
294
- .params(value: T.anything)
295
- .returns(T.any([T::Boolean, T.anything, NilClass], [T::Boolean, T::Boolean, Integer]))
296
- end
297
- def try_strict_coerce(value)
298
- end
299
- end
300
- end
301
-
302
- # @api private
303
- #
304
- # Array of items of a given type.
305
- class ArrayOf
306
- include TerminalShop::Converter
307
-
308
- abstract!
309
- final!
310
-
311
- Elem = type_member(:out)
312
-
313
- sig(:final) { params(other: T.anything).returns(T::Boolean) }
314
- def ===(other)
315
- end
316
-
317
- sig(:final) { params(other: T.anything).returns(T::Boolean) }
318
- def ==(other)
319
- end
320
-
321
- # @api private
322
- sig(:final) do
323
- override
324
- .params(value: T.any(T::Enumerable[T.anything], T.anything))
325
- .returns(T.any(T::Array[T.anything], T.anything))
326
- end
327
- def coerce(value)
328
- end
329
-
330
- # @api private
331
- sig(:final) do
332
- override
333
- .params(value: T.any(T::Enumerable[T.anything], T.anything))
334
- .returns(T.any(T::Array[T.anything], T.anything))
335
- end
336
- def dump(value)
337
- end
338
-
339
- # @api private
340
- sig(:final) do
341
- override
342
- .params(value: T.anything)
343
- .returns(T.any([T::Boolean, T.anything, NilClass], [T::Boolean, T::Boolean, Integer]))
344
- end
345
- def try_strict_coerce(value)
346
- end
347
-
348
- # @api private
349
- sig(:final) { returns(Elem) }
350
- protected def item_type
351
- end
352
-
353
- # @api private
354
- sig(:final) do
355
- params(
356
- type_info: T.any(
357
- T::Hash[Symbol, T.anything],
358
- T.proc.returns(TerminalShop::Converter::Input),
359
- TerminalShop::Converter::Input
360
- ),
361
- spec: T::Hash[Symbol, T.anything]
362
- )
363
- .returns(T.attached_class)
364
- end
365
- def self.new(type_info, spec = {})
366
- end
367
- end
368
-
369
- # @api private
370
- #
371
- # Hash of items of a given type.
372
- class HashOf
373
- include TerminalShop::Converter
374
-
375
- abstract!
376
- final!
377
-
378
- Elem = type_member(:out)
379
-
380
- sig(:final) { params(other: T.anything).returns(T::Boolean) }
381
- def ===(other)
382
- end
383
-
384
- sig(:final) { params(other: T.anything).returns(T::Boolean) }
385
- def ==(other)
386
- end
387
-
388
- # @api private
389
- sig(:final) do
390
- override
391
- .params(value: T.any(T::Hash[T.anything, T.anything], T.anything))
392
- .returns(T.any(T::Hash[Symbol, T.anything], T.anything))
393
- end
394
- def coerce(value)
395
- end
396
-
397
- # @api private
398
- sig(:final) do
399
- override
400
- .params(value: T.any(T::Hash[T.anything, T.anything], T.anything))
401
- .returns(T.any(T::Hash[Symbol, T.anything], T.anything))
402
- end
403
- def dump(value)
404
- end
405
-
406
- # @api private
407
- sig(:final) do
408
- override
409
- .params(value: T.anything)
410
- .returns(T.any([T::Boolean, T.anything, NilClass], [T::Boolean, T::Boolean, Integer]))
411
- end
412
- def try_strict_coerce(value)
413
- end
414
-
415
- # @api private
416
- sig(:final) { returns(Elem) }
417
- protected def item_type
418
- end
419
-
420
- # @api private
421
- sig(:final) do
422
- params(
423
- type_info: T.any(
424
- T::Hash[Symbol, T.anything],
425
- T.proc.returns(TerminalShop::Converter::Input),
426
- TerminalShop::Converter::Input
427
- ),
428
- spec: T::Hash[Symbol, T.anything]
429
- )
430
- .returns(T.attached_class)
431
- end
432
- def self.new(type_info, spec = {})
433
- end
434
- end
435
-
436
- class BaseModel
437
- extend TerminalShop::Converter
438
-
439
- abstract!
440
-
441
- KnownFieldShape = T.type_alias { {mode: T.nilable(Symbol), required: T::Boolean} }
442
-
443
- class << self
444
- # @api private
445
- #
446
- # Assumes superclass fields are totally defined before fields are accessed /
447
- # defined on subclasses.
448
- sig do
449
- returns(
450
- T::Hash[
451
- Symbol,
452
- T.all(
453
- TerminalShop::BaseModel::KnownFieldShape,
454
- {type_fn: T.proc.returns(TerminalShop::Converter::Input)}
455
- )
456
- ]
457
- )
458
- end
459
- def known_fields
460
- end
461
-
462
- # @api private
463
- sig do
464
- returns(
465
- T::Hash[Symbol,
466
- T.all(TerminalShop::BaseModel::KnownFieldShape, {type: TerminalShop::Converter::Input})]
467
- )
468
- end
469
- def fields
470
- end
471
-
472
- # @api private
473
- sig { returns(T::Hash[Symbol, T.proc.returns(T::Class[T.anything])]) }
474
- def defaults
475
- end
476
-
477
- # @api private
478
- sig do
479
- params(
480
- name_sym: Symbol,
481
- required: T::Boolean,
482
- type_info: T.any(
483
- {
484
- const: T.nilable(T.any(NilClass, T::Boolean, Integer, Float, Symbol)),
485
- enum: T.nilable(T.proc.returns(TerminalShop::Converter::Input)),
486
- union: T.nilable(T.proc.returns(TerminalShop::Converter::Input)),
487
- api_name: Symbol,
488
- nil?: T::Boolean
489
- },
490
- T.proc.returns(TerminalShop::Converter::Input),
491
- TerminalShop::Converter::Input
492
- ),
493
- spec: T::Hash[Symbol, T.anything]
494
- )
495
- .void
496
- end
497
- private def add_field(name_sym, required:, type_info:, spec:)
498
- end
499
-
500
- # @api private
501
- sig do
502
- params(
503
- name_sym: Symbol,
504
- type_info: T.any(
505
- T::Hash[Symbol, T.anything],
506
- T.proc.returns(TerminalShop::Converter::Input),
507
- TerminalShop::Converter::Input
508
- ),
509
- spec: T::Hash[Symbol, T.anything]
510
- )
511
- .void
512
- end
513
- def required(name_sym, type_info, spec = {})
514
- end
515
-
516
- # @api private
517
- sig do
518
- params(
519
- name_sym: Symbol,
520
- type_info: T.any(
521
- T::Hash[Symbol, T.anything],
522
- T.proc.returns(TerminalShop::Converter::Input),
523
- TerminalShop::Converter::Input
524
- ),
525
- spec: T::Hash[Symbol, T.anything]
526
- )
527
- .void
528
- end
529
- def optional(name_sym, type_info, spec = {})
530
- end
531
-
532
- # @api private
533
- #
534
- # `request_only` attributes not excluded from `.#coerce` when receiving responses
535
- # even if well behaved servers should not send them
536
- sig { params(blk: T.proc.void).void }
537
- private def request_only(&blk)
538
- end
539
-
540
- # @api private
541
- #
542
- # `response_only` attributes are omitted from `.#dump` when making requests
543
- sig { params(blk: T.proc.void).void }
544
- private def response_only(&blk)
545
- end
546
- end
547
-
548
- sig { params(other: T.anything).returns(T::Boolean) }
549
- def ==(other)
550
- end
551
-
552
- class << self
553
- # @api private
554
- sig do
555
- override
556
- .params(value: T.any(TerminalShop::BaseModel, T::Hash[T.anything, T.anything], T.anything))
557
- .returns(T.any(T.attached_class, T.anything))
558
- end
559
- def coerce(value)
560
- end
561
-
562
- # @api private
563
- sig do
564
- override
565
- .params(value: T.any(T.attached_class, T.anything))
566
- .returns(T.any(T::Hash[T.anything, T.anything], T.anything))
567
- end
568
- def dump(value)
569
- end
570
-
571
- # @api private
572
- sig do
573
- override
574
- .params(value: T.anything)
575
- .returns(T.any([T::Boolean, T.anything, NilClass], [T::Boolean, T::Boolean, Integer]))
576
- end
577
- def try_strict_coerce(value)
578
- end
579
- end
580
-
581
- # Returns the raw value associated with the given key, if found. Otherwise, nil is
582
- # returned.
583
- #
584
- # It is valid to lookup keys that are not in the API spec, for example to access
585
- # undocumented features. This method does not parse response data into
586
- # higher-level types. Lookup by anything other than a Symbol is an ArgumentError.
587
- sig { params(key: Symbol).returns(T.nilable(T.anything)) }
588
- def [](key)
589
- end
590
-
591
- # Returns a Hash of the data underlying this object. O(1)
592
- #
593
- # Keys are Symbols and values are the raw values from the response. The return
594
- # value indicates which values were ever set on the object. i.e. there will be a
595
- # key in this hash if they ever were, even if the set value was nil.
596
- #
597
- # This method is not recursive. The returned value is shared by the object, so it
598
- # should not be mutated.
599
- sig { overridable.returns(T::Hash[Symbol, T.anything]) }
600
- def to_h
601
- end
602
-
603
- alias_method :to_hash, :to_h
604
-
605
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.anything]) }
606
- def deconstruct_keys(keys)
607
- end
608
-
609
- # Create a new instance of a model.
610
- sig { params(data: T.any(T::Hash[Symbol, T.anything], T.self_type)).returns(T.attached_class) }
611
- def self.new(data = {})
612
- end
613
-
614
- sig { returns(String) }
615
- def to_s
616
- end
617
-
618
- sig { returns(String) }
619
- def inspect
620
- end
621
- end
622
- end
@@ -1,38 +0,0 @@
1
- # typed: strong
2
-
3
- module TerminalShop
4
- module BasePage
5
- Elem = type_member(:out)
6
-
7
- sig { overridable.returns(T::Boolean) }
8
- def next_page?
9
- end
10
-
11
- sig { overridable.returns(T.self_type) }
12
- def next_page
13
- end
14
-
15
- sig { overridable.params(blk: T.proc.params(arg0: Elem).void).void }
16
- def auto_paging_each(&blk)
17
- end
18
-
19
- sig { returns(T::Enumerable[Elem]) }
20
- def to_enum
21
- end
22
-
23
- alias_method :enum_for, :to_enum
24
-
25
- # @api private
26
- sig do
27
- params(
28
- client: TerminalShop::BaseClient,
29
- req: TerminalShop::BaseClient::RequestComponentsShape,
30
- headers: T.any(T::Hash[String, String], Net::HTTPHeader),
31
- page_data: T.anything
32
- )
33
- .void
34
- end
35
- def initialize(client:, req:, headers:, page_data:)
36
- end
37
- end
38
- end
@@ -1,7 +0,0 @@
1
- # typed: strong
2
-
3
- module TerminalShop
4
- # @api private
5
- module Extern
6
- end
7
- end
@@ -1,48 +0,0 @@
1
- # typed: strong
2
-
3
- module TerminalShop
4
- # @api private
5
- class PooledNetRequester
6
- RequestShape = T.type_alias do
7
- {method: Symbol, url: URI::Generic, headers: T::Hash[String, String], body: T.anything, deadline: Float}
8
- end
9
-
10
- class << self
11
- # @api private
12
- sig { params(url: URI::Generic).returns(Net::HTTP) }
13
- def connect(url)
14
- end
15
-
16
- # @api private
17
- sig { params(conn: Net::HTTP, deadline: Float).void }
18
- def calibrate_socket_timeout(conn, deadline)
19
- end
20
-
21
- # @api private
22
- sig do
23
- params(request: TerminalShop::PooledNetRequester::RequestShape, blk: T.proc.params(arg0: String).void)
24
- .returns(Net::HTTPGenericRequest)
25
- end
26
- def build_request(request, &blk)
27
- end
28
- end
29
-
30
- # @api private
31
- sig { params(url: URI::Generic, deadline: Float, blk: T.proc.params(arg0: Net::HTTP).void).void }
32
- private def with_pool(url, deadline:, &blk)
33
- end
34
-
35
- # @api private
36
- sig do
37
- params(request: TerminalShop::PooledNetRequester::RequestShape)
38
- .returns([Integer, Net::HTTPResponse, T::Enumerable[String]])
39
- end
40
- def execute(request)
41
- end
42
-
43
- # @api private
44
- sig { params(size: Integer).returns(T.attached_class) }
45
- def self.new(size: Etc.nprocessors)
46
- end
47
- end
48
- end