privy_ruby 0.3.0 → 0.5.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 (158) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +21 -0
  3. data/README.md +1 -1
  4. data/lib/privy/authorization/canonicalization.rb +2 -0
  5. data/lib/privy/models/custom_token_transfer_source.rb +14 -13
  6. data/lib/privy/models/ethereum_yield_provider.rb +1 -0
  7. data/lib/privy/models/named_token_transfer_source.rb +14 -13
  8. data/lib/privy/models/rpc_intent_request_details.rb +2 -2
  9. data/lib/privy/models/rpc_intent_response.rb +2 -2
  10. data/lib/privy/models/spark_coop_exit_fee_quote.rb +101 -0
  11. data/lib/privy/models/spark_coop_exit_request.rb +90 -0
  12. data/lib/privy/models/spark_currency_amount.rb +23 -0
  13. data/lib/privy/models/spark_exit_speed.rb +17 -0
  14. data/lib/privy/models/spark_get_withdrawal_fee_quote_rpc_input.rb +43 -0
  15. data/lib/privy/models/spark_get_withdrawal_fee_quote_rpc_input_params.rb +23 -0
  16. data/lib/privy/models/spark_get_withdrawal_fee_quote_rpc_response.rb +35 -0
  17. data/lib/privy/models/spark_rpc_input.rb +7 -1
  18. data/lib/privy/models/spark_rpc_response.rb +7 -1
  19. data/lib/privy/models/spark_withdraw_rpc_input.rb +43 -0
  20. data/lib/privy/models/spark_withdraw_rpc_input_params.rb +53 -0
  21. data/lib/privy/models/spark_withdraw_rpc_response.rb +35 -0
  22. data/lib/privy/models/transaction_chain_name_input.rb +25 -0
  23. data/lib/privy/models/transfer_received_transaction_detail.rb +6 -0
  24. data/lib/privy/models/transfer_sent_transaction_detail.rb +6 -0
  25. data/lib/privy/models/unsafe_unwrap_webhook_event.rb +17 -1
  26. data/lib/privy/models/wallet_action_earn_fee_collect_created_webhook_payload.rb +153 -0
  27. data/lib/privy/models/wallet_action_earn_fee_collect_failed_webhook_payload.rb +178 -0
  28. data/lib/privy/models/wallet_action_earn_fee_collect_rejected_webhook_payload.rb +177 -0
  29. data/lib/privy/models/wallet_action_earn_fee_collect_succeeded_webhook_payload.rb +169 -0
  30. data/lib/privy/models/wallet_asset.rb +2 -0
  31. data/lib/privy/models/wallet_asset_chain_name_input.rb +3 -0
  32. data/lib/privy/models/wallet_creation_input.rb +11 -1
  33. data/lib/privy/models/wallet_ethereum_asset.rb +1 -0
  34. data/lib/privy/models/wallet_rpc_request_body.rb +7 -1
  35. data/lib/privy/models/wallet_rpc_response.rb +7 -1
  36. data/lib/privy/models/wallet_tron_asset.rb +17 -0
  37. data/lib/privy/models/wallets/aave_vault_details.rb +130 -0
  38. data/lib/privy/models/wallets/balance_get_params.rb +6 -0
  39. data/lib/privy/models/wallets/balance_get_response.rb +6 -0
  40. data/lib/privy/models/wallets/earn_fee_collect_action_response.rb +149 -0
  41. data/lib/privy/models/wallets/earn_fee_collect_request_body.rb +20 -0
  42. data/lib/privy/models/wallets/ethereum_earn_provider.rb +1 -0
  43. data/lib/privy/models/wallets/ethereum_earn_vault_details_response.rb +13 -83
  44. data/lib/privy/models/wallets/list_wallet_actions_response.rb +2 -2
  45. data/lib/privy/models/wallets/morpho_vault_details.rb +130 -0
  46. data/lib/privy/models/wallets/transaction_get_params.rb +10 -20
  47. data/lib/privy/models/wallets/veda_vault_details.rb +122 -0
  48. data/lib/privy/models/wallets/wallet_action_response.rb +4 -1
  49. data/lib/privy/models/wallets/wallet_action_type.rb +1 -0
  50. data/lib/privy/models/webhook_payload.rb +13 -1
  51. data/lib/privy/models.rb +36 -0
  52. data/lib/privy/public_api/services/tron.rb +103 -0
  53. data/lib/privy/public_api/services/wallets.rb +4 -0
  54. data/lib/privy/resources/intents.rb +1 -1
  55. data/lib/privy/resources/wallets/actions.rb +1 -1
  56. data/lib/privy/resources/wallets/transactions.rb +1 -1
  57. data/lib/privy/resources/wallets.rb +2 -2
  58. data/lib/privy/resources/webhooks.rb +1 -1
  59. data/lib/privy/version.rb +1 -1
  60. data/lib/privy.rb +22 -0
  61. data/rbi/privy/models/custom_token_transfer_source.rbi +18 -13
  62. data/rbi/privy/models/ethereum_yield_provider.rbi +1 -0
  63. data/rbi/privy/models/named_token_transfer_source.rbi +18 -13
  64. data/rbi/privy/models/rpc_intent_request_details.rbi +6 -0
  65. data/rbi/privy/models/rpc_intent_response.rbi +2 -0
  66. data/rbi/privy/models/spark_coop_exit_fee_quote.rbi +143 -0
  67. data/rbi/privy/models/spark_coop_exit_request.rbi +114 -0
  68. data/rbi/privy/models/spark_currency_amount.rbi +31 -0
  69. data/rbi/privy/models/spark_exit_speed.rbi +21 -0
  70. data/rbi/privy/models/spark_get_withdrawal_fee_quote_rpc_input.rbi +94 -0
  71. data/rbi/privy/models/spark_get_withdrawal_fee_quote_rpc_input_params.rbi +34 -0
  72. data/rbi/privy/models/spark_get_withdrawal_fee_quote_rpc_response.rbi +82 -0
  73. data/rbi/privy/models/spark_rpc_input.rbi +3 -1
  74. data/rbi/privy/models/spark_rpc_response.rbi +3 -1
  75. data/rbi/privy/models/spark_withdraw_rpc_input.rbi +77 -0
  76. data/rbi/privy/models/spark_withdraw_rpc_input_params.rbi +80 -0
  77. data/rbi/privy/models/spark_withdraw_rpc_response.rbi +71 -0
  78. data/rbi/privy/models/transaction_chain_name_input.rbi +38 -0
  79. data/rbi/privy/models/transfer_received_transaction_detail.rbi +10 -0
  80. data/rbi/privy/models/transfer_sent_transaction_detail.rbi +4 -0
  81. data/rbi/privy/models/unsafe_unwrap_webhook_event.rbi +4 -0
  82. data/rbi/privy/models/wallet_action_earn_fee_collect_created_webhook_payload.rbi +232 -0
  83. data/rbi/privy/models/wallet_action_earn_fee_collect_failed_webhook_payload.rbi +271 -0
  84. data/rbi/privy/models/wallet_action_earn_fee_collect_rejected_webhook_payload.rbi +269 -0
  85. data/rbi/privy/models/wallet_action_earn_fee_collect_succeeded_webhook_payload.rbi +258 -0
  86. data/rbi/privy/models/wallet_asset.rbi +2 -0
  87. data/rbi/privy/models/wallet_asset_chain_name_input.rbi +4 -0
  88. data/rbi/privy/models/wallet_creation_input.rbi +15 -0
  89. data/rbi/privy/models/wallet_ethereum_asset.rbi +1 -0
  90. data/rbi/privy/models/wallet_rpc_request_body.rbi +2 -0
  91. data/rbi/privy/models/wallet_rpc_response.rbi +2 -0
  92. data/rbi/privy/models/wallet_tron_asset.rbi +21 -0
  93. data/rbi/privy/models/wallets/aave_vault_details.rbi +165 -0
  94. data/rbi/privy/models/wallets/balance_get_params.rbi +4 -0
  95. data/rbi/privy/models/wallets/balance_get_response.rbi +10 -0
  96. data/rbi/privy/models/wallets/earn_fee_collect_action_response.rbi +236 -0
  97. data/rbi/privy/models/wallets/earn_fee_collect_request_body.rbi +33 -0
  98. data/rbi/privy/models/wallets/ethereum_earn_provider.rbi +1 -0
  99. data/rbi/privy/models/wallets/ethereum_earn_vault_details_response.rbi +11 -103
  100. data/rbi/privy/models/wallets/list_wallet_actions_response.rbi +6 -3
  101. data/rbi/privy/models/wallets/morpho_vault_details.rbi +167 -0
  102. data/rbi/privy/models/wallets/transaction_get_params.rbi +15 -69
  103. data/rbi/privy/models/wallets/veda_vault_details.rbi +157 -0
  104. data/rbi/privy/models/wallets/wallet_action_response.rbi +2 -1
  105. data/rbi/privy/models/wallets/wallet_action_type.rbi +5 -0
  106. data/rbi/privy/models/webhook_payload.rbi +5 -1
  107. data/rbi/privy/models.rbi +39 -0
  108. data/rbi/privy/resources/intents.rbi +2 -0
  109. data/rbi/privy/resources/wallets/transactions.rbi +2 -1
  110. data/rbi/privy/resources/wallets.rbi +2 -0
  111. data/rbi/privy/resources/webhooks.rbi +4 -0
  112. data/sig/privy/models/custom_token_transfer_source.rbs +8 -6
  113. data/sig/privy/models/ethereum_yield_provider.rbs +2 -1
  114. data/sig/privy/models/named_token_transfer_source.rbs +7 -5
  115. data/sig/privy/models/spark_coop_exit_fee_quote.rbs +75 -0
  116. data/sig/privy/models/spark_coop_exit_request.rbs +76 -0
  117. data/sig/privy/models/spark_currency_amount.rbs +16 -0
  118. data/sig/privy/models/spark_exit_speed.rbs +15 -0
  119. data/sig/privy/models/spark_get_withdrawal_fee_quote_rpc_input.rbs +44 -0
  120. data/sig/privy/models/spark_get_withdrawal_fee_quote_rpc_input_params.rbs +16 -0
  121. data/sig/privy/models/spark_get_withdrawal_fee_quote_rpc_response.rbs +37 -0
  122. data/sig/privy/models/spark_rpc_input.rbs +2 -0
  123. data/sig/privy/models/spark_rpc_response.rbs +2 -0
  124. data/sig/privy/models/spark_withdraw_rpc_input.rbs +44 -0
  125. data/sig/privy/models/spark_withdraw_rpc_input_params.rbs +53 -0
  126. data/sig/privy/models/spark_withdraw_rpc_response.rbs +37 -0
  127. data/sig/privy/models/transaction_chain_name_input.rbs +34 -0
  128. data/sig/privy/models/transfer_received_transaction_detail.rbs +4 -0
  129. data/sig/privy/models/transfer_sent_transaction_detail.rbs +4 -0
  130. data/sig/privy/models/unsafe_unwrap_webhook_event.rbs +4 -0
  131. data/sig/privy/models/wallet_action_earn_fee_collect_created_webhook_payload.rbs +111 -0
  132. data/sig/privy/models/wallet_action_earn_fee_collect_failed_webhook_payload.rbs +126 -0
  133. data/sig/privy/models/wallet_action_earn_fee_collect_rejected_webhook_payload.rbs +126 -0
  134. data/sig/privy/models/wallet_action_earn_fee_collect_succeeded_webhook_payload.rbs +121 -0
  135. data/sig/privy/models/wallet_asset.rbs +13 -1
  136. data/sig/privy/models/wallet_asset_chain_name_input.rbs +6 -0
  137. data/sig/privy/models/wallet_creation_input.rbs +7 -0
  138. data/sig/privy/models/wallet_ethereum_asset.rbs +2 -1
  139. data/sig/privy/models/wallet_rpc_request_body.rbs +2 -0
  140. data/sig/privy/models/wallet_rpc_response.rbs +2 -0
  141. data/sig/privy/models/wallet_tron_asset.rbs +15 -0
  142. data/sig/privy/models/wallets/aave_vault_details.rbs +92 -0
  143. data/sig/privy/models/wallets/balance_get_params.rbs +4 -0
  144. data/sig/privy/models/wallets/balance_get_response.rbs +4 -0
  145. data/sig/privy/models/wallets/earn_fee_collect_action_response.rbs +114 -0
  146. data/sig/privy/models/wallets/earn_fee_collect_request_body.rbs +15 -0
  147. data/sig/privy/models/wallets/ethereum_earn_provider.rbs +2 -1
  148. data/sig/privy/models/wallets/ethereum_earn_vault_details_response.rbs +6 -57
  149. data/sig/privy/models/wallets/morpho_vault_details.rbs +92 -0
  150. data/sig/privy/models/wallets/transaction_get_params.rbs +8 -31
  151. data/sig/privy/models/wallets/veda_vault_details.rbs +87 -0
  152. data/sig/privy/models/wallets/wallet_action_response.rbs +1 -0
  153. data/sig/privy/models/wallets/wallet_action_type.rbs +2 -0
  154. data/sig/privy/models/webhook_payload.rbs +4 -0
  155. data/sig/privy/models.rbs +32 -0
  156. data/sig/privy/resources/wallets/transactions.rbs +1 -1
  157. data/sig/privy/resources/webhooks.rbs +4 -0
  158. metadata +66 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: de54c3ebe8f738cca16125f32d9a67cbc18b6b98eaf2cb14485050fa93b8187e
4
- data.tar.gz: f25fd879df273c2df1b245a4e8b28ee6d40cfe24d997cb3821af0716d7b449c1
3
+ metadata.gz: ae2f643444a092682a054d66cc2ef71d539ff6a4b6ce1edc826bed962af24d3a
4
+ data.tar.gz: 5765c300f397626f07d21c27c40485a4e8c26e4e6c74c318eb7b87a696875592
5
5
  SHA512:
6
- metadata.gz: 5142c41d0448e1144540c5b0717786599e25e1b3a113eb1de985b564fbd3531160b0576c73f9a597ba603c8b543b6bcb4f585a8480b8fee0b3e22d7fdc73c1e6
7
- data.tar.gz: fc2e671aac88aa2387445d9754659a654a0feac388025f047b95bf7b20aefb1295e40eb50cd87eb73374716bbbc09f3c9ead9aa1d2cb5a3d336778675fd08516
6
+ metadata.gz: e95ed204ec418306e72ec7d154087ddea6108f38f358fa74cd8b5ed8dd09fc819593c7339bee9e6db111443b56b3a52755f54d7b32cd223ae9161d0ff0864b9d
7
+ data.tar.gz: 492c5fe66e0bb0bb36e54a99ae9d5c6a2a638f1b104c842cc81f066466acf2cb00c0e0c64af69b2705d6cf0a5d1bb01c5aa2b5c0c8d5b0501506fb73c2e359b9
data/CHANGELOG.md CHANGED
@@ -1,5 +1,26 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.5.0 (2026-07-10)
4
+
5
+ Full Changelog: [v0.4.0...v0.5.0](https://github.com/privy-io/ruby-sdk/compare/v0.4.0...v0.5.0)
6
+
7
+ ### Features
8
+
9
+ * **api:** api update ([8a25375](https://github.com/privy-io/ruby-sdk/commit/8a25375fc46294e194c8f9b24dc464f0a0d19b4a))
10
+ * **api:** api update ([b466cdf](https://github.com/privy-io/ruby-sdk/commit/b466cdf42c0287e880ff11809c1efa617527bd8d))
11
+ * **api:** api update ([6ac3d03](https://github.com/privy-io/ruby-sdk/commit/6ac3d039ff6d14791d25737fd4cc7c2f5304c876))
12
+
13
+ ## 0.4.0 (2026-07-07)
14
+
15
+ Full Changelog: [v0.3.0...v0.4.0](https://github.com/privy-io/ruby-sdk/compare/v0.3.0...v0.4.0)
16
+
17
+ ### Features
18
+
19
+ * add typed wallets.tron service for sign_transaction and send_transaction ([#60](https://github.com/privy-io/ruby-sdk/issues/60)) ([c56b749](https://github.com/privy-io/ruby-sdk/commit/c56b749a86ca37aaca45eeb22c81d70888b13b80))
20
+ * **api:** api update ([d459062](https://github.com/privy-io/ruby-sdk/commit/d4590623529c056f59b7c93ff63489ec8b5654b2))
21
+ * **api:** api update ([da42888](https://github.com/privy-io/ruby-sdk/commit/da42888314c78e306e359b61535b25e5f44a98a0))
22
+ * **api:** api update ([58aafa5](https://github.com/privy-io/ruby-sdk/commit/58aafa543ba23dc18f813e4a558e7c9f1f458467))
23
+
3
24
  ## 0.3.0 (2026-06-30)
4
25
 
5
26
  Full Changelog: [v0.2.0...v0.3.0](https://github.com/privy-io/ruby-sdk/compare/v0.2.0...v0.3.0)
data/README.md CHANGED
@@ -17,7 +17,7 @@ To use this gem, install via Bundler by adding the following to your application
17
17
  <!-- x-release-please-start-version -->
18
18
 
19
19
  ```ruby
20
- gem "privy_ruby", "~> 0.3.0"
20
+ gem "privy_ruby", "~> 0.5.0"
21
21
  ```
22
22
 
23
23
  <!-- x-release-please-end -->
@@ -17,6 +17,8 @@ module Privy
17
17
  value.each_with_object({}) { |(k, v), h| h[k.to_s] = coerce_keys(v) }
18
18
  when Array
19
19
  value.map { |v| coerce_keys(v) }
20
+ when Symbol
21
+ value.to_s
20
22
  else
21
23
  value
22
24
  end
@@ -3,16 +3,6 @@
3
3
  module Privy
4
4
  module Models
5
5
  class CustomTokenTransferSource < Privy::Internal::Type::BaseModel
6
- # @!attribute amount
7
- # @deprecated
8
- #
9
- # Amount as a decimal string in the token's standard unit (e.g. "1.5" for 1.5
10
- # USDC, "0.01" for 0.01 ETH). For exact_input, specifies the amount to send. Not
11
- # in the smallest on-chain unit (wei, lamports, etc.). Maximum 100 characters.
12
- #
13
- # @return [String]
14
- required :amount, String
15
-
16
6
  # @!attribute asset_address
17
7
  # The token contract address (EVM) or mint address (Solana) of the asset to
18
8
  # transfer.
@@ -28,18 +18,29 @@ module Privy
28
18
  # @return [String]
29
19
  required :chain, String
30
20
 
31
- # @!method initialize(amount:, asset_address:, chain:)
21
+ # @!attribute amount
22
+ # @deprecated
23
+ #
24
+ # Amount as a decimal string in the token's standard unit (e.g. "1.5" for 1.5
25
+ # USDC, "0.01" for 0.01 ETH). For exact_input, specifies the amount to send. Not
26
+ # in the smallest on-chain unit (wei, lamports, etc.). Maximum 100 characters.
27
+ # Deprecated: use the top-level `amount` field instead.
28
+ #
29
+ # @return [String, nil]
30
+ optional :amount, String
31
+
32
+ # @!method initialize(asset_address:, chain:, amount: nil)
32
33
  # Some parameter documentations has been truncated, see
33
34
  # {Privy::Models::CustomTokenTransferSource} for more details.
34
35
  #
35
36
  # Source for a transfer identified by a token contract address (EVM) or mint
36
37
  # address (Solana). Use this variant for tokens that are not first-class assets.
37
38
  #
38
- # @param amount [String] Amount as a decimal string in the token's standard unit (e.g. "1.5" for 1.5 USDC
39
- #
40
39
  # @param asset_address [String] The token contract address (EVM) or mint address (Solana) of the asset to transf
41
40
  #
42
41
  # @param chain [String] The blockchain network on which to perform the transfer. Supported chains includ
42
+ #
43
+ # @param amount [String] Amount as a decimal string in the token's standard unit (e.g. "1.5" for 1.5 USDC
43
44
  end
44
45
  end
45
46
  end
@@ -8,6 +8,7 @@ module Privy
8
8
 
9
9
  MORPHO = :morpho
10
10
  AAVE = :aave
11
+ VEDA = :veda
11
12
 
12
13
  # @!method self.values
13
14
  # @return [Array<Symbol>]
@@ -3,16 +3,6 @@
3
3
  module Privy
4
4
  module Models
5
5
  class NamedTokenTransferSource < Privy::Internal::Type::BaseModel
6
- # @!attribute amount
7
- # @deprecated
8
- #
9
- # Amount as a decimal string in the token's standard unit (e.g. "1.5" for 1.5
10
- # USDC, "0.01" for 0.01 ETH). For exact_input, specifies the amount to send. Not
11
- # in the smallest on-chain unit (wei, lamports, etc.). Maximum 100 characters.
12
- #
13
- # @return [String]
14
- required :amount, String
15
-
16
6
  # @!attribute asset
17
7
  # The asset to transfer. Supported: 'usdc', 'usdb', 'usdt' (stablecoins), 'eth'
18
8
  # (native Ethereum), 'sol' (native Solana).
@@ -28,18 +18,29 @@ module Privy
28
18
  # @return [String]
29
19
  required :chain, String
30
20
 
31
- # @!method initialize(amount:, asset:, chain:)
21
+ # @!attribute amount
22
+ # @deprecated
23
+ #
24
+ # Amount as a decimal string in the token's standard unit (e.g. "1.5" for 1.5
25
+ # USDC, "0.01" for 0.01 ETH). For exact_input, specifies the amount to send. Not
26
+ # in the smallest on-chain unit (wei, lamports, etc.). Maximum 100 characters.
27
+ # Deprecated: use the top-level `amount` field instead.
28
+ #
29
+ # @return [String, nil]
30
+ optional :amount, String
31
+
32
+ # @!method initialize(asset:, chain:, amount: nil)
32
33
  # Some parameter documentations has been truncated, see
33
34
  # {Privy::Models::NamedTokenTransferSource} for more details.
34
35
  #
35
36
  # Source for a transfer identified by a named asset (e.g. "usdc", "eth"). Use this
36
37
  # variant for first-class assets maintained by Privy.
37
38
  #
38
- # @param amount [String] Amount as a decimal string in the token's standard unit (e.g. "1.5" for 1.5 USDC
39
- #
40
39
  # @param asset [String] The asset to transfer. Supported: 'usdc', 'usdb', 'usdt' (stablecoins), 'eth' (n
41
40
  #
42
41
  # @param chain [String] The blockchain network on which to perform the transfer. Supported chains includ
42
+ #
43
+ # @param amount [String] Amount as a decimal string in the token's standard unit (e.g. "1.5" for 1.5 USDC
43
44
  end
44
45
  end
45
46
  end
@@ -6,7 +6,7 @@ module Privy
6
6
  # @!attribute body
7
7
  # Request body for wallet RPC operations, discriminated by method.
8
8
  #
9
- # @return [Privy::Models::EthereumSignTransactionRpcInput, Privy::Models::EthereumSendTransactionRpcInput, Privy::Models::EthereumPersonalSignRpcInput, Privy::Models::EthereumSignTypedDataRpcInput, Privy::Models::EthereumSecp256k1SignRpcInput, Privy::Models::EthereumSign7702AuthorizationRpcInput, Privy::Models::EthereumSignUserOperationRpcInput, Privy::Models::EthereumSendCallsRpcInput, Privy::Models::SolanaSignTransactionRpcInput, Privy::Models::SolanaSignAndSendTransactionRpcInput, Privy::Models::SolanaSignMessageRpcInput, Privy::Models::SparkTransferRpcInput, Privy::Models::SparkGetBalanceRpcInput, Privy::Models::SparkTransferTokensRpcInput, Privy::Models::SparkGetStaticDepositAddressRpcInput, Privy::Models::SparkGetClaimStaticDepositQuoteRpcInput, Privy::Models::SparkClaimStaticDepositRpcInput, Privy::Models::SparkCreateLightningInvoiceRpcInput, Privy::Models::SparkPayLightningInvoiceRpcInput, Privy::Models::SparkSignMessageWithIdentityKeyRpcInput, Privy::Models::TronSignTransactionRpcInput, Privy::Models::TronSendTransactionRpcInput, Privy::Models::ExportPrivateKeyRpcInput, Privy::Models::ExportSeedPhraseRpcInput]
9
+ # @return [Privy::Models::EthereumSignTransactionRpcInput, Privy::Models::EthereumSendTransactionRpcInput, Privy::Models::EthereumPersonalSignRpcInput, Privy::Models::EthereumSignTypedDataRpcInput, Privy::Models::EthereumSecp256k1SignRpcInput, Privy::Models::EthereumSign7702AuthorizationRpcInput, Privy::Models::EthereumSignUserOperationRpcInput, Privy::Models::EthereumSendCallsRpcInput, Privy::Models::SolanaSignTransactionRpcInput, Privy::Models::SolanaSignAndSendTransactionRpcInput, Privy::Models::SolanaSignMessageRpcInput, Privy::Models::SparkTransferRpcInput, Privy::Models::SparkGetBalanceRpcInput, Privy::Models::SparkTransferTokensRpcInput, Privy::Models::SparkGetStaticDepositAddressRpcInput, Privy::Models::SparkGetClaimStaticDepositQuoteRpcInput, Privy::Models::SparkClaimStaticDepositRpcInput, Privy::Models::SparkCreateLightningInvoiceRpcInput, Privy::Models::SparkPayLightningInvoiceRpcInput, Privy::Models::SparkSignMessageWithIdentityKeyRpcInput, Privy::Models::SparkWithdrawRpcInput, Privy::Models::SparkGetWithdrawalFeeQuoteRpcInput, Privy::Models::TronSignTransactionRpcInput, Privy::Models::TronSendTransactionRpcInput, Privy::Models::ExportPrivateKeyRpcInput, Privy::Models::ExportSeedPhraseRpcInput]
10
10
  required :body, union: -> { Privy::WalletRpcRequestBody }
11
11
 
12
12
  # @!attribute method_
@@ -22,7 +22,7 @@ module Privy
22
22
  # @!method initialize(body:, method_:, url:)
23
23
  # Request details for an RPC intent.
24
24
  #
25
- # @param body [Privy::Models::EthereumSignTransactionRpcInput, Privy::Models::EthereumSendTransactionRpcInput, Privy::Models::EthereumPersonalSignRpcInput, Privy::Models::EthereumSignTypedDataRpcInput, Privy::Models::EthereumSecp256k1SignRpcInput, Privy::Models::EthereumSign7702AuthorizationRpcInput, Privy::Models::EthereumSignUserOperationRpcInput, Privy::Models::EthereumSendCallsRpcInput, Privy::Models::SolanaSignTransactionRpcInput, Privy::Models::SolanaSignAndSendTransactionRpcInput, Privy::Models::SolanaSignMessageRpcInput, Privy::Models::SparkTransferRpcInput, Privy::Models::SparkGetBalanceRpcInput, Privy::Models::SparkTransferTokensRpcInput, Privy::Models::SparkGetStaticDepositAddressRpcInput, Privy::Models::SparkGetClaimStaticDepositQuoteRpcInput, Privy::Models::SparkClaimStaticDepositRpcInput, Privy::Models::SparkCreateLightningInvoiceRpcInput, Privy::Models::SparkPayLightningInvoiceRpcInput, Privy::Models::SparkSignMessageWithIdentityKeyRpcInput, Privy::Models::TronSignTransactionRpcInput, Privy::Models::TronSendTransactionRpcInput, Privy::Models::ExportPrivateKeyRpcInput, Privy::Models::ExportSeedPhraseRpcInput] Request body for wallet RPC operations, discriminated by method.
25
+ # @param body [Privy::Models::EthereumSignTransactionRpcInput, Privy::Models::EthereumSendTransactionRpcInput, Privy::Models::EthereumPersonalSignRpcInput, Privy::Models::EthereumSignTypedDataRpcInput, Privy::Models::EthereumSecp256k1SignRpcInput, Privy::Models::EthereumSign7702AuthorizationRpcInput, Privy::Models::EthereumSignUserOperationRpcInput, Privy::Models::EthereumSendCallsRpcInput, Privy::Models::SolanaSignTransactionRpcInput, Privy::Models::SolanaSignAndSendTransactionRpcInput, Privy::Models::SolanaSignMessageRpcInput, Privy::Models::SparkTransferRpcInput, Privy::Models::SparkGetBalanceRpcInput, Privy::Models::SparkTransferTokensRpcInput, Privy::Models::SparkGetStaticDepositAddressRpcInput, Privy::Models::SparkGetClaimStaticDepositQuoteRpcInput, Privy::Models::SparkClaimStaticDepositRpcInput, Privy::Models::SparkCreateLightningInvoiceRpcInput, Privy::Models::SparkPayLightningInvoiceRpcInput, Privy::Models::SparkSignMessageWithIdentityKeyRpcInput, Privy::Models::SparkWithdrawRpcInput, Privy::Models::SparkGetWithdrawalFeeQuoteRpcInput, Privy::Models::TronSignTransactionRpcInput, Privy::Models::TronSendTransactionRpcInput, Privy::Models::ExportPrivateKeyRpcInput, Privy::Models::ExportSeedPhraseRpcInput] Request body for wallet RPC operations, discriminated by method.
26
26
  #
27
27
  # @param method_ [Symbol, Privy::Models::RpcIntentRequestDetails::Method]
28
28
  #
@@ -51,7 +51,7 @@ module Privy
51
51
  # @!attribute body
52
52
  # Request body for wallet RPC operations, discriminated by method.
53
53
  #
54
- # @return [Privy::Models::EthereumSignTransactionRpcInput, Privy::Models::EthereumSendTransactionRpcInput, Privy::Models::EthereumPersonalSignRpcInput, Privy::Models::EthereumSignTypedDataRpcInput, Privy::Models::EthereumSecp256k1SignRpcInput, Privy::Models::EthereumSign7702AuthorizationRpcInput, Privy::Models::EthereumSignUserOperationRpcInput, Privy::Models::EthereumSendCallsRpcInput, Privy::Models::SolanaSignTransactionRpcInput, Privy::Models::SolanaSignAndSendTransactionRpcInput, Privy::Models::SolanaSignMessageRpcInput, Privy::Models::SparkTransferRpcInput, Privy::Models::SparkGetBalanceRpcInput, Privy::Models::SparkTransferTokensRpcInput, Privy::Models::SparkGetStaticDepositAddressRpcInput, Privy::Models::SparkGetClaimStaticDepositQuoteRpcInput, Privy::Models::SparkClaimStaticDepositRpcInput, Privy::Models::SparkCreateLightningInvoiceRpcInput, Privy::Models::SparkPayLightningInvoiceRpcInput, Privy::Models::SparkSignMessageWithIdentityKeyRpcInput, Privy::Models::TronSignTransactionRpcInput, Privy::Models::TronSendTransactionRpcInput, Privy::Models::ExportPrivateKeyRpcInput, Privy::Models::ExportSeedPhraseRpcInput]
54
+ # @return [Privy::Models::EthereumSignTransactionRpcInput, Privy::Models::EthereumSendTransactionRpcInput, Privy::Models::EthereumPersonalSignRpcInput, Privy::Models::EthereumSignTypedDataRpcInput, Privy::Models::EthereumSecp256k1SignRpcInput, Privy::Models::EthereumSign7702AuthorizationRpcInput, Privy::Models::EthereumSignUserOperationRpcInput, Privy::Models::EthereumSendCallsRpcInput, Privy::Models::SolanaSignTransactionRpcInput, Privy::Models::SolanaSignAndSendTransactionRpcInput, Privy::Models::SolanaSignMessageRpcInput, Privy::Models::SparkTransferRpcInput, Privy::Models::SparkGetBalanceRpcInput, Privy::Models::SparkTransferTokensRpcInput, Privy::Models::SparkGetStaticDepositAddressRpcInput, Privy::Models::SparkGetClaimStaticDepositQuoteRpcInput, Privy::Models::SparkClaimStaticDepositRpcInput, Privy::Models::SparkCreateLightningInvoiceRpcInput, Privy::Models::SparkPayLightningInvoiceRpcInput, Privy::Models::SparkSignMessageWithIdentityKeyRpcInput, Privy::Models::SparkWithdrawRpcInput, Privy::Models::SparkGetWithdrawalFeeQuoteRpcInput, Privy::Models::TronSignTransactionRpcInput, Privy::Models::TronSendTransactionRpcInput, Privy::Models::ExportPrivateKeyRpcInput, Privy::Models::ExportSeedPhraseRpcInput]
55
55
  required :body, union: -> { Privy::WalletRpcRequestBody }
56
56
 
57
57
  # @!attribute method_
@@ -67,7 +67,7 @@ module Privy
67
67
  # @!method initialize(body:, method_:, url:)
68
68
  # The original RPC request that would be sent to the wallet endpoint
69
69
  #
70
- # @param body [Privy::Models::EthereumSignTransactionRpcInput, Privy::Models::EthereumSendTransactionRpcInput, Privy::Models::EthereumPersonalSignRpcInput, Privy::Models::EthereumSignTypedDataRpcInput, Privy::Models::EthereumSecp256k1SignRpcInput, Privy::Models::EthereumSign7702AuthorizationRpcInput, Privy::Models::EthereumSignUserOperationRpcInput, Privy::Models::EthereumSendCallsRpcInput, Privy::Models::SolanaSignTransactionRpcInput, Privy::Models::SolanaSignAndSendTransactionRpcInput, Privy::Models::SolanaSignMessageRpcInput, Privy::Models::SparkTransferRpcInput, Privy::Models::SparkGetBalanceRpcInput, Privy::Models::SparkTransferTokensRpcInput, Privy::Models::SparkGetStaticDepositAddressRpcInput, Privy::Models::SparkGetClaimStaticDepositQuoteRpcInput, Privy::Models::SparkClaimStaticDepositRpcInput, Privy::Models::SparkCreateLightningInvoiceRpcInput, Privy::Models::SparkPayLightningInvoiceRpcInput, Privy::Models::SparkSignMessageWithIdentityKeyRpcInput, Privy::Models::TronSignTransactionRpcInput, Privy::Models::TronSendTransactionRpcInput, Privy::Models::ExportPrivateKeyRpcInput, Privy::Models::ExportSeedPhraseRpcInput] Request body for wallet RPC operations, discriminated by method.
70
+ # @param body [Privy::Models::EthereumSignTransactionRpcInput, Privy::Models::EthereumSendTransactionRpcInput, Privy::Models::EthereumPersonalSignRpcInput, Privy::Models::EthereumSignTypedDataRpcInput, Privy::Models::EthereumSecp256k1SignRpcInput, Privy::Models::EthereumSign7702AuthorizationRpcInput, Privy::Models::EthereumSignUserOperationRpcInput, Privy::Models::EthereumSendCallsRpcInput, Privy::Models::SolanaSignTransactionRpcInput, Privy::Models::SolanaSignAndSendTransactionRpcInput, Privy::Models::SolanaSignMessageRpcInput, Privy::Models::SparkTransferRpcInput, Privy::Models::SparkGetBalanceRpcInput, Privy::Models::SparkTransferTokensRpcInput, Privy::Models::SparkGetStaticDepositAddressRpcInput, Privy::Models::SparkGetClaimStaticDepositQuoteRpcInput, Privy::Models::SparkClaimStaticDepositRpcInput, Privy::Models::SparkCreateLightningInvoiceRpcInput, Privy::Models::SparkPayLightningInvoiceRpcInput, Privy::Models::SparkSignMessageWithIdentityKeyRpcInput, Privy::Models::SparkWithdrawRpcInput, Privy::Models::SparkGetWithdrawalFeeQuoteRpcInput, Privy::Models::TronSignTransactionRpcInput, Privy::Models::TronSendTransactionRpcInput, Privy::Models::ExportPrivateKeyRpcInput, Privy::Models::ExportSeedPhraseRpcInput] Request body for wallet RPC operations, discriminated by method.
71
71
  #
72
72
  # @param method_ [Symbol, Privy::Models::RpcIntentResponse::RequestDetails::Method]
73
73
  #
@@ -0,0 +1,101 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Privy
4
+ module Models
5
+ class SparkCoopExitFeeQuote < Privy::Internal::Type::BaseModel
6
+ # @!attribute id
7
+ #
8
+ # @return [String]
9
+ required :id, String
10
+
11
+ # @!attribute created_at
12
+ #
13
+ # @return [String]
14
+ required :created_at, String
15
+
16
+ # @!attribute expires_at
17
+ #
18
+ # @return [String]
19
+ required :expires_at, String
20
+
21
+ # @!attribute l1_broadcast_fee_fast
22
+ # A currency amount with its original value and unit.
23
+ #
24
+ # @return [Privy::Models::SparkCurrencyAmount]
25
+ required :l1_broadcast_fee_fast, -> { Privy::SparkCurrencyAmount }
26
+
27
+ # @!attribute l1_broadcast_fee_medium
28
+ # A currency amount with its original value and unit.
29
+ #
30
+ # @return [Privy::Models::SparkCurrencyAmount]
31
+ required :l1_broadcast_fee_medium, -> { Privy::SparkCurrencyAmount }
32
+
33
+ # @!attribute l1_broadcast_fee_slow
34
+ # A currency amount with its original value and unit.
35
+ #
36
+ # @return [Privy::Models::SparkCurrencyAmount]
37
+ required :l1_broadcast_fee_slow, -> { Privy::SparkCurrencyAmount }
38
+
39
+ # @!attribute network
40
+ #
41
+ # @return [String]
42
+ required :network, String
43
+
44
+ # @!attribute total_amount
45
+ # A currency amount with its original value and unit.
46
+ #
47
+ # @return [Privy::Models::SparkCurrencyAmount]
48
+ required :total_amount, -> { Privy::SparkCurrencyAmount }
49
+
50
+ # @!attribute updated_at
51
+ #
52
+ # @return [String]
53
+ required :updated_at, String
54
+
55
+ # @!attribute user_fee_fast
56
+ # A currency amount with its original value and unit.
57
+ #
58
+ # @return [Privy::Models::SparkCurrencyAmount]
59
+ required :user_fee_fast, -> { Privy::SparkCurrencyAmount }
60
+
61
+ # @!attribute user_fee_medium
62
+ # A currency amount with its original value and unit.
63
+ #
64
+ # @return [Privy::Models::SparkCurrencyAmount]
65
+ required :user_fee_medium, -> { Privy::SparkCurrencyAmount }
66
+
67
+ # @!attribute user_fee_slow
68
+ # A currency amount with its original value and unit.
69
+ #
70
+ # @return [Privy::Models::SparkCurrencyAmount]
71
+ required :user_fee_slow, -> { Privy::SparkCurrencyAmount }
72
+
73
+ # @!method initialize(id:, created_at:, expires_at:, l1_broadcast_fee_fast:, l1_broadcast_fee_medium:, l1_broadcast_fee_slow:, network:, total_amount:, updated_at:, user_fee_fast:, user_fee_medium:, user_fee_slow:)
74
+ # A fee quote for a cooperative exit from Spark to Bitcoin L1.
75
+ #
76
+ # @param id [String]
77
+ #
78
+ # @param created_at [String]
79
+ #
80
+ # @param expires_at [String]
81
+ #
82
+ # @param l1_broadcast_fee_fast [Privy::Models::SparkCurrencyAmount] A currency amount with its original value and unit.
83
+ #
84
+ # @param l1_broadcast_fee_medium [Privy::Models::SparkCurrencyAmount] A currency amount with its original value and unit.
85
+ #
86
+ # @param l1_broadcast_fee_slow [Privy::Models::SparkCurrencyAmount] A currency amount with its original value and unit.
87
+ #
88
+ # @param network [String]
89
+ #
90
+ # @param total_amount [Privy::Models::SparkCurrencyAmount] A currency amount with its original value and unit.
91
+ #
92
+ # @param updated_at [String]
93
+ #
94
+ # @param user_fee_fast [Privy::Models::SparkCurrencyAmount] A currency amount with its original value and unit.
95
+ #
96
+ # @param user_fee_medium [Privy::Models::SparkCurrencyAmount] A currency amount with its original value and unit.
97
+ #
98
+ # @param user_fee_slow [Privy::Models::SparkCurrencyAmount] A currency amount with its original value and unit.
99
+ end
100
+ end
101
+ end
@@ -0,0 +1,90 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Privy
4
+ module Models
5
+ class SparkCoopExitRequest < Privy::Internal::Type::BaseModel
6
+ # @!attribute id
7
+ #
8
+ # @return [String]
9
+ required :id, String
10
+
11
+ # @!attribute coop_exit_txid
12
+ #
13
+ # @return [String]
14
+ required :coop_exit_txid, String
15
+
16
+ # @!attribute created_at
17
+ #
18
+ # @return [String]
19
+ required :created_at, String
20
+
21
+ # @!attribute expires_at
22
+ #
23
+ # @return [String]
24
+ required :expires_at, String
25
+
26
+ # @!attribute fee
27
+ # A currency amount with its original value and unit.
28
+ #
29
+ # @return [Privy::Models::SparkCurrencyAmount]
30
+ required :fee, -> { Privy::SparkCurrencyAmount }
31
+
32
+ # @!attribute l1_broadcast_fee
33
+ # A currency amount with its original value and unit.
34
+ #
35
+ # @return [Privy::Models::SparkCurrencyAmount]
36
+ required :l1_broadcast_fee, -> { Privy::SparkCurrencyAmount }
37
+
38
+ # @!attribute network
39
+ #
40
+ # @return [String]
41
+ required :network, String
42
+
43
+ # @!attribute status
44
+ #
45
+ # @return [String]
46
+ required :status, String
47
+
48
+ # @!attribute updated_at
49
+ #
50
+ # @return [String]
51
+ required :updated_at, String
52
+
53
+ # @!attribute exit_speed
54
+ # The exit speed for a cooperative withdrawal from Spark to L1.
55
+ #
56
+ # @return [Symbol, Privy::Models::SparkExitSpeed, nil]
57
+ optional :exit_speed, enum: -> { Privy::SparkExitSpeed }
58
+
59
+ # @!attribute fee_quote_id
60
+ #
61
+ # @return [String, nil]
62
+ optional :fee_quote_id, String
63
+
64
+ # @!method initialize(id:, coop_exit_txid:, created_at:, expires_at:, fee:, l1_broadcast_fee:, network:, status:, updated_at:, exit_speed: nil, fee_quote_id: nil)
65
+ # A cooperative exit request from Spark to Bitcoin L1.
66
+ #
67
+ # @param id [String]
68
+ #
69
+ # @param coop_exit_txid [String]
70
+ #
71
+ # @param created_at [String]
72
+ #
73
+ # @param expires_at [String]
74
+ #
75
+ # @param fee [Privy::Models::SparkCurrencyAmount] A currency amount with its original value and unit.
76
+ #
77
+ # @param l1_broadcast_fee [Privy::Models::SparkCurrencyAmount] A currency amount with its original value and unit.
78
+ #
79
+ # @param network [String]
80
+ #
81
+ # @param status [String]
82
+ #
83
+ # @param updated_at [String]
84
+ #
85
+ # @param exit_speed [Symbol, Privy::Models::SparkExitSpeed] The exit speed for a cooperative withdrawal from Spark to L1.
86
+ #
87
+ # @param fee_quote_id [String]
88
+ end
89
+ end
90
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Privy
4
+ module Models
5
+ class SparkCurrencyAmount < Privy::Internal::Type::BaseModel
6
+ # @!attribute original_unit
7
+ #
8
+ # @return [String]
9
+ required :original_unit, String
10
+
11
+ # @!attribute original_value
12
+ #
13
+ # @return [Float]
14
+ required :original_value, Float
15
+
16
+ # @!method initialize(original_unit:, original_value:)
17
+ # A currency amount with its original value and unit.
18
+ #
19
+ # @param original_unit [String]
20
+ # @param original_value [Float]
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Privy
4
+ module Models
5
+ # The exit speed for a cooperative withdrawal from Spark to L1.
6
+ module SparkExitSpeed
7
+ extend Privy::Internal::Type::Enum
8
+
9
+ FAST = :FAST
10
+ MEDIUM = :MEDIUM
11
+ SLOW = :SLOW
12
+
13
+ # @!method self.values
14
+ # @return [Array<Symbol>]
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,43 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Privy
4
+ module Models
5
+ class SparkGetWithdrawalFeeQuoteRpcInput < Privy::Internal::Type::BaseModel
6
+ # @!attribute method_
7
+ #
8
+ # @return [Symbol, Privy::Models::SparkGetWithdrawalFeeQuoteRpcInput::Method]
9
+ required :method_, enum: -> { Privy::SparkGetWithdrawalFeeQuoteRpcInput::Method }, api_name: :method
10
+
11
+ # @!attribute params
12
+ # Parameters for the Spark `getWithdrawalFeeQuote` RPC.
13
+ #
14
+ # @return [Privy::Models::SparkGetWithdrawalFeeQuoteRpcInputParams]
15
+ required :params, -> { Privy::SparkGetWithdrawalFeeQuoteRpcInputParams }
16
+
17
+ # @!attribute network
18
+ # The Spark network.
19
+ #
20
+ # @return [Symbol, Privy::Models::SparkNetwork, nil]
21
+ optional :network, enum: -> { Privy::SparkNetwork }
22
+
23
+ # @!method initialize(method_:, params:, network: nil)
24
+ # Gets a fee quote for withdrawing from Spark to a Bitcoin L1 address.
25
+ #
26
+ # @param method_ [Symbol, Privy::Models::SparkGetWithdrawalFeeQuoteRpcInput::Method]
27
+ #
28
+ # @param params [Privy::Models::SparkGetWithdrawalFeeQuoteRpcInputParams] Parameters for the Spark `getWithdrawalFeeQuote` RPC.
29
+ #
30
+ # @param network [Symbol, Privy::Models::SparkNetwork] The Spark network.
31
+
32
+ # @see Privy::Models::SparkGetWithdrawalFeeQuoteRpcInput#method_
33
+ module Method
34
+ extend Privy::Internal::Type::Enum
35
+
36
+ GET_WITHDRAWAL_FEE_QUOTE = :getWithdrawalFeeQuote
37
+
38
+ # @!method self.values
39
+ # @return [Array<Symbol>]
40
+ end
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Privy
4
+ module Models
5
+ class SparkGetWithdrawalFeeQuoteRpcInputParams < Privy::Internal::Type::BaseModel
6
+ # @!attribute amount_sats
7
+ #
8
+ # @return [Float]
9
+ required :amount_sats, Float
10
+
11
+ # @!attribute onchain_address
12
+ #
13
+ # @return [String]
14
+ required :onchain_address, String
15
+
16
+ # @!method initialize(amount_sats:, onchain_address:)
17
+ # Parameters for the Spark `getWithdrawalFeeQuote` RPC.
18
+ #
19
+ # @param amount_sats [Float]
20
+ # @param onchain_address [String]
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,35 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Privy
4
+ module Models
5
+ class SparkGetWithdrawalFeeQuoteRpcResponse < Privy::Internal::Type::BaseModel
6
+ # @!attribute method_
7
+ #
8
+ # @return [Symbol, Privy::Models::SparkGetWithdrawalFeeQuoteRpcResponse::Method]
9
+ required :method_, enum: -> { Privy::SparkGetWithdrawalFeeQuoteRpcResponse::Method }, api_name: :method
10
+
11
+ # @!attribute data
12
+ # A fee quote for a cooperative exit from Spark to Bitcoin L1.
13
+ #
14
+ # @return [Privy::Models::SparkCoopExitFeeQuote, nil]
15
+ optional :data, -> { Privy::SparkCoopExitFeeQuote }
16
+
17
+ # @!method initialize(method_:, data: nil)
18
+ # Response to the Spark `getWithdrawalFeeQuote` RPC.
19
+ #
20
+ # @param method_ [Symbol, Privy::Models::SparkGetWithdrawalFeeQuoteRpcResponse::Method]
21
+ #
22
+ # @param data [Privy::Models::SparkCoopExitFeeQuote] A fee quote for a cooperative exit from Spark to Bitcoin L1.
23
+
24
+ # @see Privy::Models::SparkGetWithdrawalFeeQuoteRpcResponse#method_
25
+ module Method
26
+ extend Privy::Internal::Type::Enum
27
+
28
+ GET_WITHDRAWAL_FEE_QUOTE = :getWithdrawalFeeQuote
29
+
30
+ # @!method self.values
31
+ # @return [Array<Symbol>]
32
+ end
33
+ end
34
+ end
35
+ end
@@ -35,8 +35,14 @@ module Privy
35
35
  # Signs a message with the Spark identity key.
36
36
  variant :signMessageWithIdentityKey, -> { Privy::SparkSignMessageWithIdentityKeyRpcInput }
37
37
 
38
+ # Withdraws from Spark to a Bitcoin L1 address (cooperative exit).
39
+ variant :withdraw, -> { Privy::SparkWithdrawRpcInput }
40
+
41
+ # Gets a fee quote for withdrawing from Spark to a Bitcoin L1 address.
42
+ variant :getWithdrawalFeeQuote, -> { Privy::SparkGetWithdrawalFeeQuoteRpcInput }
43
+
38
44
  # @!method self.variants
39
- # @return [Array(Privy::Models::SparkTransferRpcInput, Privy::Models::SparkGetBalanceRpcInput, Privy::Models::SparkTransferTokensRpcInput, Privy::Models::SparkGetStaticDepositAddressRpcInput, Privy::Models::SparkGetClaimStaticDepositQuoteRpcInput, Privy::Models::SparkClaimStaticDepositRpcInput, Privy::Models::SparkCreateLightningInvoiceRpcInput, Privy::Models::SparkPayLightningInvoiceRpcInput, Privy::Models::SparkSignMessageWithIdentityKeyRpcInput)]
45
+ # @return [Array(Privy::Models::SparkTransferRpcInput, Privy::Models::SparkGetBalanceRpcInput, Privy::Models::SparkTransferTokensRpcInput, Privy::Models::SparkGetStaticDepositAddressRpcInput, Privy::Models::SparkGetClaimStaticDepositQuoteRpcInput, Privy::Models::SparkClaimStaticDepositRpcInput, Privy::Models::SparkCreateLightningInvoiceRpcInput, Privy::Models::SparkPayLightningInvoiceRpcInput, Privy::Models::SparkSignMessageWithIdentityKeyRpcInput, Privy::Models::SparkWithdrawRpcInput, Privy::Models::SparkGetWithdrawalFeeQuoteRpcInput)]
40
46
  end
41
47
  end
42
48
  end
@@ -35,8 +35,14 @@ module Privy
35
35
  # Response to the Spark `signMessageWithIdentityKey` RPC.
36
36
  variant :signMessageWithIdentityKey, -> { Privy::SparkSignMessageWithIdentityKeyRpcResponse }
37
37
 
38
+ # Response to the Spark `withdraw` RPC.
39
+ variant :withdraw, -> { Privy::SparkWithdrawRpcResponse }
40
+
41
+ # Response to the Spark `getWithdrawalFeeQuote` RPC.
42
+ variant :getWithdrawalFeeQuote, -> { Privy::SparkGetWithdrawalFeeQuoteRpcResponse }
43
+
38
44
  # @!method self.variants
39
- # @return [Array(Privy::Models::SparkTransferRpcResponse, Privy::Models::SparkGetBalanceRpcResponse, Privy::Models::SparkTransferTokensRpcResponse, Privy::Models::SparkGetStaticDepositAddressRpcResponse, Privy::Models::SparkGetClaimStaticDepositQuoteRpcResponse, Privy::Models::SparkClaimStaticDepositRpcResponse, Privy::Models::SparkCreateLightningInvoiceRpcResponse, Privy::Models::SparkPayLightningInvoiceRpcResponse, Privy::Models::SparkSignMessageWithIdentityKeyRpcResponse)]
45
+ # @return [Array(Privy::Models::SparkTransferRpcResponse, Privy::Models::SparkGetBalanceRpcResponse, Privy::Models::SparkTransferTokensRpcResponse, Privy::Models::SparkGetStaticDepositAddressRpcResponse, Privy::Models::SparkGetClaimStaticDepositQuoteRpcResponse, Privy::Models::SparkClaimStaticDepositRpcResponse, Privy::Models::SparkCreateLightningInvoiceRpcResponse, Privy::Models::SparkPayLightningInvoiceRpcResponse, Privy::Models::SparkSignMessageWithIdentityKeyRpcResponse, Privy::Models::SparkWithdrawRpcResponse, Privy::Models::SparkGetWithdrawalFeeQuoteRpcResponse)]
40
46
  end
41
47
  end
42
48
  end
@@ -0,0 +1,43 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Privy
4
+ module Models
5
+ class SparkWithdrawRpcInput < Privy::Internal::Type::BaseModel
6
+ # @!attribute method_
7
+ #
8
+ # @return [Symbol, Privy::Models::SparkWithdrawRpcInput::Method]
9
+ required :method_, enum: -> { Privy::SparkWithdrawRpcInput::Method }, api_name: :method
10
+
11
+ # @!attribute params
12
+ # Parameters for the Spark `withdraw` RPC.
13
+ #
14
+ # @return [Privy::Models::SparkWithdrawRpcInputParams]
15
+ required :params, -> { Privy::SparkWithdrawRpcInputParams }
16
+
17
+ # @!attribute network
18
+ # The Spark network.
19
+ #
20
+ # @return [Symbol, Privy::Models::SparkNetwork, nil]
21
+ optional :network, enum: -> { Privy::SparkNetwork }
22
+
23
+ # @!method initialize(method_:, params:, network: nil)
24
+ # Withdraws from Spark to a Bitcoin L1 address (cooperative exit).
25
+ #
26
+ # @param method_ [Symbol, Privy::Models::SparkWithdrawRpcInput::Method]
27
+ #
28
+ # @param params [Privy::Models::SparkWithdrawRpcInputParams] Parameters for the Spark `withdraw` RPC.
29
+ #
30
+ # @param network [Symbol, Privy::Models::SparkNetwork] The Spark network.
31
+
32
+ # @see Privy::Models::SparkWithdrawRpcInput#method_
33
+ module Method
34
+ extend Privy::Internal::Type::Enum
35
+
36
+ WITHDRAW = :withdraw
37
+
38
+ # @!method self.values
39
+ # @return [Array<Symbol>]
40
+ end
41
+ end
42
+ end
43
+ end