privy_ruby 0.0.2 → 0.2.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 (303) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +34 -0
  3. data/README.md +1 -1
  4. data/lib/privy/base58.rb +41 -0
  5. data/lib/privy/client.rb +12 -3
  6. data/lib/privy/cryptography.rb +34 -0
  7. data/lib/privy/models/analytics_event_input.rb +2 -2
  8. data/lib/privy/models/bitcoin_address.rb +7 -0
  9. data/lib/privy/models/bridge_destination_asset.rb +1 -0
  10. data/lib/privy/models/bridge_fiat_virtual_account_destination.rb +6 -1
  11. data/lib/privy/models/bridge_fiat_virtual_account_request.rb +6 -2
  12. data/lib/privy/models/bridge_fiat_virtual_account_response.rb +2 -1
  13. data/lib/privy/models/bridge_fiat_virtual_account_source.rb +4 -1
  14. data/lib/privy/models/bridge_sandbox_fiat_virtual_account_request.rb +6 -2
  15. data/lib/privy/models/bridge_sandbox_fiat_virtual_account_response.rb +2 -1
  16. data/lib/privy/models/bridge_source_asset.rb +1 -0
  17. data/lib/privy/models/create_link_auth_intent_input.rb +17 -0
  18. data/lib/privy/models/create_link_auth_intent_response.rb +36 -0
  19. data/lib/privy/models/create_stripe_onramp_session_input.rb +33 -0
  20. data/lib/privy/models/create_stripe_onramp_session_response.rb +38 -0
  21. data/lib/privy/models/device_authorization_response.rb +63 -0
  22. data/lib/privy/models/device_verify_action.rb +16 -0
  23. data/lib/privy/models/device_verify_request_body.rb +27 -0
  24. data/lib/privy/models/device_verify_response.rb +18 -0
  25. data/lib/privy/models/earn_incentive_reward_entry.rb +50 -0
  26. data/lib/privy/models/earn_incentive_rewards_query.rb +18 -0
  27. data/lib/privy/models/earn_incentive_rewards_response.rb +19 -0
  28. data/lib/privy/models/evm_address.rb +7 -0
  29. data/lib/privy/models/evm_checksum_address.rb +7 -0
  30. data/lib/privy/models/exchange_stripe_tokens_input.rb +23 -0
  31. data/lib/privy/models/exchange_stripe_tokens_response.rb +17 -0
  32. data/lib/privy/models/fiat_onramp_provider.rb +2 -0
  33. data/lib/privy/models/fiat_onramp_stripe_sdk_session_response.rb +45 -0
  34. data/lib/privy/models/fiat_onramp_url_session_response.rb +39 -0
  35. data/lib/privy/models/gas.rb +35 -0
  36. data/lib/privy/models/get_fiat_onramp_url_response.rb +12 -14
  37. data/lib/privy/models/get_stripe_crypto_customer_response.rb +39 -0
  38. data/lib/privy/models/hyperliquid_token_address.rb +7 -0
  39. data/lib/privy/models/kraken_embed_custom_order_cancelled_webhook_payload.rb +66 -0
  40. data/lib/privy/models/kraken_embed_custom_order_executed_webhook_payload.rb +54 -0
  41. data/lib/privy/models/kraken_embed_custom_order_execution_failed_webhook_payload.rb +67 -0
  42. data/lib/privy/models/link_auth_intent_created.rb +35 -0
  43. data/lib/privy/models/link_auth_intent_no_account.rb +27 -0
  44. data/lib/privy/models/linked_account_embedded_wallet.rb +1 -0
  45. data/lib/privy/models/list_stripe_consumer_wallets_response.rb +17 -0
  46. data/lib/privy/models/list_stripe_payment_tokens_response.rb +17 -0
  47. data/lib/privy/models/oauth_grant.rb +54 -0
  48. data/lib/privy/models/oauth_grant_list_response.rb +18 -0
  49. data/lib/privy/models/oauth_grant_revoke_response.rb +30 -0
  50. data/lib/privy/models/oauth_token_authorization_code_request_body.rb +59 -0
  51. data/lib/privy/models/oauth_token_device_code_pending_error.rb +50 -0
  52. data/lib/privy/models/oauth_token_device_code_request_body.rb +36 -0
  53. data/lib/privy/models/oauth_token_grant_type.rb +17 -0
  54. data/lib/privy/models/oauth_token_refresh_token_request_body.rb +36 -0
  55. data/lib/privy/models/oauth_token_request_body.rb +24 -0
  56. data/lib/privy/models/oauth_token_success_response.rb +58 -0
  57. data/lib/privy/models/onramp_session_fees.rb +23 -0
  58. data/lib/privy/models/onramp_session_params.rb +61 -0
  59. data/lib/privy/models/onramp_session_transaction_details.rb +59 -0
  60. data/lib/privy/models/refresh_stripe_quote_response.rb +18 -0
  61. data/lib/privy/models/rule_delete_intent_response.rb +63 -0
  62. data/lib/privy/models/rule_intent_response.rb +0 -1
  63. data/lib/privy/models/rule_mutate_intent_response.rb +64 -0
  64. data/lib/privy/models/solana_address.rb +7 -0
  65. data/lib/privy/models/stripe_consumer_wallet.rb +29 -0
  66. data/lib/privy/models/stripe_crypto_customer_active.rb +39 -0
  67. data/lib/privy/models/stripe_crypto_customer_expired.rb +33 -0
  68. data/lib/privy/models/stripe_crypto_customer_none.rb +27 -0
  69. data/lib/privy/models/stripe_onramp_checkout_response.rb +25 -0
  70. data/lib/privy/models/stripe_onramp_session_status.rb +17 -0
  71. data/lib/privy/models/stripe_payment_token.rb +23 -0
  72. data/lib/privy/models/stripe_quote.rb +17 -0
  73. data/lib/privy/models/stripe_transaction_details.rb +17 -0
  74. data/lib/privy/models/stripe_verification.rb +23 -0
  75. data/lib/privy/models/swap_action_response.rb +46 -1
  76. data/lib/privy/models/swap_destination.rb +13 -4
  77. data/lib/privy/models/swap_quote_destination.rb +15 -4
  78. data/lib/privy/models/swap_quote_request_body.rb +12 -4
  79. data/lib/privy/models/swap_quote_response.rb +40 -3
  80. data/lib/privy/models/swap_request_body.rb +12 -4
  81. data/lib/privy/models/token_transfer_destination.rb +2 -2
  82. data/lib/privy/models/transfer_action_response.rb +29 -3
  83. data/lib/privy/models/transfer_quote_request_body.rb +3 -2
  84. data/lib/privy/models/transfer_quote_response.rb +10 -1
  85. data/lib/privy/models/transfer_received_transaction_detail.rb +5 -0
  86. data/lib/privy/models/transfer_request_body.rb +3 -2
  87. data/lib/privy/models/transfer_sent_transaction_detail.rb +5 -0
  88. data/lib/privy/models/tron_address.rb +7 -0
  89. data/lib/privy/models/wallet_asset.rb +1 -0
  90. data/lib/privy/models/wallet_batch_create_response.rb +1 -0
  91. data/lib/privy/models/wallet_create_batch_params.rb +14 -0
  92. data/lib/privy/models/wallet_ethereum_asset.rb +1 -0
  93. data/lib/privy/models/wallets/balance_get_params.rb +11 -0
  94. data/lib/privy/models/wallets/balance_get_response.rb +5 -0
  95. data/lib/privy/models/wallets/swap_execute_params.rb +45 -0
  96. data/lib/privy/models/wallets/swap_quote_params.rb +36 -0
  97. data/lib/privy/models/wallets/transaction_get_params.rb +3 -0
  98. data/lib/privy/models.rb +117 -4
  99. data/lib/privy/public_api/privy_client.rb +2 -1
  100. data/lib/privy/public_api/services/earn/ethereum/incentive.rb +61 -0
  101. data/lib/privy/public_api/services/earn/ethereum.rb +131 -0
  102. data/lib/privy/public_api/services/earn.rb +18 -0
  103. data/lib/privy/public_api/services/key_quorums.rb +7 -1
  104. data/lib/privy/public_api/services/policies.rb +21 -3
  105. data/lib/privy/public_api/services/transactions.rb +14 -0
  106. data/lib/privy/public_api/services/wallets.rb +153 -1
  107. data/lib/privy/resources/intents.rb +8 -7
  108. data/lib/privy/resources/oauth.rb +14 -0
  109. data/lib/privy/resources/onramps.rb +14 -0
  110. data/lib/privy/resources/wallets/swap.rb +105 -0
  111. data/lib/privy/resources/wallets.rb +35 -3
  112. data/lib/privy/version.rb +1 -1
  113. data/lib/privy/wallet_entropy.rb +60 -0
  114. data/lib/privy.rb +71 -5
  115. data/rbi/privy/client.rbi +9 -2
  116. data/rbi/privy/models/analytics_event_input.rbi +3 -6
  117. data/rbi/privy/models/bitcoin_address.rbi +7 -0
  118. data/rbi/privy/models/bridge_destination_asset.rbi +1 -0
  119. data/rbi/privy/models/bridge_fiat_virtual_account_destination.rbi +8 -1
  120. data/rbi/privy/models/bridge_fiat_virtual_account_request.rbi +9 -1
  121. data/rbi/privy/models/bridge_fiat_virtual_account_response.rbi +2 -0
  122. data/rbi/privy/models/bridge_fiat_virtual_account_source.rbi +6 -1
  123. data/rbi/privy/models/bridge_sandbox_fiat_virtual_account_request.rbi +9 -1
  124. data/rbi/privy/models/bridge_sandbox_fiat_virtual_account_response.rbi +2 -0
  125. data/rbi/privy/models/bridge_source_asset.rbi +1 -0
  126. data/rbi/privy/models/create_link_auth_intent_input.rbi +27 -0
  127. data/rbi/privy/models/create_link_auth_intent_response.rbi +68 -0
  128. data/rbi/privy/models/create_stripe_onramp_session_input.rbi +55 -0
  129. data/rbi/privy/models/create_stripe_onramp_session_response.rbi +88 -0
  130. data/rbi/privy/models/device_authorization_response.rbi +81 -0
  131. data/rbi/privy/models/device_verify_action.rbi +22 -0
  132. data/rbi/privy/models/device_verify_request_body.rbi +44 -0
  133. data/rbi/privy/models/device_verify_response.rbi +28 -0
  134. data/rbi/privy/models/earn_incentive_reward_entry.rbi +73 -0
  135. data/rbi/privy/models/earn_incentive_rewards_query.rbi +28 -0
  136. data/rbi/privy/models/earn_incentive_rewards_response.rbi +35 -0
  137. data/rbi/privy/models/evm_address.rbi +7 -0
  138. data/rbi/privy/models/evm_checksum_address.rbi +7 -0
  139. data/rbi/privy/models/exchange_stripe_tokens_input.rbi +33 -0
  140. data/rbi/privy/models/exchange_stripe_tokens_response.rbi +24 -0
  141. data/rbi/privy/models/fiat_onramp_provider.rbi +3 -0
  142. data/rbi/privy/models/fiat_onramp_stripe_sdk_session_response.rbi +78 -0
  143. data/rbi/privy/models/fiat_onramp_url_session_response.rbi +65 -0
  144. data/rbi/privy/models/gas.rbi +46 -0
  145. data/rbi/privy/models/get_fiat_onramp_url_response.rbi +12 -15
  146. data/rbi/privy/models/get_stripe_crypto_customer_response.rbi +81 -0
  147. data/rbi/privy/models/hyperliquid_token_address.rbi +7 -0
  148. data/rbi/privy/models/kraken_embed_custom_order_cancelled_webhook_payload.rbi +111 -0
  149. data/rbi/privy/models/kraken_embed_custom_order_executed_webhook_payload.rbi +101 -0
  150. data/rbi/privy/models/kraken_embed_custom_order_execution_failed_webhook_payload.rbi +111 -0
  151. data/rbi/privy/models/link_auth_intent_created.rbi +60 -0
  152. data/rbi/privy/models/link_auth_intent_no_account.rbi +54 -0
  153. data/rbi/privy/models/linked_account_embedded_wallet.rbi +1 -0
  154. data/rbi/privy/models/list_stripe_consumer_wallets_response.rbi +31 -0
  155. data/rbi/privy/models/list_stripe_payment_tokens_response.rbi +31 -0
  156. data/rbi/privy/models/oauth_grant.rbi +78 -0
  157. data/rbi/privy/models/oauth_grant_list_response.rbi +32 -0
  158. data/rbi/privy/models/oauth_grant_revoke_response.rbi +58 -0
  159. data/rbi/privy/models/oauth_token_authorization_code_request_body.rbi +115 -0
  160. data/rbi/privy/models/oauth_token_device_code_pending_error.rbi +106 -0
  161. data/rbi/privy/models/oauth_token_device_code_request_body.rbi +78 -0
  162. data/rbi/privy/models/oauth_token_grant_type.rbi +29 -0
  163. data/rbi/privy/models/oauth_token_refresh_token_request_body.rbi +78 -0
  164. data/rbi/privy/models/oauth_token_request_body.rbi +23 -0
  165. data/rbi/privy/models/oauth_token_success_response.rbi +95 -0
  166. data/rbi/privy/models/onramp_session_fees.rbi +39 -0
  167. data/rbi/privy/models/onramp_session_params.rbi +76 -0
  168. data/rbi/privy/models/onramp_session_transaction_details.rbi +95 -0
  169. data/rbi/privy/models/refresh_stripe_quote_response.rbi +33 -0
  170. data/rbi/privy/models/rule_delete_intent_response.rbi +113 -0
  171. data/rbi/privy/models/rule_mutate_intent_response.rbi +113 -0
  172. data/rbi/privy/models/solana_address.rbi +7 -0
  173. data/rbi/privy/models/stripe_consumer_wallet.rbi +38 -0
  174. data/rbi/privy/models/stripe_crypto_customer_active.rbi +68 -0
  175. data/rbi/privy/models/stripe_crypto_customer_expired.rbi +63 -0
  176. data/rbi/privy/models/stripe_crypto_customer_none.rbi +53 -0
  177. data/rbi/privy/models/stripe_onramp_checkout_response.rbi +51 -0
  178. data/rbi/privy/models/stripe_onramp_session_status.rbi +26 -0
  179. data/rbi/privy/models/stripe_payment_token.rbi +27 -0
  180. data/rbi/privy/models/stripe_quote.rbi +22 -0
  181. data/rbi/privy/models/stripe_transaction_details.rbi +24 -0
  182. data/rbi/privy/models/stripe_verification.rbi +27 -0
  183. data/rbi/privy/models/swap_action_response.rbi +96 -22
  184. data/rbi/privy/models/swap_destination.rbi +26 -7
  185. data/rbi/privy/models/swap_quote_destination.rbi +30 -7
  186. data/rbi/privy/models/swap_quote_request_body.rbi +15 -4
  187. data/rbi/privy/models/swap_quote_response.rbi +71 -5
  188. data/rbi/privy/models/swap_request_body.rbi +15 -4
  189. data/rbi/privy/models/token_transfer_destination.rbi +2 -2
  190. data/rbi/privy/models/transfer_action_response.rbi +57 -2
  191. data/rbi/privy/models/transfer_quote_request_body.rbi +4 -2
  192. data/rbi/privy/models/transfer_quote_response.rbi +16 -3
  193. data/rbi/privy/models/transfer_received_transaction_detail.rbi +15 -0
  194. data/rbi/privy/models/transfer_request_body.rbi +4 -2
  195. data/rbi/privy/models/transfer_sent_transaction_detail.rbi +15 -0
  196. data/rbi/privy/models/tron_address.rbi +7 -0
  197. data/rbi/privy/models/wallet_asset.rbi +1 -0
  198. data/rbi/privy/models/wallet_batch_create_response.rbi +2 -19
  199. data/rbi/privy/models/wallet_batch_create_result.rbi +4 -4
  200. data/rbi/privy/models/wallet_create_batch_params.rbi +27 -0
  201. data/rbi/privy/models/wallet_ethereum_asset.rbi +1 -0
  202. data/rbi/privy/models/wallets/balance_get_params.rbi +22 -0
  203. data/rbi/privy/models/wallets/balance_get_response.rbi +15 -0
  204. data/rbi/privy/models/wallets/swap_execute_params.rbi +71 -0
  205. data/rbi/privy/models/wallets/swap_quote_params.rbi +58 -0
  206. data/rbi/privy/models/wallets/transaction_get_params.rbi +5 -0
  207. data/rbi/privy/models.rbi +127 -5
  208. data/rbi/privy/resources/intents.rbi +7 -4
  209. data/rbi/privy/resources/oauth.rbi +12 -0
  210. data/rbi/privy/resources/onramps.rbi +12 -0
  211. data/rbi/privy/resources/wallets/swap.rbi +94 -0
  212. data/rbi/privy/resources/wallets.rbi +28 -3
  213. data/sig/privy/client.rbs +5 -1
  214. data/sig/privy/models/analytics_event_input.rbs +4 -6
  215. data/sig/privy/models/bitcoin_address.rbs +5 -0
  216. data/sig/privy/models/create_link_auth_intent_input.rbs +15 -0
  217. data/sig/privy/models/create_link_auth_intent_response.rbs +26 -0
  218. data/sig/privy/models/create_stripe_onramp_session_input.rbs +30 -0
  219. data/sig/privy/models/create_stripe_onramp_session_response.rbs +42 -0
  220. data/sig/privy/models/device_authorization_response.rbs +45 -0
  221. data/sig/privy/models/device_verify_action.rbs +14 -0
  222. data/sig/privy/models/device_verify_request_body.rbs +22 -0
  223. data/sig/privy/models/device_verify_response.rbs +13 -0
  224. data/sig/privy/models/earn_incentive_reward_entry.rbs +42 -0
  225. data/sig/privy/models/earn_incentive_rewards_query.rbs +13 -0
  226. data/sig/privy/models/earn_incentive_rewards_response.rbs +16 -0
  227. data/sig/privy/models/evm_address.rbs +5 -0
  228. data/sig/privy/models/evm_checksum_address.rbs +5 -0
  229. data/sig/privy/models/exchange_stripe_tokens_input.rbs +19 -0
  230. data/sig/privy/models/exchange_stripe_tokens_response.rbs +13 -0
  231. data/sig/privy/models/fiat_onramp_provider.rbs +4 -0
  232. data/sig/privy/models/fiat_onramp_stripe_sdk_session_response.rbs +45 -0
  233. data/sig/privy/models/fiat_onramp_url_session_response.rbs +40 -0
  234. data/sig/privy/models/gas.rbs +21 -0
  235. data/sig/privy/models/get_fiat_onramp_url_response.rbs +6 -8
  236. data/sig/privy/models/get_stripe_crypto_customer_response.rbs +29 -0
  237. data/sig/privy/models/hyperliquid_token_address.rbs +5 -0
  238. data/sig/privy/models/kraken_embed_custom_order_cancelled_webhook_payload.rbs +50 -0
  239. data/sig/privy/models/kraken_embed_custom_order_executed_webhook_payload.rbs +45 -0
  240. data/sig/privy/models/kraken_embed_custom_order_execution_failed_webhook_payload.rbs +50 -0
  241. data/sig/privy/models/link_auth_intent_created.rbs +32 -0
  242. data/sig/privy/models/link_auth_intent_no_account.rbs +26 -0
  243. data/sig/privy/models/list_stripe_consumer_wallets_response.rbs +14 -0
  244. data/sig/privy/models/list_stripe_payment_tokens_response.rbs +14 -0
  245. data/sig/privy/models/oauth_grant.rbs +45 -0
  246. data/sig/privy/models/oauth_grant_list_response.rbs +13 -0
  247. data/sig/privy/models/oauth_grant_revoke_response.rbs +28 -0
  248. data/sig/privy/models/oauth_token_authorization_code_request_body.rbs +56 -0
  249. data/sig/privy/models/oauth_token_device_code_pending_error.rbs +48 -0
  250. data/sig/privy/models/oauth_token_device_code_request_body.rbs +35 -0
  251. data/sig/privy/models/oauth_token_grant_type.rbs +18 -0
  252. data/sig/privy/models/oauth_token_refresh_token_request_body.rbs +35 -0
  253. data/sig/privy/models/oauth_token_request_body.rbs +14 -0
  254. data/sig/privy/models/oauth_token_success_response.rbs +49 -0
  255. data/sig/privy/models/onramp_session_fees.rbs +22 -0
  256. data/sig/privy/models/onramp_session_params.rbs +50 -0
  257. data/sig/privy/models/onramp_session_transaction_details.rbs +53 -0
  258. data/sig/privy/models/refresh_stripe_quote_response.rbs +13 -0
  259. data/sig/privy/models/rule_delete_intent_response.rbs +66 -0
  260. data/sig/privy/models/rule_mutate_intent_response.rbs +66 -0
  261. data/sig/privy/models/solana_address.rbs +5 -0
  262. data/sig/privy/models/stripe_consumer_wallet.rbs +22 -0
  263. data/sig/privy/models/stripe_crypto_customer_active.rbs +40 -0
  264. data/sig/privy/models/stripe_crypto_customer_expired.rbs +35 -0
  265. data/sig/privy/models/stripe_crypto_customer_none.rbs +28 -0
  266. data/sig/privy/models/stripe_onramp_checkout_response.rbs +29 -0
  267. data/sig/privy/models/stripe_onramp_session_status.rbs +15 -0
  268. data/sig/privy/models/stripe_payment_token.rbs +15 -0
  269. data/sig/privy/models/stripe_quote.rbs +13 -0
  270. data/sig/privy/models/stripe_transaction_details.rbs +13 -0
  271. data/sig/privy/models/stripe_verification.rbs +15 -0
  272. data/sig/privy/models/swap_action_response.rbs +39 -0
  273. data/sig/privy/models/swap_destination.rbs +16 -3
  274. data/sig/privy/models/swap_quote_destination.rbs +16 -3
  275. data/sig/privy/models/swap_quote_request_body.rbs +14 -5
  276. data/sig/privy/models/swap_quote_response.rbs +33 -3
  277. data/sig/privy/models/swap_request_body.rbs +14 -5
  278. data/sig/privy/models/transfer_action_response.rbs +23 -0
  279. data/sig/privy/models/transfer_quote_response.rbs +10 -3
  280. data/sig/privy/models/transfer_received_transaction_detail.rbs +15 -1
  281. data/sig/privy/models/transfer_sent_transaction_detail.rbs +15 -1
  282. data/sig/privy/models/tron_address.rbs +5 -0
  283. data/sig/privy/models/wallet_asset.rbs +2 -1
  284. data/sig/privy/models/wallet_create_batch_params.rbs +15 -0
  285. data/sig/privy/models/wallet_ethereum_asset.rbs +2 -1
  286. data/sig/privy/models/wallets/balance_get_params.rbs +10 -0
  287. data/sig/privy/models/wallets/balance_get_response.rbs +6 -0
  288. data/sig/privy/models/wallets/swap_execute_params.rbs +44 -0
  289. data/sig/privy/models/wallets/swap_quote_params.rbs +34 -0
  290. data/sig/privy/models/wallets/transaction_get_params.rbs +2 -0
  291. data/sig/privy/models.rbs +115 -5
  292. data/sig/privy/resources/intents.rbs +3 -3
  293. data/sig/privy/resources/oauth.rbs +7 -0
  294. data/sig/privy/resources/onramps.rbs +7 -0
  295. data/sig/privy/resources/wallets/swap.rbs +34 -0
  296. data/sig/privy/resources/wallets.rbs +7 -0
  297. metadata +194 -8
  298. data/lib/privy/models/gas_sponsorship_configuration.rb +0 -29
  299. data/lib/privy/models/gas_sponsorship_configuration_input.rb +0 -29
  300. data/rbi/privy/models/gas_sponsorship_configuration.rbi +0 -48
  301. data/rbi/privy/models/gas_sponsorship_configuration_input.rbi +0 -60
  302. data/sig/privy/models/gas_sponsorship_configuration.rbs +0 -30
  303. data/sig/privy/models/gas_sponsorship_configuration_input.rbs +0 -36
@@ -0,0 +1,39 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class OnrampSessionFees < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Privy::OnrampSessionFees, Privy::Internal::AnyHash)
9
+ end
10
+
11
+ sig { returns(T.nilable(String)) }
12
+ attr_accessor :network_fee_amount
13
+
14
+ sig { returns(T.nilable(String)) }
15
+ attr_accessor :transaction_fee_amount
16
+
17
+ # Fee breakdown for a Stripe onramp transaction.
18
+ sig do
19
+ params(
20
+ network_fee_amount: T.nilable(String),
21
+ transaction_fee_amount: T.nilable(String)
22
+ ).returns(T.attached_class)
23
+ end
24
+ def self.new(network_fee_amount:, transaction_fee_amount:)
25
+ end
26
+
27
+ sig do
28
+ override.returns(
29
+ {
30
+ network_fee_amount: T.nilable(String),
31
+ transaction_fee_amount: T.nilable(String)
32
+ }
33
+ )
34
+ end
35
+ def to_hash
36
+ end
37
+ end
38
+ end
39
+ end
@@ -0,0 +1,76 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class OnrampSessionParams < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Privy::OnrampSessionParams, Privy::Internal::AnyHash)
9
+ end
10
+
11
+ sig { returns(String) }
12
+ attr_accessor :crypto_customer_id
13
+
14
+ # Cryptocurrency symbol. Uppercase alphanumeric, 2-10 characters.
15
+ sig { returns(String) }
16
+ attr_accessor :destination_currency
17
+
18
+ sig { returns(String) }
19
+ attr_accessor :destination_network
20
+
21
+ sig { returns(String) }
22
+ attr_accessor :payment_token
23
+
24
+ sig { returns(String) }
25
+ attr_accessor :source_amount
26
+
27
+ # ISO 4217 fiat currency code. Three uppercase ASCII letters.
28
+ sig { returns(String) }
29
+ attr_accessor :source_currency
30
+
31
+ sig { returns(String) }
32
+ attr_accessor :wallet_address
33
+
34
+ # Parameters for creating a Stripe onramp session.
35
+ sig do
36
+ params(
37
+ crypto_customer_id: String,
38
+ destination_currency: String,
39
+ destination_network: String,
40
+ payment_token: String,
41
+ source_amount: String,
42
+ source_currency: String,
43
+ wallet_address: String
44
+ ).returns(T.attached_class)
45
+ end
46
+ def self.new(
47
+ crypto_customer_id:,
48
+ # Cryptocurrency symbol. Uppercase alphanumeric, 2-10 characters.
49
+ destination_currency:,
50
+ destination_network:,
51
+ payment_token:,
52
+ source_amount:,
53
+ # ISO 4217 fiat currency code. Three uppercase ASCII letters.
54
+ source_currency:,
55
+ wallet_address:
56
+ )
57
+ end
58
+
59
+ sig do
60
+ override.returns(
61
+ {
62
+ crypto_customer_id: String,
63
+ destination_currency: String,
64
+ destination_network: String,
65
+ payment_token: String,
66
+ source_amount: String,
67
+ source_currency: String,
68
+ wallet_address: String
69
+ }
70
+ )
71
+ end
72
+ def to_hash
73
+ end
74
+ end
75
+ end
76
+ end
@@ -0,0 +1,95 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class OnrampSessionTransactionDetails < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Privy::OnrampSessionTransactionDetails,
10
+ Privy::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ sig { returns(T.nilable(String)) }
15
+ attr_accessor :destination_amount
16
+
17
+ sig { returns(T.nilable(String)) }
18
+ attr_accessor :destination_currency
19
+
20
+ sig { returns(T.nilable(String)) }
21
+ attr_accessor :destination_network
22
+
23
+ # Fee breakdown for a Stripe onramp transaction.
24
+ sig { returns(Privy::OnrampSessionTransactionDetails::Fees) }
25
+ attr_reader :fees
26
+
27
+ sig do
28
+ params(fees: Privy::OnrampSessionTransactionDetails::Fees::OrHash).void
29
+ end
30
+ attr_writer :fees
31
+
32
+ sig { returns(T.nilable(String)) }
33
+ attr_accessor :source_amount
34
+
35
+ sig { returns(T.nilable(String)) }
36
+ attr_accessor :source_currency
37
+
38
+ # Transaction details returned from a Stripe onramp session.
39
+ sig do
40
+ params(
41
+ destination_amount: T.nilable(String),
42
+ destination_currency: T.nilable(String),
43
+ destination_network: T.nilable(String),
44
+ fees: Privy::OnrampSessionTransactionDetails::Fees::OrHash,
45
+ source_amount: T.nilable(String),
46
+ source_currency: T.nilable(String)
47
+ ).returns(T.attached_class)
48
+ end
49
+ def self.new(
50
+ destination_amount:,
51
+ destination_currency:,
52
+ destination_network:,
53
+ # Fee breakdown for a Stripe onramp transaction.
54
+ fees:,
55
+ source_amount:,
56
+ source_currency:
57
+ )
58
+ end
59
+
60
+ sig do
61
+ override.returns(
62
+ {
63
+ destination_amount: T.nilable(String),
64
+ destination_currency: T.nilable(String),
65
+ destination_network: T.nilable(String),
66
+ fees: Privy::OnrampSessionTransactionDetails::Fees,
67
+ source_amount: T.nilable(String),
68
+ source_currency: T.nilable(String)
69
+ }
70
+ )
71
+ end
72
+ def to_hash
73
+ end
74
+
75
+ class Fees < Privy::Models::OnrampSessionFees
76
+ OrHash =
77
+ T.type_alias do
78
+ T.any(
79
+ Privy::OnrampSessionTransactionDetails::Fees,
80
+ Privy::Internal::AnyHash
81
+ )
82
+ end
83
+
84
+ # Fee breakdown for a Stripe onramp transaction.
85
+ sig { returns(T.attached_class) }
86
+ def self.new
87
+ end
88
+
89
+ sig { override.returns({}) }
90
+ def to_hash
91
+ end
92
+ end
93
+ end
94
+ end
95
+ end
@@ -0,0 +1,33 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class RefreshStripeQuoteResponse < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Privy::RefreshStripeQuoteResponse, Privy::Internal::AnyHash)
9
+ end
10
+
11
+ # A refreshed quote.
12
+ sig { returns(Privy::StripeQuote) }
13
+ attr_reader :quote
14
+
15
+ sig { params(quote: Privy::StripeQuote::OrHash).void }
16
+ attr_writer :quote
17
+
18
+ # Refreshed quote with new expiry.
19
+ sig do
20
+ params(quote: Privy::StripeQuote::OrHash).returns(T.attached_class)
21
+ end
22
+ def self.new(
23
+ # A refreshed quote.
24
+ quote:
25
+ )
26
+ end
27
+
28
+ sig { override.returns({ quote: Privy::StripeQuote }) }
29
+ def to_hash
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,113 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class RuleDeleteIntentResponse < Privy::Models::BaseIntentResponse
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Privy::RuleDeleteIntentResponse, Privy::Internal::AnyHash)
9
+ end
10
+
11
+ sig { returns(Privy::RuleDeleteIntentResponse::IntentType::TaggedSymbol) }
12
+ attr_accessor :intent_type
13
+
14
+ # Request details for deleting a rule via intent.
15
+ sig { returns(Privy::RuleIntentDeleteRequestDetails) }
16
+ attr_reader :request_details
17
+
18
+ sig do
19
+ params(
20
+ request_details: Privy::RuleIntentDeleteRequestDetails::OrHash
21
+ ).void
22
+ end
23
+ attr_writer :request_details
24
+
25
+ # Result of rule execution (only present if status is 'executed' or 'failed')
26
+ sig { returns(T.nilable(Privy::BaseActionResult)) }
27
+ attr_reader :action_result
28
+
29
+ sig { params(action_result: Privy::BaseActionResult::OrHash).void }
30
+ attr_writer :action_result
31
+
32
+ # A rule that defines the conditions and action to take if the conditions are
33
+ # true.
34
+ sig { returns(T.nilable(Privy::PolicyRuleResponse)) }
35
+ attr_reader :current_resource_data
36
+
37
+ sig do
38
+ params(current_resource_data: Privy::PolicyRuleResponse::OrHash).void
39
+ end
40
+ attr_writer :current_resource_data
41
+
42
+ # A policy for controlling wallet operations.
43
+ sig { returns(T.nilable(Privy::Policy)) }
44
+ attr_reader :policy
45
+
46
+ sig { params(policy: Privy::Policy::OrHash).void }
47
+ attr_writer :policy
48
+
49
+ # Response for a delete rule intent
50
+ sig do
51
+ params(
52
+ intent_type: Privy::RuleDeleteIntentResponse::IntentType::OrSymbol,
53
+ request_details: Privy::RuleIntentDeleteRequestDetails::OrHash,
54
+ action_result: Privy::BaseActionResult::OrHash,
55
+ current_resource_data: Privy::PolicyRuleResponse::OrHash,
56
+ policy: Privy::Policy::OrHash
57
+ ).returns(T.attached_class)
58
+ end
59
+ def self.new(
60
+ intent_type:,
61
+ # Request details for deleting a rule via intent.
62
+ request_details:,
63
+ # Result of rule execution (only present if status is 'executed' or 'failed')
64
+ action_result: nil,
65
+ # A rule that defines the conditions and action to take if the conditions are
66
+ # true.
67
+ current_resource_data: nil,
68
+ # A policy for controlling wallet operations.
69
+ policy: nil
70
+ )
71
+ end
72
+
73
+ sig do
74
+ override.returns(
75
+ {
76
+ intent_type:
77
+ Privy::RuleDeleteIntentResponse::IntentType::TaggedSymbol,
78
+ request_details: Privy::RuleIntentDeleteRequestDetails,
79
+ action_result: Privy::BaseActionResult,
80
+ current_resource_data: Privy::PolicyRuleResponse,
81
+ policy: Privy::Policy
82
+ }
83
+ )
84
+ end
85
+ def to_hash
86
+ end
87
+
88
+ module IntentType
89
+ extend Privy::Internal::Type::Enum
90
+
91
+ TaggedSymbol =
92
+ T.type_alias do
93
+ T.all(Symbol, Privy::RuleDeleteIntentResponse::IntentType)
94
+ end
95
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
96
+
97
+ RULE =
98
+ T.let(
99
+ :RULE,
100
+ Privy::RuleDeleteIntentResponse::IntentType::TaggedSymbol
101
+ )
102
+
103
+ sig do
104
+ override.returns(
105
+ T::Array[Privy::RuleDeleteIntentResponse::IntentType::TaggedSymbol]
106
+ )
107
+ end
108
+ def self.values
109
+ end
110
+ end
111
+ end
112
+ end
113
+ end
@@ -0,0 +1,113 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class RuleMutateIntentResponse < Privy::Models::BaseIntentResponse
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Privy::RuleMutateIntentResponse, Privy::Internal::AnyHash)
9
+ end
10
+
11
+ sig { returns(Privy::RuleMutateIntentResponse::IntentType::TaggedSymbol) }
12
+ attr_accessor :intent_type
13
+
14
+ # The original rule request. Method is POST (create), PATCH (update), or DELETE
15
+ # (delete)
16
+ sig { returns(Privy::RuleIntentRequestDetails::Variants) }
17
+ attr_accessor :request_details
18
+
19
+ # Result of rule execution (only present if status is 'executed' or 'failed')
20
+ sig { returns(T.nilable(Privy::BaseActionResult)) }
21
+ attr_reader :action_result
22
+
23
+ sig { params(action_result: Privy::BaseActionResult::OrHash).void }
24
+ attr_writer :action_result
25
+
26
+ # A rule that defines the conditions and action to take if the conditions are
27
+ # true.
28
+ sig { returns(T.nilable(Privy::PolicyRuleResponse)) }
29
+ attr_reader :current_resource_data
30
+
31
+ sig do
32
+ params(current_resource_data: Privy::PolicyRuleResponse::OrHash).void
33
+ end
34
+ attr_writer :current_resource_data
35
+
36
+ # A policy for controlling wallet operations.
37
+ sig { returns(T.nilable(Privy::Policy)) }
38
+ attr_reader :policy
39
+
40
+ sig { params(policy: Privy::Policy::OrHash).void }
41
+ attr_writer :policy
42
+
43
+ # Response for a create or update rule intent
44
+ sig do
45
+ params(
46
+ intent_type: Privy::RuleMutateIntentResponse::IntentType::OrSymbol,
47
+ request_details:
48
+ T.any(
49
+ Privy::RuleIntentCreateRequestDetails::OrHash,
50
+ Privy::RuleIntentUpdateRequestDetails::OrHash,
51
+ Privy::RuleIntentDeleteRequestDetails::OrHash
52
+ ),
53
+ action_result: Privy::BaseActionResult::OrHash,
54
+ current_resource_data: Privy::PolicyRuleResponse::OrHash,
55
+ policy: Privy::Policy::OrHash
56
+ ).returns(T.attached_class)
57
+ end
58
+ def self.new(
59
+ intent_type:,
60
+ # The original rule request. Method is POST (create), PATCH (update), or DELETE
61
+ # (delete)
62
+ request_details:,
63
+ # Result of rule execution (only present if status is 'executed' or 'failed')
64
+ action_result: nil,
65
+ # A rule that defines the conditions and action to take if the conditions are
66
+ # true.
67
+ current_resource_data: nil,
68
+ # A policy for controlling wallet operations.
69
+ policy: nil
70
+ )
71
+ end
72
+
73
+ sig do
74
+ override.returns(
75
+ {
76
+ intent_type:
77
+ Privy::RuleMutateIntentResponse::IntentType::TaggedSymbol,
78
+ request_details: Privy::RuleIntentRequestDetails::Variants,
79
+ action_result: Privy::BaseActionResult,
80
+ current_resource_data: Privy::PolicyRuleResponse,
81
+ policy: Privy::Policy
82
+ }
83
+ )
84
+ end
85
+ def to_hash
86
+ end
87
+
88
+ module IntentType
89
+ extend Privy::Internal::Type::Enum
90
+
91
+ TaggedSymbol =
92
+ T.type_alias do
93
+ T.all(Symbol, Privy::RuleMutateIntentResponse::IntentType)
94
+ end
95
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
96
+
97
+ RULE =
98
+ T.let(
99
+ :RULE,
100
+ Privy::RuleMutateIntentResponse::IntentType::TaggedSymbol
101
+ )
102
+
103
+ sig do
104
+ override.returns(
105
+ T::Array[Privy::RuleMutateIntentResponse::IntentType::TaggedSymbol]
106
+ )
107
+ end
108
+ def self.values
109
+ end
110
+ end
111
+ end
112
+ end
113
+ end
@@ -0,0 +1,7 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ SolanaAddress = String
6
+ end
7
+ end
@@ -0,0 +1,38 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class StripeConsumerWallet < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Privy::StripeConsumerWallet, Privy::Internal::AnyHash)
9
+ end
10
+
11
+ sig { returns(String) }
12
+ attr_accessor :id
13
+
14
+ sig { returns(String) }
15
+ attr_accessor :network
16
+
17
+ sig { returns(String) }
18
+ attr_accessor :wallet_address
19
+
20
+ # A registered consumer wallet.
21
+ sig do
22
+ params(id: String, network: String, wallet_address: String).returns(
23
+ T.attached_class
24
+ )
25
+ end
26
+ def self.new(id:, network:, wallet_address:)
27
+ end
28
+
29
+ sig do
30
+ override.returns(
31
+ { id: String, network: String, wallet_address: String }
32
+ )
33
+ end
34
+ def to_hash
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,68 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class StripeCryptoCustomerActive < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Privy::StripeCryptoCustomerActive, Privy::Internal::AnyHash)
9
+ end
10
+
11
+ sig { returns(String) }
12
+ attr_accessor :crypto_customer_id
13
+
14
+ sig { returns(Privy::StripeCryptoCustomerActive::Status::OrSymbol) }
15
+ attr_accessor :status
16
+
17
+ sig { returns(T::Array[Privy::StripeVerification]) }
18
+ attr_accessor :verifications
19
+
20
+ # Active onramp session with customer verifications.
21
+ sig do
22
+ params(
23
+ crypto_customer_id: String,
24
+ status: Privy::StripeCryptoCustomerActive::Status::OrSymbol,
25
+ verifications: T::Array[Privy::StripeVerification::OrHash]
26
+ ).returns(T.attached_class)
27
+ end
28
+ def self.new(crypto_customer_id:, status:, verifications:)
29
+ end
30
+
31
+ sig do
32
+ override.returns(
33
+ {
34
+ crypto_customer_id: String,
35
+ status: Privy::StripeCryptoCustomerActive::Status::OrSymbol,
36
+ verifications: T::Array[Privy::StripeVerification]
37
+ }
38
+ )
39
+ end
40
+ def to_hash
41
+ end
42
+
43
+ module Status
44
+ extend Privy::Internal::Type::Enum
45
+
46
+ TaggedSymbol =
47
+ T.type_alias do
48
+ T.all(Symbol, Privy::StripeCryptoCustomerActive::Status)
49
+ end
50
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
51
+
52
+ ACTIVE =
53
+ T.let(
54
+ :active,
55
+ Privy::StripeCryptoCustomerActive::Status::TaggedSymbol
56
+ )
57
+
58
+ sig do
59
+ override.returns(
60
+ T::Array[Privy::StripeCryptoCustomerActive::Status::TaggedSymbol]
61
+ )
62
+ end
63
+ def self.values
64
+ end
65
+ end
66
+ end
67
+ end
68
+ end
@@ -0,0 +1,63 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class StripeCryptoCustomerExpired < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Privy::StripeCryptoCustomerExpired, Privy::Internal::AnyHash)
9
+ end
10
+
11
+ sig { returns(String) }
12
+ attr_accessor :crypto_customer_id
13
+
14
+ sig { returns(Privy::StripeCryptoCustomerExpired::Status::OrSymbol) }
15
+ attr_accessor :status
16
+
17
+ # Expired onramp session. Token refresh failed, re-authentication required.
18
+ sig do
19
+ params(
20
+ crypto_customer_id: String,
21
+ status: Privy::StripeCryptoCustomerExpired::Status::OrSymbol
22
+ ).returns(T.attached_class)
23
+ end
24
+ def self.new(crypto_customer_id:, status:)
25
+ end
26
+
27
+ sig do
28
+ override.returns(
29
+ {
30
+ crypto_customer_id: String,
31
+ status: Privy::StripeCryptoCustomerExpired::Status::OrSymbol
32
+ }
33
+ )
34
+ end
35
+ def to_hash
36
+ end
37
+
38
+ module Status
39
+ extend Privy::Internal::Type::Enum
40
+
41
+ TaggedSymbol =
42
+ T.type_alias do
43
+ T.all(Symbol, Privy::StripeCryptoCustomerExpired::Status)
44
+ end
45
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
46
+
47
+ EXPIRED =
48
+ T.let(
49
+ :expired,
50
+ Privy::StripeCryptoCustomerExpired::Status::TaggedSymbol
51
+ )
52
+
53
+ sig do
54
+ override.returns(
55
+ T::Array[Privy::StripeCryptoCustomerExpired::Status::TaggedSymbol]
56
+ )
57
+ end
58
+ def self.values
59
+ end
60
+ end
61
+ end
62
+ end
63
+ end
@@ -0,0 +1,53 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class StripeCryptoCustomerNone < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Privy::StripeCryptoCustomerNone, Privy::Internal::AnyHash)
9
+ end
10
+
11
+ sig { returns(Privy::StripeCryptoCustomerNone::Status::OrSymbol) }
12
+ attr_accessor :status
13
+
14
+ # No onramp session. User must authenticate via Link.
15
+ sig do
16
+ params(
17
+ status: Privy::StripeCryptoCustomerNone::Status::OrSymbol
18
+ ).returns(T.attached_class)
19
+ end
20
+ def self.new(status:)
21
+ end
22
+
23
+ sig do
24
+ override.returns(
25
+ { status: Privy::StripeCryptoCustomerNone::Status::OrSymbol }
26
+ )
27
+ end
28
+ def to_hash
29
+ end
30
+
31
+ module Status
32
+ extend Privy::Internal::Type::Enum
33
+
34
+ TaggedSymbol =
35
+ T.type_alias do
36
+ T.all(Symbol, Privy::StripeCryptoCustomerNone::Status)
37
+ end
38
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
39
+
40
+ NONE =
41
+ T.let(:none, Privy::StripeCryptoCustomerNone::Status::TaggedSymbol)
42
+
43
+ sig do
44
+ override.returns(
45
+ T::Array[Privy::StripeCryptoCustomerNone::Status::TaggedSymbol]
46
+ )
47
+ end
48
+ def self.values
49
+ end
50
+ end
51
+ end
52
+ end
53
+ end