whop_sdk 0.0.2 → 0.0.4

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 (338) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +51 -0
  3. data/README.md +1 -1
  4. data/lib/whop_sdk/client.rb +24 -0
  5. data/lib/whop_sdk/internal/transport/pooled_net_requester.rb +30 -24
  6. data/lib/whop_sdk/models/app_build_create_params.rb +53 -29
  7. data/lib/whop_sdk/models/app_update_params.rb +53 -29
  8. data/lib/whop_sdk/models/assessment_question_types.rb +18 -0
  9. data/lib/whop_sdk/models/billing_reasons.rb +20 -0
  10. data/lib/whop_sdk/models/card_brands.rb +30 -0
  11. data/lib/whop_sdk/models/checkout_configuration.rb +10 -7
  12. data/lib/whop_sdk/models/checkout_configuration_create_params.rb +251 -38
  13. data/lib/whop_sdk/models/checkout_configuration_list_response.rb +10 -7
  14. data/lib/whop_sdk/models/company.rb +13 -1
  15. data/lib/whop_sdk/models/company_create_params.rb +46 -0
  16. data/lib/whop_sdk/models/company_list_params.rb +62 -0
  17. data/lib/whop_sdk/models/company_list_response.rb +175 -0
  18. data/lib/whop_sdk/models/course.rb +230 -0
  19. data/lib/whop_sdk/models/course_chapter.rb +72 -0
  20. data/lib/whop_sdk/models/course_chapter_create_params.rb +30 -0
  21. data/lib/whop_sdk/models/course_chapter_delete_params.rb +14 -0
  22. data/lib/whop_sdk/models/course_chapter_delete_response.rb +8 -0
  23. data/lib/whop_sdk/models/course_chapter_list_params.rb +54 -0
  24. data/lib/whop_sdk/models/course_chapter_list_response.rb +35 -0
  25. data/lib/whop_sdk/models/course_chapter_retrieve_params.rb +14 -0
  26. data/lib/whop_sdk/models/course_chapter_update_params.rb +22 -0
  27. data/lib/whop_sdk/models/course_create_params.rb +127 -0
  28. data/lib/whop_sdk/models/course_delete_params.rb +14 -0
  29. data/lib/whop_sdk/models/course_delete_response.rb +8 -0
  30. data/lib/whop_sdk/models/course_lesson_create_params.rb +54 -0
  31. data/lib/whop_sdk/models/course_lesson_delete_params.rb +14 -0
  32. data/lib/whop_sdk/models/course_lesson_delete_response.rb +8 -0
  33. data/lib/whop_sdk/models/course_lesson_list_params.rb +62 -0
  34. data/lib/whop_sdk/models/course_lesson_list_response.rb +71 -0
  35. data/lib/whop_sdk/models/course_lesson_retrieve_params.rb +14 -0
  36. data/lib/whop_sdk/models/course_lesson_update_params.rb +399 -0
  37. data/lib/whop_sdk/models/course_list_params.rb +62 -0
  38. data/lib/whop_sdk/models/course_list_response.rb +148 -0
  39. data/lib/whop_sdk/models/course_retrieve_params.rb +14 -0
  40. data/lib/whop_sdk/models/course_student_list_params.rb +62 -0
  41. data/lib/whop_sdk/models/course_student_list_response.rb +97 -0
  42. data/lib/whop_sdk/models/course_student_retrieve_params.rb +14 -0
  43. data/lib/whop_sdk/models/course_student_retrieve_response.rb +149 -0
  44. data/lib/whop_sdk/models/course_update_params.rb +221 -0
  45. data/lib/whop_sdk/models/experience_duplicate_params.rb +22 -0
  46. data/lib/whop_sdk/models/experience_update_params.rb +53 -29
  47. data/lib/whop_sdk/models/forum_post.rb +17 -1
  48. data/lib/whop_sdk/models/forum_post_create_params.rb +51 -27
  49. data/lib/whop_sdk/models/forum_post_list_response.rb +17 -1
  50. data/lib/whop_sdk/models/forum_post_update_params.rb +104 -0
  51. data/lib/whop_sdk/models/invoice.rb +6 -2
  52. data/lib/whop_sdk/models/invoice_create_params.rb +48 -32
  53. data/lib/whop_sdk/models/invoice_list_item.rb +6 -2
  54. data/lib/whop_sdk/models/languages.rb +36 -0
  55. data/lib/whop_sdk/models/ledger_account_retrieve_response.rb +9 -0
  56. data/lib/whop_sdk/models/lesson.rb +373 -0
  57. data/lib/whop_sdk/models/lesson_types.rb +20 -0
  58. data/lib/whop_sdk/models/lesson_visibilities.rb +17 -0
  59. data/lib/whop_sdk/models/member_list_params.rb +9 -1
  60. data/lib/whop_sdk/models/membership.rb +31 -1
  61. data/lib/whop_sdk/models/membership_list_params.rb +16 -8
  62. data/lib/whop_sdk/models/membership_list_response.rb +31 -1
  63. data/lib/whop_sdk/models/message_create_params.rb +51 -27
  64. data/lib/whop_sdk/models/message_update_params.rb +92 -0
  65. data/lib/whop_sdk/models/payment.rb +34 -22
  66. data/lib/whop_sdk/models/payment_list_params.rb +3 -18
  67. data/lib/whop_sdk/models/payment_list_response.rb +34 -22
  68. data/lib/whop_sdk/models/payment_method_types.rb +99 -0
  69. data/lib/whop_sdk/models/plan.rb +72 -1
  70. data/lib/whop_sdk/models/plan_create_params.rb +133 -24
  71. data/lib/whop_sdk/models/plan_list_response.rb +75 -1
  72. data/lib/whop_sdk/models/plan_update_params.rb +131 -22
  73. data/lib/whop_sdk/models/product.rb +11 -1
  74. data/lib/whop_sdk/models/product_create_params.rb +1 -45
  75. data/lib/whop_sdk/models/product_list_item.rb +14 -1
  76. data/lib/whop_sdk/models/product_update_params.rb +76 -23
  77. data/lib/whop_sdk/models/promo_code.rb +211 -0
  78. data/lib/whop_sdk/models/promo_code_create_params.rb +140 -0
  79. data/lib/whop_sdk/models/promo_code_delete_params.rb +14 -0
  80. data/lib/whop_sdk/models/promo_code_delete_response.rb +8 -0
  81. data/lib/whop_sdk/models/promo_code_list_params.rb +78 -0
  82. data/lib/whop_sdk/models/promo_code_list_response.rb +181 -0
  83. data/lib/whop_sdk/models/promo_code_retrieve_params.rb +14 -0
  84. data/lib/whop_sdk/models/promo_code_status.rb +17 -0
  85. data/lib/whop_sdk/models/promo_duration.rb +17 -0
  86. data/lib/whop_sdk/models/review_list_params.rb +70 -0
  87. data/lib/whop_sdk/models/review_list_response.rb +183 -0
  88. data/lib/whop_sdk/models/review_retrieve_params.rb +14 -0
  89. data/lib/whop_sdk/models/review_retrieve_response.rb +251 -0
  90. data/lib/whop_sdk/models/review_status.rb +17 -0
  91. data/lib/whop_sdk/models/transfer.rb +9 -1
  92. data/lib/whop_sdk/models/transfer_create_params.rb +9 -1
  93. data/lib/whop_sdk/models/transfer_list_response.rb +9 -1
  94. data/lib/whop_sdk/models.rb +84 -0
  95. data/lib/whop_sdk/resources/app_builds.rb +1 -1
  96. data/lib/whop_sdk/resources/apps.rb +1 -1
  97. data/lib/whop_sdk/resources/checkout_configurations.rb +8 -6
  98. data/lib/whop_sdk/resources/companies.rb +70 -0
  99. data/lib/whop_sdk/resources/course_chapters.rb +151 -0
  100. data/lib/whop_sdk/resources/course_lesson_interactions.rb +2 -2
  101. data/lib/whop_sdk/resources/course_lessons.rb +182 -0
  102. data/lib/whop_sdk/resources/course_students.rb +76 -0
  103. data/lib/whop_sdk/resources/courses.rb +185 -0
  104. data/lib/whop_sdk/resources/experiences.rb +34 -1
  105. data/lib/whop_sdk/resources/forum_posts.rb +34 -1
  106. data/lib/whop_sdk/resources/invoices.rb +11 -11
  107. data/lib/whop_sdk/resources/members.rb +3 -1
  108. data/lib/whop_sdk/resources/memberships.rb +6 -4
  109. data/lib/whop_sdk/resources/messages.rb +29 -1
  110. data/lib/whop_sdk/resources/payments.rb +1 -1
  111. data/lib/whop_sdk/resources/plans.rb +25 -5
  112. data/lib/whop_sdk/resources/products.rb +5 -7
  113. data/lib/whop_sdk/resources/promo_codes.rb +161 -0
  114. data/lib/whop_sdk/resources/reviews.rb +68 -0
  115. data/lib/whop_sdk/resources/transfers.rb +3 -1
  116. data/lib/whop_sdk/version.rb +1 -1
  117. data/lib/whop_sdk.rb +61 -1
  118. data/rbi/whop_sdk/client.rbi +18 -0
  119. data/rbi/whop_sdk/models/app_build_create_params.rbi +80 -40
  120. data/rbi/whop_sdk/models/app_update_params.rbi +86 -37
  121. data/rbi/whop_sdk/models/assessment_question_types.rbi +31 -0
  122. data/rbi/whop_sdk/models/billing_reasons.rbi +27 -0
  123. data/rbi/whop_sdk/models/card_brands.rbi +35 -0
  124. data/rbi/whop_sdk/models/checkout_configuration.rbi +4 -2
  125. data/rbi/whop_sdk/models/checkout_configuration_create_params.rbi +371 -62
  126. data/rbi/whop_sdk/models/checkout_configuration_list_response.rbi +4 -2
  127. data/rbi/whop_sdk/models/company.rbi +10 -0
  128. data/rbi/whop_sdk/models/company_create_params.rbi +67 -0
  129. data/rbi/whop_sdk/models/company_list_params.rbi +83 -0
  130. data/rbi/whop_sdk/models/company_list_response.rbi +235 -0
  131. data/rbi/whop_sdk/models/course.rbi +313 -0
  132. data/rbi/whop_sdk/models/course_chapter.rbi +101 -0
  133. data/rbi/whop_sdk/models/course_chapter_create_params.rbi +51 -0
  134. data/rbi/whop_sdk/models/course_chapter_delete_params.rbi +27 -0
  135. data/rbi/whop_sdk/models/course_chapter_delete_response.rbi +8 -0
  136. data/rbi/whop_sdk/models/course_chapter_list_params.rbi +75 -0
  137. data/rbi/whop_sdk/models/course_chapter_list_response.rbi +47 -0
  138. data/rbi/whop_sdk/models/course_chapter_retrieve_params.rbi +30 -0
  139. data/rbi/whop_sdk/models/course_chapter_update_params.rbi +40 -0
  140. data/rbi/whop_sdk/models/course_create_params.rbi +197 -0
  141. data/rbi/whop_sdk/models/course_delete_params.rbi +27 -0
  142. data/rbi/whop_sdk/models/course_delete_response.rbi +7 -0
  143. data/rbi/whop_sdk/models/course_lesson_create_params.rbi +75 -0
  144. data/rbi/whop_sdk/models/course_lesson_delete_params.rbi +27 -0
  145. data/rbi/whop_sdk/models/course_lesson_delete_response.rbi +8 -0
  146. data/rbi/whop_sdk/models/course_lesson_list_params.rbi +83 -0
  147. data/rbi/whop_sdk/models/course_lesson_list_response.rbi +91 -0
  148. data/rbi/whop_sdk/models/course_lesson_retrieve_params.rbi +27 -0
  149. data/rbi/whop_sdk/models/course_lesson_update_params.rbi +677 -0
  150. data/rbi/whop_sdk/models/course_list_params.rbi +83 -0
  151. data/rbi/whop_sdk/models/course_list_response.rbi +198 -0
  152. data/rbi/whop_sdk/models/course_retrieve_params.rbi +27 -0
  153. data/rbi/whop_sdk/models/course_student_list_params.rbi +83 -0
  154. data/rbi/whop_sdk/models/course_student_list_response.rbi +142 -0
  155. data/rbi/whop_sdk/models/course_student_retrieve_params.rbi +30 -0
  156. data/rbi/whop_sdk/models/course_student_retrieve_response.rbi +250 -0
  157. data/rbi/whop_sdk/models/course_update_params.rbi +339 -0
  158. data/rbi/whop_sdk/models/experience_duplicate_params.rbi +40 -0
  159. data/rbi/whop_sdk/models/experience_update_params.rbi +84 -38
  160. data/rbi/whop_sdk/models/forum_post.rbi +16 -0
  161. data/rbi/whop_sdk/models/forum_post_create_params.rbi +85 -32
  162. data/rbi/whop_sdk/models/forum_post_list_response.rbi +16 -0
  163. data/rbi/whop_sdk/models/forum_post_update_params.rbi +177 -0
  164. data/rbi/whop_sdk/models/invoice.rbi +4 -2
  165. data/rbi/whop_sdk/models/invoice_create_params.rbi +58 -44
  166. data/rbi/whop_sdk/models/invoice_list_item.rbi +4 -2
  167. data/rbi/whop_sdk/models/languages.rbi +40 -0
  168. data/rbi/whop_sdk/models/ledger_account_retrieve_response.rbi +45 -0
  169. data/rbi/whop_sdk/models/lesson.rbi +521 -0
  170. data/rbi/whop_sdk/models/lesson_types.rbi +25 -0
  171. data/rbi/whop_sdk/models/lesson_visibilities.rbi +23 -0
  172. data/rbi/whop_sdk/models/member_list_params.rbi +8 -0
  173. data/rbi/whop_sdk/models/membership.rbi +40 -0
  174. data/rbi/whop_sdk/models/membership_list_params.rbi +16 -8
  175. data/rbi/whop_sdk/models/membership_list_response.rbi +47 -0
  176. data/rbi/whop_sdk/models/message_create_params.rbi +85 -32
  177. data/rbi/whop_sdk/models/message_update_params.rbi +167 -0
  178. data/rbi/whop_sdk/models/payment.rbi +42 -25
  179. data/rbi/whop_sdk/models/payment_list_params.rbi +3 -63
  180. data/rbi/whop_sdk/models/payment_list_response.rbi +42 -25
  181. data/rbi/whop_sdk/models/payment_method_types.rbi +118 -0
  182. data/rbi/whop_sdk/models/plan.rbi +106 -0
  183. data/rbi/whop_sdk/models/plan_create_params.rbi +212 -34
  184. data/rbi/whop_sdk/models/plan_list_response.rbi +118 -0
  185. data/rbi/whop_sdk/models/plan_update_params.rbi +210 -32
  186. data/rbi/whop_sdk/models/product.rbi +12 -0
  187. data/rbi/whop_sdk/models/product_create_params.rbi +0 -74
  188. data/rbi/whop_sdk/models/product_list_item.rbi +12 -0
  189. data/rbi/whop_sdk/models/product_update_params.rbi +136 -33
  190. data/rbi/whop_sdk/models/promo_code.rbi +248 -0
  191. data/rbi/whop_sdk/models/promo_code_create_params.rbi +161 -0
  192. data/rbi/whop_sdk/models/promo_code_delete_params.rbi +27 -0
  193. data/rbi/whop_sdk/models/promo_code_delete_response.rbi +8 -0
  194. data/rbi/whop_sdk/models/promo_code_list_params.rbi +99 -0
  195. data/rbi/whop_sdk/models/promo_code_list_response.rbi +222 -0
  196. data/rbi/whop_sdk/models/promo_code_retrieve_params.rbi +27 -0
  197. data/rbi/whop_sdk/models/promo_code_status.rbi +21 -0
  198. data/rbi/whop_sdk/models/promo_duration.rbi +21 -0
  199. data/rbi/whop_sdk/models/review_list_params.rbi +91 -0
  200. data/rbi/whop_sdk/models/review_list_response.rbi +243 -0
  201. data/rbi/whop_sdk/models/review_retrieve_params.rbi +27 -0
  202. data/rbi/whop_sdk/models/review_retrieve_response.rbi +354 -0
  203. data/rbi/whop_sdk/models/review_status.rbi +21 -0
  204. data/rbi/whop_sdk/models/transfer.rbi +8 -0
  205. data/rbi/whop_sdk/models/transfer_create_params.rbi +8 -0
  206. data/rbi/whop_sdk/models/transfer_list_response.rbi +8 -0
  207. data/rbi/whop_sdk/models.rbi +84 -0
  208. data/rbi/whop_sdk/resources/app_builds.rbi +5 -1
  209. data/rbi/whop_sdk/resources/apps.rbi +7 -1
  210. data/rbi/whop_sdk/resources/checkout_configurations.rbi +8 -7
  211. data/rbi/whop_sdk/resources/companies.rbi +63 -0
  212. data/rbi/whop_sdk/resources/course_chapters.rbi +115 -0
  213. data/rbi/whop_sdk/resources/course_lesson_interactions.rbi +2 -2
  214. data/rbi/whop_sdk/resources/course_lessons.rbi +182 -0
  215. data/rbi/whop_sdk/resources/course_students.rbi +65 -0
  216. data/rbi/whop_sdk/resources/courses.rbi +172 -0
  217. data/rbi/whop_sdk/resources/experiences.rbi +32 -1
  218. data/rbi/whop_sdk/resources/forum_posts.rbi +40 -1
  219. data/rbi/whop_sdk/resources/invoices.rbi +18 -18
  220. data/rbi/whop_sdk/resources/members.rbi +3 -0
  221. data/rbi/whop_sdk/resources/memberships.rbi +6 -3
  222. data/rbi/whop_sdk/resources/messages.rbi +36 -1
  223. data/rbi/whop_sdk/resources/payments.rbi +1 -3
  224. data/rbi/whop_sdk/resources/plans.rbi +57 -3
  225. data/rbi/whop_sdk/resources/products.rbi +10 -8
  226. data/rbi/whop_sdk/resources/promo_codes.rbi +147 -0
  227. data/rbi/whop_sdk/resources/reviews.rbi +56 -0
  228. data/rbi/whop_sdk/resources/transfers.rbi +3 -0
  229. data/sig/whop_sdk/client.rbs +12 -0
  230. data/sig/whop_sdk/models/app_build_create_params.rbs +29 -10
  231. data/sig/whop_sdk/models/app_update_params.rbs +29 -10
  232. data/sig/whop_sdk/models/assessment_question_types.rbs +17 -0
  233. data/sig/whop_sdk/models/billing_reasons.rbs +24 -0
  234. data/sig/whop_sdk/models/card_brands.rbs +44 -0
  235. data/sig/whop_sdk/models/checkout_configuration_create_params.rbs +159 -21
  236. data/sig/whop_sdk/models/company.rbs +5 -0
  237. data/sig/whop_sdk/models/company_create_params.rbs +41 -0
  238. data/sig/whop_sdk/models/company_list_params.rbs +51 -0
  239. data/sig/whop_sdk/models/company_list_response.rbs +109 -0
  240. data/sig/whop_sdk/models/course.rbs +171 -0
  241. data/sig/whop_sdk/models/course_chapter.rbs +49 -0
  242. data/sig/whop_sdk/models/course_chapter_create_params.rbs +28 -0
  243. data/sig/whop_sdk/models/course_chapter_delete_params.rbs +15 -0
  244. data/sig/whop_sdk/models/course_chapter_delete_response.rbs +5 -0
  245. data/sig/whop_sdk/models/course_chapter_list_params.rbs +46 -0
  246. data/sig/whop_sdk/models/course_chapter_list_response.rbs +18 -0
  247. data/sig/whop_sdk/models/course_chapter_retrieve_params.rbs +15 -0
  248. data/sig/whop_sdk/models/course_chapter_update_params.rbs +23 -0
  249. data/sig/whop_sdk/models/course_create_params.rbs +87 -0
  250. data/sig/whop_sdk/models/course_delete_params.rbs +15 -0
  251. data/sig/whop_sdk/models/course_delete_response.rbs +5 -0
  252. data/sig/whop_sdk/models/course_lesson_create_params.rbs +46 -0
  253. data/sig/whop_sdk/models/course_lesson_delete_params.rbs +15 -0
  254. data/sig/whop_sdk/models/course_lesson_delete_response.rbs +5 -0
  255. data/sig/whop_sdk/models/course_lesson_list_params.rbs +51 -0
  256. data/sig/whop_sdk/models/course_lesson_list_response.rbs +50 -0
  257. data/sig/whop_sdk/models/course_lesson_retrieve_params.rbs +15 -0
  258. data/sig/whop_sdk/models/course_lesson_update_params.rbs +248 -0
  259. data/sig/whop_sdk/models/course_list_params.rbs +51 -0
  260. data/sig/whop_sdk/models/course_list_response.rbs +102 -0
  261. data/sig/whop_sdk/models/course_retrieve_params.rbs +15 -0
  262. data/sig/whop_sdk/models/course_student_list_params.rbs +51 -0
  263. data/sig/whop_sdk/models/course_student_list_response.rbs +64 -0
  264. data/sig/whop_sdk/models/course_student_retrieve_params.rbs +15 -0
  265. data/sig/whop_sdk/models/course_student_retrieve_response.rbs +106 -0
  266. data/sig/whop_sdk/models/course_update_params.rbs +156 -0
  267. data/sig/whop_sdk/models/experience_duplicate_params.rbs +23 -0
  268. data/sig/whop_sdk/models/experience_update_params.rbs +29 -10
  269. data/sig/whop_sdk/models/forum_post.rbs +10 -0
  270. data/sig/whop_sdk/models/forum_post_create_params.rbs +29 -10
  271. data/sig/whop_sdk/models/forum_post_list_response.rbs +10 -0
  272. data/sig/whop_sdk/models/forum_post_update_params.rbs +72 -0
  273. data/sig/whop_sdk/models/invoice_create_params.rbs +28 -18
  274. data/sig/whop_sdk/models/languages.rbs +56 -0
  275. data/sig/whop_sdk/models/ledger_account_retrieve_response.rbs +20 -1
  276. data/sig/whop_sdk/models/lesson.rbs +248 -0
  277. data/sig/whop_sdk/models/lesson_types.rbs +19 -0
  278. data/sig/whop_sdk/models/lesson_visibilities.rbs +14 -0
  279. data/sig/whop_sdk/models/member_list_params.rbs +6 -1
  280. data/sig/whop_sdk/models/membership.rbs +17 -0
  281. data/sig/whop_sdk/models/membership_list_params.rbs +11 -6
  282. data/sig/whop_sdk/models/membership_list_response.rbs +17 -0
  283. data/sig/whop_sdk/models/message_create_params.rbs +29 -10
  284. data/sig/whop_sdk/models/message_update_params.rbs +67 -0
  285. data/sig/whop_sdk/models/payment.rbs +17 -12
  286. data/sig/whop_sdk/models/payment_list_params.rbs +4 -25
  287. data/sig/whop_sdk/models/payment_list_response.rbs +17 -12
  288. data/sig/whop_sdk/models/payment_method_types.rbs +182 -0
  289. data/sig/whop_sdk/models/plan.rbs +47 -0
  290. data/sig/whop_sdk/models/plan_create_params.rbs +81 -10
  291. data/sig/whop_sdk/models/plan_list_response.rbs +47 -0
  292. data/sig/whop_sdk/models/plan_update_params.rbs +81 -10
  293. data/sig/whop_sdk/models/product.rbs +5 -0
  294. data/sig/whop_sdk/models/product_create_params.rbs +0 -22
  295. data/sig/whop_sdk/models/product_list_item.rbs +5 -0
  296. data/sig/whop_sdk/models/product_update_params.rbs +46 -10
  297. data/sig/whop_sdk/models/promo_code.rbs +134 -0
  298. data/sig/whop_sdk/models/promo_code_create_params.rbs +96 -0
  299. data/sig/whop_sdk/models/promo_code_delete_params.rbs +15 -0
  300. data/sig/whop_sdk/models/promo_code_delete_response.rbs +5 -0
  301. data/sig/whop_sdk/models/promo_code_list_params.rbs +61 -0
  302. data/sig/whop_sdk/models/promo_code_list_response.rbs +117 -0
  303. data/sig/whop_sdk/models/promo_code_retrieve_params.rbs +15 -0
  304. data/sig/whop_sdk/models/promo_code_status.rbs +15 -0
  305. data/sig/whop_sdk/models/promo_duration.rbs +15 -0
  306. data/sig/whop_sdk/models/review_list_params.rbs +56 -0
  307. data/sig/whop_sdk/models/review_list_response.rbs +116 -0
  308. data/sig/whop_sdk/models/review_retrieve_params.rbs +15 -0
  309. data/sig/whop_sdk/models/review_retrieve_response.rbs +152 -0
  310. data/sig/whop_sdk/models/review_status.rbs +15 -0
  311. data/sig/whop_sdk/models/transfer.rbs +5 -0
  312. data/sig/whop_sdk/models/transfer_create_params.rbs +5 -0
  313. data/sig/whop_sdk/models/transfer_list_response.rbs +5 -0
  314. data/sig/whop_sdk/models.rbs +84 -0
  315. data/sig/whop_sdk/resources/app_builds.rbs +1 -1
  316. data/sig/whop_sdk/resources/apps.rbs +1 -1
  317. data/sig/whop_sdk/resources/checkout_configurations.rbs +2 -2
  318. data/sig/whop_sdk/resources/companies.rbs +18 -0
  319. data/sig/whop_sdk/resources/course_chapters.rbs +35 -0
  320. data/sig/whop_sdk/resources/course_lessons.rbs +49 -0
  321. data/sig/whop_sdk/resources/course_students.rbs +22 -0
  322. data/sig/whop_sdk/resources/courses.rbs +49 -0
  323. data/sig/whop_sdk/resources/experiences.rbs +7 -1
  324. data/sig/whop_sdk/resources/forum_posts.rbs +10 -1
  325. data/sig/whop_sdk/resources/invoices.rbs +5 -5
  326. data/sig/whop_sdk/resources/members.rbs +1 -0
  327. data/sig/whop_sdk/resources/memberships.rbs +2 -1
  328. data/sig/whop_sdk/resources/messages.rbs +9 -1
  329. data/sig/whop_sdk/resources/payments.rbs +1 -1
  330. data/sig/whop_sdk/resources/plans.rbs +12 -2
  331. data/sig/whop_sdk/resources/products.rbs +2 -3
  332. data/sig/whop_sdk/resources/promo_codes.rbs +45 -0
  333. data/sig/whop_sdk/resources/reviews.rbs +23 -0
  334. data/sig/whop_sdk/resources/transfers.rbs +1 -0
  335. metadata +213 -5
  336. data/lib/whop_sdk/models/invoice_create_response.rb +0 -27
  337. data/rbi/whop_sdk/models/invoice_create_response.rbi +0 -49
  338. data/sig/whop_sdk/models/invoice_create_response.rbs +0 -19
@@ -0,0 +1,161 @@
1
+ # frozen_string_literal: true
2
+
3
+ module WhopSDK
4
+ module Resources
5
+ class PromoCodes
6
+ # Some parameter documentations has been truncated, see
7
+ # {WhopSDK::Models::PromoCodeCreateParams} for more details.
8
+ #
9
+ # Create a new promo code for a product or plan
10
+ #
11
+ # Required permissions:
12
+ #
13
+ # - `promo_code:create`
14
+ # - `access_pass:basic:read`
15
+ #
16
+ # @overload create(amount_off:, base_currency:, code:, company_id:, new_users_only:, promo_duration_months:, promo_type:, churned_users_only: nil, existing_memberships_only: nil, expires_at: nil, one_per_customer: nil, plan_ids: nil, product_id: nil, stock: nil, unlimited_stock: nil, request_options: {})
17
+ #
18
+ # @param amount_off [Float] The amount off (% or flat amount) for the promo.
19
+ #
20
+ # @param base_currency [Symbol, WhopSDK::Models::Currency] The monetary currency of the promo code.
21
+ #
22
+ # @param code [String] The specific code used to apply the promo at checkout.
23
+ #
24
+ # @param company_id [String] The id of the company to create the promo code for.
25
+ #
26
+ # @param new_users_only [Boolean] Restricts promo use to only users who have never purchased from the company befo
27
+ #
28
+ # @param promo_duration_months [Integer] The number of months this promo code is applied and valid for.
29
+ #
30
+ # @param promo_type [Symbol, WhopSDK::Models::PromoType] The type (% or flat amount) of the promo.
31
+ #
32
+ # @param churned_users_only [Boolean, nil] Restricts promo use to only users who have churned from the company before.
33
+ #
34
+ # @param existing_memberships_only [Boolean, nil] Whether this promo code is for existing memberships only (cancelations)
35
+ #
36
+ # @param expires_at [Time, nil] The date/time of when the promo expires.
37
+ #
38
+ # @param one_per_customer [Boolean, nil] Restricts promo use to only be applied once per customer.
39
+ #
40
+ # @param plan_ids [Array<String>, nil] The IDs of the plans that the promo code applies to. If product_id is provided,
41
+ #
42
+ # @param product_id [String, nil] The product to lock the promo code to, if any. If provided will filter out any p
43
+ #
44
+ # @param stock [Integer, nil] The quantity limit on the number of uses.
45
+ #
46
+ # @param unlimited_stock [Boolean, nil] Whether or not the promo code should have unlimited stock.
47
+ #
48
+ # @param request_options [WhopSDK::RequestOptions, Hash{Symbol=>Object}, nil]
49
+ #
50
+ # @return [WhopSDK::Models::PromoCode]
51
+ #
52
+ # @see WhopSDK::Models::PromoCodeCreateParams
53
+ def create(params)
54
+ parsed, options = WhopSDK::PromoCodeCreateParams.dump_request(params)
55
+ @client.request(
56
+ method: :post,
57
+ path: "promo_codes",
58
+ body: parsed,
59
+ model: WhopSDK::PromoCode,
60
+ options: options
61
+ )
62
+ end
63
+
64
+ # Retrieves a promo code by ID
65
+ #
66
+ # Required permissions:
67
+ #
68
+ # - `promo_code:basic:read`
69
+ # - `access_pass:basic:read`
70
+ #
71
+ # @overload retrieve(id, request_options: {})
72
+ #
73
+ # @param id [String]
74
+ # @param request_options [WhopSDK::RequestOptions, Hash{Symbol=>Object}, nil]
75
+ #
76
+ # @return [WhopSDK::Models::PromoCode]
77
+ #
78
+ # @see WhopSDK::Models::PromoCodeRetrieveParams
79
+ def retrieve(id, params = {})
80
+ @client.request(
81
+ method: :get,
82
+ path: ["promo_codes/%1$s", id],
83
+ model: WhopSDK::PromoCode,
84
+ options: params[:request_options]
85
+ )
86
+ end
87
+
88
+ # Lists promo codes for a company
89
+ #
90
+ # Required permissions:
91
+ #
92
+ # - `promo_code:basic:read`
93
+ # - `access_pass:basic:read`
94
+ #
95
+ # @overload list(company_id:, after: nil, before: nil, first: nil, last: nil, plan_ids: nil, product_ids: nil, status: nil, request_options: {})
96
+ #
97
+ # @param company_id [String] The ID of the company to list promo codes for
98
+ #
99
+ # @param after [String, nil] Returns the elements in the list that come after the specified cursor.
100
+ #
101
+ # @param before [String, nil] Returns the elements in the list that come before the specified cursor.
102
+ #
103
+ # @param first [Integer, nil] Returns the first _n_ elements from the list.
104
+ #
105
+ # @param last [Integer, nil] Returns the last _n_ elements from the list.
106
+ #
107
+ # @param plan_ids [Array<String>, nil] Filter promo codes by plan ID(s)
108
+ #
109
+ # @param product_ids [Array<String>, nil] Filter promo codes by product ID(s)
110
+ #
111
+ # @param status [Symbol, WhopSDK::Models::PromoCodeStatus, nil] Statuses for promo codes
112
+ #
113
+ # @param request_options [WhopSDK::RequestOptions, Hash{Symbol=>Object}, nil]
114
+ #
115
+ # @return [WhopSDK::Internal::CursorPage<WhopSDK::Models::PromoCodeListResponse>]
116
+ #
117
+ # @see WhopSDK::Models::PromoCodeListParams
118
+ def list(params)
119
+ parsed, options = WhopSDK::PromoCodeListParams.dump_request(params)
120
+ @client.request(
121
+ method: :get,
122
+ path: "promo_codes",
123
+ query: parsed,
124
+ page: WhopSDK::Internal::CursorPage,
125
+ model: WhopSDK::Models::PromoCodeListResponse,
126
+ options: options
127
+ )
128
+ end
129
+
130
+ # Archive a promo code, preventing further use
131
+ #
132
+ # Required permissions:
133
+ #
134
+ # - `promo_code:delete`
135
+ #
136
+ # @overload delete(id, request_options: {})
137
+ #
138
+ # @param id [String]
139
+ # @param request_options [WhopSDK::RequestOptions, Hash{Symbol=>Object}, nil]
140
+ #
141
+ # @return [Boolean]
142
+ #
143
+ # @see WhopSDK::Models::PromoCodeDeleteParams
144
+ def delete(id, params = {})
145
+ @client.request(
146
+ method: :delete,
147
+ path: ["promo_codes/%1$s", id],
148
+ model: WhopSDK::Internal::Type::Boolean,
149
+ options: params[:request_options]
150
+ )
151
+ end
152
+
153
+ # @api private
154
+ #
155
+ # @param client [WhopSDK::Client]
156
+ def initialize(client:)
157
+ @client = client
158
+ end
159
+ end
160
+ end
161
+ end
@@ -0,0 +1,68 @@
1
+ # frozen_string_literal: true
2
+
3
+ module WhopSDK
4
+ module Resources
5
+ class Reviews
6
+ # Retrieve a review by its ID
7
+ #
8
+ # @overload retrieve(id, request_options: {})
9
+ #
10
+ # @param id [String]
11
+ # @param request_options [WhopSDK::RequestOptions, Hash{Symbol=>Object}, nil]
12
+ #
13
+ # @return [WhopSDK::Models::ReviewRetrieveResponse]
14
+ #
15
+ # @see WhopSDK::Models::ReviewRetrieveParams
16
+ def retrieve(id, params = {})
17
+ @client.request(
18
+ method: :get,
19
+ path: ["reviews/%1$s", id],
20
+ model: WhopSDK::Models::ReviewRetrieveResponse,
21
+ options: params[:request_options]
22
+ )
23
+ end
24
+
25
+ # List all reviews
26
+ #
27
+ # @overload list(product_id:, after: nil, before: nil, first: nil, last: nil, max_stars: nil, min_stars: nil, request_options: {})
28
+ #
29
+ # @param product_id [String] The ID of the product
30
+ #
31
+ # @param after [String, nil] Returns the elements in the list that come after the specified cursor.
32
+ #
33
+ # @param before [String, nil] Returns the elements in the list that come before the specified cursor.
34
+ #
35
+ # @param first [Integer, nil] Returns the first _n_ elements from the list.
36
+ #
37
+ # @param last [Integer, nil] Returns the last _n_ elements from the list.
38
+ #
39
+ # @param max_stars [Integer, nil] The maximum star rating of the review (inclusive)
40
+ #
41
+ # @param min_stars [Integer, nil] The minimum star rating of the review (inclusive)
42
+ #
43
+ # @param request_options [WhopSDK::RequestOptions, Hash{Symbol=>Object}, nil]
44
+ #
45
+ # @return [WhopSDK::Internal::CursorPage<WhopSDK::Models::ReviewListResponse>]
46
+ #
47
+ # @see WhopSDK::Models::ReviewListParams
48
+ def list(params)
49
+ parsed, options = WhopSDK::ReviewListParams.dump_request(params)
50
+ @client.request(
51
+ method: :get,
52
+ path: "reviews",
53
+ query: parsed,
54
+ page: WhopSDK::Internal::CursorPage,
55
+ model: WhopSDK::Models::ReviewListResponse,
56
+ options: options
57
+ )
58
+ end
59
+
60
+ # @api private
61
+ #
62
+ # @param client [WhopSDK::Client]
63
+ def initialize(client:)
64
+ @client = client
65
+ end
66
+ end
67
+ end
68
+ end
@@ -12,7 +12,7 @@ module WhopSDK
12
12
  #
13
13
  # - `payout:transfer_funds`
14
14
  #
15
- # @overload create(amount:, currency:, destination_id:, origin_id:, idempotence_key: nil, notes: nil, request_options: {})
15
+ # @overload create(amount:, currency:, destination_id:, origin_id:, idempotence_key: nil, metadata: nil, notes: nil, request_options: {})
16
16
  #
17
17
  # @param amount [Float] The amount to withdraw
18
18
  #
@@ -24,6 +24,8 @@ module WhopSDK
24
24
  #
25
25
  # @param idempotence_key [String, nil] A unique key to ensure idempotence. Use a UUID or similar.
26
26
  #
27
+ # @param metadata [Hash{Symbol=>Object}, nil] A hash of metadata to attach to the transfer.
28
+ #
27
29
  # @param notes [String, nil] Notes for the transfer. Maximum of 50 characters.
28
30
  #
29
31
  # @param request_options [WhopSDK::RequestOptions, Hash{Symbol=>Object}, nil]
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module WhopSDK
4
- VERSION = "0.0.2"
4
+ VERSION = "0.0.4"
5
5
  end
data/lib/whop_sdk.rb CHANGED
@@ -69,12 +69,15 @@ require_relative "whop_sdk/models/app_retrieve_params"
69
69
  require_relative "whop_sdk/models/app_statuses"
70
70
  require_relative "whop_sdk/models/app_update_params"
71
71
  require_relative "whop_sdk/models/app_view_type"
72
+ require_relative "whop_sdk/models/assessment_question_types"
72
73
  require_relative "whop_sdk/models/authorized_user_list_params"
73
74
  require_relative "whop_sdk/models/authorized_user_list_response"
74
75
  require_relative "whop_sdk/models/authorized_user_retrieve_params"
75
76
  require_relative "whop_sdk/models/authorized_user_retrieve_response"
76
77
  require_relative "whop_sdk/models/authorized_user_roles"
78
+ require_relative "whop_sdk/models/billing_reasons"
77
79
  require_relative "whop_sdk/models/business_types"
80
+ require_relative "whop_sdk/models/card_brands"
78
81
  require_relative "whop_sdk/models/chat_channel"
79
82
  require_relative "whop_sdk/models/chat_channel_list_params"
80
83
  require_relative "whop_sdk/models/chat_channel_list_response"
@@ -87,12 +90,42 @@ require_relative "whop_sdk/models/checkout_configuration_list_response"
87
90
  require_relative "whop_sdk/models/checkout_configuration_retrieve_params"
88
91
  require_relative "whop_sdk/models/collection_method"
89
92
  require_relative "whop_sdk/models/company"
93
+ require_relative "whop_sdk/models/company_create_params"
94
+ require_relative "whop_sdk/models/company_list_params"
95
+ require_relative "whop_sdk/models/company_list_response"
90
96
  require_relative "whop_sdk/models/company_retrieve_params"
97
+ require_relative "whop_sdk/models/course"
98
+ require_relative "whop_sdk/models/course_chapter"
99
+ require_relative "whop_sdk/models/course_chapter_create_params"
100
+ require_relative "whop_sdk/models/course_chapter_delete_params"
101
+ require_relative "whop_sdk/models/course_chapter_delete_response"
102
+ require_relative "whop_sdk/models/course_chapter_list_params"
103
+ require_relative "whop_sdk/models/course_chapter_list_response"
104
+ require_relative "whop_sdk/models/course_chapter_retrieve_params"
105
+ require_relative "whop_sdk/models/course_chapter_update_params"
106
+ require_relative "whop_sdk/models/course_create_params"
107
+ require_relative "whop_sdk/models/course_delete_params"
108
+ require_relative "whop_sdk/models/course_delete_response"
109
+ require_relative "whop_sdk/models/course_lesson_create_params"
110
+ require_relative "whop_sdk/models/course_lesson_delete_params"
111
+ require_relative "whop_sdk/models/course_lesson_delete_response"
91
112
  require_relative "whop_sdk/models/course_lesson_interaction"
92
113
  require_relative "whop_sdk/models/course_lesson_interaction_completed_webhook_event"
93
114
  require_relative "whop_sdk/models/course_lesson_interaction_list_item"
94
115
  require_relative "whop_sdk/models/course_lesson_interaction_list_params"
95
116
  require_relative "whop_sdk/models/course_lesson_interaction_retrieve_params"
117
+ require_relative "whop_sdk/models/course_lesson_list_params"
118
+ require_relative "whop_sdk/models/course_lesson_list_response"
119
+ require_relative "whop_sdk/models/course_lesson_retrieve_params"
120
+ require_relative "whop_sdk/models/course_lesson_update_params"
121
+ require_relative "whop_sdk/models/course_list_params"
122
+ require_relative "whop_sdk/models/course_list_response"
123
+ require_relative "whop_sdk/models/course_retrieve_params"
124
+ require_relative "whop_sdk/models/course_student_list_params"
125
+ require_relative "whop_sdk/models/course_student_list_response"
126
+ require_relative "whop_sdk/models/course_student_retrieve_params"
127
+ require_relative "whop_sdk/models/course_student_retrieve_response"
128
+ require_relative "whop_sdk/models/course_update_params"
96
129
  require_relative "whop_sdk/models/currency"
97
130
  require_relative "whop_sdk/models/custom_cta"
98
131
  require_relative "whop_sdk/models/direction"
@@ -116,6 +149,7 @@ require_relative "whop_sdk/models/experience_create_params"
116
149
  require_relative "whop_sdk/models/experience_delete_params"
117
150
  require_relative "whop_sdk/models/experience_delete_response"
118
151
  require_relative "whop_sdk/models/experience_detach_params"
152
+ require_relative "whop_sdk/models/experience_duplicate_params"
119
153
  require_relative "whop_sdk/models/experience_list_params"
120
154
  require_relative "whop_sdk/models/experience_list_response"
121
155
  require_relative "whop_sdk/models/experience_retrieve_params"
@@ -128,6 +162,7 @@ require_relative "whop_sdk/models/forum_post_create_params"
128
162
  require_relative "whop_sdk/models/forum_post_list_params"
129
163
  require_relative "whop_sdk/models/forum_post_list_response"
130
164
  require_relative "whop_sdk/models/forum_post_retrieve_params"
165
+ require_relative "whop_sdk/models/forum_post_update_params"
131
166
  require_relative "whop_sdk/models/forum_retrieve_params"
132
167
  require_relative "whop_sdk/models/forum_update_params"
133
168
  require_relative "whop_sdk/models/friendly_receipt_status"
@@ -136,7 +171,6 @@ require_relative "whop_sdk/models/industry_types"
136
171
  require_relative "whop_sdk/models/invoice"
137
172
  require_relative "whop_sdk/models/invoice_created_webhook_event"
138
173
  require_relative "whop_sdk/models/invoice_create_params"
139
- require_relative "whop_sdk/models/invoice_create_response"
140
174
  require_relative "whop_sdk/models/invoice_list_item"
141
175
  require_relative "whop_sdk/models/invoice_list_params"
142
176
  require_relative "whop_sdk/models/invoice_paid_webhook_event"
@@ -146,8 +180,12 @@ require_relative "whop_sdk/models/invoice_status"
146
180
  require_relative "whop_sdk/models/invoice_voided_webhook_event"
147
181
  require_relative "whop_sdk/models/invoice_void_params"
148
182
  require_relative "whop_sdk/models/invoice_void_response"
183
+ require_relative "whop_sdk/models/languages"
149
184
  require_relative "whop_sdk/models/ledger_account_retrieve_params"
150
185
  require_relative "whop_sdk/models/ledger_account_retrieve_response"
186
+ require_relative "whop_sdk/models/lesson"
187
+ require_relative "whop_sdk/models/lesson_types"
188
+ require_relative "whop_sdk/models/lesson_visibilities"
151
189
  require_relative "whop_sdk/models/member_list_params"
152
190
  require_relative "whop_sdk/models/member_list_response"
153
191
  require_relative "whop_sdk/models/member_most_recent_actions"
@@ -170,11 +208,13 @@ require_relative "whop_sdk/models/message_create_params"
170
208
  require_relative "whop_sdk/models/message_list_params"
171
209
  require_relative "whop_sdk/models/message_list_response"
172
210
  require_relative "whop_sdk/models/message_retrieve_params"
211
+ require_relative "whop_sdk/models/message_update_params"
173
212
  require_relative "whop_sdk/models/page_info"
174
213
  require_relative "whop_sdk/models/payment"
175
214
  require_relative "whop_sdk/models/payment_failed_webhook_event"
176
215
  require_relative "whop_sdk/models/payment_list_params"
177
216
  require_relative "whop_sdk/models/payment_list_response"
217
+ require_relative "whop_sdk/models/payment_method_types"
178
218
  require_relative "whop_sdk/models/payment_pending_webhook_event"
179
219
  require_relative "whop_sdk/models/payment_refund_params"
180
220
  require_relative "whop_sdk/models/payment_retrieve_params"
@@ -198,6 +238,15 @@ require_relative "whop_sdk/models/product_list_item"
198
238
  require_relative "whop_sdk/models/product_list_params"
199
239
  require_relative "whop_sdk/models/product_retrieve_params"
200
240
  require_relative "whop_sdk/models/product_update_params"
241
+ require_relative "whop_sdk/models/promo_code"
242
+ require_relative "whop_sdk/models/promo_code_create_params"
243
+ require_relative "whop_sdk/models/promo_code_delete_params"
244
+ require_relative "whop_sdk/models/promo_code_delete_response"
245
+ require_relative "whop_sdk/models/promo_code_list_params"
246
+ require_relative "whop_sdk/models/promo_code_list_response"
247
+ require_relative "whop_sdk/models/promo_code_retrieve_params"
248
+ require_relative "whop_sdk/models/promo_code_status"
249
+ require_relative "whop_sdk/models/promo_duration"
201
250
  require_relative "whop_sdk/models/promo_type"
202
251
  require_relative "whop_sdk/models/reaction"
203
252
  require_relative "whop_sdk/models/reaction_create_params"
@@ -206,6 +255,11 @@ require_relative "whop_sdk/models/reaction_list_response"
206
255
  require_relative "whop_sdk/models/reaction_retrieve_params"
207
256
  require_relative "whop_sdk/models/receipt_status"
208
257
  require_relative "whop_sdk/models/release_method"
258
+ require_relative "whop_sdk/models/review_list_params"
259
+ require_relative "whop_sdk/models/review_list_response"
260
+ require_relative "whop_sdk/models/review_retrieve_params"
261
+ require_relative "whop_sdk/models/review_retrieve_response"
262
+ require_relative "whop_sdk/models/review_status"
209
263
  require_relative "whop_sdk/models/shipment"
210
264
  require_relative "whop_sdk/models/shipment_carrier"
211
265
  require_relative "whop_sdk/models/shipment_create_params"
@@ -244,7 +298,11 @@ require_relative "whop_sdk/resources/authorized_users"
244
298
  require_relative "whop_sdk/resources/chat_channels"
245
299
  require_relative "whop_sdk/resources/checkout_configurations"
246
300
  require_relative "whop_sdk/resources/companies"
301
+ require_relative "whop_sdk/resources/course_chapters"
247
302
  require_relative "whop_sdk/resources/course_lesson_interactions"
303
+ require_relative "whop_sdk/resources/course_lessons"
304
+ require_relative "whop_sdk/resources/courses"
305
+ require_relative "whop_sdk/resources/course_students"
248
306
  require_relative "whop_sdk/resources/entries"
249
307
  require_relative "whop_sdk/resources/experiences"
250
308
  require_relative "whop_sdk/resources/forum_posts"
@@ -257,7 +315,9 @@ require_relative "whop_sdk/resources/messages"
257
315
  require_relative "whop_sdk/resources/payments"
258
316
  require_relative "whop_sdk/resources/plans"
259
317
  require_relative "whop_sdk/resources/products"
318
+ require_relative "whop_sdk/resources/promo_codes"
260
319
  require_relative "whop_sdk/resources/reactions"
320
+ require_relative "whop_sdk/resources/reviews"
261
321
  require_relative "whop_sdk/resources/shipments"
262
322
  require_relative "whop_sdk/resources/support_channels"
263
323
  require_relative "whop_sdk/resources/transfers"
@@ -92,6 +92,24 @@ module WhopSDK
92
92
  sig { returns(WhopSDK::Resources::Forums) }
93
93
  attr_reader :forums
94
94
 
95
+ sig { returns(WhopSDK::Resources::PromoCodes) }
96
+ attr_reader :promo_codes
97
+
98
+ sig { returns(WhopSDK::Resources::Courses) }
99
+ attr_reader :courses
100
+
101
+ sig { returns(WhopSDK::Resources::CourseChapters) }
102
+ attr_reader :course_chapters
103
+
104
+ sig { returns(WhopSDK::Resources::CourseLessons) }
105
+ attr_reader :course_lessons
106
+
107
+ sig { returns(WhopSDK::Resources::Reviews) }
108
+ attr_reader :reviews
109
+
110
+ sig { returns(WhopSDK::Resources::CourseStudents) }
111
+ attr_reader :course_students
112
+
95
113
  # @api private
96
114
  sig { override.returns(T::Hash[String, String]) }
97
115
  private def auth_headers
@@ -14,15 +14,15 @@ module WhopSDK
14
14
  # Attachment input for the app build file. This should be an upload in .zip
15
15
  # format. The zip should contain at least one main_js_bundle.hbc file and
16
16
  # optionally an assets folder next to it.
17
- sig { returns(WhopSDK::AppBuildCreateParams::Attachment) }
18
- attr_reader :attachment
19
-
20
17
  sig do
21
- params(
22
- attachment: WhopSDK::AppBuildCreateParams::Attachment::OrHash
23
- ).void
18
+ returns(
19
+ T.any(
20
+ WhopSDK::AppBuildCreateParams::Attachment::AttachmentInputWithDirectUploadID,
21
+ WhopSDK::AppBuildCreateParams::Attachment::AttachmentInputWithID
22
+ )
23
+ )
24
24
  end
25
- attr_writer :attachment
25
+ attr_accessor :attachment
26
26
 
27
27
  # Checksum of the app build file. This is generated by the client and used to
28
28
  # verify the integrity of the file that is submitted when un-packaged later on a
@@ -46,7 +46,11 @@ module WhopSDK
46
46
 
47
47
  sig do
48
48
  params(
49
- attachment: WhopSDK::AppBuildCreateParams::Attachment::OrHash,
49
+ attachment:
50
+ T.any(
51
+ WhopSDK::AppBuildCreateParams::Attachment::AttachmentInputWithDirectUploadID::OrHash,
52
+ WhopSDK::AppBuildCreateParams::Attachment::AttachmentInputWithID::OrHash
53
+ ),
50
54
  checksum: String,
51
55
  platform: WhopSDK::AppBuildPlatforms::OrSymbol,
52
56
  app_id: T.nilable(String),
@@ -79,7 +83,11 @@ module WhopSDK
79
83
  sig do
80
84
  override.returns(
81
85
  {
82
- attachment: WhopSDK::AppBuildCreateParams::Attachment,
86
+ attachment:
87
+ T.any(
88
+ WhopSDK::AppBuildCreateParams::Attachment::AttachmentInputWithDirectUploadID,
89
+ WhopSDK::AppBuildCreateParams::Attachment::AttachmentInputWithID
90
+ ),
83
91
  checksum: String,
84
92
  platform: WhopSDK::AppBuildPlatforms::OrSymbol,
85
93
  app_id: T.nilable(String),
@@ -92,54 +100,86 @@ module WhopSDK
92
100
  def to_hash
93
101
  end
94
102
 
95
- class Attachment < WhopSDK::Internal::Type::BaseModel
96
- OrHash =
103
+ # Attachment input for the app build file. This should be an upload in .zip
104
+ # format. The zip should contain at least one main_js_bundle.hbc file and
105
+ # optionally an assets folder next to it.
106
+ module Attachment
107
+ extend WhopSDK::Internal::Type::Union
108
+
109
+ Variants =
97
110
  T.type_alias do
98
111
  T.any(
99
- WhopSDK::AppBuildCreateParams::Attachment,
100
- WhopSDK::Internal::AnyHash
112
+ WhopSDK::AppBuildCreateParams::Attachment::AttachmentInputWithDirectUploadID,
113
+ WhopSDK::AppBuildCreateParams::Attachment::AttachmentInputWithID
101
114
  )
102
115
  end
103
116
 
104
- # The ID of an existing attachment object. Use this when updating a resource and
105
- # keeping a subset of the attachments. Don't use this unless you know what you're
106
- # doing.
107
- sig { returns(T.nilable(String)) }
108
- attr_accessor :id
117
+ class AttachmentInputWithDirectUploadID < WhopSDK::Internal::Type::BaseModel
118
+ OrHash =
119
+ T.type_alias do
120
+ T.any(
121
+ WhopSDK::AppBuildCreateParams::Attachment::AttachmentInputWithDirectUploadID,
122
+ WhopSDK::Internal::AnyHash
123
+ )
124
+ end
109
125
 
110
- # This ID should be used the first time you upload an attachment. It is the ID of
111
- # the direct upload that was created when uploading the file to S3 via the
112
- # mediaDirectUpload mutation.
113
- sig { returns(T.nilable(String)) }
114
- attr_accessor :direct_upload_id
126
+ # This ID should be used the first time you upload an attachment. It is the ID of
127
+ # the direct upload that was created when uploading the file to S3 via the
128
+ # mediaDirectUpload mutation.
129
+ sig { returns(String) }
130
+ attr_accessor :direct_upload_id
115
131
 
116
- # Attachment input for the app build file. This should be an upload in .zip
117
- # format. The zip should contain at least one main_js_bundle.hbc file and
118
- # optionally an assets folder next to it.
119
- sig do
120
- params(
121
- id: T.nilable(String),
122
- direct_upload_id: T.nilable(String)
123
- ).returns(T.attached_class)
132
+ # Input for an attachment
133
+ sig { params(direct_upload_id: String).returns(T.attached_class) }
134
+ def self.new(
135
+ # This ID should be used the first time you upload an attachment. It is the ID of
136
+ # the direct upload that was created when uploading the file to S3 via the
137
+ # mediaDirectUpload mutation.
138
+ direct_upload_id:
139
+ )
140
+ end
141
+
142
+ sig { override.returns({ direct_upload_id: String }) }
143
+ def to_hash
144
+ end
124
145
  end
125
- def self.new(
146
+
147
+ class AttachmentInputWithID < WhopSDK::Internal::Type::BaseModel
148
+ OrHash =
149
+ T.type_alias do
150
+ T.any(
151
+ WhopSDK::AppBuildCreateParams::Attachment::AttachmentInputWithID,
152
+ WhopSDK::Internal::AnyHash
153
+ )
154
+ end
155
+
126
156
  # The ID of an existing attachment object. Use this when updating a resource and
127
157
  # keeping a subset of the attachments. Don't use this unless you know what you're
128
158
  # doing.
129
- id: nil,
130
- # This ID should be used the first time you upload an attachment. It is the ID of
131
- # the direct upload that was created when uploading the file to S3 via the
132
- # mediaDirectUpload mutation.
133
- direct_upload_id: nil
134
- )
159
+ sig { returns(String) }
160
+ attr_accessor :id
161
+
162
+ # Input for an attachment
163
+ sig { params(id: String).returns(T.attached_class) }
164
+ def self.new(
165
+ # The ID of an existing attachment object. Use this when updating a resource and
166
+ # keeping a subset of the attachments. Don't use this unless you know what you're
167
+ # doing.
168
+ id:
169
+ )
170
+ end
171
+
172
+ sig { override.returns({ id: String }) }
173
+ def to_hash
174
+ end
135
175
  end
136
176
 
137
177
  sig do
138
178
  override.returns(
139
- { id: T.nilable(String), direct_upload_id: T.nilable(String) }
179
+ T::Array[WhopSDK::AppBuildCreateParams::Attachment::Variants]
140
180
  )
141
181
  end
142
- def to_hash
182
+ def self.variants
143
183
  end
144
184
  end
145
185
  end