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,399 @@
1
+ # frozen_string_literal: true
2
+
3
+ module WhopSDK
4
+ module Models
5
+ # @see WhopSDK::Resources::CourseLessons#update
6
+ class CourseLessonUpdateParams < WhopSDK::Internal::Type::BaseModel
7
+ extend WhopSDK::Internal::Type::RequestParameters::Converter
8
+ include WhopSDK::Internal::Type::RequestParameters
9
+
10
+ # @!attribute assessment_completion_requirement
11
+ # Completion requirements for quiz/knowledge check lessons
12
+ #
13
+ # @return [WhopSDK::Models::CourseLessonUpdateParams::AssessmentCompletionRequirement, nil]
14
+ optional :assessment_completion_requirement,
15
+ -> { WhopSDK::CourseLessonUpdateParams::AssessmentCompletionRequirement },
16
+ nil?: true
17
+
18
+ # @!attribute assessment_questions
19
+ # Assessment questions for quiz/knowledge check lessons. Replaces all existing
20
+ # questions.
21
+ #
22
+ # @return [Array<WhopSDK::Models::CourseLessonUpdateParams::AssessmentQuestion>, nil]
23
+ optional :assessment_questions,
24
+ -> { WhopSDK::Internal::Type::ArrayOf[WhopSDK::CourseLessonUpdateParams::AssessmentQuestion] },
25
+ nil?: true
26
+
27
+ # @!attribute attachments
28
+ # General attachments for the lesson (PDFs, files, etc). Replaces all existing
29
+ # attachments.
30
+ #
31
+ # @return [Array<WhopSDK::Models::CourseLessonUpdateParams::Attachment::AttachmentInputWithDirectUploadID, WhopSDK::Models::CourseLessonUpdateParams::Attachment::AttachmentInputWithID>, nil]
32
+ optional :attachments,
33
+ -> { WhopSDK::Internal::Type::ArrayOf[union: WhopSDK::CourseLessonUpdateParams::Attachment] },
34
+ nil?: true
35
+
36
+ # @!attribute content
37
+ # The content of the lesson
38
+ #
39
+ # @return [String, nil]
40
+ optional :content, String, nil?: true
41
+
42
+ # @!attribute days_from_course_start_until_unlock
43
+ # Days from course start until unlock
44
+ #
45
+ # @return [Integer, nil]
46
+ optional :days_from_course_start_until_unlock, Integer, nil?: true
47
+
48
+ # @!attribute lesson_type
49
+ # The available types for a lesson
50
+ #
51
+ # @return [Symbol, WhopSDK::Models::LessonTypes, nil]
52
+ optional :lesson_type, enum: -> { WhopSDK::LessonTypes }, nil?: true
53
+
54
+ # @!attribute main_pdf
55
+ # The main PDF file for this lesson
56
+ #
57
+ # @return [WhopSDK::Models::CourseLessonUpdateParams::MainPdf::AttachmentInputWithDirectUploadID, WhopSDK::Models::CourseLessonUpdateParams::MainPdf::AttachmentInputWithID, nil]
58
+ optional :main_pdf, union: -> { WhopSDK::CourseLessonUpdateParams::MainPdf }, nil?: true
59
+
60
+ # @!attribute max_attempts
61
+ # Maximum number of attempts allowed for assessments
62
+ #
63
+ # @return [Integer, nil]
64
+ optional :max_attempts, Integer, nil?: true
65
+
66
+ # @!attribute mux_asset_id
67
+ # The ID of the Mux asset to attach to this lesson for video lessons
68
+ #
69
+ # @return [String, nil]
70
+ optional :mux_asset_id, String, nil?: true
71
+
72
+ # @!attribute title
73
+ # The title of the lesson
74
+ #
75
+ # @return [String, nil]
76
+ optional :title, String, nil?: true
77
+
78
+ # @!attribute visibility
79
+ # The available visibilities for a lesson. Determines how / whether a lesson is
80
+ # visible to users.
81
+ #
82
+ # @return [Symbol, WhopSDK::Models::LessonVisibilities, nil]
83
+ optional :visibility, enum: -> { WhopSDK::LessonVisibilities }, nil?: true
84
+
85
+ # @!method initialize(assessment_completion_requirement: nil, assessment_questions: nil, attachments: nil, content: nil, days_from_course_start_until_unlock: nil, lesson_type: nil, main_pdf: nil, max_attempts: nil, mux_asset_id: nil, title: nil, visibility: nil, request_options: {})
86
+ # Some parameter documentations has been truncated, see
87
+ # {WhopSDK::Models::CourseLessonUpdateParams} for more details.
88
+ #
89
+ # @param assessment_completion_requirement [WhopSDK::Models::CourseLessonUpdateParams::AssessmentCompletionRequirement, nil] Completion requirements for quiz/knowledge check lessons
90
+ #
91
+ # @param assessment_questions [Array<WhopSDK::Models::CourseLessonUpdateParams::AssessmentQuestion>, nil] Assessment questions for quiz/knowledge check lessons. Replaces all existing que
92
+ #
93
+ # @param attachments [Array<WhopSDK::Models::CourseLessonUpdateParams::Attachment::AttachmentInputWithDirectUploadID, WhopSDK::Models::CourseLessonUpdateParams::Attachment::AttachmentInputWithID>, nil] General attachments for the lesson (PDFs, files, etc). Replaces all existing att
94
+ #
95
+ # @param content [String, nil] The content of the lesson
96
+ #
97
+ # @param days_from_course_start_until_unlock [Integer, nil] Days from course start until unlock
98
+ #
99
+ # @param lesson_type [Symbol, WhopSDK::Models::LessonTypes, nil] The available types for a lesson
100
+ #
101
+ # @param main_pdf [WhopSDK::Models::CourseLessonUpdateParams::MainPdf::AttachmentInputWithDirectUploadID, WhopSDK::Models::CourseLessonUpdateParams::MainPdf::AttachmentInputWithID, nil] The main PDF file for this lesson
102
+ #
103
+ # @param max_attempts [Integer, nil] Maximum number of attempts allowed for assessments
104
+ #
105
+ # @param mux_asset_id [String, nil] The ID of the Mux asset to attach to this lesson for video lessons
106
+ #
107
+ # @param title [String, nil] The title of the lesson
108
+ #
109
+ # @param visibility [Symbol, WhopSDK::Models::LessonVisibilities, nil] The available visibilities for a lesson. Determines how / whether a lesson is vi
110
+ #
111
+ # @param request_options [WhopSDK::RequestOptions, Hash{Symbol=>Object}]
112
+
113
+ class AssessmentCompletionRequirement < WhopSDK::Internal::Type::BaseModel
114
+ # @!attribute minimum_grade_percent
115
+ # The minimum grade percentage required to pass (0-100). Cannot be set together
116
+ # with minimum_questions_correct.
117
+ #
118
+ # @return [Float, nil]
119
+ optional :minimum_grade_percent, Float, nil?: true
120
+
121
+ # @!attribute minimum_questions_correct
122
+ # The minimum number of questions that must be answered correctly. Cannot be set
123
+ # together with minimum_grade_percent.
124
+ #
125
+ # @return [Integer, nil]
126
+ optional :minimum_questions_correct, Integer, nil?: true
127
+
128
+ # @!method initialize(minimum_grade_percent: nil, minimum_questions_correct: nil)
129
+ # Some parameter documentations has been truncated, see
130
+ # {WhopSDK::Models::CourseLessonUpdateParams::AssessmentCompletionRequirement} for
131
+ # more details.
132
+ #
133
+ # Completion requirements for quiz/knowledge check lessons
134
+ #
135
+ # @param minimum_grade_percent [Float, nil] The minimum grade percentage required to pass (0-100). Cannot be set together wi
136
+ #
137
+ # @param minimum_questions_correct [Integer, nil] The minimum number of questions that must be answered correctly. Cannot be set t
138
+ end
139
+
140
+ class AssessmentQuestion < WhopSDK::Internal::Type::BaseModel
141
+ # @!attribute correct_answer
142
+ # The correct answer for the question. Used for short answer questions
143
+ #
144
+ # @return [String]
145
+ required :correct_answer, String
146
+
147
+ # @!attribute question_text
148
+ # The text of the question
149
+ #
150
+ # @return [String]
151
+ required :question_text, String
152
+
153
+ # @!attribute question_type
154
+ # The type of the question
155
+ #
156
+ # @return [Symbol, WhopSDK::Models::AssessmentQuestionTypes]
157
+ required :question_type, enum: -> { WhopSDK::AssessmentQuestionTypes }
158
+
159
+ # @!attribute id
160
+ # The ID of an existing question. If provided, the question will be updated. If
161
+ # not provided, a new question will be created.
162
+ #
163
+ # @return [String, nil]
164
+ optional :id, String, nil?: true
165
+
166
+ # @!attribute image
167
+ # Optional image attachment for the question
168
+ #
169
+ # @return [WhopSDK::Models::CourseLessonUpdateParams::AssessmentQuestion::Image::AttachmentInputWithDirectUploadID, WhopSDK::Models::CourseLessonUpdateParams::AssessmentQuestion::Image::AttachmentInputWithID, nil]
170
+ optional :image,
171
+ union: -> {
172
+ WhopSDK::CourseLessonUpdateParams::AssessmentQuestion::Image
173
+ },
174
+ nil?: true
175
+
176
+ # @!attribute options
177
+ # The answer options for multiple choice/select questions
178
+ #
179
+ # @return [Array<WhopSDK::Models::CourseLessonUpdateParams::AssessmentQuestion::Option>, nil]
180
+ optional :options,
181
+ -> {
182
+ WhopSDK::Internal::Type::ArrayOf[WhopSDK::CourseLessonUpdateParams::AssessmentQuestion::Option]
183
+ },
184
+ nil?: true
185
+
186
+ # @!method initialize(correct_answer:, question_text:, question_type:, id: nil, image: nil, options: nil)
187
+ # Some parameter documentations has been truncated, see
188
+ # {WhopSDK::Models::CourseLessonUpdateParams::AssessmentQuestion} for more
189
+ # details.
190
+ #
191
+ # Input for creating or updating an assessment question
192
+ #
193
+ # @param correct_answer [String] The correct answer for the question. Used for short answer questions
194
+ #
195
+ # @param question_text [String] The text of the question
196
+ #
197
+ # @param question_type [Symbol, WhopSDK::Models::AssessmentQuestionTypes] The type of the question
198
+ #
199
+ # @param id [String, nil] The ID of an existing question. If provided, the question will be updated. If no
200
+ #
201
+ # @param image [WhopSDK::Models::CourseLessonUpdateParams::AssessmentQuestion::Image::AttachmentInputWithDirectUploadID, WhopSDK::Models::CourseLessonUpdateParams::AssessmentQuestion::Image::AttachmentInputWithID, nil] Optional image attachment for the question
202
+ #
203
+ # @param options [Array<WhopSDK::Models::CourseLessonUpdateParams::AssessmentQuestion::Option>, nil] The answer options for multiple choice/select questions
204
+
205
+ # Optional image attachment for the question
206
+ #
207
+ # @see WhopSDK::Models::CourseLessonUpdateParams::AssessmentQuestion#image
208
+ module Image
209
+ extend WhopSDK::Internal::Type::Union
210
+
211
+ # Input for an attachment
212
+ variant -> { WhopSDK::CourseLessonUpdateParams::AssessmentQuestion::Image::AttachmentInputWithDirectUploadID }
213
+
214
+ # Input for an attachment
215
+ variant -> { WhopSDK::CourseLessonUpdateParams::AssessmentQuestion::Image::AttachmentInputWithID }
216
+
217
+ class AttachmentInputWithDirectUploadID < WhopSDK::Internal::Type::BaseModel
218
+ # @!attribute direct_upload_id
219
+ # This ID should be used the first time you upload an attachment. It is the ID of
220
+ # the direct upload that was created when uploading the file to S3 via the
221
+ # mediaDirectUpload mutation.
222
+ #
223
+ # @return [String]
224
+ required :direct_upload_id, String
225
+
226
+ # @!method initialize(direct_upload_id:)
227
+ # Some parameter documentations has been truncated, see
228
+ # {WhopSDK::Models::CourseLessonUpdateParams::AssessmentQuestion::Image::AttachmentInputWithDirectUploadID}
229
+ # for more details.
230
+ #
231
+ # Input for an attachment
232
+ #
233
+ # @param direct_upload_id [String] This ID should be used the first time you upload an attachment. It is the ID of
234
+ end
235
+
236
+ class AttachmentInputWithID < WhopSDK::Internal::Type::BaseModel
237
+ # @!attribute id
238
+ # The ID of an existing attachment object. Use this when updating a resource and
239
+ # keeping a subset of the attachments. Don't use this unless you know what you're
240
+ # doing.
241
+ #
242
+ # @return [String]
243
+ required :id, String
244
+
245
+ # @!method initialize(id:)
246
+ # Some parameter documentations has been truncated, see
247
+ # {WhopSDK::Models::CourseLessonUpdateParams::AssessmentQuestion::Image::AttachmentInputWithID}
248
+ # for more details.
249
+ #
250
+ # Input for an attachment
251
+ #
252
+ # @param id [String] The ID of an existing attachment object. Use this when updating a resource and k
253
+ end
254
+
255
+ # @!method self.variants
256
+ # @return [Array(WhopSDK::Models::CourseLessonUpdateParams::AssessmentQuestion::Image::AttachmentInputWithDirectUploadID, WhopSDK::Models::CourseLessonUpdateParams::AssessmentQuestion::Image::AttachmentInputWithID)]
257
+ end
258
+
259
+ class Option < WhopSDK::Internal::Type::BaseModel
260
+ # @!attribute is_correct
261
+ # Whether this option is a correct answer
262
+ #
263
+ # @return [Boolean]
264
+ required :is_correct, WhopSDK::Internal::Type::Boolean
265
+
266
+ # @!attribute option_text
267
+ # The text of the answer option
268
+ #
269
+ # @return [String]
270
+ required :option_text, String
271
+
272
+ # @!attribute id
273
+ # The ID of an existing option. If provided, the option will be updated. If not
274
+ # provided, a new option will be created.
275
+ #
276
+ # @return [String, nil]
277
+ optional :id, String, nil?: true
278
+
279
+ # @!method initialize(is_correct:, option_text:, id: nil)
280
+ # Some parameter documentations has been truncated, see
281
+ # {WhopSDK::Models::CourseLessonUpdateParams::AssessmentQuestion::Option} for more
282
+ # details.
283
+ #
284
+ # Input for creating or updating an assessment question option
285
+ #
286
+ # @param is_correct [Boolean] Whether this option is a correct answer
287
+ #
288
+ # @param option_text [String] The text of the answer option
289
+ #
290
+ # @param id [String, nil] The ID of an existing option. If provided, the option will be updated. If not pr
291
+ end
292
+ end
293
+
294
+ # Input for an attachment
295
+ module Attachment
296
+ extend WhopSDK::Internal::Type::Union
297
+
298
+ # Input for an attachment
299
+ variant -> { WhopSDK::CourseLessonUpdateParams::Attachment::AttachmentInputWithDirectUploadID }
300
+
301
+ # Input for an attachment
302
+ variant -> { WhopSDK::CourseLessonUpdateParams::Attachment::AttachmentInputWithID }
303
+
304
+ class AttachmentInputWithDirectUploadID < WhopSDK::Internal::Type::BaseModel
305
+ # @!attribute direct_upload_id
306
+ # This ID should be used the first time you upload an attachment. It is the ID of
307
+ # the direct upload that was created when uploading the file to S3 via the
308
+ # mediaDirectUpload mutation.
309
+ #
310
+ # @return [String]
311
+ required :direct_upload_id, String
312
+
313
+ # @!method initialize(direct_upload_id:)
314
+ # Some parameter documentations has been truncated, see
315
+ # {WhopSDK::Models::CourseLessonUpdateParams::Attachment::AttachmentInputWithDirectUploadID}
316
+ # for more details.
317
+ #
318
+ # Input for an attachment
319
+ #
320
+ # @param direct_upload_id [String] This ID should be used the first time you upload an attachment. It is the ID of
321
+ end
322
+
323
+ class AttachmentInputWithID < WhopSDK::Internal::Type::BaseModel
324
+ # @!attribute id
325
+ # The ID of an existing attachment object. Use this when updating a resource and
326
+ # keeping a subset of the attachments. Don't use this unless you know what you're
327
+ # doing.
328
+ #
329
+ # @return [String]
330
+ required :id, String
331
+
332
+ # @!method initialize(id:)
333
+ # Some parameter documentations has been truncated, see
334
+ # {WhopSDK::Models::CourseLessonUpdateParams::Attachment::AttachmentInputWithID}
335
+ # for more details.
336
+ #
337
+ # Input for an attachment
338
+ #
339
+ # @param id [String] The ID of an existing attachment object. Use this when updating a resource and k
340
+ end
341
+
342
+ # @!method self.variants
343
+ # @return [Array(WhopSDK::Models::CourseLessonUpdateParams::Attachment::AttachmentInputWithDirectUploadID, WhopSDK::Models::CourseLessonUpdateParams::Attachment::AttachmentInputWithID)]
344
+ end
345
+
346
+ # The main PDF file for this lesson
347
+ module MainPdf
348
+ extend WhopSDK::Internal::Type::Union
349
+
350
+ # Input for an attachment
351
+ variant -> { WhopSDK::CourseLessonUpdateParams::MainPdf::AttachmentInputWithDirectUploadID }
352
+
353
+ # Input for an attachment
354
+ variant -> { WhopSDK::CourseLessonUpdateParams::MainPdf::AttachmentInputWithID }
355
+
356
+ class AttachmentInputWithDirectUploadID < WhopSDK::Internal::Type::BaseModel
357
+ # @!attribute direct_upload_id
358
+ # This ID should be used the first time you upload an attachment. It is the ID of
359
+ # the direct upload that was created when uploading the file to S3 via the
360
+ # mediaDirectUpload mutation.
361
+ #
362
+ # @return [String]
363
+ required :direct_upload_id, String
364
+
365
+ # @!method initialize(direct_upload_id:)
366
+ # Some parameter documentations has been truncated, see
367
+ # {WhopSDK::Models::CourseLessonUpdateParams::MainPdf::AttachmentInputWithDirectUploadID}
368
+ # for more details.
369
+ #
370
+ # Input for an attachment
371
+ #
372
+ # @param direct_upload_id [String] This ID should be used the first time you upload an attachment. It is the ID of
373
+ end
374
+
375
+ class AttachmentInputWithID < WhopSDK::Internal::Type::BaseModel
376
+ # @!attribute id
377
+ # The ID of an existing attachment object. Use this when updating a resource and
378
+ # keeping a subset of the attachments. Don't use this unless you know what you're
379
+ # doing.
380
+ #
381
+ # @return [String]
382
+ required :id, String
383
+
384
+ # @!method initialize(id:)
385
+ # Some parameter documentations has been truncated, see
386
+ # {WhopSDK::Models::CourseLessonUpdateParams::MainPdf::AttachmentInputWithID} for
387
+ # more details.
388
+ #
389
+ # Input for an attachment
390
+ #
391
+ # @param id [String] The ID of an existing attachment object. Use this when updating a resource and k
392
+ end
393
+
394
+ # @!method self.variants
395
+ # @return [Array(WhopSDK::Models::CourseLessonUpdateParams::MainPdf::AttachmentInputWithDirectUploadID, WhopSDK::Models::CourseLessonUpdateParams::MainPdf::AttachmentInputWithID)]
396
+ end
397
+ end
398
+ end
399
+ end
@@ -0,0 +1,62 @@
1
+ # frozen_string_literal: true
2
+
3
+ module WhopSDK
4
+ module Models
5
+ # @see WhopSDK::Resources::Courses#list
6
+ class CourseListParams < WhopSDK::Internal::Type::BaseModel
7
+ extend WhopSDK::Internal::Type::RequestParameters::Converter
8
+ include WhopSDK::Internal::Type::RequestParameters
9
+
10
+ # @!attribute after
11
+ # Returns the elements in the list that come after the specified cursor.
12
+ #
13
+ # @return [String, nil]
14
+ optional :after, String, nil?: true
15
+
16
+ # @!attribute before
17
+ # Returns the elements in the list that come before the specified cursor.
18
+ #
19
+ # @return [String, nil]
20
+ optional :before, String, nil?: true
21
+
22
+ # @!attribute company_id
23
+ # The ID of the company
24
+ #
25
+ # @return [String, nil]
26
+ optional :company_id, String, nil?: true
27
+
28
+ # @!attribute experience_id
29
+ # The ID of the experience
30
+ #
31
+ # @return [String, nil]
32
+ optional :experience_id, String, nil?: true
33
+
34
+ # @!attribute first
35
+ # Returns the first _n_ elements from the list.
36
+ #
37
+ # @return [Integer, nil]
38
+ optional :first, Integer, nil?: true
39
+
40
+ # @!attribute last
41
+ # Returns the last _n_ elements from the list.
42
+ #
43
+ # @return [Integer, nil]
44
+ optional :last, Integer, nil?: true
45
+
46
+ # @!method initialize(after: nil, before: nil, company_id: nil, experience_id: nil, first: nil, last: nil, request_options: {})
47
+ # @param after [String, nil] Returns the elements in the list that come after the specified cursor.
48
+ #
49
+ # @param before [String, nil] Returns the elements in the list that come before the specified cursor.
50
+ #
51
+ # @param company_id [String, nil] The ID of the company
52
+ #
53
+ # @param experience_id [String, nil] The ID of the experience
54
+ #
55
+ # @param first [Integer, nil] Returns the first _n_ elements from the list.
56
+ #
57
+ # @param last [Integer, nil] Returns the last _n_ elements from the list.
58
+ #
59
+ # @param request_options [WhopSDK::RequestOptions, Hash{Symbol=>Object}]
60
+ end
61
+ end
62
+ end
@@ -0,0 +1,148 @@
1
+ # frozen_string_literal: true
2
+
3
+ module WhopSDK
4
+ module Models
5
+ # @see WhopSDK::Resources::Courses#list
6
+ class CourseListResponse < WhopSDK::Internal::Type::BaseModel
7
+ # @!attribute id
8
+ # The ID of the course. Looks like cors_XXX
9
+ #
10
+ # @return [String]
11
+ required :id, String
12
+
13
+ # @!attribute certificate_after_completion_enabled
14
+ # Whether the course will award its students a PDF certificate after completing
15
+ # all lessons
16
+ #
17
+ # @return [Boolean, nil]
18
+ required :certificate_after_completion_enabled, WhopSDK::Internal::Type::Boolean, nil?: true
19
+
20
+ # @!attribute created_at
21
+ # The timestamp of when the course was created
22
+ #
23
+ # @return [Time]
24
+ required :created_at, Time
25
+
26
+ # @!attribute description
27
+ # A short description of the course
28
+ #
29
+ # @return [String, nil]
30
+ required :description, String, nil?: true
31
+
32
+ # @!attribute language
33
+ # The language spoken in the video content of the course, used to generate closed
34
+ # captions in the right language
35
+ #
36
+ # @return [Symbol, WhopSDK::Models::Languages]
37
+ required :language, enum: -> { WhopSDK::Languages }
38
+
39
+ # @!attribute require_completing_lessons_in_order
40
+ # Whether the course requires students to complete the previous lesson before
41
+ # moving on to the next one
42
+ #
43
+ # @return [Boolean]
44
+ required :require_completing_lessons_in_order, WhopSDK::Internal::Type::Boolean
45
+
46
+ # @!attribute tagline
47
+ # A short tagline for the course. It is displayed under the course title in the UI
48
+ #
49
+ # @return [String, nil]
50
+ required :tagline, String, nil?: true
51
+
52
+ # @!attribute thumbnail
53
+ # The thumbnail for the course
54
+ #
55
+ # @return [WhopSDK::Models::CourseListResponse::Thumbnail, nil]
56
+ required :thumbnail, -> { WhopSDK::Models::CourseListResponse::Thumbnail }, nil?: true
57
+
58
+ # @!attribute title
59
+ # The title of the course
60
+ #
61
+ # @return [String, nil]
62
+ required :title, String, nil?: true
63
+
64
+ # @!attribute updated_at
65
+ # The timestamp of when the course was last updated
66
+ #
67
+ # @return [Time]
68
+ required :updated_at, Time
69
+
70
+ # @!method initialize(id:, certificate_after_completion_enabled:, created_at:, description:, language:, require_completing_lessons_in_order:, tagline:, thumbnail:, title:, updated_at:)
71
+ # Some parameter documentations has been truncated, see
72
+ # {WhopSDK::Models::CourseListResponse} for more details.
73
+ #
74
+ # A course from the courses app
75
+ #
76
+ # @param id [String] The ID of the course. Looks like cors_XXX
77
+ #
78
+ # @param certificate_after_completion_enabled [Boolean, nil] Whether the course will award its students a PDF certificate after completing al
79
+ #
80
+ # @param created_at [Time] The timestamp of when the course was created
81
+ #
82
+ # @param description [String, nil] A short description of the course
83
+ #
84
+ # @param language [Symbol, WhopSDK::Models::Languages] The language spoken in the video content of the course, used to generate closed
85
+ #
86
+ # @param require_completing_lessons_in_order [Boolean] Whether the course requires students to complete the previous lesson before movi
87
+ #
88
+ # @param tagline [String, nil] A short tagline for the course. It is displayed under the course title in the UI
89
+ #
90
+ # @param thumbnail [WhopSDK::Models::CourseListResponse::Thumbnail, nil] The thumbnail for the course
91
+ #
92
+ # @param title [String, nil] The title of the course
93
+ #
94
+ # @param updated_at [Time] The timestamp of when the course was last updated
95
+
96
+ # @see WhopSDK::Models::CourseListResponse#thumbnail
97
+ class Thumbnail < WhopSDK::Internal::Type::BaseModel
98
+ # @!attribute id
99
+ # The ID of the attachment
100
+ #
101
+ # @return [String]
102
+ required :id, String
103
+
104
+ # @!attribute content_type
105
+ # The attachment's content type (e.g., image/jpg, video/mp4)
106
+ #
107
+ # @return [String, nil]
108
+ required :content_type, String, nil?: true
109
+
110
+ # @!attribute filename
111
+ # The name of the file
112
+ #
113
+ # @return [String, nil]
114
+ required :filename, String, nil?: true
115
+
116
+ # @!attribute optimized_url
117
+ # This is the URL you use to render optimized attachments on the client. This
118
+ # should be used for apps.
119
+ #
120
+ # @return [String, nil]
121
+ required :optimized_url, String, nil?: true
122
+
123
+ # @!attribute source_url
124
+ # The original URL of the attachment, such as a direct link to S3. This should
125
+ # never be displayed on the client and always passed to an Imgproxy transformer.
126
+ #
127
+ # @return [String, nil]
128
+ required :source_url, String, nil?: true
129
+
130
+ # @!method initialize(id:, content_type:, filename:, optimized_url:, source_url:)
131
+ # Some parameter documentations has been truncated, see
132
+ # {WhopSDK::Models::CourseListResponse::Thumbnail} for more details.
133
+ #
134
+ # The thumbnail for the course
135
+ #
136
+ # @param id [String] The ID of the attachment
137
+ #
138
+ # @param content_type [String, nil] The attachment's content type (e.g., image/jpg, video/mp4)
139
+ #
140
+ # @param filename [String, nil] The name of the file
141
+ #
142
+ # @param optimized_url [String, nil] This is the URL you use to render optimized attachments on the client. This shou
143
+ #
144
+ # @param source_url [String, nil] The original URL of the attachment, such as a direct link to S3. This should nev
145
+ end
146
+ end
147
+ end
148
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module WhopSDK
4
+ module Models
5
+ # @see WhopSDK::Resources::Courses#retrieve
6
+ class CourseRetrieveParams < WhopSDK::Internal::Type::BaseModel
7
+ extend WhopSDK::Internal::Type::RequestParameters::Converter
8
+ include WhopSDK::Internal::Type::RequestParameters
9
+
10
+ # @!method initialize(request_options: {})
11
+ # @param request_options [WhopSDK::RequestOptions, Hash{Symbol=>Object}]
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,62 @@
1
+ # frozen_string_literal: true
2
+
3
+ module WhopSDK
4
+ module Models
5
+ # @see WhopSDK::Resources::CourseStudents#list
6
+ class CourseStudentListParams < WhopSDK::Internal::Type::BaseModel
7
+ extend WhopSDK::Internal::Type::RequestParameters::Converter
8
+ include WhopSDK::Internal::Type::RequestParameters
9
+
10
+ # @!attribute course_id
11
+ # The ID of the course
12
+ #
13
+ # @return [String]
14
+ required :course_id, String
15
+
16
+ # @!attribute after
17
+ # Returns the elements in the list that come after the specified cursor.
18
+ #
19
+ # @return [String, nil]
20
+ optional :after, String, nil?: true
21
+
22
+ # @!attribute before
23
+ # Returns the elements in the list that come before the specified cursor.
24
+ #
25
+ # @return [String, nil]
26
+ optional :before, String, nil?: true
27
+
28
+ # @!attribute first
29
+ # Returns the first _n_ elements from the list.
30
+ #
31
+ # @return [Integer, nil]
32
+ optional :first, Integer, nil?: true
33
+
34
+ # @!attribute keyword
35
+ # Filter students by name - returns students whose names match the keyword
36
+ #
37
+ # @return [String, nil]
38
+ optional :keyword, String, nil?: true
39
+
40
+ # @!attribute last
41
+ # Returns the last _n_ elements from the list.
42
+ #
43
+ # @return [Integer, nil]
44
+ optional :last, Integer, nil?: true
45
+
46
+ # @!method initialize(course_id:, after: nil, before: nil, first: nil, keyword: nil, last: nil, request_options: {})
47
+ # @param course_id [String] The ID of the course
48
+ #
49
+ # @param after [String, nil] Returns the elements in the list that come after the specified cursor.
50
+ #
51
+ # @param before [String, nil] Returns the elements in the list that come before the specified cursor.
52
+ #
53
+ # @param first [Integer, nil] Returns the first _n_ elements from the list.
54
+ #
55
+ # @param keyword [String, nil] Filter students by name - returns students whose names match the keyword
56
+ #
57
+ # @param last [Integer, nil] Returns the last _n_ elements from the list.
58
+ #
59
+ # @param request_options [WhopSDK::RequestOptions, Hash{Symbol=>Object}]
60
+ end
61
+ end
62
+ end