dodopayments 0.0.1.pre.alpha.0

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 (326) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +154 -0
  3. data/lib/dodopayments/base_client.rb +453 -0
  4. data/lib/dodopayments/base_model.rb +1217 -0
  5. data/lib/dodopayments/base_page.rb +62 -0
  6. data/lib/dodopayments/client.rb +147 -0
  7. data/lib/dodopayments/default_page_number_pagination.rb +97 -0
  8. data/lib/dodopayments/errors.rb +183 -0
  9. data/lib/dodopayments/extern.rb +9 -0
  10. data/lib/dodopayments/models/attach_existing_customer.rb +19 -0
  11. data/lib/dodopayments/models/billing_address.rb +48 -0
  12. data/lib/dodopayments/models/country_code.rb +262 -0
  13. data/lib/dodopayments/models/create_new_customer.rb +44 -0
  14. data/lib/dodopayments/models/customer.rb +49 -0
  15. data/lib/dodopayments/models/customer_create_params.rb +36 -0
  16. data/lib/dodopayments/models/customer_limited_details.rb +34 -0
  17. data/lib/dodopayments/models/customer_list_params.rb +32 -0
  18. data/lib/dodopayments/models/customer_portal_session.rb +19 -0
  19. data/lib/dodopayments/models/customer_request.rb +18 -0
  20. data/lib/dodopayments/models/customer_retrieve_params.rb +18 -0
  21. data/lib/dodopayments/models/customer_update_params.rb +30 -0
  22. data/lib/dodopayments/models/customers/customer_portal_create_params.rb +27 -0
  23. data/lib/dodopayments/models/discount.rb +108 -0
  24. data/lib/dodopayments/models/discount_create_params.rb +87 -0
  25. data/lib/dodopayments/models/discount_delete_params.rb +18 -0
  26. data/lib/dodopayments/models/discount_list_params.rb +32 -0
  27. data/lib/dodopayments/models/discount_retrieve_params.rb +18 -0
  28. data/lib/dodopayments/models/discount_type.rb +12 -0
  29. data/lib/dodopayments/models/discount_update_params.rb +82 -0
  30. data/lib/dodopayments/models/dispute.rb +80 -0
  31. data/lib/dodopayments/models/dispute_list_params.rb +79 -0
  32. data/lib/dodopayments/models/dispute_retrieve_params.rb +18 -0
  33. data/lib/dodopayments/models/dispute_stage.rb +14 -0
  34. data/lib/dodopayments/models/dispute_status.rb +18 -0
  35. data/lib/dodopayments/models/intent_status.rb +22 -0
  36. data/lib/dodopayments/models/invoices/payment_retrieve_params.rb +20 -0
  37. data/lib/dodopayments/models/license_activate_params.rb +30 -0
  38. data/lib/dodopayments/models/license_deactivate_params.rb +30 -0
  39. data/lib/dodopayments/models/license_key.rb +113 -0
  40. data/lib/dodopayments/models/license_key_duration.rb +25 -0
  41. data/lib/dodopayments/models/license_key_instance.rb +43 -0
  42. data/lib/dodopayments/models/license_key_instance_list_params.rb +39 -0
  43. data/lib/dodopayments/models/license_key_instance_retrieve_params.rb +18 -0
  44. data/lib/dodopayments/models/license_key_instance_update_params.rb +24 -0
  45. data/lib/dodopayments/models/license_key_list_params.rb +53 -0
  46. data/lib/dodopayments/models/license_key_retrieve_params.rb +18 -0
  47. data/lib/dodopayments/models/license_key_status.rb +14 -0
  48. data/lib/dodopayments/models/license_key_update_params.rb +42 -0
  49. data/lib/dodopayments/models/license_validate_params.rb +30 -0
  50. data/lib/dodopayments/models/license_validate_response.rb +19 -0
  51. data/lib/dodopayments/models/misc_list_supported_countries_params.rb +18 -0
  52. data/lib/dodopayments/models/misc_list_supported_countries_response.rb +7 -0
  53. data/lib/dodopayments/models/one_time_product_cart_item.rb +33 -0
  54. data/lib/dodopayments/models/payment.rb +339 -0
  55. data/lib/dodopayments/models/payment_create_params.rb +90 -0
  56. data/lib/dodopayments/models/payment_create_response.rb +82 -0
  57. data/lib/dodopayments/models/payment_list_params.rb +79 -0
  58. data/lib/dodopayments/models/payment_list_response.rb +238 -0
  59. data/lib/dodopayments/models/payment_retrieve_params.rb +18 -0
  60. data/lib/dodopayments/models/payout_list_params.rb +32 -0
  61. data/lib/dodopayments/models/payout_list_response.rb +295 -0
  62. data/lib/dodopayments/models/price.rb +512 -0
  63. data/lib/dodopayments/models/product.rb +149 -0
  64. data/lib/dodopayments/models/product_create_params.rb +107 -0
  65. data/lib/dodopayments/models/product_delete_params.rb +18 -0
  66. data/lib/dodopayments/models/product_list_params.rb +54 -0
  67. data/lib/dodopayments/models/product_list_response.rb +293 -0
  68. data/lib/dodopayments/models/product_retrieve_params.rb +18 -0
  69. data/lib/dodopayments/models/product_unarchive_params.rb +18 -0
  70. data/lib/dodopayments/models/product_update_params.rb +124 -0
  71. data/lib/dodopayments/models/products/image_update_params.rb +26 -0
  72. data/lib/dodopayments/models/products/image_update_response.rb +27 -0
  73. data/lib/dodopayments/models/refund.rb +218 -0
  74. data/lib/dodopayments/models/refund_create_params.rb +40 -0
  75. data/lib/dodopayments/models/refund_list_params.rb +71 -0
  76. data/lib/dodopayments/models/refund_retrieve_params.rb +18 -0
  77. data/lib/dodopayments/models/refund_status.rb +15 -0
  78. data/lib/dodopayments/models/subscription.rb +309 -0
  79. data/lib/dodopayments/models/subscription_create_params.rb +106 -0
  80. data/lib/dodopayments/models/subscription_create_response.rb +73 -0
  81. data/lib/dodopayments/models/subscription_list_params.rb +71 -0
  82. data/lib/dodopayments/models/subscription_retrieve_params.rb +18 -0
  83. data/lib/dodopayments/models/subscription_status.rb +18 -0
  84. data/lib/dodopayments/models/subscription_update_params.rb +30 -0
  85. data/lib/dodopayments/models/time_interval.rb +15 -0
  86. data/lib/dodopayments/models/webhook_event.rb +73 -0
  87. data/lib/dodopayments/models/webhook_event_list_params.rb +71 -0
  88. data/lib/dodopayments/models/webhook_event_retrieve_params.rb +18 -0
  89. data/lib/dodopayments/pooled_net_requester.rb +164 -0
  90. data/lib/dodopayments/request_options.rb +110 -0
  91. data/lib/dodopayments/resources/customers/customer_portal.rb +34 -0
  92. data/lib/dodopayments/resources/customers.rb +97 -0
  93. data/lib/dodopayments/resources/discounts.rb +154 -0
  94. data/lib/dodopayments/resources/disputes.rb +59 -0
  95. data/lib/dodopayments/resources/invoices/payments.rb +30 -0
  96. data/lib/dodopayments/resources/invoices.rb +16 -0
  97. data/lib/dodopayments/resources/license_key_instances.rb +71 -0
  98. data/lib/dodopayments/resources/license_keys.rb +82 -0
  99. data/lib/dodopayments/resources/licenses.rb +72 -0
  100. data/lib/dodopayments/resources/misc.rb +26 -0
  101. data/lib/dodopayments/resources/payments.rb +93 -0
  102. data/lib/dodopayments/resources/payouts.rb +33 -0
  103. data/lib/dodopayments/resources/products/images.rb +34 -0
  104. data/lib/dodopayments/resources/products.rb +176 -0
  105. data/lib/dodopayments/resources/refunds.rb +80 -0
  106. data/lib/dodopayments/resources/subscriptions.rb +117 -0
  107. data/lib/dodopayments/resources/webhook_events.rb +57 -0
  108. data/lib/dodopayments/util.rb +717 -0
  109. data/lib/dodopayments/version.rb +5 -0
  110. data/lib/dodopayments.rb +128 -0
  111. data/manifest.yaml +14 -0
  112. data/rbi/lib/dodopayments/base_client.rbi +186 -0
  113. data/rbi/lib/dodopayments/base_model.rbi +606 -0
  114. data/rbi/lib/dodopayments/base_page.rbi +40 -0
  115. data/rbi/lib/dodopayments/client.rbi +117 -0
  116. data/rbi/lib/dodopayments/default_page_number_pagination.rbi +17 -0
  117. data/rbi/lib/dodopayments/errors.rbi +179 -0
  118. data/rbi/lib/dodopayments/extern.rbi +8 -0
  119. data/rbi/lib/dodopayments/models/attach_existing_customer.rbi +23 -0
  120. data/rbi/lib/dodopayments/models/billing_address.rbi +65 -0
  121. data/rbi/lib/dodopayments/models/country_code.rbi +266 -0
  122. data/rbi/lib/dodopayments/models/create_new_customer.rbi +61 -0
  123. data/rbi/lib/dodopayments/models/customer.rbi +85 -0
  124. data/rbi/lib/dodopayments/models/customer_create_params.rbi +60 -0
  125. data/rbi/lib/dodopayments/models/customer_limited_details.rbi +42 -0
  126. data/rbi/lib/dodopayments/models/customer_list_params.rbi +52 -0
  127. data/rbi/lib/dodopayments/models/customer_portal_session.rbi +23 -0
  128. data/rbi/lib/dodopayments/models/customer_request.rbi +15 -0
  129. data/rbi/lib/dodopayments/models/customer_retrieve_params.rbi +21 -0
  130. data/rbi/lib/dodopayments/models/customer_update_params.rbi +50 -0
  131. data/rbi/lib/dodopayments/models/customers/customer_portal_create_params.rbi +37 -0
  132. data/rbi/lib/dodopayments/models/discount.rbi +161 -0
  133. data/rbi/lib/dodopayments/models/discount_create_params.rbi +124 -0
  134. data/rbi/lib/dodopayments/models/discount_delete_params.rbi +21 -0
  135. data/rbi/lib/dodopayments/models/discount_list_params.rbi +52 -0
  136. data/rbi/lib/dodopayments/models/discount_retrieve_params.rbi +21 -0
  137. data/rbi/lib/dodopayments/models/discount_type.rbi +17 -0
  138. data/rbi/lib/dodopayments/models/discount_update_params.rbi +119 -0
  139. data/rbi/lib/dodopayments/models/dispute.rbi +112 -0
  140. data/rbi/lib/dodopayments/models/dispute_list_params.rbi +116 -0
  141. data/rbi/lib/dodopayments/models/dispute_retrieve_params.rbi +21 -0
  142. data/rbi/lib/dodopayments/models/dispute_stage.rbi +19 -0
  143. data/rbi/lib/dodopayments/models/dispute_status.rbi +23 -0
  144. data/rbi/lib/dodopayments/models/intent_status.rbi +27 -0
  145. data/rbi/lib/dodopayments/models/invoices/payment_retrieve_params.rbi +23 -0
  146. data/rbi/lib/dodopayments/models/license_activate_params.rbi +43 -0
  147. data/rbi/lib/dodopayments/models/license_deactivate_params.rbi +50 -0
  148. data/rbi/lib/dodopayments/models/license_key.rbi +170 -0
  149. data/rbi/lib/dodopayments/models/license_key_duration.rbi +31 -0
  150. data/rbi/lib/dodopayments/models/license_key_instance.rbi +68 -0
  151. data/rbi/lib/dodopayments/models/license_key_instance_list_params.rbi +63 -0
  152. data/rbi/lib/dodopayments/models/license_key_instance_retrieve_params.rbi +21 -0
  153. data/rbi/lib/dodopayments/models/license_key_instance_update_params.rbi +35 -0
  154. data/rbi/lib/dodopayments/models/license_key_list_params.rbi +85 -0
  155. data/rbi/lib/dodopayments/models/license_key_retrieve_params.rbi +21 -0
  156. data/rbi/lib/dodopayments/models/license_key_status.rbi +19 -0
  157. data/rbi/lib/dodopayments/models/license_key_update_params.rbi +66 -0
  158. data/rbi/lib/dodopayments/models/license_validate_params.rbi +50 -0
  159. data/rbi/lib/dodopayments/models/license_validate_response.rbi +23 -0
  160. data/rbi/lib/dodopayments/models/misc_list_supported_countries_params.rbi +21 -0
  161. data/rbi/lib/dodopayments/models/misc_list_supported_countries_response.rbi +7 -0
  162. data/rbi/lib/dodopayments/models/one_time_product_cart_item.rbi +43 -0
  163. data/rbi/lib/dodopayments/models/payment.rbi +439 -0
  164. data/rbi/lib/dodopayments/models/payment_create_params.rbi +133 -0
  165. data/rbi/lib/dodopayments/models/payment_create_response.rbi +127 -0
  166. data/rbi/lib/dodopayments/models/payment_list_params.rbi +116 -0
  167. data/rbi/lib/dodopayments/models/payment_list_response.rbi +295 -0
  168. data/rbi/lib/dodopayments/models/payment_retrieve_params.rbi +21 -0
  169. data/rbi/lib/dodopayments/models/payout_list_params.rbi +52 -0
  170. data/rbi/lib/dodopayments/models/payout_list_response.rbi +374 -0
  171. data/rbi/lib/dodopayments/models/price.rbi +603 -0
  172. data/rbi/lib/dodopayments/models/product.rbi +228 -0
  173. data/rbi/lib/dodopayments/models/product_create_params.rbi +162 -0
  174. data/rbi/lib/dodopayments/models/product_delete_params.rbi +21 -0
  175. data/rbi/lib/dodopayments/models/product_list_params.rbi +78 -0
  176. data/rbi/lib/dodopayments/models/product_list_response.rbi +374 -0
  177. data/rbi/lib/dodopayments/models/product_retrieve_params.rbi +21 -0
  178. data/rbi/lib/dodopayments/models/product_unarchive_params.rbi +21 -0
  179. data/rbi/lib/dodopayments/models/product_update_params.rbi +191 -0
  180. data/rbi/lib/dodopayments/models/products/image_update_params.rbi +41 -0
  181. data/rbi/lib/dodopayments/models/products/image_update_response.rbi +33 -0
  182. data/rbi/lib/dodopayments/models/refund.rbi +267 -0
  183. data/rbi/lib/dodopayments/models/refund_create_params.rbi +64 -0
  184. data/rbi/lib/dodopayments/models/refund_list_params.rbi +104 -0
  185. data/rbi/lib/dodopayments/models/refund_retrieve_params.rbi +21 -0
  186. data/rbi/lib/dodopayments/models/refund_status.rbi +20 -0
  187. data/rbi/lib/dodopayments/models/subscription.rbi +397 -0
  188. data/rbi/lib/dodopayments/models/subscription_create_params.rbi +154 -0
  189. data/rbi/lib/dodopayments/models/subscription_create_response.rbi +113 -0
  190. data/rbi/lib/dodopayments/models/subscription_list_params.rbi +104 -0
  191. data/rbi/lib/dodopayments/models/subscription_retrieve_params.rbi +21 -0
  192. data/rbi/lib/dodopayments/models/subscription_status.rbi +23 -0
  193. data/rbi/lib/dodopayments/models/subscription_update_params.rbi +50 -0
  194. data/rbi/lib/dodopayments/models/time_interval.rbi +20 -0
  195. data/rbi/lib/dodopayments/models/webhook_event.rbi +114 -0
  196. data/rbi/lib/dodopayments/models/webhook_event_list_params.rbi +104 -0
  197. data/rbi/lib/dodopayments/models/webhook_event_retrieve_params.rbi +21 -0
  198. data/rbi/lib/dodopayments/pooled_net_requester.rbi +47 -0
  199. data/rbi/lib/dodopayments/request_options.rbi +109 -0
  200. data/rbi/lib/dodopayments/resources/customers/customer_portal.rbi +30 -0
  201. data/rbi/lib/dodopayments/resources/customers.rbi +76 -0
  202. data/rbi/lib/dodopayments/resources/discounts.rbi +139 -0
  203. data/rbi/lib/dodopayments/resources/disputes.rbi +57 -0
  204. data/rbi/lib/dodopayments/resources/invoices/payments.rbi +23 -0
  205. data/rbi/lib/dodopayments/resources/invoices.rbi +15 -0
  206. data/rbi/lib/dodopayments/resources/license_key_instances.rbi +61 -0
  207. data/rbi/lib/dodopayments/resources/license_keys.rbi +77 -0
  208. data/rbi/lib/dodopayments/resources/licenses.rbi +44 -0
  209. data/rbi/lib/dodopayments/resources/misc.rbi +18 -0
  210. data/rbi/lib/dodopayments/resources/payments.rbi +91 -0
  211. data/rbi/lib/dodopayments/resources/payouts.rbi +28 -0
  212. data/rbi/lib/dodopayments/resources/products/images.rbi +29 -0
  213. data/rbi/lib/dodopayments/resources/products.rbi +164 -0
  214. data/rbi/lib/dodopayments/resources/refunds.rbi +75 -0
  215. data/rbi/lib/dodopayments/resources/subscriptions.rbi +112 -0
  216. data/rbi/lib/dodopayments/resources/webhook_events.rbi +50 -0
  217. data/rbi/lib/dodopayments/util.rbi +270 -0
  218. data/rbi/lib/dodopayments/version.rbi +5 -0
  219. data/sig/dodopayments/base_client.rbs +103 -0
  220. data/sig/dodopayments/base_model.rbs +246 -0
  221. data/sig/dodopayments/base_page.rbs +20 -0
  222. data/sig/dodopayments/client.rbs +58 -0
  223. data/sig/dodopayments/default_page_number_pagination.rbs +7 -0
  224. data/sig/dodopayments/errors.rbs +99 -0
  225. data/sig/dodopayments/extern.rbs +4 -0
  226. data/sig/dodopayments/models/attach_existing_customer.rbs +18 -0
  227. data/sig/dodopayments/models/billing_address.rbs +38 -0
  228. data/sig/dodopayments/models/country_code.rbs +508 -0
  229. data/sig/dodopayments/models/create_new_customer.rbs +37 -0
  230. data/sig/dodopayments/models/customer.rbs +42 -0
  231. data/sig/dodopayments/models/customer_create_params.rbs +32 -0
  232. data/sig/dodopayments/models/customer_limited_details.rbs +23 -0
  233. data/sig/dodopayments/models/customer_list_params.rbs +29 -0
  234. data/sig/dodopayments/models/customer_portal_session.rbs +18 -0
  235. data/sig/dodopayments/models/customer_request.rbs +11 -0
  236. data/sig/dodopayments/models/customer_retrieve_params.rbs +19 -0
  237. data/sig/dodopayments/models/customer_update_params.rbs +29 -0
  238. data/sig/dodopayments/models/customers/customer_portal_create_params.rbs +27 -0
  239. data/sig/dodopayments/models/discount.rbs +62 -0
  240. data/sig/dodopayments/models/discount_create_params.rbs +52 -0
  241. data/sig/dodopayments/models/discount_delete_params.rbs +19 -0
  242. data/sig/dodopayments/models/discount_list_params.rbs +29 -0
  243. data/sig/dodopayments/models/discount_retrieve_params.rbs +19 -0
  244. data/sig/dodopayments/models/discount_type.rbs +11 -0
  245. data/sig/dodopayments/models/discount_update_params.rbs +52 -0
  246. data/sig/dodopayments/models/dispute.rbs +50 -0
  247. data/sig/dodopayments/models/dispute_list_params.rbs +52 -0
  248. data/sig/dodopayments/models/dispute_retrieve_params.rbs +19 -0
  249. data/sig/dodopayments/models/dispute_stage.rbs +13 -0
  250. data/sig/dodopayments/models/dispute_status.rbs +24 -0
  251. data/sig/dodopayments/models/intent_status.rbs +32 -0
  252. data/sig/dodopayments/models/invoices/payment_retrieve_params.rbs +21 -0
  253. data/sig/dodopayments/models/license_activate_params.rbs +28 -0
  254. data/sig/dodopayments/models/license_deactivate_params.rbs +29 -0
  255. data/sig/dodopayments/models/license_key.rbs +66 -0
  256. data/sig/dodopayments/models/license_key_duration.rbs +21 -0
  257. data/sig/dodopayments/models/license_key_instance.rbs +39 -0
  258. data/sig/dodopayments/models/license_key_instance_list_params.rbs +32 -0
  259. data/sig/dodopayments/models/license_key_instance_retrieve_params.rbs +20 -0
  260. data/sig/dodopayments/models/license_key_instance_update_params.rbs +22 -0
  261. data/sig/dodopayments/models/license_key_list_params.rbs +44 -0
  262. data/sig/dodopayments/models/license_key_retrieve_params.rbs +19 -0
  263. data/sig/dodopayments/models/license_key_status.rbs +13 -0
  264. data/sig/dodopayments/models/license_key_update_params.rbs +32 -0
  265. data/sig/dodopayments/models/license_validate_params.rbs +29 -0
  266. data/sig/dodopayments/models/license_validate_response.rbs +18 -0
  267. data/sig/dodopayments/models/misc_list_supported_countries_params.rbs +20 -0
  268. data/sig/dodopayments/models/misc_list_supported_countries_response.rbs +8 -0
  269. data/sig/dodopayments/models/one_time_product_cart_item.rbs +23 -0
  270. data/sig/dodopayments/models/payment.rbs +408 -0
  271. data/sig/dodopayments/models/payment_create_params.rbs +58 -0
  272. data/sig/dodopayments/models/payment_create_response.rbs +51 -0
  273. data/sig/dodopayments/models/payment_list_params.rbs +52 -0
  274. data/sig/dodopayments/models/payment_list_response.rbs +356 -0
  275. data/sig/dodopayments/models/payment_retrieve_params.rbs +19 -0
  276. data/sig/dodopayments/models/payout_list_params.rbs +29 -0
  277. data/sig/dodopayments/models/payout_list_response.rbs +386 -0
  278. data/sig/dodopayments/models/price.rbs +717 -0
  279. data/sig/dodopayments/models/product.rbs +89 -0
  280. data/sig/dodopayments/models/product_create_params.rbs +71 -0
  281. data/sig/dodopayments/models/product_delete_params.rbs +19 -0
  282. data/sig/dodopayments/models/product_list_params.rbs +42 -0
  283. data/sig/dodopayments/models/product_list_response.rbs +379 -0
  284. data/sig/dodopayments/models/product_retrieve_params.rbs +19 -0
  285. data/sig/dodopayments/models/product_unarchive_params.rbs +19 -0
  286. data/sig/dodopayments/models/product_update_params.rbs +75 -0
  287. data/sig/dodopayments/models/products/image_update_params.rbs +27 -0
  288. data/sig/dodopayments/models/products/image_update_response.rbs +22 -0
  289. data/sig/dodopayments/models/refund.rbs +345 -0
  290. data/sig/dodopayments/models/refund_create_params.rbs +32 -0
  291. data/sig/dodopayments/models/refund_list_params.rbs +48 -0
  292. data/sig/dodopayments/models/refund_retrieve_params.rbs +19 -0
  293. data/sig/dodopayments/models/refund_status.rbs +14 -0
  294. data/sig/dodopayments/models/subscription.rbs +387 -0
  295. data/sig/dodopayments/models/subscription_create_params.rbs +66 -0
  296. data/sig/dodopayments/models/subscription_create_response.rbs +47 -0
  297. data/sig/dodopayments/models/subscription_list_params.rbs +48 -0
  298. data/sig/dodopayments/models/subscription_retrieve_params.rbs +19 -0
  299. data/sig/dodopayments/models/subscription_status.rbs +18 -0
  300. data/sig/dodopayments/models/subscription_update_params.rbs +32 -0
  301. data/sig/dodopayments/models/time_interval.rbs +14 -0
  302. data/sig/dodopayments/models/webhook_event.rbs +50 -0
  303. data/sig/dodopayments/models/webhook_event_list_params.rbs +48 -0
  304. data/sig/dodopayments/models/webhook_event_retrieve_params.rbs +19 -0
  305. data/sig/dodopayments/pooled_net_requester.rbs +30 -0
  306. data/sig/dodopayments/request_options.rbs +46 -0
  307. data/sig/dodopayments/resources/customers/customer_portal.rbs +21 -0
  308. data/sig/dodopayments/resources/customers.rbs +55 -0
  309. data/sig/dodopayments/resources/discounts.rbs +73 -0
  310. data/sig/dodopayments/resources/disputes.rbs +33 -0
  311. data/sig/dodopayments/resources/invoices/payments.rbs +20 -0
  312. data/sig/dodopayments/resources/invoices.rbs +9 -0
  313. data/sig/dodopayments/resources/license_key_instances.rbs +42 -0
  314. data/sig/dodopayments/resources/license_keys.rbs +46 -0
  315. data/sig/dodopayments/resources/licenses.rbs +40 -0
  316. data/sig/dodopayments/resources/misc.rbs +16 -0
  317. data/sig/dodopayments/resources/payments.rbs +49 -0
  318. data/sig/dodopayments/resources/payouts.rbs +17 -0
  319. data/sig/dodopayments/resources/products/images.rbs +21 -0
  320. data/sig/dodopayments/resources/products.rbs +86 -0
  321. data/sig/dodopayments/resources/refunds.rbs +43 -0
  322. data/sig/dodopayments/resources/subscriptions.rbs +65 -0
  323. data/sig/dodopayments/resources/webhook_events.rbs +33 -0
  324. data/sig/dodopayments/util.rbs +136 -0
  325. data/sig/dodopayments/version.rbs +3 -0
  326. metadata +383 -0
@@ -0,0 +1,606 @@
1
+ # typed: strong
2
+
3
+ module Dodopayments
4
+ # @api private
5
+ module Converter
6
+ abstract!
7
+
8
+ Input = T.type_alias { T.any(Dodopayments::Converter, T::Class[T.anything]) }
9
+
10
+ # @api private
11
+ sig { overridable.params(value: T.anything).returns(T.anything) }
12
+ def coerce(value)
13
+ end
14
+
15
+ # @api private
16
+ sig { overridable.params(value: T.anything).returns(T.anything) }
17
+ def dump(value)
18
+ end
19
+
20
+ # @api private
21
+ sig do
22
+ overridable
23
+ .params(value: T.anything)
24
+ .returns(T.any([T::Boolean, T.anything, NilClass], [T::Boolean, T::Boolean, Integer]))
25
+ end
26
+ def try_strict_coerce(value)
27
+ end
28
+
29
+ class << self
30
+ # @api private
31
+ sig do
32
+ params(
33
+ spec: T.any(
34
+ {
35
+ const: T.nilable(T.any(NilClass, T::Boolean, Integer, Float, Symbol)),
36
+ enum: T.nilable(T.proc.returns(Dodopayments::Converter::Input)),
37
+ union: T.nilable(T.proc.returns(Dodopayments::Converter::Input))
38
+ },
39
+ T.proc.returns(Dodopayments::Converter::Input),
40
+ Dodopayments::Converter::Input
41
+ )
42
+ )
43
+ .returns(T.proc.returns(T.anything).void)
44
+ end
45
+ def self.type_info(spec)
46
+ end
47
+
48
+ # @api private
49
+ #
50
+ # Based on `target`, transform `value` into `target`, to the extent possible:
51
+ #
52
+ # 1. if the given `value` conforms to `target` already, return the given `value`
53
+ # 2. if it's possible and safe to convert the given `value` to `target`, then the
54
+ # converted value
55
+ # 3. otherwise, the given `value` unaltered
56
+ sig { params(target: Dodopayments::Converter::Input, value: T.anything).returns(T.anything) }
57
+ def self.coerce(target, value)
58
+ end
59
+
60
+ # @api private
61
+ sig { params(target: Dodopayments::Converter::Input, value: T.anything).returns(T.anything) }
62
+ def self.dump(target, value)
63
+ end
64
+
65
+ # @api private
66
+ #
67
+ # The underlying algorithm for computing maximal compatibility is subject to
68
+ # future improvements.
69
+ #
70
+ # Similar to `#.coerce`, used to determine the best union variant to decode into.
71
+ #
72
+ # 1. determine if strict-ish coercion is possible
73
+ # 2. return either result of successful coercion or if loose coercion is possible
74
+ # 3. return a score for recursively tallied count for fields that can be coerced
75
+ sig { params(target: Dodopayments::Converter::Input, value: T.anything).returns(T.anything) }
76
+ def self.try_strict_coerce(target, value)
77
+ end
78
+ end
79
+ end
80
+
81
+ # When we don't know what to expect for the value.
82
+ class Unknown
83
+ abstract!
84
+
85
+ extend Dodopayments::Converter
86
+
87
+ sig { params(other: T.anything).returns(T::Boolean) }
88
+ def self.===(other)
89
+ end
90
+
91
+ sig { params(other: T.anything).returns(T::Boolean) }
92
+ def self.==(other)
93
+ end
94
+
95
+ class << self
96
+ # @api private
97
+ sig { override.params(value: T.anything).returns(T.anything) }
98
+ def coerce(value)
99
+ end
100
+
101
+ # @api private
102
+ sig { override.params(value: T.anything).returns(T.anything) }
103
+ def dump(value)
104
+ end
105
+
106
+ # @api private
107
+ sig do
108
+ override
109
+ .params(value: T.anything)
110
+ .returns(T.any([T::Boolean, T.anything, NilClass], [T::Boolean, T::Boolean, Integer]))
111
+ end
112
+ def try_strict_coerce(value)
113
+ end
114
+ end
115
+ end
116
+
117
+ # Ruby has no Boolean class; this is something for models to refer to.
118
+ class BooleanModel
119
+ abstract!
120
+
121
+ extend Dodopayments::Converter
122
+
123
+ sig { params(other: T.anything).returns(T::Boolean) }
124
+ def self.===(other)
125
+ end
126
+
127
+ sig { params(other: T.anything).returns(T::Boolean) }
128
+ def self.==(other)
129
+ end
130
+
131
+ class << self
132
+ # @api private
133
+ sig { override.params(value: T.any(T::Boolean, T.anything)).returns(T.any(T::Boolean, T.anything)) }
134
+ def coerce(value)
135
+ end
136
+
137
+ # @api private
138
+ sig { override.params(value: T.any(T::Boolean, T.anything)).returns(T.any(T::Boolean, T.anything)) }
139
+ def dump(value)
140
+ end
141
+
142
+ # @api private
143
+ sig do
144
+ override
145
+ .params(value: T.anything)
146
+ .returns(T.any([T::Boolean, T.anything, NilClass], [T::Boolean, T::Boolean, Integer]))
147
+ end
148
+ def try_strict_coerce(value)
149
+ end
150
+ end
151
+ end
152
+
153
+ # A value from among a specified list of options. OpenAPI enum values map to Ruby
154
+ # values in the SDK as follows:
155
+ #
156
+ # 1. boolean => true | false
157
+ # 2. integer => Integer
158
+ # 3. float => Float
159
+ # 4. string => Symbol
160
+ #
161
+ # We can therefore convert string values to Symbols, but can't convert other
162
+ # values safely.
163
+ class Enum
164
+ abstract!
165
+
166
+ extend Dodopayments::Converter
167
+
168
+ class << self
169
+ # All of the valid Symbol values for this enum.
170
+ sig { overridable.returns(T::Array[T.any(NilClass, T::Boolean, Integer, Float, Symbol)]) }
171
+ def values
172
+ end
173
+
174
+ # @api private
175
+ #
176
+ # Guard against thread safety issues by instantiating `@values`.
177
+ sig { void }
178
+ private def finalize!
179
+ end
180
+ end
181
+
182
+ sig { params(other: T.anything).returns(T::Boolean) }
183
+ def self.===(other)
184
+ end
185
+
186
+ sig { params(other: T.anything).returns(T::Boolean) }
187
+ def self.==(other)
188
+ end
189
+
190
+ class << self
191
+ # @api private
192
+ sig { override.params(value: T.any(String, Symbol, T.anything)).returns(T.any(Symbol, T.anything)) }
193
+ def coerce(value)
194
+ end
195
+
196
+ # @api private
197
+ sig { override.params(value: T.any(Symbol, T.anything)).returns(T.any(Symbol, T.anything)) }
198
+ def dump(value)
199
+ end
200
+
201
+ # @api private
202
+ sig do
203
+ override
204
+ .params(value: T.anything)
205
+ .returns(T.any([T::Boolean, T.anything, NilClass], [T::Boolean, T::Boolean, Integer]))
206
+ end
207
+ def try_strict_coerce(value)
208
+ end
209
+ end
210
+ end
211
+
212
+ class Union
213
+ abstract!
214
+
215
+ extend Dodopayments::Converter
216
+
217
+ class << self
218
+ # @api private
219
+ #
220
+ # All of the specified variant info for this union.
221
+ sig { returns(T::Array[[T.nilable(Symbol), Proc]]) }
222
+ private def known_variants
223
+ end
224
+
225
+ # @api private
226
+ sig { returns(T::Array[[T.nilable(Symbol), T.anything]]) }
227
+ protected def derefed_variants
228
+ end
229
+
230
+ # All of the specified variants for this union.
231
+ sig { overridable.returns(T::Array[T.anything]) }
232
+ def variants
233
+ end
234
+
235
+ # @api private
236
+ sig { params(property: Symbol).void }
237
+ private def discriminator(property)
238
+ end
239
+
240
+ # @api private
241
+ sig do
242
+ params(
243
+ key: T.any(
244
+ Symbol,
245
+ T::Hash[Symbol, T.anything],
246
+ T.proc.returns(Dodopayments::Converter::Input),
247
+ Dodopayments::Converter::Input
248
+ ),
249
+ spec: T.any(
250
+ T::Hash[Symbol, T.anything],
251
+ T.proc.returns(Dodopayments::Converter::Input),
252
+ Dodopayments::Converter::Input
253
+ )
254
+ )
255
+ .void
256
+ end
257
+ private def variant(key, spec = nil)
258
+ end
259
+
260
+ # @api private
261
+ sig { params(value: T.anything).returns(T.nilable(Dodopayments::Converter::Input)) }
262
+ private def resolve_variant(value)
263
+ end
264
+ end
265
+
266
+ sig { params(other: T.anything).returns(T::Boolean) }
267
+ def self.===(other)
268
+ end
269
+
270
+ sig { params(other: T.anything).returns(T::Boolean) }
271
+ def self.==(other)
272
+ end
273
+
274
+ class << self
275
+ # @api private
276
+ sig { override.params(value: T.anything).returns(T.anything) }
277
+ def coerce(value)
278
+ end
279
+
280
+ # @api private
281
+ sig { override.params(value: T.anything).returns(T.anything) }
282
+ def dump(value)
283
+ end
284
+
285
+ # @api private
286
+ sig do
287
+ override
288
+ .params(value: T.anything)
289
+ .returns(T.any([T::Boolean, T.anything, NilClass], [T::Boolean, T::Boolean, Integer]))
290
+ end
291
+ def try_strict_coerce(value)
292
+ end
293
+ end
294
+ end
295
+
296
+ # Array of items of a given type.
297
+ class ArrayOf
298
+ abstract!
299
+
300
+ include Dodopayments::Converter
301
+
302
+ sig { params(other: T.anything).returns(T::Boolean) }
303
+ def ===(other)
304
+ end
305
+
306
+ sig { params(other: T.anything).returns(T::Boolean) }
307
+ def ==(other)
308
+ end
309
+
310
+ # @api private
311
+ sig do
312
+ override
313
+ .params(value: T.any(T::Enumerable[T.anything], T.anything))
314
+ .returns(T.any(T::Array[T.anything], T.anything))
315
+ end
316
+ def coerce(value)
317
+ end
318
+
319
+ # @api private
320
+ sig do
321
+ override
322
+ .params(value: T.any(T::Enumerable[T.anything], T.anything))
323
+ .returns(T.any(T::Array[T.anything], T.anything))
324
+ end
325
+ def dump(value)
326
+ end
327
+
328
+ # @api private
329
+ sig do
330
+ override
331
+ .params(value: T.anything)
332
+ .returns(T.any([T::Boolean, T.anything, NilClass], [T::Boolean, T::Boolean, Integer]))
333
+ end
334
+ def try_strict_coerce(value)
335
+ end
336
+
337
+ # @api private
338
+ sig { returns(Dodopayments::Converter::Input) }
339
+ protected def item_type
340
+ end
341
+
342
+ # @api private
343
+ sig do
344
+ params(
345
+ type_info: T.any(
346
+ T::Hash[Symbol, T.anything],
347
+ T.proc.returns(Dodopayments::Converter::Input),
348
+ Dodopayments::Converter::Input
349
+ ),
350
+ spec: T::Hash[Symbol, T.anything]
351
+ )
352
+ .returns(T.attached_class)
353
+ end
354
+ def self.new(type_info, spec = {})
355
+ end
356
+ end
357
+
358
+ # Hash of items of a given type.
359
+ class HashOf
360
+ abstract!
361
+
362
+ include Dodopayments::Converter
363
+
364
+ sig { params(other: T.anything).returns(T::Boolean) }
365
+ def ===(other)
366
+ end
367
+
368
+ sig { params(other: T.anything).returns(T::Boolean) }
369
+ def ==(other)
370
+ end
371
+
372
+ # @api private
373
+ sig do
374
+ override
375
+ .params(value: T.any(T::Hash[T.anything, T.anything], T.anything))
376
+ .returns(T.any(T::Hash[Symbol, T.anything], T.anything))
377
+ end
378
+ def coerce(value)
379
+ end
380
+
381
+ # @api private
382
+ sig do
383
+ override
384
+ .params(value: T.any(T::Hash[T.anything, T.anything], T.anything))
385
+ .returns(T.any(T::Hash[Symbol, T.anything], T.anything))
386
+ end
387
+ def dump(value)
388
+ end
389
+
390
+ # @api private
391
+ sig do
392
+ override
393
+ .params(value: T.anything)
394
+ .returns(T.any([T::Boolean, T.anything, NilClass], [T::Boolean, T::Boolean, Integer]))
395
+ end
396
+ def try_strict_coerce(value)
397
+ end
398
+
399
+ # @api private
400
+ sig { returns(Dodopayments::Converter::Input) }
401
+ protected def item_type
402
+ end
403
+
404
+ # @api private
405
+ sig do
406
+ params(
407
+ type_info: T.any(
408
+ T::Hash[Symbol, T.anything],
409
+ T.proc.returns(Dodopayments::Converter::Input),
410
+ Dodopayments::Converter::Input
411
+ ),
412
+ spec: T::Hash[Symbol, T.anything]
413
+ )
414
+ .returns(T.attached_class)
415
+ end
416
+ def self.new(type_info, spec = {})
417
+ end
418
+ end
419
+
420
+ class BaseModel
421
+ abstract!
422
+
423
+ extend Dodopayments::Converter
424
+
425
+ KnownFieldShape = T.type_alias { {mode: T.nilable(Symbol), required: T::Boolean} }
426
+
427
+ class << self
428
+ # @api private
429
+ #
430
+ # Assumes superclass fields are totally defined before fields are accessed /
431
+ # defined on subclasses.
432
+ sig do
433
+ returns(
434
+ T::Hash[
435
+ Symbol,
436
+ T.all(
437
+ Dodopayments::BaseModel::KnownFieldShape,
438
+ {type_fn: T.proc.returns(Dodopayments::Converter::Input)}
439
+ )
440
+ ]
441
+ )
442
+ end
443
+ def known_fields
444
+ end
445
+
446
+ # @api private
447
+ sig do
448
+ returns(
449
+ T::Hash[Symbol,
450
+ T.all(Dodopayments::BaseModel::KnownFieldShape, {type: Dodopayments::Converter::Input})]
451
+ )
452
+ end
453
+ def fields
454
+ end
455
+
456
+ # @api private
457
+ sig { returns(T::Hash[Symbol, T.proc.returns(T::Class[T.anything])]) }
458
+ def defaults
459
+ end
460
+
461
+ # @api private
462
+ sig do
463
+ params(
464
+ name_sym: Symbol,
465
+ required: T::Boolean,
466
+ type_info: T.any(
467
+ {
468
+ const: T.nilable(T.any(NilClass, T::Boolean, Integer, Float, Symbol)),
469
+ enum: T.nilable(T.proc.returns(Dodopayments::Converter::Input)),
470
+ union: T.nilable(T.proc.returns(Dodopayments::Converter::Input)),
471
+ api_name: Symbol,
472
+ nil?: T::Boolean
473
+ },
474
+ T.proc.returns(Dodopayments::Converter::Input),
475
+ Dodopayments::Converter::Input
476
+ ),
477
+ spec: T::Hash[Symbol, T.anything]
478
+ )
479
+ .void
480
+ end
481
+ private def add_field(name_sym, required:, type_info:, spec:)
482
+ end
483
+
484
+ # @api private
485
+ sig do
486
+ params(
487
+ name_sym: Symbol,
488
+ type_info: T.any(
489
+ T::Hash[Symbol, T.anything],
490
+ T.proc.returns(Dodopayments::Converter::Input),
491
+ Dodopayments::Converter::Input
492
+ ),
493
+ spec: T::Hash[Symbol, T.anything]
494
+ )
495
+ .void
496
+ end
497
+ def required(name_sym, type_info, spec = {})
498
+ end
499
+
500
+ # @api private
501
+ sig do
502
+ params(
503
+ name_sym: Symbol,
504
+ type_info: T.any(
505
+ T::Hash[Symbol, T.anything],
506
+ T.proc.returns(Dodopayments::Converter::Input),
507
+ Dodopayments::Converter::Input
508
+ ),
509
+ spec: T::Hash[Symbol, T.anything]
510
+ )
511
+ .void
512
+ end
513
+ def optional(name_sym, type_info, spec = {})
514
+ end
515
+
516
+ # @api private
517
+ #
518
+ # `request_only` attributes not excluded from `.#coerce` when receiving responses
519
+ # even if well behaved servers should not send them
520
+ sig { params(blk: T.proc.void).void }
521
+ private def request_only(&blk)
522
+ end
523
+
524
+ # @api private
525
+ #
526
+ # `response_only` attributes are omitted from `.#dump` when making requests
527
+ sig { params(blk: T.proc.void).void }
528
+ private def response_only(&blk)
529
+ end
530
+ end
531
+
532
+ sig { params(other: T.anything).returns(T::Boolean) }
533
+ def ==(other)
534
+ end
535
+
536
+ class << self
537
+ # @api private
538
+ sig do
539
+ override
540
+ .params(value: T.any(Dodopayments::BaseModel, T::Hash[T.anything, T.anything], T.anything))
541
+ .returns(T.any(T.attached_class, T.anything))
542
+ end
543
+ def coerce(value)
544
+ end
545
+
546
+ # @api private
547
+ sig do
548
+ override
549
+ .params(value: T.any(T.attached_class, T.anything))
550
+ .returns(T.any(T::Hash[T.anything, T.anything], T.anything))
551
+ end
552
+ def dump(value)
553
+ end
554
+
555
+ # @api private
556
+ sig do
557
+ override
558
+ .params(value: T.anything)
559
+ .returns(T.any([T::Boolean, T.anything, NilClass], [T::Boolean, T::Boolean, Integer]))
560
+ end
561
+ def try_strict_coerce(value)
562
+ end
563
+ end
564
+
565
+ # Returns the raw value associated with the given key, if found. Otherwise, nil is
566
+ # returned.
567
+ #
568
+ # It is valid to lookup keys that are not in the API spec, for example to access
569
+ # undocumented features. This method does not parse response data into
570
+ # higher-level types. Lookup by anything other than a Symbol is an ArgumentError.
571
+ sig { params(key: Symbol).returns(T.nilable(T.anything)) }
572
+ def [](key)
573
+ end
574
+
575
+ # Returns a Hash of the data underlying this object. O(1)
576
+ #
577
+ # Keys are Symbols and values are the raw values from the response. The return
578
+ # value indicates which values were ever set on the object. i.e. there will be a
579
+ # key in this hash if they ever were, even if the set value was nil.
580
+ #
581
+ # This method is not recursive. The returned value is shared by the object, so it
582
+ # should not be mutated.
583
+ sig { overridable.returns(T::Hash[Symbol, T.anything]) }
584
+ def to_h
585
+ end
586
+
587
+ alias_method :to_hash, :to_h
588
+
589
+ sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.anything]) }
590
+ def deconstruct_keys(keys)
591
+ end
592
+
593
+ # Create a new instance of a model.
594
+ sig { params(data: T.any(T::Hash[Symbol, T.anything], T.self_type)).returns(T.attached_class) }
595
+ def self.new(data = {})
596
+ end
597
+
598
+ sig { returns(String) }
599
+ def to_s
600
+ end
601
+
602
+ sig { returns(String) }
603
+ def inspect
604
+ end
605
+ end
606
+ end
@@ -0,0 +1,40 @@
1
+ # typed: strong
2
+
3
+ module Dodopayments
4
+ module BasePage
5
+ abstract!
6
+
7
+ Elem = type_member(:out)
8
+
9
+ sig { overridable.returns(T::Boolean) }
10
+ def next_page?
11
+ end
12
+
13
+ sig { overridable.returns(T.self_type) }
14
+ def next_page
15
+ end
16
+
17
+ sig { overridable.params(blk: T.proc.params(arg0: Elem).void).void }
18
+ def auto_paging_each(&blk)
19
+ end
20
+
21
+ sig { returns(T::Enumerable[Elem]) }
22
+ def to_enum
23
+ end
24
+
25
+ alias_method :enum_for, :to_enum
26
+
27
+ # @api private
28
+ sig do
29
+ params(
30
+ client: Dodopayments::BaseClient,
31
+ req: Dodopayments::BaseClient::RequestComponentsShape,
32
+ headers: T.any(T::Hash[String, String], Net::HTTPHeader),
33
+ page_data: T.anything
34
+ )
35
+ .void
36
+ end
37
+ def initialize(client:, req:, headers:, page_data:)
38
+ end
39
+ end
40
+ end