yoomoney 0.1.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 (413) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +17 -0
  4. data/README.md +246 -0
  5. data/SECURITY.md +23 -0
  6. data/lib/yoomoney/client.rb +110 -0
  7. data/lib/yoomoney/errors.rb +228 -0
  8. data/lib/yoomoney/file_part.rb +58 -0
  9. data/lib/yoomoney/internal/transport/base_client.rb +567 -0
  10. data/lib/yoomoney/internal/transport/pooled_net_requester.rb +210 -0
  11. data/lib/yoomoney/internal/type/array_of.rb +168 -0
  12. data/lib/yoomoney/internal/type/base_model.rb +531 -0
  13. data/lib/yoomoney/internal/type/base_page.rb +55 -0
  14. data/lib/yoomoney/internal/type/boolean.rb +77 -0
  15. data/lib/yoomoney/internal/type/converter.rb +327 -0
  16. data/lib/yoomoney/internal/type/enum.rb +156 -0
  17. data/lib/yoomoney/internal/type/file_input.rb +111 -0
  18. data/lib/yoomoney/internal/type/hash_of.rb +188 -0
  19. data/lib/yoomoney/internal/type/request_parameters.rb +42 -0
  20. data/lib/yoomoney/internal/type/union.rb +237 -0
  21. data/lib/yoomoney/internal/type/unknown.rb +81 -0
  22. data/lib/yoomoney/internal/util.rb +920 -0
  23. data/lib/yoomoney/internal.rb +20 -0
  24. data/lib/yoomoney/models/airline.rb +77 -0
  25. data/lib/yoomoney/models/b2b_sberbank_calculated_vat_data.rb +24 -0
  26. data/lib/yoomoney/models/b2b_sberbank_mixed_vat_data.rb +16 -0
  27. data/lib/yoomoney/models/b2b_sberbank_untaxed_vat_data.rb +27 -0
  28. data/lib/yoomoney/models/b2b_sberbank_vat_data.rb +27 -0
  29. data/lib/yoomoney/models/bank_card_data.rb +95 -0
  30. data/lib/yoomoney/models/bank_card_type.rb +28 -0
  31. data/lib/yoomoney/models/card_request_data_with_csc.rb +48 -0
  32. data/lib/yoomoney/models/confirmation.rb +32 -0
  33. data/lib/yoomoney/models/confirmation_data.rb +40 -0
  34. data/lib/yoomoney/models/deal_create_params.rb +59 -0
  35. data/lib/yoomoney/models/deal_list_params.rb +116 -0
  36. data/lib/yoomoney/models/deal_list_response.rb +28 -0
  37. data/lib/yoomoney/models/deal_retrieve_params.rb +14 -0
  38. data/lib/yoomoney/models/deal_type.rb +14 -0
  39. data/lib/yoomoney/models/delivery_method.rb +16 -0
  40. data/lib/yoomoney/models/delivery_method_data.rb +16 -0
  41. data/lib/yoomoney/models/electronic_certificate_refund_article.rb +33 -0
  42. data/lib/yoomoney/models/fee_moment.rb +15 -0
  43. data/lib/yoomoney/models/industry_details.rb +33 -0
  44. data/lib/yoomoney/models/invoice.rb +174 -0
  45. data/lib/yoomoney/models/invoice_create_params.rb +179 -0
  46. data/lib/yoomoney/models/invoice_retrieve_params.rb +14 -0
  47. data/lib/yoomoney/models/invoicing_bank_card_data.rb +39 -0
  48. data/lib/yoomoney/models/line_item.rb +40 -0
  49. data/lib/yoomoney/models/locale.rb +15 -0
  50. data/lib/yoomoney/models/mark_code_info.rb +75 -0
  51. data/lib/yoomoney/models/mark_quantity.rb +21 -0
  52. data/lib/yoomoney/models/me_retrieve_params.rb +20 -0
  53. data/lib/yoomoney/models/me_retrieve_response.rb +143 -0
  54. data/lib/yoomoney/models/monetary_amount.rb +51 -0
  55. data/lib/yoomoney/models/notification_event_type.rb +17 -0
  56. data/lib/yoomoney/models/operational_details.rb +27 -0
  57. data/lib/yoomoney/models/payment.rb +707 -0
  58. data/lib/yoomoney/models/payment_cancel_params.rb +20 -0
  59. data/lib/yoomoney/models/payment_capture_params.rb +61 -0
  60. data/lib/yoomoney/models/payment_create_params.rb +586 -0
  61. data/lib/yoomoney/models/payment_deal_info.rb +40 -0
  62. data/lib/yoomoney/models/payment_list_params.rb +106 -0
  63. data/lib/yoomoney/models/payment_list_response.rb +33 -0
  64. data/lib/yoomoney/models/payment_method.rb +48 -0
  65. data/lib/yoomoney/models/payment_method_create_params.rb +188 -0
  66. data/lib/yoomoney/models/payment_method_data.rb +16 -0
  67. data/lib/yoomoney/models/payment_method_retrieve_params.rb +14 -0
  68. data/lib/yoomoney/models/payment_method_status.rb +16 -0
  69. data/lib/yoomoney/models/payment_method_type.rb +31 -0
  70. data/lib/yoomoney/models/payment_methods_confirmation_type.rb +14 -0
  71. data/lib/yoomoney/models/payment_retrieve_params.rb +14 -0
  72. data/lib/yoomoney/models/payment_status.rb +17 -0
  73. data/lib/yoomoney/models/payout.rb +268 -0
  74. data/lib/yoomoney/models/payout_create_params.rb +171 -0
  75. data/lib/yoomoney/models/payout_deal_info.rb +16 -0
  76. data/lib/yoomoney/models/payout_destination.rb +30 -0
  77. data/lib/yoomoney/models/payout_destination_data.rb +16 -0
  78. data/lib/yoomoney/models/payout_destination_data_type.rb +16 -0
  79. data/lib/yoomoney/models/payout_list_params.rb +94 -0
  80. data/lib/yoomoney/models/payout_retrieve_params.rb +14 -0
  81. data/lib/yoomoney/models/payout_search_params.rb +60 -0
  82. data/lib/yoomoney/models/payout_status.rb +16 -0
  83. data/lib/yoomoney/models/payouts_list.rb +33 -0
  84. data/lib/yoomoney/models/personal_data.rb +90 -0
  85. data/lib/yoomoney/models/personal_data_create_params.rb +67 -0
  86. data/lib/yoomoney/models/personal_data_request.rb +30 -0
  87. data/lib/yoomoney/models/personal_data_retrieve_params.rb +14 -0
  88. data/lib/yoomoney/models/personal_data_type.rb +15 -0
  89. data/lib/yoomoney/models/receipt.rb +277 -0
  90. data/lib/yoomoney/models/receipt_create_params.rb +304 -0
  91. data/lib/yoomoney/models/receipt_data.rb +171 -0
  92. data/lib/yoomoney/models/receipt_data_customer.rb +33 -0
  93. data/lib/yoomoney/models/receipt_item_agent_type.rb +20 -0
  94. data/lib/yoomoney/models/receipt_item_measure.rb +37 -0
  95. data/lib/yoomoney/models/receipt_item_payment_mode.rb +20 -0
  96. data/lib/yoomoney/models/receipt_item_payment_subject.rb +46 -0
  97. data/lib/yoomoney/models/receipt_item_supplier.rb +21 -0
  98. data/lib/yoomoney/models/receipt_list_params.rb +78 -0
  99. data/lib/yoomoney/models/receipt_list_response.rb +28 -0
  100. data/lib/yoomoney/models/receipt_registration_status.rb +16 -0
  101. data/lib/yoomoney/models/receipt_retrieve_params.rb +14 -0
  102. data/lib/yoomoney/models/receipt_type.rb +15 -0
  103. data/lib/yoomoney/models/receiver.rb +30 -0
  104. data/lib/yoomoney/models/recipient.rb +20 -0
  105. data/lib/yoomoney/models/refund.rb +248 -0
  106. data/lib/yoomoney/models/refund_create_params.rb +133 -0
  107. data/lib/yoomoney/models/refund_list_params.rb +72 -0
  108. data/lib/yoomoney/models/refund_list_response.rb +28 -0
  109. data/lib/yoomoney/models/refund_method.rb +15 -0
  110. data/lib/yoomoney/models/refund_method_type.rb +15 -0
  111. data/lib/yoomoney/models/refund_retrieve_params.rb +14 -0
  112. data/lib/yoomoney/models/refund_sources_data.rb +32 -0
  113. data/lib/yoomoney/models/refund_status.rb +16 -0
  114. data/lib/yoomoney/models/safe_deal.rb +116 -0
  115. data/lib/yoomoney/models/save_payment_method_bank_card.rb +85 -0
  116. data/lib/yoomoney/models/sbp_bank_list_params.rb +14 -0
  117. data/lib/yoomoney/models/sbp_bank_list_response.rb +49 -0
  118. data/lib/yoomoney/models/settlement.rb +24 -0
  119. data/lib/yoomoney/models/settlement_item_type.rb +14 -0
  120. data/lib/yoomoney/models/transfer_data.rb +36 -0
  121. data/lib/yoomoney/models/webhook.rb +33 -0
  122. data/lib/yoomoney/models/webhook_create_params.rb +37 -0
  123. data/lib/yoomoney/models/webhook_delete_params.rb +14 -0
  124. data/lib/yoomoney/models/webhook_delete_response.rb +8 -0
  125. data/lib/yoomoney/models/webhook_list_params.rb +14 -0
  126. data/lib/yoomoney/models/webhook_list_response.rb +22 -0
  127. data/lib/yoomoney/models.rb +231 -0
  128. data/lib/yoomoney/request_options.rb +77 -0
  129. data/lib/yoomoney/resources/deals.rb +94 -0
  130. data/lib/yoomoney/resources/invoices.rb +72 -0
  131. data/lib/yoomoney/resources/me.rb +35 -0
  132. data/lib/yoomoney/resources/payment_methods.rb +68 -0
  133. data/lib/yoomoney/resources/payments.rb +182 -0
  134. data/lib/yoomoney/resources/payouts.rb +124 -0
  135. data/lib/yoomoney/resources/personal_data.rb +70 -0
  136. data/lib/yoomoney/resources/receipts.rb +111 -0
  137. data/lib/yoomoney/resources/refunds.rb +101 -0
  138. data/lib/yoomoney/resources/sbp_banks.rb +32 -0
  139. data/lib/yoomoney/resources/webhooks.rb +79 -0
  140. data/lib/yoomoney/version.rb +5 -0
  141. data/lib/yoomoney.rb +169 -0
  142. data/manifest.yaml +17 -0
  143. data/rbi/yoomoney/client.rbi +82 -0
  144. data/rbi/yoomoney/errors.rbi +205 -0
  145. data/rbi/yoomoney/file_part.rbi +37 -0
  146. data/rbi/yoomoney/internal/transport/base_client.rbi +292 -0
  147. data/rbi/yoomoney/internal/transport/pooled_net_requester.rbi +83 -0
  148. data/rbi/yoomoney/internal/type/array_of.rbi +104 -0
  149. data/rbi/yoomoney/internal/type/base_model.rbi +306 -0
  150. data/rbi/yoomoney/internal/type/base_page.rbi +42 -0
  151. data/rbi/yoomoney/internal/type/boolean.rbi +58 -0
  152. data/rbi/yoomoney/internal/type/converter.rbi +216 -0
  153. data/rbi/yoomoney/internal/type/enum.rbi +82 -0
  154. data/rbi/yoomoney/internal/type/file_input.rbi +59 -0
  155. data/rbi/yoomoney/internal/type/hash_of.rbi +104 -0
  156. data/rbi/yoomoney/internal/type/request_parameters.rbi +29 -0
  157. data/rbi/yoomoney/internal/type/union.rbi +128 -0
  158. data/rbi/yoomoney/internal/type/unknown.rbi +58 -0
  159. data/rbi/yoomoney/internal/util.rbi +487 -0
  160. data/rbi/yoomoney/internal.rbi +16 -0
  161. data/rbi/yoomoney/models/airline.rbi +141 -0
  162. data/rbi/yoomoney/models/b2b_sberbank_calculated_vat_data.rbi +45 -0
  163. data/rbi/yoomoney/models/b2b_sberbank_mixed_vat_data.rbi +34 -0
  164. data/rbi/yoomoney/models/b2b_sberbank_untaxed_vat_data.rbi +65 -0
  165. data/rbi/yoomoney/models/b2b_sberbank_vat_data.rbi +51 -0
  166. data/rbi/yoomoney/models/bank_card_data.rbi +156 -0
  167. data/rbi/yoomoney/models/bank_card_type.rbi +34 -0
  168. data/rbi/yoomoney/models/card_request_data_with_csc.rbi +75 -0
  169. data/rbi/yoomoney/models/confirmation.rbi +55 -0
  170. data/rbi/yoomoney/models/confirmation_data.rbi +78 -0
  171. data/rbi/yoomoney/models/deal_create_params.rbi +85 -0
  172. data/rbi/yoomoney/models/deal_list_params.rbi +204 -0
  173. data/rbi/yoomoney/models/deal_list_response.rbi +46 -0
  174. data/rbi/yoomoney/models/deal_retrieve_params.rbi +27 -0
  175. data/rbi/yoomoney/models/deal_type.rbi +18 -0
  176. data/rbi/yoomoney/models/delivery_method.rbi +27 -0
  177. data/rbi/yoomoney/models/delivery_method_data.rbi +27 -0
  178. data/rbi/yoomoney/models/electronic_certificate_refund_article.rbi +56 -0
  179. data/rbi/yoomoney/models/fee_moment.rbi +20 -0
  180. data/rbi/yoomoney/models/industry_details.rbi +48 -0
  181. data/rbi/yoomoney/models/invoice.rbi +266 -0
  182. data/rbi/yoomoney/models/invoice_create_params.rbi +309 -0
  183. data/rbi/yoomoney/models/invoice_retrieve_params.rbi +27 -0
  184. data/rbi/yoomoney/models/invoicing_bank_card_data.rbi +53 -0
  185. data/rbi/yoomoney/models/line_item.rbi +65 -0
  186. data/rbi/yoomoney/models/locale.rbi +19 -0
  187. data/rbi/yoomoney/models/mark_code_info.rbi +128 -0
  188. data/rbi/yoomoney/models/mark_quantity.rbi +30 -0
  189. data/rbi/yoomoney/models/me_retrieve_params.rbi +38 -0
  190. data/rbi/yoomoney/models/me_retrieve_response.rbi +342 -0
  191. data/rbi/yoomoney/models/monetary_amount.rbi +77 -0
  192. data/rbi/yoomoney/models/notification_event_type.rbi +42 -0
  193. data/rbi/yoomoney/models/operational_details.rbi +37 -0
  194. data/rbi/yoomoney/models/payment.rbi +1347 -0
  195. data/rbi/yoomoney/models/payment_cancel_params.rbi +35 -0
  196. data/rbi/yoomoney/models/payment_capture_params.rbi +96 -0
  197. data/rbi/yoomoney/models/payment_create_params.rbi +1258 -0
  198. data/rbi/yoomoney/models/payment_deal_info.rbi +84 -0
  199. data/rbi/yoomoney/models/payment_list_params.rbi +187 -0
  200. data/rbi/yoomoney/models/payment_list_response.rbi +59 -0
  201. data/rbi/yoomoney/models/payment_method.rbi +72 -0
  202. data/rbi/yoomoney/models/payment_method_create_params.rbi +372 -0
  203. data/rbi/yoomoney/models/payment_method_data.rbi +31 -0
  204. data/rbi/yoomoney/models/payment_method_retrieve_params.rbi +30 -0
  205. data/rbi/yoomoney/models/payment_method_status.rbi +23 -0
  206. data/rbi/yoomoney/models/payment_method_type.rbi +45 -0
  207. data/rbi/yoomoney/models/payment_methods_confirmation_type.rbi +24 -0
  208. data/rbi/yoomoney/models/payment_retrieve_params.rbi +27 -0
  209. data/rbi/yoomoney/models/payment_status.rbi +22 -0
  210. data/rbi/yoomoney/models/payout.rbi +452 -0
  211. data/rbi/yoomoney/models/payout_create_params.rbi +350 -0
  212. data/rbi/yoomoney/models/payout_deal_info.rbi +27 -0
  213. data/rbi/yoomoney/models/payout_destination.rbi +58 -0
  214. data/rbi/yoomoney/models/payout_destination_data.rbi +35 -0
  215. data/rbi/yoomoney/models/payout_destination_data_type.rbi +27 -0
  216. data/rbi/yoomoney/models/payout_list_params.rbi +215 -0
  217. data/rbi/yoomoney/models/payout_retrieve_params.rbi +27 -0
  218. data/rbi/yoomoney/models/payout_search_params.rbi +110 -0
  219. data/rbi/yoomoney/models/payout_status.rbi +20 -0
  220. data/rbi/yoomoney/models/payouts_list.rbi +56 -0
  221. data/rbi/yoomoney/models/personal_data.rbi +132 -0
  222. data/rbi/yoomoney/models/personal_data_create_params.rbi +93 -0
  223. data/rbi/yoomoney/models/personal_data_request.rbi +54 -0
  224. data/rbi/yoomoney/models/personal_data_retrieve_params.rbi +30 -0
  225. data/rbi/yoomoney/models/personal_data_type.rbi +26 -0
  226. data/rbi/yoomoney/models/receipt.rbi +442 -0
  227. data/rbi/yoomoney/models/receipt_create_params.rbi +471 -0
  228. data/rbi/yoomoney/models/receipt_data.rbi +279 -0
  229. data/rbi/yoomoney/models/receipt_data_customer.rbi +55 -0
  230. data/rbi/yoomoney/models/receipt_item_agent_type.rbi +38 -0
  231. data/rbi/yoomoney/models/receipt_item_measure.rbi +52 -0
  232. data/rbi/yoomoney/models/receipt_item_payment_mode.rbi +37 -0
  233. data/rbi/yoomoney/models/receipt_item_payment_subject.rbi +119 -0
  234. data/rbi/yoomoney/models/receipt_item_supplier.rbi +32 -0
  235. data/rbi/yoomoney/models/receipt_list_params.rbi +137 -0
  236. data/rbi/yoomoney/models/receipt_list_response.rbi +49 -0
  237. data/rbi/yoomoney/models/receipt_registration_status.rbi +28 -0
  238. data/rbi/yoomoney/models/receipt_retrieve_params.rbi +27 -0
  239. data/rbi/yoomoney/models/receipt_type.rbi +19 -0
  240. data/rbi/yoomoney/models/receiver.rbi +50 -0
  241. data/rbi/yoomoney/models/recipient.rbi +27 -0
  242. data/rbi/yoomoney/models/refund.rbi +477 -0
  243. data/rbi/yoomoney/models/refund_create_params.rbi +249 -0
  244. data/rbi/yoomoney/models/refund_list_params.rbi +128 -0
  245. data/rbi/yoomoney/models/refund_list_response.rbi +49 -0
  246. data/rbi/yoomoney/models/refund_method.rbi +29 -0
  247. data/rbi/yoomoney/models/refund_method_type.rbi +22 -0
  248. data/rbi/yoomoney/models/refund_retrieve_params.rbi +27 -0
  249. data/rbi/yoomoney/models/refund_sources_data.rbi +59 -0
  250. data/rbi/yoomoney/models/refund_status.rbi +20 -0
  251. data/rbi/yoomoney/models/safe_deal.rbi +151 -0
  252. data/rbi/yoomoney/models/save_payment_method_bank_card.rbi +160 -0
  253. data/rbi/yoomoney/models/sbp_bank_list_params.rbi +27 -0
  254. data/rbi/yoomoney/models/sbp_bank_list_response.rbi +82 -0
  255. data/rbi/yoomoney/models/settlement.rbi +42 -0
  256. data/rbi/yoomoney/models/settlement_item_type.rbi +21 -0
  257. data/rbi/yoomoney/models/transfer_data.rbi +61 -0
  258. data/rbi/yoomoney/models/webhook.rbi +51 -0
  259. data/rbi/yoomoney/models/webhook_create_params.rbi +57 -0
  260. data/rbi/yoomoney/models/webhook_delete_params.rbi +27 -0
  261. data/rbi/yoomoney/models/webhook_delete_response.rbi +8 -0
  262. data/rbi/yoomoney/models/webhook_list_params.rbi +27 -0
  263. data/rbi/yoomoney/models/webhook_list_response.rbi +36 -0
  264. data/rbi/yoomoney/models.rbi +195 -0
  265. data/rbi/yoomoney/request_options.rbi +59 -0
  266. data/rbi/yoomoney/resources/deals.rbi +75 -0
  267. data/rbi/yoomoney/resources/invoices.rbi +63 -0
  268. data/rbi/yoomoney/resources/me.rbi +22 -0
  269. data/rbi/yoomoney/resources/payment_methods.rbi +51 -0
  270. data/rbi/yoomoney/resources/payments.rbi +186 -0
  271. data/rbi/yoomoney/resources/payouts.rbi +104 -0
  272. data/rbi/yoomoney/resources/personal_data.rbi +55 -0
  273. data/rbi/yoomoney/resources/receipts.rbi +102 -0
  274. data/rbi/yoomoney/resources/refunds.rbi +86 -0
  275. data/rbi/yoomoney/resources/sbp_banks.rbi +21 -0
  276. data/rbi/yoomoney/resources/webhooks.rbi +51 -0
  277. data/rbi/yoomoney/version.rbi +5 -0
  278. data/sig/yoomoney/client.rbs +47 -0
  279. data/sig/yoomoney/errors.rbs +117 -0
  280. data/sig/yoomoney/file_part.rbs +21 -0
  281. data/sig/yoomoney/internal/transport/base_client.rbs +131 -0
  282. data/sig/yoomoney/internal/transport/pooled_net_requester.rbs +48 -0
  283. data/sig/yoomoney/internal/type/array_of.rbs +48 -0
  284. data/sig/yoomoney/internal/type/base_model.rbs +102 -0
  285. data/sig/yoomoney/internal/type/base_page.rbs +24 -0
  286. data/sig/yoomoney/internal/type/boolean.rbs +26 -0
  287. data/sig/yoomoney/internal/type/converter.rbs +79 -0
  288. data/sig/yoomoney/internal/type/enum.rbs +32 -0
  289. data/sig/yoomoney/internal/type/file_input.rbs +25 -0
  290. data/sig/yoomoney/internal/type/hash_of.rbs +48 -0
  291. data/sig/yoomoney/internal/type/request_parameters.rbs +17 -0
  292. data/sig/yoomoney/internal/type/union.rbs +52 -0
  293. data/sig/yoomoney/internal/type/unknown.rbs +26 -0
  294. data/sig/yoomoney/internal/util.rbs +185 -0
  295. data/sig/yoomoney/internal.rbs +9 -0
  296. data/sig/yoomoney/models/airline.rbs +93 -0
  297. data/sig/yoomoney/models/b2b_sberbank_calculated_vat_data.rbs +20 -0
  298. data/sig/yoomoney/models/b2b_sberbank_mixed_vat_data.rbs +15 -0
  299. data/sig/yoomoney/models/b2b_sberbank_untaxed_vat_data.rbs +30 -0
  300. data/sig/yoomoney/models/b2b_sberbank_vat_data.rbs +28 -0
  301. data/sig/yoomoney/models/bank_card_data.rbs +100 -0
  302. data/sig/yoomoney/models/bank_card_type.rbs +42 -0
  303. data/sig/yoomoney/models/card_request_data_with_csc.rbs +44 -0
  304. data/sig/yoomoney/models/confirmation.rbs +27 -0
  305. data/sig/yoomoney/models/confirmation_data.rbs +41 -0
  306. data/sig/yoomoney/models/deal_create_params.rbs +50 -0
  307. data/sig/yoomoney/models/deal_list_params.rbs +128 -0
  308. data/sig/yoomoney/models/deal_list_response.rbs +28 -0
  309. data/sig/yoomoney/models/deal_retrieve_params.rbs +15 -0
  310. data/sig/yoomoney/models/deal_type.rbs +13 -0
  311. data/sig/yoomoney/models/delivery_method.rbs +13 -0
  312. data/sig/yoomoney/models/delivery_method_data.rbs +13 -0
  313. data/sig/yoomoney/models/electronic_certificate_refund_article.rbs +35 -0
  314. data/sig/yoomoney/models/fee_moment.rbs +14 -0
  315. data/sig/yoomoney/models/industry_details.rbs +35 -0
  316. data/sig/yoomoney/models/invoice.rbs +141 -0
  317. data/sig/yoomoney/models/invoice_create_params.rbs +167 -0
  318. data/sig/yoomoney/models/invoice_retrieve_params.rbs +15 -0
  319. data/sig/yoomoney/models/invoicing_bank_card_data.rbs +40 -0
  320. data/sig/yoomoney/models/line_item.rbs +39 -0
  321. data/sig/yoomoney/models/locale.rbs +14 -0
  322. data/sig/yoomoney/models/mark_code_info.rbs +92 -0
  323. data/sig/yoomoney/models/mark_quantity.rbs +15 -0
  324. data/sig/yoomoney/models/me_retrieve_params.rbs +25 -0
  325. data/sig/yoomoney/models/me_retrieve_response.rbs +158 -0
  326. data/sig/yoomoney/models/monetary_amount.rbs +55 -0
  327. data/sig/yoomoney/models/notification_event_type.rbs +20 -0
  328. data/sig/yoomoney/models/operational_details.rbs +22 -0
  329. data/sig/yoomoney/models/payment.rbs +696 -0
  330. data/sig/yoomoney/models/payment_cancel_params.rbs +23 -0
  331. data/sig/yoomoney/models/payment_capture_params.rbs +63 -0
  332. data/sig/yoomoney/models/payment_create_params.rbs +571 -0
  333. data/sig/yoomoney/models/payment_deal_info.rbs +47 -0
  334. data/sig/yoomoney/models/payment_list_params.rbs +119 -0
  335. data/sig/yoomoney/models/payment_list_response.rbs +28 -0
  336. data/sig/yoomoney/models/payment_method.rbs +42 -0
  337. data/sig/yoomoney/models/payment_method_create_params.rbs +200 -0
  338. data/sig/yoomoney/models/payment_method_data.rbs +13 -0
  339. data/sig/yoomoney/models/payment_method_retrieve_params.rbs +15 -0
  340. data/sig/yoomoney/models/payment_method_status.rbs +15 -0
  341. data/sig/yoomoney/models/payment_method_type.rbs +48 -0
  342. data/sig/yoomoney/models/payment_methods_confirmation_type.rbs +13 -0
  343. data/sig/yoomoney/models/payment_retrieve_params.rbs +15 -0
  344. data/sig/yoomoney/models/payment_status.rbs +17 -0
  345. data/sig/yoomoney/models/payout.rbs +259 -0
  346. data/sig/yoomoney/models/payout_create_params.rbs +164 -0
  347. data/sig/yoomoney/models/payout_deal_info.rbs +13 -0
  348. data/sig/yoomoney/models/payout_destination.rbs +26 -0
  349. data/sig/yoomoney/models/payout_destination_data.rbs +16 -0
  350. data/sig/yoomoney/models/payout_destination_data_type.rbs +15 -0
  351. data/sig/yoomoney/models/payout_list_params.rbs +117 -0
  352. data/sig/yoomoney/models/payout_retrieve_params.rbs +15 -0
  353. data/sig/yoomoney/models/payout_search_params.rbs +68 -0
  354. data/sig/yoomoney/models/payout_status.rbs +15 -0
  355. data/sig/yoomoney/models/payouts_list.rbs +28 -0
  356. data/sig/yoomoney/models/personal_data.rbs +70 -0
  357. data/sig/yoomoney/models/personal_data_create_params.rbs +55 -0
  358. data/sig/yoomoney/models/personal_data_request.rbs +27 -0
  359. data/sig/yoomoney/models/personal_data_retrieve_params.rbs +15 -0
  360. data/sig/yoomoney/models/personal_data_type.rbs +15 -0
  361. data/sig/yoomoney/models/receipt.rbs +293 -0
  362. data/sig/yoomoney/models/receipt_create_params.rbs +293 -0
  363. data/sig/yoomoney/models/receipt_data.rbs +192 -0
  364. data/sig/yoomoney/models/receipt_data_customer.rbs +38 -0
  365. data/sig/yoomoney/models/receipt_item_agent_type.rbs +26 -0
  366. data/sig/yoomoney/models/receipt_item_measure.rbs +60 -0
  367. data/sig/yoomoney/models/receipt_item_payment_mode.rbs +26 -0
  368. data/sig/yoomoney/models/receipt_item_payment_subject.rbs +78 -0
  369. data/sig/yoomoney/models/receipt_item_supplier.rbs +19 -0
  370. data/sig/yoomoney/models/receipt_list_params.rbs +91 -0
  371. data/sig/yoomoney/models/receipt_list_response.rbs +28 -0
  372. data/sig/yoomoney/models/receipt_registration_status.rbs +15 -0
  373. data/sig/yoomoney/models/receipt_retrieve_params.rbs +15 -0
  374. data/sig/yoomoney/models/receipt_type.rbs +14 -0
  375. data/sig/yoomoney/models/receiver.rbs +25 -0
  376. data/sig/yoomoney/models/recipient.rbs +13 -0
  377. data/sig/yoomoney/models/refund.rbs +245 -0
  378. data/sig/yoomoney/models/refund_create_params.rbs +133 -0
  379. data/sig/yoomoney/models/refund_list_params.rbs +84 -0
  380. data/sig/yoomoney/models/refund_list_response.rbs +28 -0
  381. data/sig/yoomoney/models/refund_method.rbs +13 -0
  382. data/sig/yoomoney/models/refund_method_type.rbs +14 -0
  383. data/sig/yoomoney/models/refund_retrieve_params.rbs +15 -0
  384. data/sig/yoomoney/models/refund_sources_data.rbs +34 -0
  385. data/sig/yoomoney/models/refund_status.rbs +15 -0
  386. data/sig/yoomoney/models/safe_deal.rbs +85 -0
  387. data/sig/yoomoney/models/save_payment_method_bank_card.rbs +97 -0
  388. data/sig/yoomoney/models/sbp_bank_list_params.rbs +15 -0
  389. data/sig/yoomoney/models/sbp_bank_list_response.rbs +39 -0
  390. data/sig/yoomoney/models/settlement.rbs +15 -0
  391. data/sig/yoomoney/models/settlement_item_type.rbs +13 -0
  392. data/sig/yoomoney/models/transfer_data.rbs +34 -0
  393. data/sig/yoomoney/models/webhook.rbs +30 -0
  394. data/sig/yoomoney/models/webhook_create_params.rbs +36 -0
  395. data/sig/yoomoney/models/webhook_delete_params.rbs +15 -0
  396. data/sig/yoomoney/models/webhook_delete_response.rbs +5 -0
  397. data/sig/yoomoney/models/webhook_list_params.rbs +15 -0
  398. data/sig/yoomoney/models/webhook_list_response.rbs +16 -0
  399. data/sig/yoomoney/models.rbs +191 -0
  400. data/sig/yoomoney/request_options.rbs +34 -0
  401. data/sig/yoomoney/resources/deals.rbs +31 -0
  402. data/sig/yoomoney/resources/invoices.rbs +23 -0
  403. data/sig/yoomoney/resources/me.rbs +12 -0
  404. data/sig/yoomoney/resources/payment_methods.rbs +21 -0
  405. data/sig/yoomoney/resources/payments.rbs +63 -0
  406. data/sig/yoomoney/resources/payouts.rbs +41 -0
  407. data/sig/yoomoney/resources/personal_data.rbs +22 -0
  408. data/sig/yoomoney/resources/receipts.rbs +41 -0
  409. data/sig/yoomoney/resources/refunds.rbs +34 -0
  410. data/sig/yoomoney/resources/sbp_banks.rbs +11 -0
  411. data/sig/yoomoney/resources/webhooks.rbs +23 -0
  412. data/sig/yoomoney/version.rbs +3 -0
  413. metadata +484 -0
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Yoomoney
4
+ module Internal
5
+ extend Yoomoney::Internal::Util::SorbetRuntimeSupport
6
+
7
+ OMIT =
8
+ Object.new.tap do
9
+ _1.define_singleton_method(:inspect) { "#<#{Yoomoney::Internal}::OMIT>" }
10
+ end
11
+ .freeze
12
+
13
+ define_sorbet_constant!(:AnyHash) do
14
+ T.type_alias { T::Hash[Symbol, T.anything] }
15
+ end
16
+ define_sorbet_constant!(:FileInput) do
17
+ T.type_alias { T.any(Pathname, StringIO, IO, String, Yoomoney::FilePart) }
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,77 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Yoomoney
4
+ module Models
5
+ class Airline < Yoomoney::Internal::Type::BaseModel
6
+ # @!attribute booking_reference
7
+ #
8
+ # @return [String, nil]
9
+ optional :booking_reference, String
10
+
11
+ # @!attribute legs
12
+ #
13
+ # @return [Array<Yoomoney::Models::Airline::Leg>, nil]
14
+ optional :legs, -> { Yoomoney::Internal::Type::ArrayOf[Yoomoney::Airline::Leg] }
15
+
16
+ # @!attribute passengers
17
+ #
18
+ # @return [Array<Yoomoney::Models::Airline::Passenger>, nil]
19
+ optional :passengers, -> { Yoomoney::Internal::Type::ArrayOf[Yoomoney::Airline::Passenger] }
20
+
21
+ # @!attribute ticket_number
22
+ #
23
+ # @return [String, nil]
24
+ optional :ticket_number, String
25
+
26
+ # @!method initialize(booking_reference: nil, legs: nil, passengers: nil, ticket_number: nil)
27
+ # @param booking_reference [String]
28
+ # @param legs [Array<Yoomoney::Models::Airline::Leg>]
29
+ # @param passengers [Array<Yoomoney::Models::Airline::Passenger>]
30
+ # @param ticket_number [String]
31
+
32
+ class Leg < Yoomoney::Internal::Type::BaseModel
33
+ # @!attribute departure_airport
34
+ #
35
+ # @return [String]
36
+ required :departure_airport, String
37
+
38
+ # @!attribute departure_date
39
+ #
40
+ # @return [String]
41
+ required :departure_date, String
42
+
43
+ # @!attribute destination_airport
44
+ #
45
+ # @return [String]
46
+ required :destination_airport, String
47
+
48
+ # @!attribute carrier_code
49
+ #
50
+ # @return [String, nil]
51
+ optional :carrier_code, String
52
+
53
+ # @!method initialize(departure_airport:, departure_date:, destination_airport:, carrier_code: nil)
54
+ # @param departure_airport [String]
55
+ # @param departure_date [String]
56
+ # @param destination_airport [String]
57
+ # @param carrier_code [String]
58
+ end
59
+
60
+ class Passenger < Yoomoney::Internal::Type::BaseModel
61
+ # @!attribute first_name
62
+ #
63
+ # @return [String]
64
+ required :first_name, String
65
+
66
+ # @!attribute last_name
67
+ #
68
+ # @return [String]
69
+ required :last_name, String
70
+
71
+ # @!method initialize(first_name:, last_name:)
72
+ # @param first_name [String]
73
+ # @param last_name [String]
74
+ end
75
+ end
76
+ end
77
+ end
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Yoomoney
4
+ module Models
5
+ class B2bSberbankCalculatedVatData < Yoomoney::Models::B2bSberbankVatData
6
+ # @!attribute amount
7
+ # Сумма НДС.
8
+ #
9
+ # @return [Yoomoney::Models::MonetaryAmount]
10
+ required :amount, -> { Yoomoney::MonetaryAmount }
11
+
12
+ # @!attribute rate
13
+ # Налоговая ставка (в процентах).
14
+ #
15
+ # @return [String]
16
+ required :rate, String
17
+
18
+ # @!method initialize(amount:, rate:)
19
+ # @param amount [Yoomoney::Models::MonetaryAmount] Сумма НДС.
20
+ #
21
+ # @param rate [String] Налоговая ставка (в процентах).
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Yoomoney
4
+ module Models
5
+ class B2bSberbankMixedVatData < Yoomoney::Models::B2bSberbankVatData
6
+ # @!attribute amount
7
+ # Сумма НДС.
8
+ #
9
+ # @return [Yoomoney::Models::MonetaryAmount]
10
+ required :amount, -> { Yoomoney::MonetaryAmount }
11
+
12
+ # @!method initialize(amount:)
13
+ # @param amount [Yoomoney::Models::MonetaryAmount] Сумма НДС.
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Yoomoney
4
+ module Models
5
+ class B2bSberbankUntaxedVatData < Yoomoney::Internal::Type::BaseModel
6
+ # @!attribute type
7
+ #
8
+ # @return [Symbol, Yoomoney::Models::B2bSberbankUntaxedVatData::Type]
9
+ required :type, enum: -> { Yoomoney::B2bSberbankUntaxedVatData::Type }
10
+
11
+ # @!method initialize(type:)
12
+ # @param type [Symbol, Yoomoney::Models::B2bSberbankUntaxedVatData::Type]
13
+
14
+ # @see Yoomoney::Models::B2bSberbankUntaxedVatData#type
15
+ module Type
16
+ extend Yoomoney::Internal::Type::Enum
17
+
18
+ CALCULATED = :calculated
19
+ UNTAXED = :untaxed
20
+ MIXED = :mixed
21
+
22
+ # @!method self.values
23
+ # @return [Array<Symbol>]
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Yoomoney
4
+ module Models
5
+ class B2bSberbankVatData < Yoomoney::Internal::Type::BaseModel
6
+ # @!attribute type
7
+ #
8
+ # @return [Symbol, Yoomoney::Models::B2bSberbankVatData::Type]
9
+ required :type, enum: -> { Yoomoney::B2bSberbankVatData::Type }
10
+
11
+ # @!method initialize(type:)
12
+ # @param type [Symbol, Yoomoney::Models::B2bSberbankVatData::Type]
13
+
14
+ # @see Yoomoney::Models::B2bSberbankVatData#type
15
+ module Type
16
+ extend Yoomoney::Internal::Type::Enum
17
+
18
+ CALCULATED = :calculated
19
+ UNTAXED = :untaxed
20
+ MIXED = :mixed
21
+
22
+ # @!method self.values
23
+ # @return [Array<Symbol>]
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,95 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Yoomoney
4
+ module Models
5
+ class BankCardData < Yoomoney::Internal::Type::BaseModel
6
+ # @!attribute card_type
7
+ #
8
+ # @return [Symbol, Yoomoney::Models::BankCardType]
9
+ required :card_type, enum: -> { Yoomoney::BankCardType }
10
+
11
+ # @!attribute expiry_month
12
+ #
13
+ # @return [String]
14
+ required :expiry_month, String
15
+
16
+ # @!attribute expiry_year
17
+ #
18
+ # @return [String]
19
+ required :expiry_year, String
20
+
21
+ # @!attribute last4
22
+ #
23
+ # @return [String]
24
+ required :last4, String
25
+
26
+ # @!attribute card_product
27
+ #
28
+ # @return [Yoomoney::Models::BankCardData::CardProduct, nil]
29
+ optional :card_product, -> { Yoomoney::BankCardData::CardProduct }
30
+
31
+ # @!attribute first6
32
+ #
33
+ # @return [String, nil]
34
+ optional :first6, String
35
+
36
+ # @!attribute issuer_country
37
+ #
38
+ # @return [String, nil]
39
+ optional :issuer_country, String
40
+
41
+ # @!attribute issuer_name
42
+ #
43
+ # @return [String, nil]
44
+ optional :issuer_name, String
45
+
46
+ # @!attribute source
47
+ #
48
+ # @return [Symbol, Yoomoney::Models::BankCardData::Source, nil]
49
+ optional :source, enum: -> { Yoomoney::BankCardData::Source }
50
+
51
+ # @!method initialize(card_type:, expiry_month:, expiry_year:, last4:, card_product: nil, first6: nil, issuer_country: nil, issuer_name: nil, source: nil)
52
+ # @param card_type [Symbol, Yoomoney::Models::BankCardType]
53
+ # @param expiry_month [String]
54
+ # @param expiry_year [String]
55
+ # @param last4 [String]
56
+ # @param card_product [Yoomoney::Models::BankCardData::CardProduct]
57
+ # @param first6 [String]
58
+ # @param issuer_country [String]
59
+ # @param issuer_name [String]
60
+ # @param source [Symbol, Yoomoney::Models::BankCardData::Source]
61
+
62
+ # @see Yoomoney::Models::BankCardData#card_product
63
+ class CardProduct < Yoomoney::Internal::Type::BaseModel
64
+ # @!attribute code
65
+ # Код продукта.
66
+ #
67
+ # @return [String]
68
+ required :code, String
69
+
70
+ # @!attribute name
71
+ # Название продукта.
72
+ #
73
+ # @return [String, nil]
74
+ optional :name, String
75
+
76
+ # @!method initialize(code:, name: nil)
77
+ # @param code [String] Код продукта.
78
+ #
79
+ # @param name [String] Название продукта.
80
+ end
81
+
82
+ # @see Yoomoney::Models::BankCardData#source
83
+ module Source
84
+ extend Yoomoney::Internal::Type::Enum
85
+
86
+ APPLE_PAY = :apple_pay
87
+ GOOGLE_PAY = :google_pay
88
+ MIR_PAY = :mir_pay
89
+
90
+ # @!method self.values
91
+ # @return [Array<Symbol>]
92
+ end
93
+ end
94
+ end
95
+ end
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Yoomoney
4
+ module Models
5
+ module BankCardType
6
+ extend Yoomoney::Internal::Type::Enum
7
+
8
+ MASTER_CARD = :MasterCard
9
+ VISA = :Visa
10
+ MIR = :Mir
11
+ UNION_PAY = :UnionPay
12
+ JCB = :JCB
13
+ AMERICAN_EXPRESS = :AmericanExpress
14
+ DINERS_CLUB = :DinersClub
15
+ DISCOVER_CARD = :DiscoverCard
16
+ INSTA_PAYMENT = :InstaPayment
17
+ INSTA_PAYMENT_TM = :InstaPaymentTM
18
+ LASER = :Laser
19
+ DANKORT = :Dankort
20
+ SOLO = :Solo
21
+ SWITCH = :Switch
22
+ UNKNOWN = :Unknown
23
+
24
+ # @!method self.values
25
+ # @return [Array<Symbol>]
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,48 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Yoomoney
4
+ module Models
5
+ class CardRequestDataWithCsc < Yoomoney::Internal::Type::BaseModel
6
+ # @!attribute expiry_month
7
+ # Срок действия, месяц. Формат: MM.
8
+ #
9
+ # @return [String]
10
+ required :expiry_month, String
11
+
12
+ # @!attribute expiry_year
13
+ # Срок действия, год. Формат: YYYY.
14
+ #
15
+ # @return [String]
16
+ required :expiry_year, String
17
+
18
+ # @!attribute number
19
+ # Номер банковской карты.
20
+ #
21
+ # @return [String]
22
+ required :number, String
23
+
24
+ # @!attribute cardholder
25
+ # Имя владельца карты.
26
+ #
27
+ # @return [String, nil]
28
+ optional :cardholder, String
29
+
30
+ # @!attribute csc
31
+ # Код CVC2 или CVV2, 3 или 4 символа, печатается на обратной стороне карты.
32
+ #
33
+ # @return [String, nil]
34
+ optional :csc, String
35
+
36
+ # @!method initialize(expiry_month:, expiry_year:, number:, cardholder: nil, csc: nil)
37
+ # @param expiry_month [String] Срок действия, месяц. Формат: MM.
38
+ #
39
+ # @param expiry_year [String] Срок действия, год. Формат: YYYY.
40
+ #
41
+ # @param number [String] Номер банковской карты.
42
+ #
43
+ # @param cardholder [String] Имя владельца карты.
44
+ #
45
+ # @param csc [String] Код CVC2 или CVV2, 3 или 4 символа, печатается на обратной стороне карты.
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,32 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Yoomoney
4
+ module Models
5
+ class Confirmation < Yoomoney::Internal::Type::BaseModel
6
+ # @!attribute type
7
+ # Код сценария подтверждения.
8
+ #
9
+ # @return [Symbol, Yoomoney::Models::Confirmation::Type]
10
+ required :type, enum: -> { Yoomoney::Confirmation::Type }
11
+
12
+ # @!method initialize(type:)
13
+ # @param type [Symbol, Yoomoney::Models::Confirmation::Type] Код сценария подтверждения.
14
+
15
+ # Код сценария подтверждения.
16
+ #
17
+ # @see Yoomoney::Models::Confirmation#type
18
+ module Type
19
+ extend Yoomoney::Internal::Type::Enum
20
+
21
+ REDIRECT = :redirect
22
+ EXTERNAL = :external
23
+ QR = :qr
24
+ EMBEDDED = :embedded
25
+ MOBILE_APPLICATION = :mobile_application
26
+
27
+ # @!method self.values
28
+ # @return [Array<Symbol>]
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Yoomoney
4
+ module Models
5
+ class ConfirmationData < Yoomoney::Internal::Type::BaseModel
6
+ # @!attribute type
7
+ # Код сценария подтверждения.
8
+ #
9
+ # @return [Symbol, Yoomoney::Models::ConfirmationData::Type]
10
+ required :type, enum: -> { Yoomoney::ConfirmationData::Type }
11
+
12
+ # @!attribute locale
13
+ # Язык интерфейса, писем и смс.
14
+ #
15
+ # @return [Symbol, Yoomoney::Models::Locale, nil]
16
+ optional :locale, enum: -> { Yoomoney::Locale }
17
+
18
+ # @!method initialize(type:, locale: nil)
19
+ # @param type [Symbol, Yoomoney::Models::ConfirmationData::Type] Код сценария подтверждения.
20
+ #
21
+ # @param locale [Symbol, Yoomoney::Models::Locale] Язык интерфейса, писем и смс.
22
+
23
+ # Код сценария подтверждения.
24
+ #
25
+ # @see Yoomoney::Models::ConfirmationData#type
26
+ module Type
27
+ extend Yoomoney::Internal::Type::Enum
28
+
29
+ REDIRECT = :redirect
30
+ EXTERNAL = :external
31
+ QR = :qr
32
+ EMBEDDED = :embedded
33
+ MOBILE_APPLICATION = :mobile_application
34
+
35
+ # @!method self.values
36
+ # @return [Array<Symbol>]
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,59 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Yoomoney
4
+ module Models
5
+ # @see Yoomoney::Resources::Deals#create
6
+ class DealCreateParams < Yoomoney::Internal::Type::BaseModel
7
+ extend Yoomoney::Internal::Type::RequestParameters::Converter
8
+ include Yoomoney::Internal::Type::RequestParameters
9
+
10
+ # @!attribute fee_moment
11
+ # Момент удержания вознаграждения.
12
+ #
13
+ # @return [Symbol, Yoomoney::Models::FeeMoment]
14
+ required :fee_moment, enum: -> { Yoomoney::FeeMoment }
15
+
16
+ # @!attribute type
17
+ # Тип сделки.
18
+ #
19
+ # @return [Symbol, Yoomoney::Models::DealType]
20
+ required :type, enum: -> { Yoomoney::DealType }
21
+
22
+ # @!attribute idempotence_key
23
+ #
24
+ # @return [String]
25
+ required :idempotence_key, String
26
+
27
+ # @!attribute description
28
+ # Описание сделки.
29
+ #
30
+ # @return [String, nil]
31
+ optional :description, String
32
+
33
+ # @!attribute metadata
34
+ # Любые дополнительные данные, которые нужны вам для работы (например, номер
35
+ # заказа). Передаются в виде набора пар «ключ-значение» и возвращаются в ответе от
36
+ # ЮKassa. Ограничения: максимум 16 ключей, имя ключа не больше 32 символов,
37
+ # значение ключа не больше 512 символов, тип данных — строка в формате UTF-8.
38
+ #
39
+ # @return [Hash{Symbol=>String}, nil]
40
+ optional :metadata, Yoomoney::Internal::Type::HashOf[String]
41
+
42
+ # @!method initialize(fee_moment:, type:, idempotence_key:, description: nil, metadata: nil, request_options: {})
43
+ # Some parameter documentations has been truncated, see
44
+ # {Yoomoney::Models::DealCreateParams} for more details.
45
+ #
46
+ # @param fee_moment [Symbol, Yoomoney::Models::FeeMoment] Момент удержания вознаграждения.
47
+ #
48
+ # @param type [Symbol, Yoomoney::Models::DealType] Тип сделки.
49
+ #
50
+ # @param idempotence_key [String]
51
+ #
52
+ # @param description [String] Описание сделки.
53
+ #
54
+ # @param metadata [Hash{Symbol=>String}] Любые дополнительные данные, которые нужны вам для работы (например, номер заказ
55
+ #
56
+ # @param request_options [Yoomoney::RequestOptions, Hash{Symbol=>Object}]
57
+ end
58
+ end
59
+ end
@@ -0,0 +1,116 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Yoomoney
4
+ module Models
5
+ # @see Yoomoney::Resources::Deals#list
6
+ class DealListParams < Yoomoney::Internal::Type::BaseModel
7
+ extend Yoomoney::Internal::Type::RequestParameters::Converter
8
+ include Yoomoney::Internal::Type::RequestParameters
9
+
10
+ # @!attribute created_at
11
+ #
12
+ # @return [Yoomoney::Models::DealListParams::CreatedAt, nil]
13
+ optional :created_at, -> { Yoomoney::DealListParams::CreatedAt }
14
+
15
+ # @!attribute cursor
16
+ #
17
+ # @return [String, nil]
18
+ optional :cursor, String
19
+
20
+ # @!attribute expires_at
21
+ #
22
+ # @return [Yoomoney::Models::DealListParams::ExpiresAt, nil]
23
+ optional :expires_at, -> { Yoomoney::DealListParams::ExpiresAt }
24
+
25
+ # @!attribute full_text_search
26
+ #
27
+ # @return [String, nil]
28
+ optional :full_text_search, String
29
+
30
+ # @!attribute limit
31
+ #
32
+ # @return [Integer, nil]
33
+ optional :limit, Integer
34
+
35
+ # @!attribute status
36
+ #
37
+ # @return [Symbol, Yoomoney::Models::DealListParams::Status, nil]
38
+ optional :status, enum: -> { Yoomoney::DealListParams::Status }
39
+
40
+ # @!method initialize(created_at: nil, cursor: nil, expires_at: nil, full_text_search: nil, limit: nil, status: nil, request_options: {})
41
+ # @param created_at [Yoomoney::Models::DealListParams::CreatedAt]
42
+ # @param cursor [String]
43
+ # @param expires_at [Yoomoney::Models::DealListParams::ExpiresAt]
44
+ # @param full_text_search [String]
45
+ # @param limit [Integer]
46
+ # @param status [Symbol, Yoomoney::Models::DealListParams::Status]
47
+ # @param request_options [Yoomoney::RequestOptions, Hash{Symbol=>Object}]
48
+
49
+ class CreatedAt < Yoomoney::Internal::Type::BaseModel
50
+ # @!attribute gt
51
+ #
52
+ # @return [Time, nil]
53
+ optional :gt, Time
54
+
55
+ # @!attribute gte
56
+ #
57
+ # @return [Time, nil]
58
+ optional :gte, Time
59
+
60
+ # @!attribute lt
61
+ #
62
+ # @return [Time, nil]
63
+ optional :lt, Time
64
+
65
+ # @!attribute lte
66
+ #
67
+ # @return [Time, nil]
68
+ optional :lte, Time
69
+
70
+ # @!method initialize(gt: nil, gte: nil, lt: nil, lte: nil)
71
+ # @param gt [Time]
72
+ # @param gte [Time]
73
+ # @param lt [Time]
74
+ # @param lte [Time]
75
+ end
76
+
77
+ class ExpiresAt < Yoomoney::Internal::Type::BaseModel
78
+ # @!attribute gt
79
+ #
80
+ # @return [Time, nil]
81
+ optional :gt, Time
82
+
83
+ # @!attribute gte
84
+ #
85
+ # @return [Time, nil]
86
+ optional :gte, Time
87
+
88
+ # @!attribute lt
89
+ #
90
+ # @return [Time, nil]
91
+ optional :lt, Time
92
+
93
+ # @!attribute lte
94
+ #
95
+ # @return [Time, nil]
96
+ optional :lte, Time
97
+
98
+ # @!method initialize(gt: nil, gte: nil, lt: nil, lte: nil)
99
+ # @param gt [Time]
100
+ # @param gte [Time]
101
+ # @param lt [Time]
102
+ # @param lte [Time]
103
+ end
104
+
105
+ module Status
106
+ extend Yoomoney::Internal::Type::Enum
107
+
108
+ OPENED = :opened
109
+ CLOSED = :closed
110
+
111
+ # @!method self.values
112
+ # @return [Array<Symbol>]
113
+ end
114
+ end
115
+ end
116
+ end
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Yoomoney
4
+ module Models
5
+ # @see Yoomoney::Resources::Deals#list
6
+ class DealListResponse < Yoomoney::Internal::Type::BaseModel
7
+ # @!attribute items
8
+ #
9
+ # @return [Array<Yoomoney::Models::SafeDeal>]
10
+ required :items, -> { Yoomoney::Internal::Type::ArrayOf[Yoomoney::SafeDeal] }
11
+
12
+ # @!attribute type
13
+ #
14
+ # @return [String]
15
+ required :type, String
16
+
17
+ # @!attribute next_cursor
18
+ #
19
+ # @return [String, nil]
20
+ optional :next_cursor, String
21
+
22
+ # @!method initialize(items:, type:, next_cursor: nil)
23
+ # @param items [Array<Yoomoney::Models::SafeDeal>]
24
+ # @param type [String]
25
+ # @param next_cursor [String]
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Yoomoney
4
+ module Models
5
+ # @see Yoomoney::Resources::Deals#retrieve
6
+ class DealRetrieveParams < Yoomoney::Internal::Type::BaseModel
7
+ extend Yoomoney::Internal::Type::RequestParameters::Converter
8
+ include Yoomoney::Internal::Type::RequestParameters
9
+
10
+ # @!method initialize(request_options: {})
11
+ # @param request_options [Yoomoney::RequestOptions, Hash{Symbol=>Object}]
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Yoomoney
4
+ module Models
5
+ module DealType
6
+ extend Yoomoney::Internal::Type::Enum
7
+
8
+ SAFE_DEAL = :safe_deal
9
+
10
+ # @!method self.values
11
+ # @return [Array<Symbol>]
12
+ end
13
+ end
14
+ end