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,103 @@
1
+ module Dodopayments
2
+ class BaseClient
3
+ type request_components =
4
+ {
5
+ method: Symbol,
6
+ path: String | ::Array[String],
7
+ query: ::Hash[String, (::Array[String] | String)?]?,
8
+ headers: ::Hash[String, (String
9
+ | Integer
10
+ | ::Array[(String | Integer)?])?]?,
11
+ body: top?,
12
+ unwrap: Symbol?,
13
+ page: Class?,
14
+ stream: Class?,
15
+ model: Dodopayments::Converter::input?,
16
+ options: Dodopayments::request_opts?
17
+ }
18
+
19
+ type request_input =
20
+ {
21
+ method: Symbol,
22
+ url: URI::Generic,
23
+ headers: ::Hash[String, String],
24
+ body: top,
25
+ max_retries: Integer,
26
+ timeout: Float
27
+ }
28
+
29
+ MAX_REDIRECTS: 20
30
+
31
+ PLATFORM_HEADERS: ::Hash[String, String]
32
+
33
+ def self.validate!: (
34
+ Dodopayments::BaseClient::request_components req
35
+ ) -> void
36
+
37
+ def self.should_retry?: (
38
+ Integer status,
39
+ headers: ::Hash[String, String]
40
+ ) -> bool
41
+
42
+ def self.follow_redirect: (
43
+ Dodopayments::BaseClient::request_input request,
44
+ status: Integer,
45
+ response_headers: ::Hash[String, String]
46
+ ) -> Dodopayments::BaseClient::request_input
47
+
48
+ # @api private
49
+ attr_accessor requester: top
50
+
51
+ def initialize: (
52
+ base_url: String,
53
+ timeout: Float,
54
+ max_retries: Integer,
55
+ initial_retry_delay: Float,
56
+ max_retry_delay: Float,
57
+ headers: ::Hash[String, (String
58
+ | Integer
59
+ | ::Array[(String | Integer)?])?],
60
+ idempotency_header: String?
61
+ ) -> void
62
+
63
+ private def auth_headers: -> ::Hash[String, String]
64
+
65
+ private def generate_idempotency_key: -> String
66
+
67
+ private def build_request: (
68
+ Dodopayments::BaseClient::request_components req,
69
+ Dodopayments::request_options opts
70
+ ) -> Dodopayments::BaseClient::request_input
71
+
72
+ private def retry_delay: (
73
+ ::Hash[String, String] headers,
74
+ retry_count: Integer
75
+ ) -> Float
76
+
77
+ private def send_request: (
78
+ Dodopayments::BaseClient::request_input request,
79
+ redirect_count: Integer,
80
+ retry_count: Integer,
81
+ send_retry_header: bool
82
+ ) -> [Integer, top, Enumerable[String]]
83
+
84
+ def request:
85
+ (
86
+ Symbol method,
87
+ String | ::Array[String] path,
88
+ query: ::Hash[String, (::Array[String] | String)?]?,
89
+ headers: ::Hash[String, (String
90
+ | Integer
91
+ | ::Array[(String | Integer)?])?]?,
92
+ body: top?,
93
+ unwrap: Symbol?,
94
+ page: Class?,
95
+ stream: Class?,
96
+ model: Dodopayments::Converter::input?,
97
+ options: Dodopayments::request_opts?
98
+ ) -> top
99
+ | (Dodopayments::BaseClient::request_components req) -> top
100
+
101
+ def inspect: -> String
102
+ end
103
+ end
@@ -0,0 +1,246 @@
1
+ module Dodopayments
2
+ module Converter
3
+ type input = Dodopayments::Converter | Class
4
+
5
+ def coerce: (top value) -> top
6
+
7
+ def dump: (top value) -> top
8
+
9
+ def try_strict_coerce: (
10
+ top value
11
+ ) -> ([true, top, nil] | [false, bool, Integer])
12
+
13
+ def self.type_info: (
14
+ {
15
+ const: (nil | bool | Integer | Float | Symbol)?,
16
+ enum: ^-> Dodopayments::Converter::input?,
17
+ union: ^-> Dodopayments::Converter::input?
18
+ }
19
+ | ^-> Dodopayments::Converter::input
20
+ | Dodopayments::Converter::input spec
21
+ ) -> (^-> top)
22
+
23
+ def self.coerce: (Dodopayments::Converter::input target, top value) -> top
24
+
25
+ def self.dump: (Dodopayments::Converter::input target, top value) -> top
26
+
27
+ def self.try_strict_coerce: (
28
+ Dodopayments::Converter::input target,
29
+ top value
30
+ ) -> top
31
+ end
32
+
33
+ class Unknown
34
+ extend Dodopayments::Converter
35
+
36
+ def self.===: (top other) -> bool
37
+
38
+ def self.==: (top other) -> bool
39
+
40
+ def self.coerce: (top value) -> top
41
+
42
+ def self.dump: (top value) -> top
43
+
44
+ def self.try_strict_coerce: (
45
+ top value
46
+ ) -> ([true, top, nil] | [false, bool, Integer])
47
+ end
48
+
49
+ class BooleanModel
50
+ extend Dodopayments::Converter
51
+
52
+ def self.===: (top other) -> bool
53
+
54
+ def self.==: (top other) -> bool
55
+
56
+ def self.coerce: (bool | top value) -> (bool | top)
57
+
58
+ def self.dump: (bool | top value) -> (bool | top)
59
+
60
+ def self.try_strict_coerce: (
61
+ top value
62
+ ) -> ([true, top, nil] | [false, bool, Integer])
63
+ end
64
+
65
+ class Enum
66
+ extend Dodopayments::Converter
67
+
68
+ def self.values: -> ::Array[(nil | bool | Integer | Float | Symbol)]
69
+
70
+ private def self.finalize!: -> void
71
+
72
+ def self.===: (top other) -> bool
73
+
74
+ def self.==: (top other) -> bool
75
+
76
+ def self.coerce: (String | Symbol | top value) -> (Symbol | top)
77
+
78
+ def self.dump: (Symbol | top value) -> (Symbol | top)
79
+
80
+ def self.try_strict_coerce: (
81
+ top value
82
+ ) -> ([true, top, nil] | [false, bool, Integer])
83
+ end
84
+
85
+ class Union
86
+ extend Dodopayments::Converter
87
+
88
+ private def self.known_variants: -> ::Array[[Symbol?, Proc]]
89
+
90
+ def self.derefed_variants: -> ::Array[[Symbol?, top]]
91
+
92
+ def self.variants: -> ::Array[top]
93
+
94
+ private def self.discriminator: (Symbol property) -> void
95
+
96
+ private def self.variant: (
97
+ Symbol
98
+ | ::Hash[Symbol, top]
99
+ | ^-> Dodopayments::Converter::input
100
+ | Dodopayments::Converter::input key,
101
+ ?::Hash[Symbol, top]
102
+ | ^-> Dodopayments::Converter::input
103
+ | Dodopayments::Converter::input spec
104
+ ) -> void
105
+
106
+ private def self.resolve_variant: (
107
+ top value
108
+ ) -> Dodopayments::Converter::input?
109
+
110
+ def self.===: (top other) -> bool
111
+
112
+ def self.==: (top other) -> bool
113
+
114
+ def self.coerce: (top value) -> top
115
+
116
+ def self.dump: (top value) -> top
117
+
118
+ def self.try_strict_coerce: (
119
+ top value
120
+ ) -> ([true, top, nil] | [false, bool, Integer])
121
+ end
122
+
123
+ class ArrayOf
124
+ include Dodopayments::Converter
125
+
126
+ def ===: (top other) -> bool
127
+
128
+ def ==: (top other) -> bool
129
+
130
+ def coerce: (Enumerable[top] | top value) -> (::Array[top] | top)
131
+
132
+ def dump: (Enumerable[top] | top value) -> (::Array[top] | top)
133
+
134
+ def try_strict_coerce: (
135
+ top value
136
+ ) -> ([true, top, nil] | [false, bool, Integer])
137
+
138
+ def item_type: -> Dodopayments::Converter::input
139
+
140
+ def initialize: (
141
+ ::Hash[Symbol, top]
142
+ | ^-> Dodopayments::Converter::input
143
+ | Dodopayments::Converter::input type_info,
144
+ ?::Hash[Symbol, top] spec
145
+ ) -> void
146
+ end
147
+
148
+ class HashOf
149
+ include Dodopayments::Converter
150
+
151
+ def ===: (top other) -> bool
152
+
153
+ def ==: (top other) -> bool
154
+
155
+ def coerce: (::Hash[top, top] | top value) -> (::Hash[Symbol, top] | top)
156
+
157
+ def dump: (::Hash[top, top] | top value) -> (::Hash[Symbol, top] | top)
158
+
159
+ def try_strict_coerce: (
160
+ top value
161
+ ) -> ([true, top, nil] | [false, bool, Integer])
162
+
163
+ def item_type: -> Dodopayments::Converter::input
164
+
165
+ def initialize: (
166
+ ::Hash[Symbol, top]
167
+ | ^-> Dodopayments::Converter::input
168
+ | Dodopayments::Converter::input type_info,
169
+ ?::Hash[Symbol, top] spec
170
+ ) -> void
171
+ end
172
+
173
+ class BaseModel
174
+ extend Dodopayments::Converter
175
+
176
+ type known_field = { mode: (:coerce | :dump)?, required: bool }
177
+
178
+ def self.known_fields: -> ::Hash[Symbol, (Dodopayments::BaseModel::known_field
179
+ & { type_fn: (^-> Dodopayments::Converter::input) })]
180
+
181
+ def self.fields: -> ::Hash[Symbol, (Dodopayments::BaseModel::known_field
182
+ & { type: Dodopayments::Converter::input })]
183
+
184
+ def self.defaults: -> ::Hash[Symbol, (^-> Class)]
185
+
186
+ private def self.add_field: (
187
+ Symbol name_sym,
188
+ required: bool,
189
+ type_info: {
190
+ const: (nil | bool | Integer | Float | Symbol)?,
191
+ enum: ^-> Dodopayments::Converter::input?,
192
+ union: ^-> Dodopayments::Converter::input?,
193
+ api_name: Symbol
194
+ }
195
+ | ^-> Dodopayments::Converter::input
196
+ | Dodopayments::Converter::input,
197
+ spec: ::Hash[Symbol, top]
198
+ ) -> void
199
+
200
+ def self.required: (
201
+ Symbol name_sym,
202
+ ::Hash[Symbol, top]
203
+ | ^-> Dodopayments::Converter::input
204
+ | Dodopayments::Converter::input type_info,
205
+ ?::Hash[Symbol, top] spec
206
+ ) -> void
207
+
208
+ def self.optional: (
209
+ Symbol name_sym,
210
+ ::Hash[Symbol, top]
211
+ | ^-> Dodopayments::Converter::input
212
+ | Dodopayments::Converter::input type_info,
213
+ ?::Hash[Symbol, top] spec
214
+ ) -> void
215
+
216
+ private def self.request_only: { -> void } -> void
217
+
218
+ private def self.response_only: { -> void } -> void
219
+
220
+ def ==: (top other) -> bool
221
+
222
+ def self.coerce: (
223
+ Dodopayments::BaseModel | ::Hash[top, top] | top value
224
+ ) -> (instance | top)
225
+
226
+ def self.dump: (instance | top value) -> (::Hash[top, top] | top)
227
+
228
+ def self.try_strict_coerce: (
229
+ top value
230
+ ) -> ([true, top, nil] | [false, bool, Integer])
231
+
232
+ def []: (Symbol key) -> top?
233
+
234
+ def to_h: -> ::Hash[Symbol, top]
235
+
236
+ alias to_hash to_h
237
+
238
+ def deconstruct_keys: (::Array[Symbol]? keys) -> ::Hash[Symbol, top]
239
+
240
+ def initialize: (?::Hash[Symbol, top] | self data) -> void
241
+
242
+ def to_s: -> String
243
+
244
+ def inspect: -> String
245
+ end
246
+ end
@@ -0,0 +1,20 @@
1
+ module Dodopayments
2
+ module BasePage[Elem]
3
+ def next_page?: -> bool
4
+
5
+ def next_page: -> self
6
+
7
+ def auto_paging_each: { (Elem arg0) -> void } -> void
8
+
9
+ def to_enum: -> Enumerable[Elem]
10
+
11
+ alias enum_for to_enum
12
+
13
+ def initialize: (
14
+ client: Dodopayments::BaseClient,
15
+ req: Dodopayments::BaseClient::request_components,
16
+ headers: ::Hash[String, String],
17
+ page_data: top
18
+ ) -> void
19
+ end
20
+ end
@@ -0,0 +1,58 @@
1
+ module Dodopayments
2
+ class Client < Dodopayments::BaseClient
3
+ DEFAULT_MAX_RETRIES: 2
4
+
5
+ DEFAULT_TIMEOUT_IN_SECONDS: Float
6
+
7
+ DEFAULT_INITIAL_RETRY_DELAY: Float
8
+
9
+ DEFAULT_MAX_RETRY_DELAY: Float
10
+
11
+ ENVIRONMENTS: {
12
+ live_mode: "https://live.dodopayments.com",
13
+ test_mode: "https://test.dodopayments.com"
14
+ }
15
+
16
+ attr_reader bearer_token: String
17
+
18
+ attr_reader payments: Dodopayments::Resources::Payments
19
+
20
+ attr_reader subscriptions: Dodopayments::Resources::Subscriptions
21
+
22
+ attr_reader invoices: Dodopayments::Resources::Invoices
23
+
24
+ attr_reader licenses: Dodopayments::Resources::Licenses
25
+
26
+ attr_reader license_keys: Dodopayments::Resources::LicenseKeys
27
+
28
+ attr_reader license_key_instances: Dodopayments::Resources::LicenseKeyInstances
29
+
30
+ attr_reader customers: Dodopayments::Resources::Customers
31
+
32
+ attr_reader refunds: Dodopayments::Resources::Refunds
33
+
34
+ attr_reader disputes: Dodopayments::Resources::Disputes
35
+
36
+ attr_reader payouts: Dodopayments::Resources::Payouts
37
+
38
+ attr_reader webhook_events: Dodopayments::Resources::WebhookEvents
39
+
40
+ attr_reader products: Dodopayments::Resources::Products
41
+
42
+ attr_reader misc: Dodopayments::Resources::Misc
43
+
44
+ attr_reader discounts: Dodopayments::Resources::Discounts
45
+
46
+ private def auth_headers: -> ::Hash[String, String]
47
+
48
+ def initialize: (
49
+ environment: :live_mode | :test_mode | nil,
50
+ base_url: String?,
51
+ bearer_token: String?,
52
+ max_retries: Integer,
53
+ timeout: Float,
54
+ initial_retry_delay: Float,
55
+ max_retry_delay: Float
56
+ ) -> void
57
+ end
58
+ end
@@ -0,0 +1,7 @@
1
+ module Dodopayments
2
+ class DefaultPageNumberPagination[Elem]
3
+ include Dodopayments::BasePage[Elem]
4
+
5
+ attr_accessor items: ::Array[Elem]?
6
+ end
7
+ end
@@ -0,0 +1,99 @@
1
+ module Dodopayments
2
+ class Error < StandardError
3
+ attr_accessor cause: StandardError?
4
+ end
5
+
6
+ class ConversionError < Dodopayments::Error
7
+ end
8
+
9
+ class APIError < Dodopayments::Error
10
+ attr_accessor url: URI::Generic
11
+
12
+ attr_accessor status: Integer?
13
+
14
+ attr_accessor body: top?
15
+
16
+ def initialize: (
17
+ url: URI::Generic,
18
+ status: Integer?,
19
+ body: Object?,
20
+ request: nil,
21
+ response: nil,
22
+ message: String?
23
+ ) -> void
24
+ end
25
+
26
+ class APIConnectionError < Dodopayments::APIError
27
+ def initialize: (
28
+ url: URI::Generic,
29
+ status: nil,
30
+ body: nil,
31
+ request: nil,
32
+ response: nil,
33
+ message: String?
34
+ ) -> void
35
+ end
36
+
37
+ class APITimeoutError < Dodopayments::APIConnectionError
38
+ def initialize: (
39
+ url: URI::Generic,
40
+ status: nil,
41
+ body: nil,
42
+ request: nil,
43
+ response: nil,
44
+ message: String?
45
+ ) -> void
46
+ end
47
+
48
+ class APIStatusError < Dodopayments::APIError
49
+ def self.for: (
50
+ url: URI::Generic,
51
+ status: Integer,
52
+ body: Object?,
53
+ request: nil,
54
+ response: nil,
55
+ message: String?
56
+ ) -> instance
57
+
58
+ def initialize: (
59
+ url: URI::Generic,
60
+ status: Integer,
61
+ body: Object?,
62
+ request: nil,
63
+ response: nil,
64
+ message: String?
65
+ ) -> void
66
+ end
67
+
68
+ class BadRequestError < Dodopayments::APIStatusError
69
+ HTTP_STATUS: 400
70
+ end
71
+
72
+ class AuthenticationError < Dodopayments::APIStatusError
73
+ HTTP_STATUS: 401
74
+ end
75
+
76
+ class PermissionDeniedError < Dodopayments::APIStatusError
77
+ HTTP_STATUS: 403
78
+ end
79
+
80
+ class NotFoundError < Dodopayments::APIStatusError
81
+ HTTP_STATUS: 404
82
+ end
83
+
84
+ class ConflictError < Dodopayments::APIStatusError
85
+ HTTP_STATUS: 409
86
+ end
87
+
88
+ class UnprocessableEntityError < Dodopayments::APIStatusError
89
+ HTTP_STATUS: 422
90
+ end
91
+
92
+ class RateLimitError < Dodopayments::APIStatusError
93
+ HTTP_STATUS: 429
94
+ end
95
+
96
+ class InternalServerError < Dodopayments::APIStatusError
97
+ HTTP_STATUS: Range[Integer]
98
+ end
99
+ end
@@ -0,0 +1,4 @@
1
+ module Dodopayments
2
+ module Extern
3
+ end
4
+ end
@@ -0,0 +1,18 @@
1
+ module Dodopayments
2
+ module Models
3
+ type attach_existing_customer = { customer_id: String }
4
+
5
+ class AttachExistingCustomer < Dodopayments::BaseModel
6
+ attr_accessor customer_id: String
7
+
8
+ def initialize:
9
+ (customer_id: String) -> void
10
+ | (
11
+ ?Dodopayments::Models::attach_existing_customer
12
+ | Dodopayments::BaseModel data
13
+ ) -> void
14
+
15
+ def to_hash: -> Dodopayments::Models::attach_existing_customer
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,38 @@
1
+ module Dodopayments
2
+ module Models
3
+ type billing_address =
4
+ {
5
+ city: String,
6
+ country: Dodopayments::Models::country_code,
7
+ state: String,
8
+ street: String,
9
+ zipcode: String
10
+ }
11
+
12
+ class BillingAddress < Dodopayments::BaseModel
13
+ attr_accessor city: String
14
+
15
+ attr_accessor country: Dodopayments::Models::country_code
16
+
17
+ attr_accessor state: String
18
+
19
+ attr_accessor street: String
20
+
21
+ attr_accessor zipcode: String
22
+
23
+ def initialize:
24
+ (
25
+ city: String,
26
+ country: Dodopayments::Models::country_code,
27
+ state: String,
28
+ street: String,
29
+ zipcode: String
30
+ ) -> void
31
+ | (
32
+ ?Dodopayments::Models::billing_address | Dodopayments::BaseModel data
33
+ ) -> void
34
+
35
+ def to_hash: -> Dodopayments::Models::billing_address
36
+ end
37
+ end
38
+ end