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 CompanyListParams < 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::CompanyListParams, WhopSDK::Internal::AnyHash)
12
+ end
13
+
14
+ # The ID of the parent company to list sub companies for
15
+ sig { returns(String) }
16
+ attr_accessor :parent_company_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
+ # The direction of the sort.
27
+ sig { returns(T.nilable(WhopSDK::Direction::OrSymbol)) }
28
+ attr_accessor :direction
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
+ parent_company_id: String,
41
+ after: T.nilable(String),
42
+ before: T.nilable(String),
43
+ direction: T.nilable(WhopSDK::Direction::OrSymbol),
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
+ # The ID of the parent company to list sub companies for
51
+ parent_company_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
+ # The direction of the sort.
57
+ direction: 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
+ parent_company_id: String,
70
+ after: T.nilable(String),
71
+ before: T.nilable(String),
72
+ direction: T.nilable(WhopSDK::Direction::OrSymbol),
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,235 @@
1
+ # typed: strong
2
+
3
+ module WhopSDK
4
+ module Models
5
+ class CompanyListResponse < WhopSDK::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ WhopSDK::Models::CompanyListResponse,
10
+ WhopSDK::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # The ID (tag) of the company.
15
+ sig { returns(String) }
16
+ attr_accessor :id
17
+
18
+ # The different business types a company can be.
19
+ sig { returns(T.nilable(WhopSDK::BusinessTypes::TaggedSymbol)) }
20
+ attr_accessor :business_type
21
+
22
+ # When the company was created (signed up)
23
+ sig { returns(Time) }
24
+ attr_accessor :created_at
25
+
26
+ # The creator pitch for the company.
27
+ sig { returns(T.nilable(String)) }
28
+ attr_accessor :description
29
+
30
+ # The different industry types a company can be in.
31
+ sig { returns(T.nilable(WhopSDK::IndustryTypes::TaggedSymbol)) }
32
+ attr_accessor :industry_type
33
+
34
+ # The company's logo.
35
+ sig { returns(T.nilable(WhopSDK::Models::CompanyListResponse::Logo)) }
36
+ attr_reader :logo
37
+
38
+ sig do
39
+ params(
40
+ logo: T.nilable(WhopSDK::Models::CompanyListResponse::Logo::OrHash)
41
+ ).void
42
+ end
43
+ attr_writer :logo
44
+
45
+ # The number of members in the company.
46
+ sig { returns(Integer) }
47
+ attr_accessor :member_count
48
+
49
+ # A key-value store of data for the account, created/updated by the platform that
50
+ # made the account.
51
+ sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
52
+ attr_accessor :metadata
53
+
54
+ # The user who owns this company
55
+ sig { returns(WhopSDK::Models::CompanyListResponse::OwnerUser) }
56
+ attr_reader :owner_user
57
+
58
+ sig do
59
+ params(
60
+ owner_user: WhopSDK::Models::CompanyListResponse::OwnerUser::OrHash
61
+ ).void
62
+ end
63
+ attr_writer :owner_user
64
+
65
+ # The number of reviews that have been published for the company.
66
+ sig { returns(Integer) }
67
+ attr_accessor :published_reviews_count
68
+
69
+ # The slug/route of the company on the Whop site.
70
+ sig { returns(String) }
71
+ attr_accessor :route
72
+
73
+ # The title of the company.
74
+ sig { returns(String) }
75
+ attr_accessor :title
76
+
77
+ # The time the company was last updated.
78
+ sig { returns(Time) }
79
+ attr_accessor :updated_at
80
+
81
+ # If the company is Whop Verified
82
+ sig { returns(T::Boolean) }
83
+ attr_accessor :verified
84
+
85
+ # An object representing a (sanitized) company.
86
+ sig do
87
+ params(
88
+ id: String,
89
+ business_type: T.nilable(WhopSDK::BusinessTypes::OrSymbol),
90
+ created_at: Time,
91
+ description: T.nilable(String),
92
+ industry_type: T.nilable(WhopSDK::IndustryTypes::OrSymbol),
93
+ logo: T.nilable(WhopSDK::Models::CompanyListResponse::Logo::OrHash),
94
+ member_count: Integer,
95
+ metadata: T.nilable(T::Hash[Symbol, T.anything]),
96
+ owner_user: WhopSDK::Models::CompanyListResponse::OwnerUser::OrHash,
97
+ published_reviews_count: Integer,
98
+ route: String,
99
+ title: String,
100
+ updated_at: Time,
101
+ verified: T::Boolean
102
+ ).returns(T.attached_class)
103
+ end
104
+ def self.new(
105
+ # The ID (tag) of the company.
106
+ id:,
107
+ # The different business types a company can be.
108
+ business_type:,
109
+ # When the company was created (signed up)
110
+ created_at:,
111
+ # The creator pitch for the company.
112
+ description:,
113
+ # The different industry types a company can be in.
114
+ industry_type:,
115
+ # The company's logo.
116
+ logo:,
117
+ # The number of members in the company.
118
+ member_count:,
119
+ # A key-value store of data for the account, created/updated by the platform that
120
+ # made the account.
121
+ metadata:,
122
+ # The user who owns this company
123
+ owner_user:,
124
+ # The number of reviews that have been published for the company.
125
+ published_reviews_count:,
126
+ # The slug/route of the company on the Whop site.
127
+ route:,
128
+ # The title of the company.
129
+ title:,
130
+ # The time the company was last updated.
131
+ updated_at:,
132
+ # If the company is Whop Verified
133
+ verified:
134
+ )
135
+ end
136
+
137
+ sig do
138
+ override.returns(
139
+ {
140
+ id: String,
141
+ business_type: T.nilable(WhopSDK::BusinessTypes::TaggedSymbol),
142
+ created_at: Time,
143
+ description: T.nilable(String),
144
+ industry_type: T.nilable(WhopSDK::IndustryTypes::TaggedSymbol),
145
+ logo: T.nilable(WhopSDK::Models::CompanyListResponse::Logo),
146
+ member_count: Integer,
147
+ metadata: T.nilable(T::Hash[Symbol, T.anything]),
148
+ owner_user: WhopSDK::Models::CompanyListResponse::OwnerUser,
149
+ published_reviews_count: Integer,
150
+ route: String,
151
+ title: String,
152
+ updated_at: Time,
153
+ verified: T::Boolean
154
+ }
155
+ )
156
+ end
157
+ def to_hash
158
+ end
159
+
160
+ class Logo < WhopSDK::Internal::Type::BaseModel
161
+ OrHash =
162
+ T.type_alias do
163
+ T.any(
164
+ WhopSDK::Models::CompanyListResponse::Logo,
165
+ WhopSDK::Internal::AnyHash
166
+ )
167
+ end
168
+
169
+ # This is the URL you use to render optimized attachments on the client. This
170
+ # should be used for apps.
171
+ sig { returns(T.nilable(String)) }
172
+ attr_accessor :url
173
+
174
+ # The company's logo.
175
+ sig { params(url: T.nilable(String)).returns(T.attached_class) }
176
+ def self.new(
177
+ # This is the URL you use to render optimized attachments on the client. This
178
+ # should be used for apps.
179
+ url:
180
+ )
181
+ end
182
+
183
+ sig { override.returns({ url: T.nilable(String) }) }
184
+ def to_hash
185
+ end
186
+ end
187
+
188
+ class OwnerUser < WhopSDK::Internal::Type::BaseModel
189
+ OrHash =
190
+ T.type_alias do
191
+ T.any(
192
+ WhopSDK::Models::CompanyListResponse::OwnerUser,
193
+ WhopSDK::Internal::AnyHash
194
+ )
195
+ end
196
+
197
+ # The internal ID of the user.
198
+ sig { returns(String) }
199
+ attr_accessor :id
200
+
201
+ # The name of the user from their Whop account.
202
+ sig { returns(T.nilable(String)) }
203
+ attr_accessor :name
204
+
205
+ # The username of the user from their Whop account.
206
+ sig { returns(String) }
207
+ attr_accessor :username
208
+
209
+ # The user who owns this company
210
+ sig do
211
+ params(id: String, name: T.nilable(String), username: String).returns(
212
+ T.attached_class
213
+ )
214
+ end
215
+ def self.new(
216
+ # The internal ID of the user.
217
+ id:,
218
+ # The name of the user from their Whop account.
219
+ name:,
220
+ # The username of the user from their Whop account.
221
+ username:
222
+ )
223
+ end
224
+
225
+ sig do
226
+ override.returns(
227
+ { id: String, name: T.nilable(String), username: String }
228
+ )
229
+ end
230
+ def to_hash
231
+ end
232
+ end
233
+ end
234
+ end
235
+ end
@@ -0,0 +1,313 @@
1
+ # typed: strong
2
+
3
+ module WhopSDK
4
+ module Models
5
+ class Course < WhopSDK::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias { T.any(WhopSDK::Course, WhopSDK::Internal::AnyHash) }
8
+
9
+ # The ID of the course. Looks like cors_XXX
10
+ sig { returns(String) }
11
+ attr_accessor :id
12
+
13
+ # Whether the course will award its students a PDF certificate after completing
14
+ # all lessons
15
+ sig { returns(T.nilable(T::Boolean)) }
16
+ attr_accessor :certificate_after_completion_enabled
17
+
18
+ # The chapters in this course
19
+ sig { returns(T::Array[WhopSDK::Course::Chapter]) }
20
+ attr_accessor :chapters
21
+
22
+ # The timestamp of when the course was created
23
+ sig { returns(Time) }
24
+ attr_accessor :created_at
25
+
26
+ # A short description of the course
27
+ sig { returns(T.nilable(String)) }
28
+ attr_accessor :description
29
+
30
+ # The language spoken in the video content of the course, used to generate closed
31
+ # captions in the right language
32
+ sig { returns(WhopSDK::Languages::TaggedSymbol) }
33
+ attr_accessor :language
34
+
35
+ # Whether the course requires students to complete the previous lesson before
36
+ # moving on to the next one
37
+ sig { returns(T::Boolean) }
38
+ attr_accessor :require_completing_lessons_in_order
39
+
40
+ # A short tagline for the course. It is displayed under the course title in the UI
41
+ sig { returns(T.nilable(String)) }
42
+ attr_accessor :tagline
43
+
44
+ # The thumbnail for the course
45
+ sig { returns(T.nilable(WhopSDK::Course::Thumbnail)) }
46
+ attr_reader :thumbnail
47
+
48
+ sig do
49
+ params(thumbnail: T.nilable(WhopSDK::Course::Thumbnail::OrHash)).void
50
+ end
51
+ attr_writer :thumbnail
52
+
53
+ # The title of the course
54
+ sig { returns(T.nilable(String)) }
55
+ attr_accessor :title
56
+
57
+ # The timestamp of when the course was last updated
58
+ sig { returns(Time) }
59
+ attr_accessor :updated_at
60
+
61
+ # A course from the courses app
62
+ sig do
63
+ params(
64
+ id: String,
65
+ certificate_after_completion_enabled: T.nilable(T::Boolean),
66
+ chapters: T::Array[WhopSDK::Course::Chapter::OrHash],
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: T.nilable(WhopSDK::Course::Thumbnail::OrHash),
73
+ title: T.nilable(String),
74
+ updated_at: Time
75
+ ).returns(T.attached_class)
76
+ end
77
+ def self.new(
78
+ # The ID of the course. Looks like cors_XXX
79
+ id:,
80
+ # Whether the course will award its students a PDF certificate after completing
81
+ # all lessons
82
+ certificate_after_completion_enabled:,
83
+ # The chapters in this course
84
+ chapters:,
85
+ # The timestamp of when the course was created
86
+ created_at:,
87
+ # A short description of the course
88
+ description:,
89
+ # The language spoken in the video content of the course, used to generate closed
90
+ # captions in the right language
91
+ language:,
92
+ # Whether the course requires students to complete the previous lesson before
93
+ # moving on to the next one
94
+ require_completing_lessons_in_order:,
95
+ # A short tagline for the course. It is displayed under the course title in the UI
96
+ tagline:,
97
+ # The thumbnail for the course
98
+ thumbnail:,
99
+ # The title of the course
100
+ title:,
101
+ # The timestamp of when the course was last updated
102
+ updated_at:
103
+ )
104
+ end
105
+
106
+ sig do
107
+ override.returns(
108
+ {
109
+ id: String,
110
+ certificate_after_completion_enabled: T.nilable(T::Boolean),
111
+ chapters: T::Array[WhopSDK::Course::Chapter],
112
+ created_at: Time,
113
+ description: T.nilable(String),
114
+ language: WhopSDK::Languages::TaggedSymbol,
115
+ require_completing_lessons_in_order: T::Boolean,
116
+ tagline: T.nilable(String),
117
+ thumbnail: T.nilable(WhopSDK::Course::Thumbnail),
118
+ title: T.nilable(String),
119
+ updated_at: Time
120
+ }
121
+ )
122
+ end
123
+ def to_hash
124
+ end
125
+
126
+ class Chapter < WhopSDK::Internal::Type::BaseModel
127
+ OrHash =
128
+ T.type_alias do
129
+ T.any(WhopSDK::Course::Chapter, WhopSDK::Internal::AnyHash)
130
+ end
131
+
132
+ # The ID of the chapter. Looks like chap_XXX
133
+ sig { returns(String) }
134
+ attr_accessor :id
135
+
136
+ # The lessons in this chapter
137
+ sig { returns(T::Array[WhopSDK::Course::Chapter::Lesson]) }
138
+ attr_accessor :lessons
139
+
140
+ # The order of the chapter within its course
141
+ sig { returns(Integer) }
142
+ attr_accessor :order
143
+
144
+ # The title of the chapter
145
+ sig { returns(String) }
146
+ attr_accessor :title
147
+
148
+ # A chapter from the courses app
149
+ sig do
150
+ params(
151
+ id: String,
152
+ lessons: T::Array[WhopSDK::Course::Chapter::Lesson::OrHash],
153
+ order: Integer,
154
+ title: String
155
+ ).returns(T.attached_class)
156
+ end
157
+ def self.new(
158
+ # The ID of the chapter. Looks like chap_XXX
159
+ id:,
160
+ # The lessons in this chapter
161
+ lessons:,
162
+ # The order of the chapter within its course
163
+ order:,
164
+ # The title of the chapter
165
+ title:
166
+ )
167
+ end
168
+
169
+ sig do
170
+ override.returns(
171
+ {
172
+ id: String,
173
+ lessons: T::Array[WhopSDK::Course::Chapter::Lesson],
174
+ order: Integer,
175
+ title: String
176
+ }
177
+ )
178
+ end
179
+ def to_hash
180
+ end
181
+
182
+ class Lesson < WhopSDK::Internal::Type::BaseModel
183
+ OrHash =
184
+ T.type_alias do
185
+ T.any(
186
+ WhopSDK::Course::Chapter::Lesson,
187
+ WhopSDK::Internal::AnyHash
188
+ )
189
+ end
190
+
191
+ # The ID of the lesson
192
+ sig { returns(String) }
193
+ attr_accessor :id
194
+
195
+ # The type of the lesson (text, video, pdf, multi, quiz, knowledge_check)
196
+ sig { returns(WhopSDK::LessonTypes::TaggedSymbol) }
197
+ attr_accessor :lesson_type
198
+
199
+ # The order of the lesson within its chapter
200
+ sig { returns(Integer) }
201
+ attr_accessor :order
202
+
203
+ # The title of the lesson
204
+ sig { returns(String) }
205
+ attr_accessor :title
206
+
207
+ # A lesson from the courses app
208
+ sig do
209
+ params(
210
+ id: String,
211
+ lesson_type: WhopSDK::LessonTypes::OrSymbol,
212
+ order: Integer,
213
+ title: String
214
+ ).returns(T.attached_class)
215
+ end
216
+ def self.new(
217
+ # The ID of the lesson
218
+ id:,
219
+ # The type of the lesson (text, video, pdf, multi, quiz, knowledge_check)
220
+ lesson_type:,
221
+ # The order of the lesson within its chapter
222
+ order:,
223
+ # The title of the lesson
224
+ title:
225
+ )
226
+ end
227
+
228
+ sig do
229
+ override.returns(
230
+ {
231
+ id: String,
232
+ lesson_type: WhopSDK::LessonTypes::TaggedSymbol,
233
+ order: Integer,
234
+ title: String
235
+ }
236
+ )
237
+ end
238
+ def to_hash
239
+ end
240
+ end
241
+ end
242
+
243
+ class Thumbnail < WhopSDK::Internal::Type::BaseModel
244
+ OrHash =
245
+ T.type_alias do
246
+ T.any(WhopSDK::Course::Thumbnail, WhopSDK::Internal::AnyHash)
247
+ end
248
+
249
+ # The ID of the attachment
250
+ sig { returns(String) }
251
+ attr_accessor :id
252
+
253
+ # The attachment's content type (e.g., image/jpg, video/mp4)
254
+ sig { returns(T.nilable(String)) }
255
+ attr_accessor :content_type
256
+
257
+ # The name of the file
258
+ sig { returns(T.nilable(String)) }
259
+ attr_accessor :filename
260
+
261
+ # This is the URL you use to render optimized attachments on the client. This
262
+ # should be used for apps.
263
+ sig { returns(T.nilable(String)) }
264
+ attr_accessor :optimized_url
265
+
266
+ # The original URL of the attachment, such as a direct link to S3. This should
267
+ # never be displayed on the client and always passed to an Imgproxy transformer.
268
+ sig { returns(T.nilable(String)) }
269
+ attr_accessor :source_url
270
+
271
+ # The thumbnail for the course
272
+ sig do
273
+ params(
274
+ id: String,
275
+ content_type: T.nilable(String),
276
+ filename: T.nilable(String),
277
+ optimized_url: T.nilable(String),
278
+ source_url: T.nilable(String)
279
+ ).returns(T.attached_class)
280
+ end
281
+ def self.new(
282
+ # The ID of the attachment
283
+ id:,
284
+ # The attachment's content type (e.g., image/jpg, video/mp4)
285
+ content_type:,
286
+ # The name of the file
287
+ filename:,
288
+ # This is the URL you use to render optimized attachments on the client. This
289
+ # should be used for apps.
290
+ optimized_url:,
291
+ # The original URL of the attachment, such as a direct link to S3. This should
292
+ # never be displayed on the client and always passed to an Imgproxy transformer.
293
+ source_url:
294
+ )
295
+ end
296
+
297
+ sig do
298
+ override.returns(
299
+ {
300
+ id: String,
301
+ content_type: T.nilable(String),
302
+ filename: T.nilable(String),
303
+ optimized_url: T.nilable(String),
304
+ source_url: T.nilable(String)
305
+ }
306
+ )
307
+ end
308
+ def to_hash
309
+ end
310
+ end
311
+ end
312
+ end
313
+ end