privy_ruby 0.1.0 → 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 (161) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +13 -0
  3. data/README.md +1 -1
  4. data/lib/privy/client.rb +5 -4
  5. data/lib/privy/models/analytics_event_input.rb +2 -2
  6. data/lib/privy/models/bitcoin_address.rb +7 -0
  7. data/lib/privy/models/bridge_destination_asset.rb +1 -0
  8. data/lib/privy/models/bridge_fiat_virtual_account_destination.rb +6 -1
  9. data/lib/privy/models/bridge_fiat_virtual_account_request.rb +6 -2
  10. data/lib/privy/models/bridge_fiat_virtual_account_response.rb +2 -1
  11. data/lib/privy/models/bridge_fiat_virtual_account_source.rb +4 -1
  12. data/lib/privy/models/bridge_sandbox_fiat_virtual_account_request.rb +6 -2
  13. data/lib/privy/models/bridge_sandbox_fiat_virtual_account_response.rb +2 -1
  14. data/lib/privy/models/bridge_source_asset.rb +1 -0
  15. data/lib/privy/models/create_stripe_onramp_session_response.rb +16 -1
  16. data/lib/privy/models/device_verify_action.rb +16 -0
  17. data/lib/privy/models/device_verify_request_body.rb +27 -0
  18. data/lib/privy/models/device_verify_response.rb +18 -0
  19. data/lib/privy/models/evm_address.rb +7 -0
  20. data/lib/privy/models/evm_checksum_address.rb +7 -0
  21. data/lib/privy/models/gas.rb +35 -0
  22. data/lib/privy/models/hyperliquid_token_address.rb +7 -0
  23. data/lib/privy/models/linked_account_embedded_wallet.rb +1 -0
  24. data/lib/privy/models/oauth_grant.rb +54 -0
  25. data/lib/privy/models/oauth_grant_list_response.rb +18 -0
  26. data/lib/privy/models/oauth_grant_revoke_response.rb +30 -0
  27. data/lib/privy/models/oauth_token_authorization_code_request_body.rb +59 -0
  28. data/lib/privy/models/oauth_token_device_code_pending_error.rb +50 -0
  29. data/lib/privy/models/oauth_token_device_code_request_body.rb +36 -0
  30. data/lib/privy/models/oauth_token_grant_type.rb +17 -0
  31. data/lib/privy/models/oauth_token_refresh_token_request_body.rb +36 -0
  32. data/lib/privy/models/oauth_token_request_body.rb +24 -0
  33. data/lib/privy/models/oauth_token_success_response.rb +58 -0
  34. data/lib/privy/models/onramp_session_fees.rb +23 -0
  35. data/lib/privy/models/onramp_session_transaction_details.rb +59 -0
  36. data/lib/privy/models/solana_address.rb +7 -0
  37. data/lib/privy/models/swap_action_response.rb +38 -1
  38. data/lib/privy/models/swap_quote_request_body.rb +3 -3
  39. data/lib/privy/models/swap_quote_response.rb +18 -5
  40. data/lib/privy/models/swap_request_body.rb +3 -3
  41. data/lib/privy/models/token_transfer_destination.rb +2 -2
  42. data/lib/privy/models/transfer_action_response.rb +29 -3
  43. data/lib/privy/models/transfer_quote_request_body.rb +3 -2
  44. data/lib/privy/models/transfer_quote_response.rb +10 -1
  45. data/lib/privy/models/transfer_received_transaction_detail.rb +5 -0
  46. data/lib/privy/models/transfer_request_body.rb +3 -2
  47. data/lib/privy/models/transfer_sent_transaction_detail.rb +5 -0
  48. data/lib/privy/models/tron_address.rb +7 -0
  49. data/lib/privy/models/wallet_asset.rb +1 -0
  50. data/lib/privy/models/wallet_batch_create_response.rb +1 -0
  51. data/lib/privy/models/wallet_create_batch_params.rb +14 -0
  52. data/lib/privy/models/wallet_ethereum_asset.rb +1 -0
  53. data/lib/privy/models/wallets/balance_get_params.rb +11 -0
  54. data/lib/privy/models/wallets/balance_get_response.rb +5 -0
  55. data/lib/privy/models/wallets/transaction_get_params.rb +3 -0
  56. data/lib/privy/models.rb +46 -0
  57. data/lib/privy/resources/intents.rb +2 -1
  58. data/lib/privy/resources/wallets/swap.rb +2 -2
  59. data/lib/privy/resources/wallets.rb +25 -1
  60. data/lib/privy/version.rb +1 -1
  61. data/lib/privy.rb +24 -1
  62. data/rbi/privy/client.rbi +4 -3
  63. data/rbi/privy/models/analytics_event_input.rbi +3 -6
  64. data/rbi/privy/models/bitcoin_address.rbi +7 -0
  65. data/rbi/privy/models/bridge_destination_asset.rbi +1 -0
  66. data/rbi/privy/models/bridge_fiat_virtual_account_destination.rbi +8 -1
  67. data/rbi/privy/models/bridge_fiat_virtual_account_request.rbi +9 -1
  68. data/rbi/privy/models/bridge_fiat_virtual_account_response.rbi +2 -0
  69. data/rbi/privy/models/bridge_fiat_virtual_account_source.rbi +6 -1
  70. data/rbi/privy/models/bridge_sandbox_fiat_virtual_account_request.rbi +9 -1
  71. data/rbi/privy/models/bridge_sandbox_fiat_virtual_account_response.rbi +2 -0
  72. data/rbi/privy/models/bridge_source_asset.rbi +1 -0
  73. data/rbi/privy/models/create_stripe_onramp_session_response.rbi +61 -3
  74. data/rbi/privy/models/device_verify_action.rbi +22 -0
  75. data/rbi/privy/models/device_verify_request_body.rbi +44 -0
  76. data/rbi/privy/models/device_verify_response.rbi +28 -0
  77. data/rbi/privy/models/evm_address.rbi +7 -0
  78. data/rbi/privy/models/evm_checksum_address.rbi +7 -0
  79. data/rbi/privy/models/gas.rbi +46 -0
  80. data/rbi/privy/models/hyperliquid_token_address.rbi +7 -0
  81. data/rbi/privy/models/linked_account_embedded_wallet.rbi +1 -0
  82. data/rbi/privy/models/oauth_grant.rbi +78 -0
  83. data/rbi/privy/models/oauth_grant_list_response.rbi +32 -0
  84. data/rbi/privy/models/oauth_grant_revoke_response.rbi +58 -0
  85. data/rbi/privy/models/oauth_token_authorization_code_request_body.rbi +115 -0
  86. data/rbi/privy/models/oauth_token_device_code_pending_error.rbi +106 -0
  87. data/rbi/privy/models/oauth_token_device_code_request_body.rbi +78 -0
  88. data/rbi/privy/models/oauth_token_grant_type.rbi +29 -0
  89. data/rbi/privy/models/oauth_token_refresh_token_request_body.rbi +78 -0
  90. data/rbi/privy/models/oauth_token_request_body.rbi +23 -0
  91. data/rbi/privy/models/oauth_token_success_response.rbi +95 -0
  92. data/rbi/privy/models/onramp_session_fees.rbi +39 -0
  93. data/rbi/privy/models/onramp_session_transaction_details.rbi +95 -0
  94. data/rbi/privy/models/solana_address.rbi +7 -0
  95. data/rbi/privy/models/swap_action_response.rbi +84 -0
  96. data/rbi/privy/models/swap_quote_request_body.rbi +4 -4
  97. data/rbi/privy/models/swap_quote_response.rbi +19 -4
  98. data/rbi/privy/models/swap_request_body.rbi +4 -4
  99. data/rbi/privy/models/token_transfer_destination.rbi +2 -2
  100. data/rbi/privy/models/transfer_action_response.rbi +57 -2
  101. data/rbi/privy/models/transfer_quote_request_body.rbi +4 -2
  102. data/rbi/privy/models/transfer_quote_response.rbi +16 -3
  103. data/rbi/privy/models/transfer_received_transaction_detail.rbi +15 -0
  104. data/rbi/privy/models/transfer_request_body.rbi +4 -2
  105. data/rbi/privy/models/transfer_sent_transaction_detail.rbi +15 -0
  106. data/rbi/privy/models/tron_address.rbi +7 -0
  107. data/rbi/privy/models/wallet_asset.rbi +1 -0
  108. data/rbi/privy/models/wallet_batch_create_response.rbi +2 -19
  109. data/rbi/privy/models/wallet_batch_create_result.rbi +4 -4
  110. data/rbi/privy/models/wallet_create_batch_params.rbi +27 -0
  111. data/rbi/privy/models/wallet_ethereum_asset.rbi +1 -0
  112. data/rbi/privy/models/wallets/balance_get_params.rbi +22 -0
  113. data/rbi/privy/models/wallets/balance_get_response.rbi +15 -0
  114. data/rbi/privy/models/wallets/transaction_get_params.rbi +5 -0
  115. data/rbi/privy/models.rbi +51 -0
  116. data/rbi/privy/resources/intents.rbi +4 -1
  117. data/rbi/privy/resources/wallets/swap.rbi +2 -2
  118. data/rbi/privy/resources/wallets.rbi +19 -1
  119. data/sig/privy/client.rbs +2 -2
  120. data/sig/privy/models/analytics_event_input.rbs +4 -6
  121. data/sig/privy/models/bitcoin_address.rbs +5 -0
  122. data/sig/privy/models/create_stripe_onramp_session_response.rbs +29 -3
  123. data/sig/privy/models/device_verify_action.rbs +14 -0
  124. data/sig/privy/models/device_verify_request_body.rbs +22 -0
  125. data/sig/privy/models/device_verify_response.rbs +13 -0
  126. data/sig/privy/models/evm_address.rbs +5 -0
  127. data/sig/privy/models/evm_checksum_address.rbs +5 -0
  128. data/sig/privy/models/gas.rbs +21 -0
  129. data/sig/privy/models/hyperliquid_token_address.rbs +5 -0
  130. data/sig/privy/models/oauth_grant.rbs +45 -0
  131. data/sig/privy/models/oauth_grant_list_response.rbs +13 -0
  132. data/sig/privy/models/oauth_grant_revoke_response.rbs +28 -0
  133. data/sig/privy/models/oauth_token_authorization_code_request_body.rbs +56 -0
  134. data/sig/privy/models/oauth_token_device_code_pending_error.rbs +48 -0
  135. data/sig/privy/models/oauth_token_device_code_request_body.rbs +35 -0
  136. data/sig/privy/models/oauth_token_grant_type.rbs +18 -0
  137. data/sig/privy/models/oauth_token_refresh_token_request_body.rbs +35 -0
  138. data/sig/privy/models/oauth_token_request_body.rbs +14 -0
  139. data/sig/privy/models/oauth_token_success_response.rbs +49 -0
  140. data/sig/privy/models/onramp_session_fees.rbs +22 -0
  141. data/sig/privy/models/onramp_session_transaction_details.rbs +53 -0
  142. data/sig/privy/models/solana_address.rbs +5 -0
  143. data/sig/privy/models/swap_action_response.rbs +32 -0
  144. data/sig/privy/models/swap_quote_request_body.rbs +5 -5
  145. data/sig/privy/models/swap_quote_response.rbs +7 -0
  146. data/sig/privy/models/swap_request_body.rbs +5 -5
  147. data/sig/privy/models/transfer_action_response.rbs +23 -0
  148. data/sig/privy/models/transfer_quote_response.rbs +10 -3
  149. data/sig/privy/models/transfer_received_transaction_detail.rbs +15 -1
  150. data/sig/privy/models/transfer_sent_transaction_detail.rbs +15 -1
  151. data/sig/privy/models/tron_address.rbs +5 -0
  152. data/sig/privy/models/wallet_asset.rbs +2 -1
  153. data/sig/privy/models/wallet_create_batch_params.rbs +15 -0
  154. data/sig/privy/models/wallet_ethereum_asset.rbs +2 -1
  155. data/sig/privy/models/wallets/balance_get_params.rbs +10 -0
  156. data/sig/privy/models/wallets/balance_get_response.rbs +6 -0
  157. data/sig/privy/models/wallets/transaction_get_params.rbs +2 -0
  158. data/sig/privy/models.rbs +46 -0
  159. data/sig/privy/resources/wallets/swap.rbs +2 -2
  160. data/sig/privy/resources/wallets.rbs +5 -0
  161. metadata +71 -2
@@ -8,7 +8,7 @@ module Privy
8
8
  T.any(Privy::TokenTransferDestination, Privy::Internal::AnyHash)
9
9
  end
10
10
 
11
- # Recipient address (hex for EVM, base58 for Solana)
11
+ # Recipient address (hex for EVM, base58 for Solana, base58check for Tron)
12
12
  sig { returns(String) }
13
13
  attr_accessor :address
14
14
 
@@ -36,7 +36,7 @@ module Privy
36
36
  )
37
37
  end
38
38
  def self.new(
39
- # Recipient address (hex for EVM, base58 for Solana)
39
+ # Recipient address (hex for EVM, base58 for Solana, base58check for Tron)
40
40
  address:,
41
41
  # The destination asset. Required for cross-asset transfers (e.g., source 'usdt'
42
42
  # to destination 'usdc').
@@ -57,6 +57,32 @@ module Privy
57
57
  sig { params(destination_chain: String).void }
58
58
  attr_writer :destination_chain
59
59
 
60
+ # Estimated fee breakdown from the provider quote.
61
+ sig { returns(T.nilable(T::Array[Privy::FeeLineItem::Variants])) }
62
+ attr_reader :estimated_fees
63
+
64
+ sig do
65
+ params(
66
+ estimated_fees:
67
+ T::Array[
68
+ T.any(
69
+ Privy::RelayerFee::OrHash,
70
+ Privy::PrivyFee::OrHash,
71
+ Privy::DeveloperFee::OrHash
72
+ )
73
+ ]
74
+ ).void
75
+ end
76
+ attr_writer :estimated_fees
77
+
78
+ # Gas cost for a blockchain action. Includes both raw base-unit amount and a
79
+ # human-readable decimal string, plus the gas token symbol.
80
+ sig { returns(T.nilable(Privy::Gas)) }
81
+ attr_reader :estimated_gas
82
+
83
+ sig { params(estimated_gas: Privy::Gas::OrHash).void }
84
+ attr_writer :estimated_gas
85
+
60
86
  # A description of why a wallet action (or a step within a wallet action) failed.
61
87
  sig { returns(T.nilable(Privy::FailureReason)) }
62
88
  attr_reader :failure_reason
@@ -64,7 +90,7 @@ module Privy
64
90
  sig { params(failure_reason: Privy::FailureReason::OrHash).void }
65
91
  attr_writer :failure_reason
66
92
 
67
- # Fees paid for the transfer.
93
+ # Actual fees paid for the transfer. Populated after on-chain confirmation.
68
94
  sig { returns(T.nilable(T::Array[Privy::FeeLineItem::Variants])) }
69
95
  attr_reader :fees
70
96
 
@@ -82,6 +108,14 @@ module Privy
82
108
  end
83
109
  attr_writer :fees
84
110
 
111
+ # Gas cost for a blockchain action. Includes both raw base-unit amount and a
112
+ # human-readable decimal string, plus the gas token symbol.
113
+ sig { returns(T.nilable(Privy::Gas)) }
114
+ attr_reader :gas
115
+
116
+ sig { params(gas: Privy::Gas::OrHash).void }
117
+ attr_writer :gas
118
+
85
119
  # Decimal amount sent on the source chain (e.g. "1.5"). Omitted for exact_output
86
120
  # cross-chain transfers until the source amount is determined.
87
121
  sig { returns(T.nilable(String)) }
@@ -146,6 +180,15 @@ module Privy
146
180
  destination_amount: String,
147
181
  destination_asset: String,
148
182
  destination_chain: String,
183
+ estimated_fees:
184
+ T::Array[
185
+ T.any(
186
+ Privy::RelayerFee::OrHash,
187
+ Privy::PrivyFee::OrHash,
188
+ Privy::DeveloperFee::OrHash
189
+ )
190
+ ],
191
+ estimated_gas: Privy::Gas::OrHash,
149
192
  failure_reason: Privy::FailureReason::OrHash,
150
193
  fees:
151
194
  T::Array[
@@ -155,6 +198,7 @@ module Privy
155
198
  Privy::DeveloperFee::OrHash
156
199
  )
157
200
  ],
201
+ gas: Privy::Gas::OrHash,
158
202
  source_amount: String,
159
203
  source_asset: String,
160
204
  source_asset_address: String,
@@ -191,10 +235,18 @@ module Privy
191
235
  destination_asset: nil,
192
236
  # Destination chain for cross-chain transfers. Omitted for same-chain transfers.
193
237
  destination_chain: nil,
238
+ # Estimated fee breakdown from the provider quote.
239
+ estimated_fees: nil,
240
+ # Gas cost for a blockchain action. Includes both raw base-unit amount and a
241
+ # human-readable decimal string, plus the gas token symbol.
242
+ estimated_gas: nil,
194
243
  # A description of why a wallet action (or a step within a wallet action) failed.
195
244
  failure_reason: nil,
196
- # Fees paid for the transfer.
245
+ # Actual fees paid for the transfer. Populated after on-chain confirmation.
197
246
  fees: nil,
247
+ # Gas cost for a blockchain action. Includes both raw base-unit amount and a
248
+ # human-readable decimal string, plus the gas token symbol.
249
+ gas: nil,
198
250
  # Decimal amount sent on the source chain (e.g. "1.5"). Omitted for exact_output
199
251
  # cross-chain transfers until the source amount is determined.
200
252
  source_amount: nil,
@@ -225,8 +277,11 @@ module Privy
225
277
  destination_amount: String,
226
278
  destination_asset: String,
227
279
  destination_chain: String,
280
+ estimated_fees: T::Array[Privy::FeeLineItem::Variants],
281
+ estimated_gas: Privy::Gas,
228
282
  failure_reason: Privy::FailureReason,
229
283
  fees: T::Array[Privy::FeeLineItem::Variants],
284
+ gas: Privy::Gas,
230
285
  source_amount: String,
231
286
  source_asset: String,
232
287
  source_asset_address: String,
@@ -42,7 +42,8 @@ module Privy
42
42
  sig { params(fee_configuration: Privy::FeeConfiguration::OrHash).void }
43
43
  attr_writer :fee_configuration
44
44
 
45
- # Maximum allowed slippage in basis points (1 bps = 0.01%).
45
+ # Maximum allowed slippage in basis points (1 bps = 0.01%). Only applicable for
46
+ # cross-chain or cross-asset transfers; omit to use the provider default.
46
47
  sig { returns(T.nilable(Integer)) }
47
48
  attr_reader :slippage_bps
48
49
 
@@ -75,7 +76,8 @@ module Privy
75
76
  amount_type: nil,
76
77
  # Total fees assessed on a transfer, in BPS
77
78
  fee_configuration: nil,
78
- # Maximum allowed slippage in basis points (1 bps = 0.01%).
79
+ # Maximum allowed slippage in basis points (1 bps = 0.01%). Only applicable for
80
+ # cross-chain or cross-asset transfers; omit to use the provider default.
79
81
  slippage_bps: nil
80
82
  )
81
83
  end
@@ -53,6 +53,14 @@ module Privy
53
53
  sig { params(amount_type: Privy::AmountType::OrSymbol).void }
54
54
  attr_writer :amount_type
55
55
 
56
+ # Gas cost for a blockchain action. Includes both raw base-unit amount and a
57
+ # human-readable decimal string, plus the gas token symbol.
58
+ sig { returns(T.nilable(Privy::Gas)) }
59
+ attr_reader :estimated_gas
60
+
61
+ sig { params(estimated_gas: Privy::Gas::OrHash).void }
62
+ attr_writer :estimated_gas
63
+
56
64
  # Response containing a quote for a cross-asset or cross-chain (DADC) transfer.
57
65
  sig do
58
66
  params(
@@ -72,7 +80,8 @@ module Privy
72
80
  Privy::NamedTokenTransferSource::OrHash,
73
81
  Privy::CustomTokenTransferSource::OrHash
74
82
  ),
75
- amount_type: Privy::AmountType::OrSymbol
83
+ amount_type: Privy::AmountType::OrSymbol,
84
+ estimated_gas: Privy::Gas::OrHash
76
85
  ).returns(T.attached_class)
77
86
  end
78
87
  def self.new(
@@ -89,7 +98,10 @@ module Privy
89
98
  # (named) or `asset_address` (custom), not both.
90
99
  source:,
91
100
  # Whether the amount refers to the input token or output token.
92
- amount_type: nil
101
+ amount_type: nil,
102
+ # Gas cost for a blockchain action. Includes both raw base-unit amount and a
103
+ # human-readable decimal string, plus the gas token symbol.
104
+ estimated_gas: nil
93
105
  )
94
106
  end
95
107
 
@@ -108,7 +120,8 @@ module Privy
108
120
  Privy::NamedTokenTransferSource,
109
121
  Privy::CustomTokenTransferSource
110
122
  ),
111
- amount_type: Privy::AmountType::OrSymbol
123
+ amount_type: Privy::AmountType::OrSymbol,
124
+ estimated_gas: Privy::Gas
112
125
  }
113
126
  )
114
127
  end
@@ -138,6 +138,11 @@ module Privy
138
138
  :eth,
139
139
  Privy::TransferReceivedTransactionDetail::Asset::TaggedSymbol
140
140
  )
141
+ AVAX =
142
+ T.let(
143
+ :avax,
144
+ Privy::TransferReceivedTransactionDetail::Asset::TaggedSymbol
145
+ )
141
146
  POL =
142
147
  T.let(
143
148
  :pol,
@@ -184,6 +189,11 @@ module Privy
184
189
  :arbitrum,
185
190
  Privy::TransferReceivedTransactionDetail::Chain::TaggedSymbol
186
191
  )
192
+ AVALANCHE =
193
+ T.let(
194
+ :avalanche,
195
+ Privy::TransferReceivedTransactionDetail::Chain::TaggedSymbol
196
+ )
187
197
  BASE =
188
198
  T.let(
189
199
  :base,
@@ -229,6 +239,11 @@ module Privy
229
239
  :arbitrum_sepolia,
230
240
  Privy::TransferReceivedTransactionDetail::Chain::TaggedSymbol
231
241
  )
242
+ AVALANCHE_FUJI =
243
+ T.let(
244
+ :avalanche_fuji,
245
+ Privy::TransferReceivedTransactionDetail::Chain::TaggedSymbol
246
+ )
232
247
  BASE_SEPOLIA =
233
248
  T.let(
234
249
  :base_sepolia,
@@ -35,7 +35,8 @@ module Privy
35
35
  sig { params(fee_configuration: Privy::FeeConfiguration::OrHash).void }
36
36
  attr_writer :fee_configuration
37
37
 
38
- # Maximum allowed slippage in basis points (1 bps = 0.01%).
38
+ # Maximum allowed slippage in basis points (1 bps = 0.01%). Only applicable for
39
+ # cross-chain or cross-asset transfers; omit to use the provider default.
39
40
  sig { returns(T.nilable(Integer)) }
40
41
  attr_reader :slippage_bps
41
42
 
@@ -67,7 +68,8 @@ module Privy
67
68
  amount_type: nil,
68
69
  # Total fees assessed on a transfer, in BPS
69
70
  fee_configuration: nil,
70
- # Maximum allowed slippage in basis points (1 bps = 0.01%).
71
+ # Maximum allowed slippage in basis points (1 bps = 0.01%). Only applicable for
72
+ # cross-chain or cross-asset transfers; omit to use the provider default.
71
73
  slippage_bps: nil
72
74
  )
73
75
  end
@@ -127,6 +127,11 @@ module Privy
127
127
  )
128
128
  ETH =
129
129
  T.let(:eth, Privy::TransferSentTransactionDetail::Asset::TaggedSymbol)
130
+ AVAX =
131
+ T.let(
132
+ :avax,
133
+ Privy::TransferSentTransactionDetail::Asset::TaggedSymbol
134
+ )
130
135
  POL =
131
136
  T.let(:pol, Privy::TransferSentTransactionDetail::Asset::TaggedSymbol)
132
137
  USDT =
@@ -167,6 +172,11 @@ module Privy
167
172
  :arbitrum,
168
173
  Privy::TransferSentTransactionDetail::Chain::TaggedSymbol
169
174
  )
175
+ AVALANCHE =
176
+ T.let(
177
+ :avalanche,
178
+ Privy::TransferSentTransactionDetail::Chain::TaggedSymbol
179
+ )
170
180
  BASE =
171
181
  T.let(
172
182
  :base,
@@ -212,6 +222,11 @@ module Privy
212
222
  :arbitrum_sepolia,
213
223
  Privy::TransferSentTransactionDetail::Chain::TaggedSymbol
214
224
  )
225
+ AVALANCHE_FUJI =
226
+ T.let(
227
+ :avalanche_fuji,
228
+ Privy::TransferSentTransactionDetail::Chain::TaggedSymbol
229
+ )
215
230
  BASE_SEPOLIA =
216
231
  T.let(
217
232
  :base_sepolia,
@@ -0,0 +1,7 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ TronAddress = String
6
+ end
7
+ end
@@ -12,6 +12,7 @@ module Privy
12
12
  USDC = T.let(:usdc, Privy::WalletAsset::TaggedSymbol)
13
13
  USDC_E = T.let(:"usdc.e", Privy::WalletAsset::TaggedSymbol)
14
14
  ETH = T.let(:eth, Privy::WalletAsset::TaggedSymbol)
15
+ AVAX = T.let(:avax, Privy::WalletAsset::TaggedSymbol)
15
16
  POL = T.let(:pol, Privy::WalletAsset::TaggedSymbol)
16
17
  USDT = T.let(:usdt, Privy::WalletAsset::TaggedSymbol)
17
18
  EURC = T.let(:eurc, Privy::WalletAsset::TaggedSymbol)
@@ -9,16 +9,7 @@ module Privy
9
9
  end
10
10
 
11
11
  # Array of results for each wallet creation request, in the same order as input.
12
- sig do
13
- returns(
14
- T::Array[
15
- T.any(
16
- Privy::WalletBatchCreateResult::WalletBatchCreateSuccess,
17
- Privy::WalletBatchCreateResult::WalletBatchCreateFailure
18
- )
19
- ]
20
- )
21
- end
12
+ sig { returns(T::Array[Privy::WalletBatchCreateResult::Variants]) }
22
13
  attr_accessor :results
23
14
 
24
15
  # Response for a batch wallet creation request.
@@ -41,15 +32,7 @@ module Privy
41
32
 
42
33
  sig do
43
34
  override.returns(
44
- {
45
- results:
46
- T::Array[
47
- T.any(
48
- Privy::WalletBatchCreateResult::WalletBatchCreateSuccess,
49
- Privy::WalletBatchCreateResult::WalletBatchCreateFailure
50
- )
51
- ]
52
- }
35
+ { results: T::Array[Privy::WalletBatchCreateResult::Variants] }
53
36
  )
54
37
  end
55
38
  def to_hash
@@ -29,7 +29,7 @@ module Privy
29
29
 
30
30
  sig do
31
31
  returns(
32
- Privy::WalletBatchCreateResult::WalletBatchCreateSuccess::Success::OrBoolean
32
+ Privy::WalletBatchCreateResult::WalletBatchCreateSuccess::Success::TaggedBoolean
33
33
  )
34
34
  end
35
35
  attr_accessor :success
@@ -64,7 +64,7 @@ module Privy
64
64
  {
65
65
  index: Float,
66
66
  success:
67
- Privy::WalletBatchCreateResult::WalletBatchCreateSuccess::Success::OrBoolean,
67
+ Privy::WalletBatchCreateResult::WalletBatchCreateSuccess::Success::TaggedBoolean,
68
68
  wallet: Privy::Wallet
69
69
  }
70
70
  )
@@ -126,7 +126,7 @@ module Privy
126
126
 
127
127
  sig do
128
128
  returns(
129
- Privy::WalletBatchCreateResult::WalletBatchCreateFailure::Success::OrBoolean
129
+ Privy::WalletBatchCreateResult::WalletBatchCreateFailure::Success::TaggedBoolean
130
130
  )
131
131
  end
132
132
  attr_accessor :success
@@ -160,7 +160,7 @@ module Privy
160
160
  error: String,
161
161
  index: Float,
162
162
  success:
163
- Privy::WalletBatchCreateResult::WalletBatchCreateFailure::Success::OrBoolean
163
+ Privy::WalletBatchCreateResult::WalletBatchCreateFailure::Success::TaggedBoolean
164
164
  }
165
165
  )
166
166
  end
@@ -0,0 +1,27 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class WalletCreateBatchParams < Privy::Models::WalletBatchCreateInput
6
+ extend Privy::Internal::Type::RequestParameters::Converter
7
+ include Privy::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(Privy::WalletCreateBatchParams, Privy::Internal::AnyHash)
12
+ end
13
+
14
+ sig do
15
+ params(request_options: Privy::RequestOptions::OrHash).returns(
16
+ T.attached_class
17
+ )
18
+ end
19
+ def self.new(request_options: {})
20
+ end
21
+
22
+ sig { override.returns({ request_options: Privy::RequestOptions }) }
23
+ def to_hash
24
+ end
25
+ end
26
+ end
27
+ end
@@ -12,6 +12,7 @@ module Privy
12
12
  USDC = T.let(:usdc, Privy::WalletEthereumAsset::TaggedSymbol)
13
13
  USDC_E = T.let(:"usdc.e", Privy::WalletEthereumAsset::TaggedSymbol)
14
14
  ETH = T.let(:eth, Privy::WalletEthereumAsset::TaggedSymbol)
15
+ AVAX = T.let(:avax, Privy::WalletEthereumAsset::TaggedSymbol)
15
16
  POL = T.let(:pol, Privy::WalletEthereumAsset::TaggedSymbol)
16
17
  USDT = T.let(:usdt, Privy::WalletEthereumAsset::TaggedSymbol)
17
18
  EURC = T.let(:eurc, Privy::WalletEthereumAsset::TaggedSymbol)
@@ -231,6 +231,8 @@ module Privy
231
231
  )
232
232
  ETH =
233
233
  T.let(:eth, Privy::Wallets::BalanceGetParams::Asset::TaggedSymbol)
234
+ AVAX =
235
+ T.let(:avax, Privy::Wallets::BalanceGetParams::Asset::TaggedSymbol)
234
236
  POL =
235
237
  T.let(:pol, Privy::Wallets::BalanceGetParams::Asset::TaggedSymbol)
236
238
  USDT =
@@ -286,6 +288,11 @@ module Privy
286
288
  :arbitrum,
287
289
  Privy::Wallets::BalanceGetParams::Chain::UnionMember1::TaggedSymbol
288
290
  )
291
+ AVALANCHE =
292
+ T.let(
293
+ :avalanche,
294
+ Privy::Wallets::BalanceGetParams::Chain::UnionMember1::TaggedSymbol
295
+ )
289
296
  BASE =
290
297
  T.let(
291
298
  :base,
@@ -331,6 +338,11 @@ module Privy
331
338
  :arbitrum_sepolia,
332
339
  Privy::Wallets::BalanceGetParams::Chain::UnionMember1::TaggedSymbol
333
340
  )
341
+ AVALANCHE_FUJI =
342
+ T.let(
343
+ :avalanche_fuji,
344
+ Privy::Wallets::BalanceGetParams::Chain::UnionMember1::TaggedSymbol
345
+ )
334
346
  BASE_SEPOLIA =
335
347
  T.let(
336
348
  :base_sepolia,
@@ -397,6 +409,11 @@ module Privy
397
409
  :arbitrum,
398
410
  Privy::Wallets::BalanceGetParams::Chain::TaggedSymbol
399
411
  )
412
+ AVALANCHE =
413
+ T.let(
414
+ :avalanche,
415
+ Privy::Wallets::BalanceGetParams::Chain::TaggedSymbol
416
+ )
400
417
  BASE =
401
418
  T.let(:base, Privy::Wallets::BalanceGetParams::Chain::TaggedSymbol)
402
419
  TEMPO =
@@ -433,6 +450,11 @@ module Privy
433
450
  :arbitrum_sepolia,
434
451
  Privy::Wallets::BalanceGetParams::Chain::TaggedSymbol
435
452
  )
453
+ AVALANCHE_FUJI =
454
+ T.let(
455
+ :avalanche_fuji,
456
+ Privy::Wallets::BalanceGetParams::Chain::TaggedSymbol
457
+ )
436
458
  BASE_SEPOLIA =
437
459
  T.let(
438
460
  :base_sepolia,
@@ -155,6 +155,11 @@ module Privy
155
155
  :eth,
156
156
  Privy::Models::Wallets::BalanceGetResponse::Balance::Asset::TaggedSymbol
157
157
  )
158
+ AVAX =
159
+ T.let(
160
+ :avax,
161
+ Privy::Models::Wallets::BalanceGetResponse::Balance::Asset::TaggedSymbol
162
+ )
158
163
  POL =
159
164
  T.let(
160
165
  :pol,
@@ -204,6 +209,11 @@ module Privy
204
209
  :arbitrum,
205
210
  Privy::Models::Wallets::BalanceGetResponse::Balance::Chain::TaggedSymbol
206
211
  )
212
+ AVALANCHE =
213
+ T.let(
214
+ :avalanche,
215
+ Privy::Models::Wallets::BalanceGetResponse::Balance::Chain::TaggedSymbol
216
+ )
207
217
  BASE =
208
218
  T.let(
209
219
  :base,
@@ -249,6 +259,11 @@ module Privy
249
259
  :arbitrum_sepolia,
250
260
  Privy::Models::Wallets::BalanceGetResponse::Balance::Chain::TaggedSymbol
251
261
  )
262
+ AVALANCHE_FUJI =
263
+ T.let(
264
+ :avalanche_fuji,
265
+ Privy::Models::Wallets::BalanceGetResponse::Balance::Chain::TaggedSymbol
266
+ )
252
267
  BASE_SEPOLIA =
253
268
  T.let(
254
269
  :base_sepolia,
@@ -262,6 +262,11 @@ module Privy
262
262
  :eth,
263
263
  Privy::Wallets::TransactionGetParams::Asset::TaggedSymbol
264
264
  )
265
+ AVAX =
266
+ T.let(
267
+ :avax,
268
+ Privy::Wallets::TransactionGetParams::Asset::TaggedSymbol
269
+ )
265
270
  POL =
266
271
  T.let(
267
272
  :pol,
data/rbi/privy/models.rbi CHANGED
@@ -109,6 +109,8 @@ module Privy
109
109
 
110
110
  BaseIntentResponse = Privy::Models::BaseIntentResponse
111
111
 
112
+ BitcoinAddress = Privy::Models::BitcoinAddress
113
+
112
114
  BridgeBrlFiatVirtualAccountDepositInstructions =
113
115
  Privy::Models::BridgeBrlFiatVirtualAccountDepositInstructions
114
116
 
@@ -300,6 +302,12 @@ module Privy
300
302
 
301
303
  DeviceAuthorizationResponse = Privy::Models::DeviceAuthorizationResponse
302
304
 
305
+ DeviceVerifyAction = Privy::Models::DeviceVerifyAction
306
+
307
+ DeviceVerifyRequestBody = Privy::Models::DeviceVerifyRequestBody
308
+
309
+ DeviceVerifyResponse = Privy::Models::DeviceVerifyResponse
310
+
303
311
  EarnAsset = Privy::Models::EarnAsset
304
312
 
305
313
  EarnDepositActionResponse = Privy::Models::EarnDepositActionResponse
@@ -500,8 +508,12 @@ module Privy
500
508
 
501
509
  EthereumYieldWithdrawInput = Privy::Models::EthereumYieldWithdrawInput
502
510
 
511
+ EvmAddress = Privy::Models::EvmAddress
512
+
503
513
  EvmCaip2ChainID = Privy::Models::EvmCaip2ChainID
504
514
 
515
+ EvmChecksumAddress = Privy::Models::EvmChecksumAddress
516
+
505
517
  EvmTransactionWalletActionStep = Privy::Models::EvmTransactionWalletActionStep
506
518
 
507
519
  EvmUserOperationWalletActionStep =
@@ -645,6 +657,8 @@ module Privy
645
657
 
646
658
  FundsWithdrawnWebhookPayload = Privy::Models::FundsWithdrawnWebhookPayload
647
659
 
660
+ Gas = Privy::Models::Gas
661
+
648
662
  GasSpendCurrency = Privy::Models::GasSpendCurrency
649
663
 
650
664
  GasSpendRequestBody = Privy::Models::GasSpendRequestBody
@@ -688,6 +702,8 @@ module Privy
688
702
 
689
703
  HpkeImportConfig = Privy::Models::HpkeImportConfig
690
704
 
705
+ HyperliquidTokenAddress = Privy::Models::HyperliquidTokenAddress
706
+
691
707
  ICloudClientType = Privy::Models::ICloudClientType
692
708
 
693
709
  IntentAuthorization = Privy::Models::IntentAuthorization
@@ -1136,6 +1152,12 @@ module Privy
1136
1152
 
1137
1153
  OAuthCodeType = Privy::Models::OAuthCodeType
1138
1154
 
1155
+ OAuthGrant = Privy::Models::OAuthGrant
1156
+
1157
+ OAuthGrantListResponse = Privy::Models::OAuthGrantListResponse
1158
+
1159
+ OAuthGrantRevokeResponse = Privy::Models::OAuthGrantRevokeResponse
1160
+
1139
1161
  OAuthInitICloudRecoveryInput = Privy::Models::OAuthInitICloudRecoveryInput
1140
1162
 
1141
1163
  OAuthInitRecoveryInput = Privy::Models::OAuthInitRecoveryInput
@@ -1150,8 +1172,26 @@ module Privy
1150
1172
 
1151
1173
  OAuthProviderID = Privy::Models::OAuthProviderID
1152
1174
 
1175
+ OAuthTokenAuthorizationCodeRequestBody =
1176
+ Privy::Models::OAuthTokenAuthorizationCodeRequestBody
1177
+
1178
+ OAuthTokenDeviceCodePendingError =
1179
+ Privy::Models::OAuthTokenDeviceCodePendingError
1180
+
1181
+ OAuthTokenDeviceCodeRequestBody =
1182
+ Privy::Models::OAuthTokenDeviceCodeRequestBody
1183
+
1184
+ OAuthTokenGrantType = Privy::Models::OAuthTokenGrantType
1185
+
1186
+ OAuthTokenRefreshTokenRequestBody =
1187
+ Privy::Models::OAuthTokenRefreshTokenRequestBody
1188
+
1189
+ OAuthTokenRequestBody = Privy::Models::OAuthTokenRequestBody
1190
+
1153
1191
  OAuthTokens = Privy::Models::OAuthTokens
1154
1192
 
1193
+ OAuthTokenSuccessResponse = Privy::Models::OAuthTokenSuccessResponse
1194
+
1155
1195
  OAuthTransferRequestBody = Privy::Models::OAuthTransferRequestBody
1156
1196
 
1157
1197
  OAuthTransferUserInfo = Privy::Models::OAuthTransferUserInfo
@@ -1166,8 +1206,13 @@ module Privy
1166
1206
 
1167
1207
  OnrampProvider = Privy::Models::OnrampProvider
1168
1208
 
1209
+ OnrampSessionFees = Privy::Models::OnrampSessionFees
1210
+
1169
1211
  OnrampSessionParams = Privy::Models::OnrampSessionParams
1170
1212
 
1213
+ OnrampSessionTransactionDetails =
1214
+ Privy::Models::OnrampSessionTransactionDetails
1215
+
1171
1216
  OptionalRefreshTokenInput = Privy::Models::OptionalRefreshTokenInput
1172
1217
 
1173
1218
  OrganizationSecretIDInput = Privy::Models::OrganizationSecretIDInput
@@ -1455,6 +1500,8 @@ module Privy
1455
1500
 
1456
1501
  SMSMfaMethod = Privy::Models::SMSMfaMethod
1457
1502
 
1503
+ SolanaAddress = Privy::Models::SolanaAddress
1504
+
1458
1505
  SolanaProgramInstructionCondition =
1459
1506
  Privy::Models::SolanaProgramInstructionCondition
1460
1507
 
@@ -1803,6 +1850,8 @@ module Privy
1803
1850
 
1804
1851
  TransferTelegramInput = Privy::Models::TransferTelegramInput
1805
1852
 
1853
+ TronAddress = Privy::Models::TronAddress
1854
+
1806
1855
  TronCalldataCondition = Privy::Models::TronCalldataCondition
1807
1856
 
1808
1857
  TronTransactionCondition = Privy::Models::TronTransactionCondition
@@ -2030,6 +2079,8 @@ module Privy
2030
2079
 
2031
2080
  WalletChainType = Privy::Models::WalletChainType
2032
2081
 
2082
+ WalletCreateBatchParams = Privy::Models::WalletCreateBatchParams
2083
+
2033
2084
  WalletCreateParams = Privy::Models::WalletCreateParams
2034
2085
 
2035
2086
  WalletCreateWalletsWithRecoveryParams =
@@ -2,6 +2,7 @@
2
2
 
3
3
  module Privy
4
4
  module Resources
5
+ # Operations related to authorization intents for wallet actions
5
6
  class Intents
6
7
  # List intents for an app. Returns a paginated list of intents with their current
7
8
  # status and details.
@@ -201,7 +202,9 @@ module Privy
201
202
  amount_type: nil,
202
203
  # Body param: Total fees assessed on a transfer, in BPS
203
204
  fee_configuration: nil,
204
- # Body param: Maximum allowed slippage in basis points (1 bps = 0.01%).
205
+ # Body param: Maximum allowed slippage in basis points (1 bps = 0.01%). Only
206
+ # applicable for cross-chain or cross-asset transfers; omit to use the provider
207
+ # default.
205
208
  slippage_bps: nil,
206
209
  # Header param: Request expiry. Value is a Unix timestamp in milliseconds
207
210
  # representing the deadline by which the request must be processed.