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
@@ -24,13 +24,7 @@ module WhopSDK
24
24
  attr_accessor :before
25
25
 
26
26
  # The billing reason for the payment
27
- sig do
28
- returns(
29
- T.nilable(
30
- T::Array[WhopSDK::PaymentListParams::BillingReason::OrSymbol]
31
- )
32
- )
33
- end
27
+ sig { returns(T.nilable(T::Array[WhopSDK::BillingReasons::OrSymbol])) }
34
28
  attr_accessor :billing_reasons
35
29
 
36
30
  # The minimum creation date to filter by
@@ -89,9 +83,7 @@ module WhopSDK
89
83
  after: T.nilable(String),
90
84
  before: T.nilable(String),
91
85
  billing_reasons:
92
- T.nilable(
93
- T::Array[WhopSDK::PaymentListParams::BillingReason::OrSymbol]
94
- ),
86
+ T.nilable(T::Array[WhopSDK::BillingReasons::OrSymbol]),
95
87
  created_after: T.nilable(Time),
96
88
  created_before: T.nilable(Time),
97
89
  currencies: T.nilable(T::Array[WhopSDK::Currency::OrSymbol]),
@@ -152,9 +144,7 @@ module WhopSDK
152
144
  after: T.nilable(String),
153
145
  before: T.nilable(String),
154
146
  billing_reasons:
155
- T.nilable(
156
- T::Array[WhopSDK::PaymentListParams::BillingReason::OrSymbol]
157
- ),
147
+ T.nilable(T::Array[WhopSDK::BillingReasons::OrSymbol]),
158
148
  created_after: T.nilable(Time),
159
149
  created_before: T.nilable(Time),
160
150
  currencies: T.nilable(T::Array[WhopSDK::Currency::OrSymbol]),
@@ -175,56 +165,6 @@ module WhopSDK
175
165
  def to_hash
176
166
  end
177
167
 
178
- # The reason why a specific payment was billed
179
- module BillingReason
180
- extend WhopSDK::Internal::Type::Enum
181
-
182
- TaggedSymbol =
183
- T.type_alias do
184
- T.all(Symbol, WhopSDK::PaymentListParams::BillingReason)
185
- end
186
- OrSymbol = T.type_alias { T.any(Symbol, String) }
187
-
188
- SUBSCRIPTION_CREATE =
189
- T.let(
190
- :subscription_create,
191
- WhopSDK::PaymentListParams::BillingReason::TaggedSymbol
192
- )
193
- SUBSCRIPTION_CYCLE =
194
- T.let(
195
- :subscription_cycle,
196
- WhopSDK::PaymentListParams::BillingReason::TaggedSymbol
197
- )
198
- SUBSCRIPTION_UPDATE =
199
- T.let(
200
- :subscription_update,
201
- WhopSDK::PaymentListParams::BillingReason::TaggedSymbol
202
- )
203
- ONE_TIME =
204
- T.let(
205
- :one_time,
206
- WhopSDK::PaymentListParams::BillingReason::TaggedSymbol
207
- )
208
- MANUAL =
209
- T.let(
210
- :manual,
211
- WhopSDK::PaymentListParams::BillingReason::TaggedSymbol
212
- )
213
- SUBSCRIPTION =
214
- T.let(
215
- :subscription,
216
- WhopSDK::PaymentListParams::BillingReason::TaggedSymbol
217
- )
218
-
219
- sig do
220
- override.returns(
221
- T::Array[WhopSDK::PaymentListParams::BillingReason::TaggedSymbol]
222
- )
223
- end
224
- def self.values
225
- end
226
- end
227
-
228
168
  # The order to sort the results by.
229
169
  module Order
230
170
  extend WhopSDK::Internal::Type::Enum
@@ -39,12 +39,12 @@ module WhopSDK
39
39
  end
40
40
  attr_writer :billing_address
41
41
 
42
- # The billing reason
43
- sig { returns(T.nilable(String)) }
42
+ # The reason why a specific payment was billed
43
+ sig { returns(T.nilable(WhopSDK::BillingReasons::TaggedSymbol)) }
44
44
  attr_accessor :billing_reason
45
45
 
46
- # The type of card used as the payment method.
47
- sig { returns(T.nilable(String)) }
46
+ # Possible card brands that a payment token can have
47
+ sig { returns(T.nilable(WhopSDK::CardBrands::TaggedSymbol)) }
48
48
  attr_accessor :card_brand
49
49
 
50
50
  # The last 4 digits of the card used to make the payment.
@@ -109,13 +109,17 @@ module WhopSDK
109
109
  end
110
110
  attr_writer :membership
111
111
 
112
+ # The custom metadata stored on this payment. This will be copied the checkout
113
+ # configuration for which this payment was made
114
+ sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
115
+ attr_accessor :metadata
116
+
112
117
  # The datetime the payment was paid
113
118
  sig { returns(T.nilable(Time)) }
114
119
  attr_accessor :paid_at
115
120
 
116
- # Returns the type of payment method used for the payment, if available. Ex.
117
- # klarna, affirm, card, cashapp
118
- sig { returns(T.nilable(String)) }
121
+ # The different types of payment methods that can be used.
122
+ sig { returns(T.nilable(WhopSDK::PaymentMethodTypes::TaggedSymbol)) }
119
123
  attr_accessor :payment_method_type
120
124
 
121
125
  # The plan attached to this payment.
@@ -155,7 +159,8 @@ module WhopSDK
155
159
  end
156
160
  attr_writer :promo_code
157
161
 
158
- # Whether the payment can be refunded.
162
+ # True only for payments that are `paid`, have not been fully refunded, and were
163
+ # processed by a payment processor that allows refunds.
159
164
  sig { returns(T::Boolean) }
160
165
  attr_accessor :refundable
161
166
 
@@ -167,7 +172,9 @@ module WhopSDK
167
172
  sig { returns(T.nilable(Time)) }
168
173
  attr_accessor :refunded_at
169
174
 
170
- # Whether the payment can be retried.
175
+ # True when the payment status is `open` and its membership is in one of the
176
+ # retry-eligible states (`active`, `trialing`, `completed`, or `past_due`);
177
+ # otherwise false. Used to decide if Whop can attempt the charge again.
171
178
  sig { returns(T::Boolean) }
172
179
  attr_accessor :retryable
173
180
 
@@ -202,7 +209,8 @@ module WhopSDK
202
209
  end
203
210
  attr_writer :user
204
211
 
205
- # Whether the payment can be voided.
212
+ # True when the payment is tied to a membership in `past_due`, the payment status
213
+ # is `open`, and the processor allows voiding payments; otherwise false.
206
214
  sig { returns(T::Boolean) }
207
215
  attr_accessor :voidable
208
216
 
@@ -216,8 +224,8 @@ module WhopSDK
216
224
  T.nilable(
217
225
  WhopSDK::Models::PaymentListResponse::BillingAddress::OrHash
218
226
  ),
219
- billing_reason: T.nilable(String),
220
- card_brand: T.nilable(String),
227
+ billing_reason: T.nilable(WhopSDK::BillingReasons::OrSymbol),
228
+ card_brand: T.nilable(WhopSDK::CardBrands::OrSymbol),
221
229
  card_last4: T.nilable(String),
222
230
  company:
223
231
  T.nilable(WhopSDK::Models::PaymentListResponse::Company::OrHash),
@@ -230,8 +238,9 @@ module WhopSDK
230
238
  T.nilable(WhopSDK::Models::PaymentListResponse::Member::OrHash),
231
239
  membership:
232
240
  T.nilable(WhopSDK::Models::PaymentListResponse::Membership::OrHash),
241
+ metadata: T.nilable(T::Hash[Symbol, T.anything]),
233
242
  paid_at: T.nilable(Time),
234
- payment_method_type: T.nilable(String),
243
+ payment_method_type: T.nilable(WhopSDK::PaymentMethodTypes::OrSymbol),
235
244
  plan: T.nilable(WhopSDK::Models::PaymentListResponse::Plan::OrHash),
236
245
  product:
237
246
  T.nilable(WhopSDK::Models::PaymentListResponse::Product::OrHash),
@@ -259,9 +268,9 @@ module WhopSDK
259
268
  auto_refunded:,
260
269
  # The address of the user who made the payment.
261
270
  billing_address:,
262
- # The billing reason
271
+ # The reason why a specific payment was billed
263
272
  billing_reason:,
264
- # The type of card used as the payment method.
273
+ # Possible card brands that a payment token can have
265
274
  card_brand:,
266
275
  # The last 4 digits of the card used to make the payment.
267
276
  card_last4:,
@@ -281,10 +290,12 @@ module WhopSDK
281
290
  member:,
282
291
  # The membership attached to this payment.
283
292
  membership:,
293
+ # The custom metadata stored on this payment. This will be copied the checkout
294
+ # configuration for which this payment was made
295
+ metadata:,
284
296
  # The datetime the payment was paid
285
297
  paid_at:,
286
- # Returns the type of payment method used for the payment, if available. Ex.
287
- # klarna, affirm, card, cashapp
298
+ # The different types of payment methods that can be used.
288
299
  payment_method_type:,
289
300
  # The plan attached to this payment.
290
301
  plan:,
@@ -292,13 +303,16 @@ module WhopSDK
292
303
  product:,
293
304
  # The promo code used for this payment.
294
305
  promo_code:,
295
- # Whether the payment can be refunded.
306
+ # True only for payments that are `paid`, have not been fully refunded, and were
307
+ # processed by a payment processor that allows refunds.
296
308
  refundable:,
297
309
  # The payment refund amount(if applicable).
298
310
  refunded_amount:,
299
311
  # When the payment was refunded (if applicable).
300
312
  refunded_at:,
301
- # Whether the payment can be retried.
313
+ # True when the payment status is `open` and its membership is in one of the
314
+ # retry-eligible states (`active`, `trialing`, `completed`, or `past_due`);
315
+ # otherwise false. Used to decide if Whop can attempt the charge again.
302
316
  retryable:,
303
317
  # The status of a receipt
304
318
  status:,
@@ -312,7 +326,8 @@ module WhopSDK
312
326
  usd_total:,
313
327
  # The user that made this payment.
314
328
  user:,
315
- # Whether the payment can be voided.
329
+ # True when the payment is tied to a membership in `past_due`, the payment status
330
+ # is `open`, and the processor allows voiding payments; otherwise false.
316
331
  voidable:
317
332
  )
318
333
  end
@@ -325,8 +340,8 @@ module WhopSDK
325
340
  auto_refunded: T::Boolean,
326
341
  billing_address:
327
342
  T.nilable(WhopSDK::Models::PaymentListResponse::BillingAddress),
328
- billing_reason: T.nilable(String),
329
- card_brand: T.nilable(String),
343
+ billing_reason: T.nilable(WhopSDK::BillingReasons::TaggedSymbol),
344
+ card_brand: T.nilable(WhopSDK::CardBrands::TaggedSymbol),
330
345
  card_last4: T.nilable(String),
331
346
  company: T.nilable(WhopSDK::Models::PaymentListResponse::Company),
332
347
  created_at: Time,
@@ -337,8 +352,10 @@ module WhopSDK
337
352
  member: T.nilable(WhopSDK::Models::PaymentListResponse::Member),
338
353
  membership:
339
354
  T.nilable(WhopSDK::Models::PaymentListResponse::Membership),
355
+ metadata: T.nilable(T::Hash[Symbol, T.anything]),
340
356
  paid_at: T.nilable(Time),
341
- payment_method_type: T.nilable(String),
357
+ payment_method_type:
358
+ T.nilable(WhopSDK::PaymentMethodTypes::TaggedSymbol),
342
359
  plan: T.nilable(WhopSDK::Models::PaymentListResponse::Plan),
343
360
  product: T.nilable(WhopSDK::Models::PaymentListResponse::Product),
344
361
  promo_code:
@@ -654,7 +671,7 @@ module WhopSDK
654
671
  sig { returns(T.nilable(String)) }
655
672
  attr_accessor :code
656
673
 
657
- # The number of billing cycles the promo is applied for.
674
+ # The number of months the promo is applied for.
658
675
  sig { returns(T.nilable(Integer)) }
659
676
  attr_accessor :number_of_intervals
660
677
 
@@ -682,7 +699,7 @@ module WhopSDK
682
699
  base_currency:,
683
700
  # The specific code used to apply the promo at checkout.
684
701
  code:,
685
- # The number of billing cycles the promo is applied for.
702
+ # The number of months the promo is applied for.
686
703
  number_of_intervals:,
687
704
  # The type (% or flat amount) of the promo.
688
705
  promo_type:
@@ -0,0 +1,118 @@
1
+ # typed: strong
2
+
3
+ module WhopSDK
4
+ module Models
5
+ # The different types of payment methods that can be used.
6
+ module PaymentMethodTypes
7
+ extend WhopSDK::Internal::Type::Enum
8
+
9
+ TaggedSymbol = T.type_alias { T.all(Symbol, WhopSDK::PaymentMethodTypes) }
10
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
11
+
12
+ ACSS_DEBIT = T.let(:acss_debit, WhopSDK::PaymentMethodTypes::TaggedSymbol)
13
+ AFFIRM = T.let(:affirm, WhopSDK::PaymentMethodTypes::TaggedSymbol)
14
+ AFTERPAY_CLEARPAY =
15
+ T.let(:afterpay_clearpay, WhopSDK::PaymentMethodTypes::TaggedSymbol)
16
+ ALIPAY = T.let(:alipay, WhopSDK::PaymentMethodTypes::TaggedSymbol)
17
+ ALMA = T.let(:alma, WhopSDK::PaymentMethodTypes::TaggedSymbol)
18
+ AMAZON_PAY = T.let(:amazon_pay, WhopSDK::PaymentMethodTypes::TaggedSymbol)
19
+ APPLE_PAY = T.let(:apple_pay, WhopSDK::PaymentMethodTypes::TaggedSymbol)
20
+ AU_BECS_DEBIT =
21
+ T.let(:au_becs_debit, WhopSDK::PaymentMethodTypes::TaggedSymbol)
22
+ BACS_DEBIT = T.let(:bacs_debit, WhopSDK::PaymentMethodTypes::TaggedSymbol)
23
+ BANCONTACT = T.let(:bancontact, WhopSDK::PaymentMethodTypes::TaggedSymbol)
24
+ BILLIE = T.let(:billie, WhopSDK::PaymentMethodTypes::TaggedSymbol)
25
+ BLIK = T.let(:blik, WhopSDK::PaymentMethodTypes::TaggedSymbol)
26
+ BOLETO = T.let(:boleto, WhopSDK::PaymentMethodTypes::TaggedSymbol)
27
+ CARD = T.let(:card, WhopSDK::PaymentMethodTypes::TaggedSymbol)
28
+ CASHAPP = T.let(:cashapp, WhopSDK::PaymentMethodTypes::TaggedSymbol)
29
+ CRYPTO = T.let(:crypto, WhopSDK::PaymentMethodTypes::TaggedSymbol)
30
+ EPS = T.let(:eps, WhopSDK::PaymentMethodTypes::TaggedSymbol)
31
+ FPX = T.let(:fpx, WhopSDK::PaymentMethodTypes::TaggedSymbol)
32
+ GIROPAY = T.let(:giropay, WhopSDK::PaymentMethodTypes::TaggedSymbol)
33
+ GOOGLE_PAY = T.let(:google_pay, WhopSDK::PaymentMethodTypes::TaggedSymbol)
34
+ GRABPAY = T.let(:grabpay, WhopSDK::PaymentMethodTypes::TaggedSymbol)
35
+ IDEAL = T.let(:ideal, WhopSDK::PaymentMethodTypes::TaggedSymbol)
36
+ KAKAO_PAY = T.let(:kakao_pay, WhopSDK::PaymentMethodTypes::TaggedSymbol)
37
+ KLARNA = T.let(:klarna, WhopSDK::PaymentMethodTypes::TaggedSymbol)
38
+ KONBINI = T.let(:konbini, WhopSDK::PaymentMethodTypes::TaggedSymbol)
39
+ KR_CARD = T.let(:kr_card, WhopSDK::PaymentMethodTypes::TaggedSymbol)
40
+ LINK = T.let(:link, WhopSDK::PaymentMethodTypes::TaggedSymbol)
41
+ MOBILEPAY = T.let(:mobilepay, WhopSDK::PaymentMethodTypes::TaggedSymbol)
42
+ MULTIBANCO = T.let(:multibanco, WhopSDK::PaymentMethodTypes::TaggedSymbol)
43
+ NAVER_PAY = T.let(:naver_pay, WhopSDK::PaymentMethodTypes::TaggedSymbol)
44
+ NZ_BANK_ACCOUNT =
45
+ T.let(:nz_bank_account, WhopSDK::PaymentMethodTypes::TaggedSymbol)
46
+ OXXO = T.let(:oxxo, WhopSDK::PaymentMethodTypes::TaggedSymbol)
47
+ P24 = T.let(:p24, WhopSDK::PaymentMethodTypes::TaggedSymbol)
48
+ PAY_BY_BANK =
49
+ T.let(:pay_by_bank, WhopSDK::PaymentMethodTypes::TaggedSymbol)
50
+ PAYCO = T.let(:payco, WhopSDK::PaymentMethodTypes::TaggedSymbol)
51
+ PAYNOW = T.let(:paynow, WhopSDK::PaymentMethodTypes::TaggedSymbol)
52
+ PIX = T.let(:pix, WhopSDK::PaymentMethodTypes::TaggedSymbol)
53
+ PROMPTPAY = T.let(:promptpay, WhopSDK::PaymentMethodTypes::TaggedSymbol)
54
+ REVOLUT_PAY =
55
+ T.let(:revolut_pay, WhopSDK::PaymentMethodTypes::TaggedSymbol)
56
+ SAMSUNG_PAY =
57
+ T.let(:samsung_pay, WhopSDK::PaymentMethodTypes::TaggedSymbol)
58
+ SATISPAY = T.let(:satispay, WhopSDK::PaymentMethodTypes::TaggedSymbol)
59
+ SEPA_DEBIT = T.let(:sepa_debit, WhopSDK::PaymentMethodTypes::TaggedSymbol)
60
+ SOFORT = T.let(:sofort, WhopSDK::PaymentMethodTypes::TaggedSymbol)
61
+ SWISH = T.let(:swish, WhopSDK::PaymentMethodTypes::TaggedSymbol)
62
+ TWINT = T.let(:twint, WhopSDK::PaymentMethodTypes::TaggedSymbol)
63
+ US_BANK_ACCOUNT =
64
+ T.let(:us_bank_account, WhopSDK::PaymentMethodTypes::TaggedSymbol)
65
+ WECHAT_PAY = T.let(:wechat_pay, WhopSDK::PaymentMethodTypes::TaggedSymbol)
66
+ ZIP = T.let(:zip, WhopSDK::PaymentMethodTypes::TaggedSymbol)
67
+ BIZUM = T.let(:bizum, WhopSDK::PaymentMethodTypes::TaggedSymbol)
68
+ CAPCHASE_PAY =
69
+ T.let(:capchase_pay, WhopSDK::PaymentMethodTypes::TaggedSymbol)
70
+ KRIYA = T.let(:kriya, WhopSDK::PaymentMethodTypes::TaggedSymbol)
71
+ MONDU = T.let(:mondu, WhopSDK::PaymentMethodTypes::TaggedSymbol)
72
+ NG_WALLET = T.let(:ng_wallet, WhopSDK::PaymentMethodTypes::TaggedSymbol)
73
+ PAYPAY = T.let(:paypay, WhopSDK::PaymentMethodTypes::TaggedSymbol)
74
+ SEQURA = T.let(:sequra, WhopSDK::PaymentMethodTypes::TaggedSymbol)
75
+ SCALAPAY = T.let(:scalapay, WhopSDK::PaymentMethodTypes::TaggedSymbol)
76
+ VIPPS = T.let(:vipps, WhopSDK::PaymentMethodTypes::TaggedSymbol)
77
+ CUSTOM = T.let(:custom, WhopSDK::PaymentMethodTypes::TaggedSymbol)
78
+ CUSTOMER_BALANCE =
79
+ T.let(:customer_balance, WhopSDK::PaymentMethodTypes::TaggedSymbol)
80
+ GOPAY = T.let(:gopay, WhopSDK::PaymentMethodTypes::TaggedSymbol)
81
+ MB_WAY = T.let(:mb_way, WhopSDK::PaymentMethodTypes::TaggedSymbol)
82
+ NG_BANK = T.let(:ng_bank, WhopSDK::PaymentMethodTypes::TaggedSymbol)
83
+ NG_BANK_TRANSFER =
84
+ T.let(:ng_bank_transfer, WhopSDK::PaymentMethodTypes::TaggedSymbol)
85
+ NG_CARD = T.let(:ng_card, WhopSDK::PaymentMethodTypes::TaggedSymbol)
86
+ NG_MARKET = T.let(:ng_market, WhopSDK::PaymentMethodTypes::TaggedSymbol)
87
+ NG_USSD = T.let(:ng_ussd, WhopSDK::PaymentMethodTypes::TaggedSymbol)
88
+ PAYPAL = T.let(:paypal, WhopSDK::PaymentMethodTypes::TaggedSymbol)
89
+ PAYTO = T.let(:payto, WhopSDK::PaymentMethodTypes::TaggedSymbol)
90
+ QRIS = T.let(:qris, WhopSDK::PaymentMethodTypes::TaggedSymbol)
91
+ RECHNUNG = T.let(:rechnung, WhopSDK::PaymentMethodTypes::TaggedSymbol)
92
+ SOUTH_KOREA_MARKET =
93
+ T.let(:south_korea_market, WhopSDK::PaymentMethodTypes::TaggedSymbol)
94
+ KR_MARKET = T.let(:kr_market, WhopSDK::PaymentMethodTypes::TaggedSymbol)
95
+ SHOPEEPAY = T.let(:shopeepay, WhopSDK::PaymentMethodTypes::TaggedSymbol)
96
+ UPI = T.let(:upi, WhopSDK::PaymentMethodTypes::TaggedSymbol)
97
+ SUNBIT = T.let(:sunbit, WhopSDK::PaymentMethodTypes::TaggedSymbol)
98
+ NETBANKING = T.let(:netbanking, WhopSDK::PaymentMethodTypes::TaggedSymbol)
99
+ ID_BANK_TRANSFER =
100
+ T.let(:id_bank_transfer, WhopSDK::PaymentMethodTypes::TaggedSymbol)
101
+ DEMO_PAY = T.let(:demo_pay, WhopSDK::PaymentMethodTypes::TaggedSymbol)
102
+ SHOP_PAY = T.let(:shop_pay, WhopSDK::PaymentMethodTypes::TaggedSymbol)
103
+ SEZZLE = T.let(:sezzle, WhopSDK::PaymentMethodTypes::TaggedSymbol)
104
+ COINBASE = T.let(:coinbase, WhopSDK::PaymentMethodTypes::TaggedSymbol)
105
+ SPLITIT = T.let(:splitit, WhopSDK::PaymentMethodTypes::TaggedSymbol)
106
+ PLATFORM_BALANCE =
107
+ T.let(:platform_balance, WhopSDK::PaymentMethodTypes::TaggedSymbol)
108
+ APPLE = T.let(:apple, WhopSDK::PaymentMethodTypes::TaggedSymbol)
109
+ UNKNOWN = T.let(:unknown, WhopSDK::PaymentMethodTypes::TaggedSymbol)
110
+
111
+ sig do
112
+ override.returns(T::Array[WhopSDK::PaymentMethodTypes::TaggedSymbol])
113
+ end
114
+ def self.values
115
+ end
116
+ end
117
+ end
118
+ end
@@ -63,6 +63,18 @@ module WhopSDK
63
63
  sig { returns(T.nilable(Integer)) }
64
64
  attr_accessor :member_count
65
65
 
66
+ # The explicit payment method configuration for the plan, if any.
67
+ sig { returns(T.nilable(WhopSDK::Plan::PaymentMethodConfiguration)) }
68
+ attr_reader :payment_method_configuration
69
+
70
+ sig do
71
+ params(
72
+ payment_method_configuration:
73
+ T.nilable(WhopSDK::Plan::PaymentMethodConfiguration::OrHash)
74
+ ).void
75
+ end
76
+ attr_writer :payment_method_configuration
77
+
66
78
  # Indicates if the plan is a one time payment or recurring.
67
79
  sig { returns(WhopSDK::PlanType::TaggedSymbol) }
68
80
  attr_accessor :plan_type
@@ -86,14 +98,26 @@ module WhopSDK
86
98
  sig { returns(Float) }
87
99
  attr_accessor :renewal_price
88
100
 
101
+ # The number of units available for purchase. Only displayed to authorized actors
102
+ sig { returns(T.nilable(Integer)) }
103
+ attr_accessor :stock
104
+
89
105
  # The tax type for the plan.
90
106
  sig { returns(WhopSDK::TaxType::TaggedSymbol) }
91
107
  attr_accessor :tax_type
92
108
 
109
+ # The title of the plan. This will be visible on the product page to customers.
110
+ sig { returns(T.nilable(String)) }
111
+ attr_accessor :title
112
+
93
113
  # The number of free trial days added before a renewal plan.
94
114
  sig { returns(T.nilable(Integer)) }
95
115
  attr_accessor :trial_period_days
96
116
 
117
+ # Limits/doesn't limit the number of units available for purchase.
118
+ sig { returns(T::Boolean) }
119
+ attr_accessor :unlimited_stock
120
+
97
121
  # When the plan was last updated.
98
122
  sig { returns(Time) }
99
123
  attr_accessor :updated_at
@@ -118,13 +142,18 @@ module WhopSDK
118
142
  internal_notes: T.nilable(String),
119
143
  invoice: T.nilable(WhopSDK::Plan::Invoice::OrHash),
120
144
  member_count: T.nilable(Integer),
145
+ payment_method_configuration:
146
+ T.nilable(WhopSDK::Plan::PaymentMethodConfiguration::OrHash),
121
147
  plan_type: WhopSDK::PlanType::OrSymbol,
122
148
  product: T.nilable(WhopSDK::Plan::Product::OrHash),
123
149
  purchase_url: String,
124
150
  release_method: WhopSDK::ReleaseMethod::OrSymbol,
125
151
  renewal_price: Float,
152
+ stock: T.nilable(Integer),
126
153
  tax_type: WhopSDK::TaxType::OrSymbol,
154
+ title: T.nilable(String),
127
155
  trial_period_days: T.nilable(Integer),
156
+ unlimited_stock: T::Boolean,
128
157
  updated_at: Time,
129
158
  visibility: WhopSDK::Visibility::OrSymbol
130
159
  ).returns(T.attached_class)
@@ -156,6 +185,8 @@ module WhopSDK
156
185
  invoice:,
157
186
  # The number of members for the plan.
158
187
  member_count:,
188
+ # The explicit payment method configuration for the plan, if any.
189
+ payment_method_configuration:,
159
190
  # Indicates if the plan is a one time payment or recurring.
160
191
  plan_type:,
161
192
  # The access pass for the plan.
@@ -166,10 +197,16 @@ module WhopSDK
166
197
  release_method:,
167
198
  # The price a person has to pay for a plan on the renewal purchase.
168
199
  renewal_price:,
200
+ # The number of units available for purchase. Only displayed to authorized actors
201
+ stock:,
169
202
  # The tax type for the plan.
170
203
  tax_type:,
204
+ # The title of the plan. This will be visible on the product page to customers.
205
+ title:,
171
206
  # The number of free trial days added before a renewal plan.
172
207
  trial_period_days:,
208
+ # Limits/doesn't limit the number of units available for purchase.
209
+ unlimited_stock:,
173
210
  # When the plan was last updated.
174
211
  updated_at:,
175
212
  # Shows or hides the plan from public/business view.
@@ -193,13 +230,18 @@ module WhopSDK
193
230
  internal_notes: T.nilable(String),
194
231
  invoice: T.nilable(WhopSDK::Plan::Invoice),
195
232
  member_count: T.nilable(Integer),
233
+ payment_method_configuration:
234
+ T.nilable(WhopSDK::Plan::PaymentMethodConfiguration),
196
235
  plan_type: WhopSDK::PlanType::TaggedSymbol,
197
236
  product: T.nilable(WhopSDK::Plan::Product),
198
237
  purchase_url: String,
199
238
  release_method: WhopSDK::ReleaseMethod::TaggedSymbol,
200
239
  renewal_price: Float,
240
+ stock: T.nilable(Integer),
201
241
  tax_type: WhopSDK::TaxType::TaggedSymbol,
242
+ title: T.nilable(String),
202
243
  trial_period_days: T.nilable(Integer),
244
+ unlimited_stock: T::Boolean,
203
245
  updated_at: Time,
204
246
  visibility: WhopSDK::Visibility::TaggedSymbol
205
247
  }
@@ -333,6 +375,70 @@ module WhopSDK
333
375
  end
334
376
  end
335
377
 
378
+ class PaymentMethodConfiguration < WhopSDK::Internal::Type::BaseModel
379
+ OrHash =
380
+ T.type_alias do
381
+ T.any(
382
+ WhopSDK::Plan::PaymentMethodConfiguration,
383
+ WhopSDK::Internal::AnyHash
384
+ )
385
+ end
386
+
387
+ # An array of payment method identifiers that are explicitly disabled. Only
388
+ # applies if the include_platform_defaults is true.
389
+ sig { returns(T::Array[WhopSDK::PaymentMethodTypes::TaggedSymbol]) }
390
+ attr_accessor :disabled
391
+
392
+ # An array of payment method identifiers that are explicitly enabled. This means
393
+ # these payment methods will be shown on checkout. Example use case is to only
394
+ # enable a specific payment method like cashapp, or extending the platform
395
+ # defaults with additional methods.
396
+ sig { returns(T::Array[WhopSDK::PaymentMethodTypes::TaggedSymbol]) }
397
+ attr_accessor :enabled
398
+
399
+ # Whether Whop's platform default payment method enablement settings are included
400
+ # in this configuration. The full list of default payment methods can be found in
401
+ # the documentation at docs.whop.com/payments.
402
+ sig { returns(T::Boolean) }
403
+ attr_accessor :include_platform_defaults
404
+
405
+ # The explicit payment method configuration for the plan, if any.
406
+ sig do
407
+ params(
408
+ disabled: T::Array[WhopSDK::PaymentMethodTypes::OrSymbol],
409
+ enabled: T::Array[WhopSDK::PaymentMethodTypes::OrSymbol],
410
+ include_platform_defaults: T::Boolean
411
+ ).returns(T.attached_class)
412
+ end
413
+ def self.new(
414
+ # An array of payment method identifiers that are explicitly disabled. Only
415
+ # applies if the include_platform_defaults is true.
416
+ disabled:,
417
+ # An array of payment method identifiers that are explicitly enabled. This means
418
+ # these payment methods will be shown on checkout. Example use case is to only
419
+ # enable a specific payment method like cashapp, or extending the platform
420
+ # defaults with additional methods.
421
+ enabled:,
422
+ # Whether Whop's platform default payment method enablement settings are included
423
+ # in this configuration. The full list of default payment methods can be found in
424
+ # the documentation at docs.whop.com/payments.
425
+ include_platform_defaults:
426
+ )
427
+ end
428
+
429
+ sig do
430
+ override.returns(
431
+ {
432
+ disabled: T::Array[WhopSDK::PaymentMethodTypes::TaggedSymbol],
433
+ enabled: T::Array[WhopSDK::PaymentMethodTypes::TaggedSymbol],
434
+ include_platform_defaults: T::Boolean
435
+ }
436
+ )
437
+ end
438
+ def to_hash
439
+ end
440
+ end
441
+
336
442
  class Product < WhopSDK::Internal::Type::BaseModel
337
443
  OrHash =
338
444
  T.type_alias do