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,83 @@
1
+ # typed: strong
2
+
3
+ module WhopSDK
4
+ module Models
5
+ class CourseListParams < WhopSDK::Internal::Type::BaseModel
6
+ extend WhopSDK::Internal::Type::RequestParameters::Converter
7
+ include WhopSDK::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(WhopSDK::CourseListParams, WhopSDK::Internal::AnyHash)
12
+ end
13
+
14
+ # Returns the elements in the list that come after the specified cursor.
15
+ sig { returns(T.nilable(String)) }
16
+ attr_accessor :after
17
+
18
+ # Returns the elements in the list that come before the specified cursor.
19
+ sig { returns(T.nilable(String)) }
20
+ attr_accessor :before
21
+
22
+ # The ID of the company
23
+ sig { returns(T.nilable(String)) }
24
+ attr_accessor :company_id
25
+
26
+ # The ID of the experience
27
+ sig { returns(T.nilable(String)) }
28
+ attr_accessor :experience_id
29
+
30
+ # Returns the first _n_ elements from the list.
31
+ sig { returns(T.nilable(Integer)) }
32
+ attr_accessor :first
33
+
34
+ # Returns the last _n_ elements from the list.
35
+ sig { returns(T.nilable(Integer)) }
36
+ attr_accessor :last
37
+
38
+ sig do
39
+ params(
40
+ after: T.nilable(String),
41
+ before: T.nilable(String),
42
+ company_id: T.nilable(String),
43
+ experience_id: T.nilable(String),
44
+ first: T.nilable(Integer),
45
+ last: T.nilable(Integer),
46
+ request_options: WhopSDK::RequestOptions::OrHash
47
+ ).returns(T.attached_class)
48
+ end
49
+ def self.new(
50
+ # Returns the elements in the list that come after the specified cursor.
51
+ after: nil,
52
+ # Returns the elements in the list that come before the specified cursor.
53
+ before: nil,
54
+ # The ID of the company
55
+ company_id: nil,
56
+ # The ID of the experience
57
+ experience_id: nil,
58
+ # Returns the first _n_ elements from the list.
59
+ first: nil,
60
+ # Returns the last _n_ elements from the list.
61
+ last: nil,
62
+ request_options: {}
63
+ )
64
+ end
65
+
66
+ sig do
67
+ override.returns(
68
+ {
69
+ after: T.nilable(String),
70
+ before: T.nilable(String),
71
+ company_id: T.nilable(String),
72
+ experience_id: T.nilable(String),
73
+ first: T.nilable(Integer),
74
+ last: T.nilable(Integer),
75
+ request_options: WhopSDK::RequestOptions
76
+ }
77
+ )
78
+ end
79
+ def to_hash
80
+ end
81
+ end
82
+ end
83
+ end
@@ -0,0 +1,198 @@
1
+ # typed: strong
2
+
3
+ module WhopSDK
4
+ module Models
5
+ class CourseListResponse < WhopSDK::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(WhopSDK::Models::CourseListResponse, WhopSDK::Internal::AnyHash)
9
+ end
10
+
11
+ # The ID of the course. Looks like cors_XXX
12
+ sig { returns(String) }
13
+ attr_accessor :id
14
+
15
+ # Whether the course will award its students a PDF certificate after completing
16
+ # all lessons
17
+ sig { returns(T.nilable(T::Boolean)) }
18
+ attr_accessor :certificate_after_completion_enabled
19
+
20
+ # The timestamp of when the course was created
21
+ sig { returns(Time) }
22
+ attr_accessor :created_at
23
+
24
+ # A short description of the course
25
+ sig { returns(T.nilable(String)) }
26
+ attr_accessor :description
27
+
28
+ # The language spoken in the video content of the course, used to generate closed
29
+ # captions in the right language
30
+ sig { returns(WhopSDK::Languages::TaggedSymbol) }
31
+ attr_accessor :language
32
+
33
+ # Whether the course requires students to complete the previous lesson before
34
+ # moving on to the next one
35
+ sig { returns(T::Boolean) }
36
+ attr_accessor :require_completing_lessons_in_order
37
+
38
+ # A short tagline for the course. It is displayed under the course title in the UI
39
+ sig { returns(T.nilable(String)) }
40
+ attr_accessor :tagline
41
+
42
+ # The thumbnail for the course
43
+ sig { returns(T.nilable(WhopSDK::Models::CourseListResponse::Thumbnail)) }
44
+ attr_reader :thumbnail
45
+
46
+ sig do
47
+ params(
48
+ thumbnail:
49
+ T.nilable(WhopSDK::Models::CourseListResponse::Thumbnail::OrHash)
50
+ ).void
51
+ end
52
+ attr_writer :thumbnail
53
+
54
+ # The title of the course
55
+ sig { returns(T.nilable(String)) }
56
+ attr_accessor :title
57
+
58
+ # The timestamp of when the course was last updated
59
+ sig { returns(Time) }
60
+ attr_accessor :updated_at
61
+
62
+ # A course from the courses app
63
+ sig do
64
+ params(
65
+ id: String,
66
+ certificate_after_completion_enabled: T.nilable(T::Boolean),
67
+ created_at: Time,
68
+ description: T.nilable(String),
69
+ language: WhopSDK::Languages::OrSymbol,
70
+ require_completing_lessons_in_order: T::Boolean,
71
+ tagline: T.nilable(String),
72
+ thumbnail:
73
+ T.nilable(WhopSDK::Models::CourseListResponse::Thumbnail::OrHash),
74
+ title: T.nilable(String),
75
+ updated_at: Time
76
+ ).returns(T.attached_class)
77
+ end
78
+ def self.new(
79
+ # The ID of the course. Looks like cors_XXX
80
+ id:,
81
+ # Whether the course will award its students a PDF certificate after completing
82
+ # all lessons
83
+ certificate_after_completion_enabled:,
84
+ # The timestamp of when the course was created
85
+ created_at:,
86
+ # A short description of the course
87
+ description:,
88
+ # The language spoken in the video content of the course, used to generate closed
89
+ # captions in the right language
90
+ language:,
91
+ # Whether the course requires students to complete the previous lesson before
92
+ # moving on to the next one
93
+ require_completing_lessons_in_order:,
94
+ # A short tagline for the course. It is displayed under the course title in the UI
95
+ tagline:,
96
+ # The thumbnail for the course
97
+ thumbnail:,
98
+ # The title of the course
99
+ title:,
100
+ # The timestamp of when the course was last updated
101
+ updated_at:
102
+ )
103
+ end
104
+
105
+ sig do
106
+ override.returns(
107
+ {
108
+ id: String,
109
+ certificate_after_completion_enabled: T.nilable(T::Boolean),
110
+ created_at: Time,
111
+ description: T.nilable(String),
112
+ language: WhopSDK::Languages::TaggedSymbol,
113
+ require_completing_lessons_in_order: T::Boolean,
114
+ tagline: T.nilable(String),
115
+ thumbnail:
116
+ T.nilable(WhopSDK::Models::CourseListResponse::Thumbnail),
117
+ title: T.nilable(String),
118
+ updated_at: Time
119
+ }
120
+ )
121
+ end
122
+ def to_hash
123
+ end
124
+
125
+ class Thumbnail < WhopSDK::Internal::Type::BaseModel
126
+ OrHash =
127
+ T.type_alias do
128
+ T.any(
129
+ WhopSDK::Models::CourseListResponse::Thumbnail,
130
+ WhopSDK::Internal::AnyHash
131
+ )
132
+ end
133
+
134
+ # The ID of the attachment
135
+ sig { returns(String) }
136
+ attr_accessor :id
137
+
138
+ # The attachment's content type (e.g., image/jpg, video/mp4)
139
+ sig { returns(T.nilable(String)) }
140
+ attr_accessor :content_type
141
+
142
+ # The name of the file
143
+ sig { returns(T.nilable(String)) }
144
+ attr_accessor :filename
145
+
146
+ # This is the URL you use to render optimized attachments on the client. This
147
+ # should be used for apps.
148
+ sig { returns(T.nilable(String)) }
149
+ attr_accessor :optimized_url
150
+
151
+ # The original URL of the attachment, such as a direct link to S3. This should
152
+ # never be displayed on the client and always passed to an Imgproxy transformer.
153
+ sig { returns(T.nilable(String)) }
154
+ attr_accessor :source_url
155
+
156
+ # The thumbnail for the course
157
+ sig do
158
+ params(
159
+ id: String,
160
+ content_type: T.nilable(String),
161
+ filename: T.nilable(String),
162
+ optimized_url: T.nilable(String),
163
+ source_url: T.nilable(String)
164
+ ).returns(T.attached_class)
165
+ end
166
+ def self.new(
167
+ # The ID of the attachment
168
+ id:,
169
+ # The attachment's content type (e.g., image/jpg, video/mp4)
170
+ content_type:,
171
+ # The name of the file
172
+ filename:,
173
+ # This is the URL you use to render optimized attachments on the client. This
174
+ # should be used for apps.
175
+ optimized_url:,
176
+ # The original URL of the attachment, such as a direct link to S3. This should
177
+ # never be displayed on the client and always passed to an Imgproxy transformer.
178
+ source_url:
179
+ )
180
+ end
181
+
182
+ sig do
183
+ override.returns(
184
+ {
185
+ id: String,
186
+ content_type: T.nilable(String),
187
+ filename: T.nilable(String),
188
+ optimized_url: T.nilable(String),
189
+ source_url: T.nilable(String)
190
+ }
191
+ )
192
+ end
193
+ def to_hash
194
+ end
195
+ end
196
+ end
197
+ end
198
+ end
@@ -0,0 +1,27 @@
1
+ # typed: strong
2
+
3
+ module WhopSDK
4
+ module Models
5
+ class CourseRetrieveParams < WhopSDK::Internal::Type::BaseModel
6
+ extend WhopSDK::Internal::Type::RequestParameters::Converter
7
+ include WhopSDK::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(WhopSDK::CourseRetrieveParams, WhopSDK::Internal::AnyHash)
12
+ end
13
+
14
+ sig do
15
+ params(request_options: WhopSDK::RequestOptions::OrHash).returns(
16
+ T.attached_class
17
+ )
18
+ end
19
+ def self.new(request_options: {})
20
+ end
21
+
22
+ sig { override.returns({ request_options: WhopSDK::RequestOptions }) }
23
+ def to_hash
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,83 @@
1
+ # typed: strong
2
+
3
+ module WhopSDK
4
+ module Models
5
+ class CourseStudentListParams < WhopSDK::Internal::Type::BaseModel
6
+ extend WhopSDK::Internal::Type::RequestParameters::Converter
7
+ include WhopSDK::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(WhopSDK::CourseStudentListParams, WhopSDK::Internal::AnyHash)
12
+ end
13
+
14
+ # The ID of the course
15
+ sig { returns(String) }
16
+ attr_accessor :course_id
17
+
18
+ # Returns the elements in the list that come after the specified cursor.
19
+ sig { returns(T.nilable(String)) }
20
+ attr_accessor :after
21
+
22
+ # Returns the elements in the list that come before the specified cursor.
23
+ sig { returns(T.nilable(String)) }
24
+ attr_accessor :before
25
+
26
+ # Returns the first _n_ elements from the list.
27
+ sig { returns(T.nilable(Integer)) }
28
+ attr_accessor :first
29
+
30
+ # Filter students by name - returns students whose names match the keyword
31
+ sig { returns(T.nilable(String)) }
32
+ attr_accessor :keyword
33
+
34
+ # Returns the last _n_ elements from the list.
35
+ sig { returns(T.nilable(Integer)) }
36
+ attr_accessor :last
37
+
38
+ sig do
39
+ params(
40
+ course_id: String,
41
+ after: T.nilable(String),
42
+ before: T.nilable(String),
43
+ first: T.nilable(Integer),
44
+ keyword: T.nilable(String),
45
+ last: T.nilable(Integer),
46
+ request_options: WhopSDK::RequestOptions::OrHash
47
+ ).returns(T.attached_class)
48
+ end
49
+ def self.new(
50
+ # The ID of the course
51
+ course_id:,
52
+ # Returns the elements in the list that come after the specified cursor.
53
+ after: nil,
54
+ # Returns the elements in the list that come before the specified cursor.
55
+ before: nil,
56
+ # Returns the first _n_ elements from the list.
57
+ first: nil,
58
+ # Filter students by name - returns students whose names match the keyword
59
+ keyword: nil,
60
+ # Returns the last _n_ elements from the list.
61
+ last: nil,
62
+ request_options: {}
63
+ )
64
+ end
65
+
66
+ sig do
67
+ override.returns(
68
+ {
69
+ course_id: String,
70
+ after: T.nilable(String),
71
+ before: T.nilable(String),
72
+ first: T.nilable(Integer),
73
+ keyword: T.nilable(String),
74
+ last: T.nilable(Integer),
75
+ request_options: WhopSDK::RequestOptions
76
+ }
77
+ )
78
+ end
79
+ def to_hash
80
+ end
81
+ end
82
+ end
83
+ end
@@ -0,0 +1,142 @@
1
+ # typed: strong
2
+
3
+ module WhopSDK
4
+ module Models
5
+ class CourseStudentListResponse < WhopSDK::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ WhopSDK::Models::CourseStudentListResponse,
10
+ WhopSDK::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # The ID of the course student. Looks like crsi_XXX
15
+ sig { returns(String) }
16
+ attr_accessor :id
17
+
18
+ # The number of lessons the student has completed
19
+ sig { returns(Integer) }
20
+ attr_accessor :completed_lessons_count
21
+
22
+ # The percentage of lessons completed (0-100)
23
+ sig { returns(Float) }
24
+ attr_accessor :completion_rate
25
+
26
+ # When the student first interacted with the course
27
+ sig { returns(Time) }
28
+ attr_accessor :first_interaction_at
29
+
30
+ # When the student last interacted with the course
31
+ sig { returns(Time) }
32
+ attr_accessor :last_interaction_at
33
+
34
+ # The total number of lessons the student has access to
35
+ sig { returns(Integer) }
36
+ attr_accessor :total_lessons_count
37
+
38
+ # The user who is enrolled in the course
39
+ sig { returns(WhopSDK::Models::CourseStudentListResponse::User) }
40
+ attr_reader :user
41
+
42
+ sig do
43
+ params(
44
+ user: WhopSDK::Models::CourseStudentListResponse::User::OrHash
45
+ ).void
46
+ end
47
+ attr_writer :user
48
+
49
+ # A course student (enrollment of a student in a course)
50
+ sig do
51
+ params(
52
+ id: String,
53
+ completed_lessons_count: Integer,
54
+ completion_rate: Float,
55
+ first_interaction_at: Time,
56
+ last_interaction_at: Time,
57
+ total_lessons_count: Integer,
58
+ user: WhopSDK::Models::CourseStudentListResponse::User::OrHash
59
+ ).returns(T.attached_class)
60
+ end
61
+ def self.new(
62
+ # The ID of the course student. Looks like crsi_XXX
63
+ id:,
64
+ # The number of lessons the student has completed
65
+ completed_lessons_count:,
66
+ # The percentage of lessons completed (0-100)
67
+ completion_rate:,
68
+ # When the student first interacted with the course
69
+ first_interaction_at:,
70
+ # When the student last interacted with the course
71
+ last_interaction_at:,
72
+ # The total number of lessons the student has access to
73
+ total_lessons_count:,
74
+ # The user who is enrolled in the course
75
+ user:
76
+ )
77
+ end
78
+
79
+ sig do
80
+ override.returns(
81
+ {
82
+ id: String,
83
+ completed_lessons_count: Integer,
84
+ completion_rate: Float,
85
+ first_interaction_at: Time,
86
+ last_interaction_at: Time,
87
+ total_lessons_count: Integer,
88
+ user: WhopSDK::Models::CourseStudentListResponse::User
89
+ }
90
+ )
91
+ end
92
+ def to_hash
93
+ end
94
+
95
+ class User < WhopSDK::Internal::Type::BaseModel
96
+ OrHash =
97
+ T.type_alias do
98
+ T.any(
99
+ WhopSDK::Models::CourseStudentListResponse::User,
100
+ WhopSDK::Internal::AnyHash
101
+ )
102
+ end
103
+
104
+ # The internal ID of the user.
105
+ sig { returns(String) }
106
+ attr_accessor :id
107
+
108
+ # The name of the user from their Whop account.
109
+ sig { returns(T.nilable(String)) }
110
+ attr_accessor :name
111
+
112
+ # The username of the user from their Whop account.
113
+ sig { returns(String) }
114
+ attr_accessor :username
115
+
116
+ # The user who is enrolled in the course
117
+ sig do
118
+ params(id: String, name: T.nilable(String), username: String).returns(
119
+ T.attached_class
120
+ )
121
+ end
122
+ def self.new(
123
+ # The internal ID of the user.
124
+ id:,
125
+ # The name of the user from their Whop account.
126
+ name:,
127
+ # The username of the user from their Whop account.
128
+ username:
129
+ )
130
+ end
131
+
132
+ sig do
133
+ override.returns(
134
+ { id: String, name: T.nilable(String), username: String }
135
+ )
136
+ end
137
+ def to_hash
138
+ end
139
+ end
140
+ end
141
+ end
142
+ end
@@ -0,0 +1,30 @@
1
+ # typed: strong
2
+
3
+ module WhopSDK
4
+ module Models
5
+ class CourseStudentRetrieveParams < WhopSDK::Internal::Type::BaseModel
6
+ extend WhopSDK::Internal::Type::RequestParameters::Converter
7
+ include WhopSDK::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ WhopSDK::CourseStudentRetrieveParams,
13
+ WhopSDK::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ sig do
18
+ params(request_options: WhopSDK::RequestOptions::OrHash).returns(
19
+ T.attached_class
20
+ )
21
+ end
22
+ def self.new(request_options: {})
23
+ end
24
+
25
+ sig { override.returns({ request_options: WhopSDK::RequestOptions }) }
26
+ def to_hash
27
+ end
28
+ end
29
+ end
30
+ end