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,46 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class Gas < Privy::Internal::Type::BaseModel
6
+ OrHash = T.type_alias { T.any(Privy::Gas, Privy::Internal::AnyHash) }
7
+
8
+ # Gas cost in the gas token as a human-readable decimal string (e.g. "0.0001").
9
+ sig { returns(String) }
10
+ attr_accessor :amount
11
+
12
+ # Gas cost in the gas token's base units (e.g. wei).
13
+ sig { returns(String) }
14
+ attr_accessor :base_amount
15
+
16
+ # Gas token symbol (e.g. "ETH", "USDC").
17
+ sig { returns(String) }
18
+ attr_accessor :gas_asset
19
+
20
+ # Gas cost for a blockchain action. Includes both raw base-unit amount and a
21
+ # human-readable decimal string, plus the gas token symbol.
22
+ sig do
23
+ params(amount: String, base_amount: String, gas_asset: String).returns(
24
+ T.attached_class
25
+ )
26
+ end
27
+ def self.new(
28
+ # Gas cost in the gas token as a human-readable decimal string (e.g. "0.0001").
29
+ amount:,
30
+ # Gas cost in the gas token's base units (e.g. wei).
31
+ base_amount:,
32
+ # Gas token symbol (e.g. "ETH", "USDC").
33
+ gas_asset:
34
+ )
35
+ end
36
+
37
+ sig do
38
+ override.returns(
39
+ { amount: String, base_amount: String, gas_asset: String }
40
+ )
41
+ end
42
+ def to_hash
43
+ end
44
+ end
45
+ end
46
+ end
@@ -2,25 +2,22 @@
2
2
 
3
3
  module Privy
4
4
  module Models
5
- class GetFiatOnrampURLResponse < Privy::Internal::Type::BaseModel
6
- OrHash =
5
+ # Provider session initialization — either a hosted URL or embedded SDK config.
6
+ module GetFiatOnrampURLResponse
7
+ extend Privy::Internal::Type::Union
8
+
9
+ Variants =
7
10
  T.type_alias do
8
- T.any(Privy::GetFiatOnrampURLResponse, Privy::Internal::AnyHash)
11
+ T.any(
12
+ Privy::FiatOnrampURLSessionResponse,
13
+ Privy::FiatOnrampStripeSDKSessionResponse
14
+ )
9
15
  end
10
16
 
11
- sig { returns(String) }
12
- attr_accessor :session_id
13
-
14
- sig { returns(String) }
15
- attr_accessor :url
16
-
17
- # The response containing a fiat onramp provider session URL.
18
- sig { params(session_id: String, url: String).returns(T.attached_class) }
19
- def self.new(session_id:, url:)
17
+ sig do
18
+ override.returns(T::Array[Privy::GetFiatOnrampURLResponse::Variants])
20
19
  end
21
-
22
- sig { override.returns({ session_id: String, url: String }) }
23
- def to_hash
20
+ def self.variants
24
21
  end
25
22
  end
26
23
  end
@@ -0,0 +1,81 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class GetStripeCryptoCustomerResponse < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Privy::GetStripeCryptoCustomerResponse,
10
+ Privy::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # Active onramp session with customer verifications.
15
+ sig do
16
+ returns(
17
+ T.any(
18
+ Privy::StripeCryptoCustomerActive,
19
+ Privy::StripeCryptoCustomerExpired,
20
+ Privy::StripeCryptoCustomerNone
21
+ )
22
+ )
23
+ end
24
+ attr_accessor :data
25
+
26
+ # Stripe onramp session status and customer verification info.
27
+ sig do
28
+ params(
29
+ data:
30
+ T.any(
31
+ Privy::StripeCryptoCustomerActive::OrHash,
32
+ Privy::StripeCryptoCustomerExpired::OrHash,
33
+ Privy::StripeCryptoCustomerNone::OrHash
34
+ )
35
+ ).returns(T.attached_class)
36
+ end
37
+ def self.new(
38
+ # Active onramp session with customer verifications.
39
+ data:
40
+ )
41
+ end
42
+
43
+ sig do
44
+ override.returns(
45
+ {
46
+ data:
47
+ T.any(
48
+ Privy::StripeCryptoCustomerActive,
49
+ Privy::StripeCryptoCustomerExpired,
50
+ Privy::StripeCryptoCustomerNone
51
+ )
52
+ }
53
+ )
54
+ end
55
+ def to_hash
56
+ end
57
+
58
+ # Active onramp session with customer verifications.
59
+ module Data
60
+ extend Privy::Internal::Type::Union
61
+
62
+ Variants =
63
+ T.type_alias do
64
+ T.any(
65
+ Privy::StripeCryptoCustomerActive,
66
+ Privy::StripeCryptoCustomerExpired,
67
+ Privy::StripeCryptoCustomerNone
68
+ )
69
+ end
70
+
71
+ sig do
72
+ override.returns(
73
+ T::Array[Privy::GetStripeCryptoCustomerResponse::Data::Variants]
74
+ )
75
+ end
76
+ def self.variants
77
+ end
78
+ end
79
+ end
80
+ end
81
+ end
@@ -0,0 +1,7 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ HyperliquidTokenAddress = String
6
+ end
7
+ end
@@ -0,0 +1,111 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class KrakenEmbedCustomOrderCancelledWebhookPayload < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Privy::KrakenEmbedCustomOrderCancelledWebhookPayload,
10
+ Privy::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # ISO 8601 timestamp of when the custom order was cancelled.
15
+ sig { returns(String) }
16
+ attr_accessor :cancelled_at
17
+
18
+ # The ID of the cancelled custom order.
19
+ sig { returns(String) }
20
+ attr_accessor :custom_order_id
21
+
22
+ # A human-readable description of why the custom order was cancelled. Intended for
23
+ # display and logging purposes only.
24
+ sig { returns(String) }
25
+ attr_accessor :reason
26
+
27
+ # The type of webhook event.
28
+ sig do
29
+ returns(
30
+ Privy::KrakenEmbedCustomOrderCancelledWebhookPayload::Type::OrSymbol
31
+ )
32
+ end
33
+ attr_accessor :type
34
+
35
+ # The ID of the user.
36
+ sig { returns(String) }
37
+ attr_accessor :user_id
38
+
39
+ # Payload for the kraken_embed.custom_order.cancelled webhook event.
40
+ sig do
41
+ params(
42
+ cancelled_at: String,
43
+ custom_order_id: String,
44
+ reason: String,
45
+ type:
46
+ Privy::KrakenEmbedCustomOrderCancelledWebhookPayload::Type::OrSymbol,
47
+ user_id: String
48
+ ).returns(T.attached_class)
49
+ end
50
+ def self.new(
51
+ # ISO 8601 timestamp of when the custom order was cancelled.
52
+ cancelled_at:,
53
+ # The ID of the cancelled custom order.
54
+ custom_order_id:,
55
+ # A human-readable description of why the custom order was cancelled. Intended for
56
+ # display and logging purposes only.
57
+ reason:,
58
+ # The type of webhook event.
59
+ type:,
60
+ # The ID of the user.
61
+ user_id:
62
+ )
63
+ end
64
+
65
+ sig do
66
+ override.returns(
67
+ {
68
+ cancelled_at: String,
69
+ custom_order_id: String,
70
+ reason: String,
71
+ type:
72
+ Privy::KrakenEmbedCustomOrderCancelledWebhookPayload::Type::OrSymbol,
73
+ user_id: String
74
+ }
75
+ )
76
+ end
77
+ def to_hash
78
+ end
79
+
80
+ # The type of webhook event.
81
+ module Type
82
+ extend Privy::Internal::Type::Enum
83
+
84
+ TaggedSymbol =
85
+ T.type_alias do
86
+ T.all(
87
+ Symbol,
88
+ Privy::KrakenEmbedCustomOrderCancelledWebhookPayload::Type
89
+ )
90
+ end
91
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
92
+
93
+ KRAKEN_EMBED_CUSTOM_ORDER_CANCELLED =
94
+ T.let(
95
+ :"kraken_embed.custom_order.cancelled",
96
+ Privy::KrakenEmbedCustomOrderCancelledWebhookPayload::Type::TaggedSymbol
97
+ )
98
+
99
+ sig do
100
+ override.returns(
101
+ T::Array[
102
+ Privy::KrakenEmbedCustomOrderCancelledWebhookPayload::Type::TaggedSymbol
103
+ ]
104
+ )
105
+ end
106
+ def self.values
107
+ end
108
+ end
109
+ end
110
+ end
111
+ end
@@ -0,0 +1,101 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class KrakenEmbedCustomOrderExecutedWebhookPayload < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Privy::KrakenEmbedCustomOrderExecutedWebhookPayload,
10
+ Privy::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # The ID of the executed custom order.
15
+ sig { returns(String) }
16
+ attr_accessor :custom_order_id
17
+
18
+ # ISO 8601 timestamp of when the custom order was executed.
19
+ sig { returns(String) }
20
+ attr_accessor :executed_at
21
+
22
+ # The type of webhook event.
23
+ sig do
24
+ returns(
25
+ Privy::KrakenEmbedCustomOrderExecutedWebhookPayload::Type::OrSymbol
26
+ )
27
+ end
28
+ attr_accessor :type
29
+
30
+ # The ID of the user.
31
+ sig { returns(String) }
32
+ attr_accessor :user_id
33
+
34
+ # Payload for the kraken_embed.custom_order.executed webhook event.
35
+ sig do
36
+ params(
37
+ custom_order_id: String,
38
+ executed_at: String,
39
+ type:
40
+ Privy::KrakenEmbedCustomOrderExecutedWebhookPayload::Type::OrSymbol,
41
+ user_id: String
42
+ ).returns(T.attached_class)
43
+ end
44
+ def self.new(
45
+ # The ID of the executed custom order.
46
+ custom_order_id:,
47
+ # ISO 8601 timestamp of when the custom order was executed.
48
+ executed_at:,
49
+ # The type of webhook event.
50
+ type:,
51
+ # The ID of the user.
52
+ user_id:
53
+ )
54
+ end
55
+
56
+ sig do
57
+ override.returns(
58
+ {
59
+ custom_order_id: String,
60
+ executed_at: String,
61
+ type:
62
+ Privy::KrakenEmbedCustomOrderExecutedWebhookPayload::Type::OrSymbol,
63
+ user_id: String
64
+ }
65
+ )
66
+ end
67
+ def to_hash
68
+ end
69
+
70
+ # The type of webhook event.
71
+ module Type
72
+ extend Privy::Internal::Type::Enum
73
+
74
+ TaggedSymbol =
75
+ T.type_alias do
76
+ T.all(
77
+ Symbol,
78
+ Privy::KrakenEmbedCustomOrderExecutedWebhookPayload::Type
79
+ )
80
+ end
81
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
82
+
83
+ KRAKEN_EMBED_CUSTOM_ORDER_EXECUTED =
84
+ T.let(
85
+ :"kraken_embed.custom_order.executed",
86
+ Privy::KrakenEmbedCustomOrderExecutedWebhookPayload::Type::TaggedSymbol
87
+ )
88
+
89
+ sig do
90
+ override.returns(
91
+ T::Array[
92
+ Privy::KrakenEmbedCustomOrderExecutedWebhookPayload::Type::TaggedSymbol
93
+ ]
94
+ )
95
+ end
96
+ def self.values
97
+ end
98
+ end
99
+ end
100
+ end
101
+ end
@@ -0,0 +1,111 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class KrakenEmbedCustomOrderExecutionFailedWebhookPayload < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Privy::KrakenEmbedCustomOrderExecutionFailedWebhookPayload,
10
+ Privy::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # The ID of the custom order that failed to execute.
15
+ sig { returns(String) }
16
+ attr_accessor :custom_order_id
17
+
18
+ # ISO 8601 timestamp of when the custom order execution failed.
19
+ sig { returns(String) }
20
+ attr_accessor :failed_at
21
+
22
+ # A human-readable description of why the custom order execution failed. Intended
23
+ # for display and logging purposes only.
24
+ sig { returns(String) }
25
+ attr_accessor :reason
26
+
27
+ # The type of webhook event.
28
+ sig do
29
+ returns(
30
+ Privy::KrakenEmbedCustomOrderExecutionFailedWebhookPayload::Type::OrSymbol
31
+ )
32
+ end
33
+ attr_accessor :type
34
+
35
+ # The ID of the user.
36
+ sig { returns(String) }
37
+ attr_accessor :user_id
38
+
39
+ # Payload for the kraken_embed.custom_order.execution_failed webhook event.
40
+ sig do
41
+ params(
42
+ custom_order_id: String,
43
+ failed_at: String,
44
+ reason: String,
45
+ type:
46
+ Privy::KrakenEmbedCustomOrderExecutionFailedWebhookPayload::Type::OrSymbol,
47
+ user_id: String
48
+ ).returns(T.attached_class)
49
+ end
50
+ def self.new(
51
+ # The ID of the custom order that failed to execute.
52
+ custom_order_id:,
53
+ # ISO 8601 timestamp of when the custom order execution failed.
54
+ failed_at:,
55
+ # A human-readable description of why the custom order execution failed. Intended
56
+ # for display and logging purposes only.
57
+ reason:,
58
+ # The type of webhook event.
59
+ type:,
60
+ # The ID of the user.
61
+ user_id:
62
+ )
63
+ end
64
+
65
+ sig do
66
+ override.returns(
67
+ {
68
+ custom_order_id: String,
69
+ failed_at: String,
70
+ reason: String,
71
+ type:
72
+ Privy::KrakenEmbedCustomOrderExecutionFailedWebhookPayload::Type::OrSymbol,
73
+ user_id: String
74
+ }
75
+ )
76
+ end
77
+ def to_hash
78
+ end
79
+
80
+ # The type of webhook event.
81
+ module Type
82
+ extend Privy::Internal::Type::Enum
83
+
84
+ TaggedSymbol =
85
+ T.type_alias do
86
+ T.all(
87
+ Symbol,
88
+ Privy::KrakenEmbedCustomOrderExecutionFailedWebhookPayload::Type
89
+ )
90
+ end
91
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
92
+
93
+ KRAKEN_EMBED_CUSTOM_ORDER_EXECUTION_FAILED =
94
+ T.let(
95
+ :"kraken_embed.custom_order.execution_failed",
96
+ Privy::KrakenEmbedCustomOrderExecutionFailedWebhookPayload::Type::TaggedSymbol
97
+ )
98
+
99
+ sig do
100
+ override.returns(
101
+ T::Array[
102
+ Privy::KrakenEmbedCustomOrderExecutionFailedWebhookPayload::Type::TaggedSymbol
103
+ ]
104
+ )
105
+ end
106
+ def self.values
107
+ end
108
+ end
109
+ end
110
+ end
111
+ end
@@ -0,0 +1,60 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class LinkAuthIntentCreated < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Privy::LinkAuthIntentCreated, Privy::Internal::AnyHash)
9
+ end
10
+
11
+ # The Link auth intent ID.
12
+ sig { returns(String) }
13
+ attr_accessor :id
14
+
15
+ sig { returns(Privy::LinkAuthIntentCreated::Status::OrSymbol) }
16
+ attr_accessor :status
17
+
18
+ # Auth intent created. Pass id to authenticate().
19
+ sig do
20
+ params(
21
+ id: String,
22
+ status: Privy::LinkAuthIntentCreated::Status::OrSymbol
23
+ ).returns(T.attached_class)
24
+ end
25
+ def self.new(
26
+ # The Link auth intent ID.
27
+ id:,
28
+ status:
29
+ )
30
+ end
31
+
32
+ sig do
33
+ override.returns(
34
+ { id: String, status: Privy::LinkAuthIntentCreated::Status::OrSymbol }
35
+ )
36
+ end
37
+ def to_hash
38
+ end
39
+
40
+ module Status
41
+ extend Privy::Internal::Type::Enum
42
+
43
+ TaggedSymbol =
44
+ T.type_alias { T.all(Symbol, Privy::LinkAuthIntentCreated::Status) }
45
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
46
+
47
+ CREATED =
48
+ T.let(:created, Privy::LinkAuthIntentCreated::Status::TaggedSymbol)
49
+
50
+ sig do
51
+ override.returns(
52
+ T::Array[Privy::LinkAuthIntentCreated::Status::TaggedSymbol]
53
+ )
54
+ end
55
+ def self.values
56
+ end
57
+ end
58
+ end
59
+ end
60
+ end
@@ -0,0 +1,54 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class LinkAuthIntentNoAccount < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Privy::LinkAuthIntentNoAccount, Privy::Internal::AnyHash)
9
+ end
10
+
11
+ sig { returns(Privy::LinkAuthIntentNoAccount::Status::OrSymbol) }
12
+ attr_accessor :status
13
+
14
+ # No Link account for this email. Call registerLinkUser() then retry.
15
+ sig do
16
+ params(
17
+ status: Privy::LinkAuthIntentNoAccount::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::LinkAuthIntentNoAccount::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 { T.all(Symbol, Privy::LinkAuthIntentNoAccount::Status) }
36
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
37
+
38
+ NO_ACCOUNT =
39
+ T.let(
40
+ :no_account,
41
+ Privy::LinkAuthIntentNoAccount::Status::TaggedSymbol
42
+ )
43
+
44
+ sig do
45
+ override.returns(
46
+ T::Array[Privy::LinkAuthIntentNoAccount::Status::TaggedSymbol]
47
+ )
48
+ end
49
+ def self.values
50
+ end
51
+ end
52
+ end
53
+ end
54
+ end
@@ -2,6 +2,7 @@
2
2
 
3
3
  module Privy
4
4
  module Models
5
+ # A linked embedded wallet account across all supported chain types.
5
6
  module LinkedAccountEmbeddedWallet
6
7
  extend Privy::Internal::Type::Union
7
8
 
@@ -0,0 +1,31 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class ListStripeConsumerWalletsResponse < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Privy::ListStripeConsumerWalletsResponse,
10
+ Privy::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ sig { returns(T::Array[Privy::StripeConsumerWallet]) }
15
+ attr_accessor :data
16
+
17
+ # List of registered wallets for a crypto customer.
18
+ sig do
19
+ params(data: T::Array[Privy::StripeConsumerWallet::OrHash]).returns(
20
+ T.attached_class
21
+ )
22
+ end
23
+ def self.new(data:)
24
+ end
25
+
26
+ sig { override.returns({ data: T::Array[Privy::StripeConsumerWallet] }) }
27
+ def to_hash
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,31 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class ListStripePaymentTokensResponse < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Privy::ListStripePaymentTokensResponse,
10
+ Privy::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ sig { returns(T::Array[Privy::StripePaymentToken]) }
15
+ attr_accessor :data
16
+
17
+ # List of payment tokens for a crypto customer.
18
+ sig do
19
+ params(data: T::Array[Privy::StripePaymentToken::OrHash]).returns(
20
+ T.attached_class
21
+ )
22
+ end
23
+ def self.new(data:)
24
+ end
25
+
26
+ sig { override.returns({ data: T::Array[Privy::StripePaymentToken] }) }
27
+ def to_hash
28
+ end
29
+ end
30
+ end
31
+ end