privy_ruby 0.5.0 → 0.7.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 (170) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +20 -0
  3. data/README.md +1 -1
  4. data/lib/privy/models/balance_asset_by_chain.rb +2 -2
  5. data/lib/privy/models/currency.rb +5 -2
  6. data/lib/privy/models/custom_token_transfer_source.rb +1 -1
  7. data/lib/privy/models/email_mfa_method.rb +33 -0
  8. data/lib/privy/models/ethereum_personal_sign_rpc_input.rb +2 -2
  9. data/lib/privy/models/ethereum_secp_256k_1_sign_rpc_input_params.rb +2 -2
  10. data/lib/privy/models/ethereum_secp_256k_1_sign_rpc_response_data.rb +2 -2
  11. data/lib/privy/models/ethereum_send_calls_call.rb +2 -2
  12. data/lib/privy/models/ethereum_send_calls_rpc_input.rb +4 -4
  13. data/lib/privy/models/ethereum_send_calls_rpc_response_data.rb +5 -2
  14. data/lib/privy/models/ethereum_send_transaction_rpc_input.rb +4 -4
  15. data/lib/privy/models/ethereum_send_transaction_rpc_response_data.rb +2 -2
  16. data/lib/privy/models/ethereum_sign_7702_authorization.rb +4 -4
  17. data/lib/privy/models/ethereum_sign_typed_data_rpc_input.rb +2 -2
  18. data/lib/privy/models/ethereum_vault_details_response.rb +2 -2
  19. data/lib/privy/models/ethereum_yield_claim_input.rb +6 -2
  20. data/lib/privy/models/ethereum_yield_claim_response.rb +6 -2
  21. data/lib/privy/models/fiat_onramp_destination.rb +3 -3
  22. data/lib/privy/models/linked_mfa_method.rb +4 -1
  23. data/lib/privy/models/mfa_email_enroll_request_body.rb +23 -0
  24. data/lib/privy/models/mfa_email_init_enroll_input.rb +33 -0
  25. data/lib/privy/models/mfa_email_init_request_body.rb +19 -0
  26. data/lib/privy/models/mfa_email_init_verify_input.rb +27 -0
  27. data/lib/privy/models/mfa_email_verify_request_body.rb +17 -0
  28. data/lib/privy/models/mfa_method.rb +1 -0
  29. data/lib/privy/models/named_token_transfer_source.rb +4 -4
  30. data/lib/privy/models/quantity.rb +1 -1
  31. data/lib/privy/models/raw_sign_hash_params.rb +2 -2
  32. data/lib/privy/models/raw_sign_response_data.rb +2 -2
  33. data/lib/privy/models/solana_sign_and_send_transaction_rpc_input.rb +5 -2
  34. data/lib/privy/models/solana_sign_and_send_transaction_rpc_response_data.rb +5 -2
  35. data/lib/privy/models/swap_source.rb +6 -2
  36. data/lib/privy/models/tempo_aa_authorization.rb +2 -2
  37. data/lib/privy/models/tempo_call.rb +2 -2
  38. data/lib/privy/models/tempo_fee_payer_signature.rb +4 -4
  39. data/lib/privy/models/token_transfer_destination.rb +1 -1
  40. data/lib/privy/models/transaction_broadcasted_webhook_payload.rb +3 -2
  41. data/lib/privy/models/transaction_chain_name_input.rb +1 -0
  42. data/lib/privy/models/transaction_confirmed_webhook_payload.rb +3 -2
  43. data/lib/privy/models/transaction_execution_reverted_webhook_payload.rb +3 -2
  44. data/lib/privy/models/transaction_failed_webhook_payload.rb +3 -2
  45. data/lib/privy/models/transaction_provider_error_webhook_payload.rb +3 -2
  46. data/lib/privy/models/transaction_replaced_webhook_payload.rb +3 -2
  47. data/lib/privy/models/transaction_still_pending_webhook_payload.rb +3 -2
  48. data/lib/privy/models/transfer_received_transaction_detail.rb +3 -0
  49. data/lib/privy/models/transfer_sent_transaction_detail.rb +3 -0
  50. data/lib/privy/models/tron_send_transaction_rpc_input.rb +5 -2
  51. data/lib/privy/models/tron_send_transaction_rpc_response_data.rb +5 -2
  52. data/lib/privy/models/unsigned_standard_ethereum_transaction.rb +2 -2
  53. data/lib/privy/models/user.rb +2 -2
  54. data/lib/privy/models/user_operation_input.rb +37 -21
  55. data/lib/privy/models/wallet_action_earn_incentive_claim_created_webhook_payload.rb +2 -2
  56. data/lib/privy/models/wallet_action_earn_incentive_claim_failed_webhook_payload.rb +2 -2
  57. data/lib/privy/models/wallet_action_earn_incentive_claim_rejected_webhook_payload.rb +2 -2
  58. data/lib/privy/models/wallet_action_earn_incentive_claim_succeeded_webhook_payload.rb +2 -2
  59. data/lib/privy/models/wallet_action_transfer_created_webhook_payload.rb +2 -2
  60. data/lib/privy/models/wallet_action_transfer_failed_webhook_payload.rb +2 -2
  61. data/lib/privy/models/wallet_action_transfer_rejected_webhook_payload.rb +2 -2
  62. data/lib/privy/models/wallet_action_transfer_succeeded_webhook_payload.rb +2 -2
  63. data/lib/privy/models/wallet_asset.rb +1 -0
  64. data/lib/privy/models/wallet_ethereum_asset.rb +1 -0
  65. data/lib/privy/models/wallets/aave_vault_details.rb +2 -2
  66. data/lib/privy/models/wallets/balance_get_params.rb +9 -6
  67. data/lib/privy/models/wallets/balance_get_response.rb +3 -0
  68. data/lib/privy/models/wallets/earn_incentive_claim_action_response.rb +2 -2
  69. data/lib/privy/models/wallets/earn_incentive_claim_request_body.rb +2 -2
  70. data/lib/privy/models/wallets/earn_incentive_rewards_query.rb +2 -2
  71. data/lib/privy/models/wallets/morpho_vault_details.rb +2 -2
  72. data/lib/privy/models/wallets/transaction_get_params.rb +3 -0
  73. data/lib/privy/models/wallets/transfer_action_response.rb +2 -2
  74. data/lib/privy/models/wallets/veda_vault_details.rb +2 -2
  75. data/lib/privy/models.rb +12 -0
  76. data/lib/privy/resources/wallets/balance.rb +2 -2
  77. data/lib/privy/version.rb +1 -1
  78. data/lib/privy.rb +6 -0
  79. data/rbi/privy/models/balance_asset_by_chain.rbi +2 -2
  80. data/rbi/privy/models/currency.rbi +2 -2
  81. data/rbi/privy/models/custom_token_transfer_source.rbi +2 -2
  82. data/rbi/privy/models/email_mfa_method.rbi +53 -0
  83. data/rbi/privy/models/ethereum_personal_sign_rpc_input.rbi +2 -2
  84. data/rbi/privy/models/ethereum_secp_256k_1_sign_rpc_input_params.rbi +2 -2
  85. data/rbi/privy/models/ethereum_secp_256k_1_sign_rpc_response_data.rbi +2 -2
  86. data/rbi/privy/models/ethereum_send_calls_call.rbi +2 -2
  87. data/rbi/privy/models/ethereum_send_calls_rpc_input.rbi +4 -4
  88. data/rbi/privy/models/ethereum_send_calls_rpc_response_data.rbi +2 -2
  89. data/rbi/privy/models/ethereum_send_transaction_rpc_input.rbi +4 -4
  90. data/rbi/privy/models/ethereum_send_transaction_rpc_response_data.rbi +2 -2
  91. data/rbi/privy/models/ethereum_sign_7702_authorization.rbi +4 -4
  92. data/rbi/privy/models/ethereum_sign_typed_data_rpc_input.rbi +2 -2
  93. data/rbi/privy/models/ethereum_vault_details_response.rbi +2 -2
  94. data/rbi/privy/models/ethereum_yield_claim_input.rbi +4 -2
  95. data/rbi/privy/models/ethereum_yield_claim_response.rbi +4 -2
  96. data/rbi/privy/models/fiat_onramp_destination.rbi +4 -4
  97. data/rbi/privy/models/linked_mfa_method.rbi +2 -1
  98. data/rbi/privy/models/mfa_email_enroll_request_body.rbi +29 -0
  99. data/rbi/privy/models/mfa_email_init_enroll_input.rbi +58 -0
  100. data/rbi/privy/models/mfa_email_init_request_body.rbi +21 -0
  101. data/rbi/privy/models/mfa_email_init_verify_input.rbi +51 -0
  102. data/rbi/privy/models/mfa_email_verify_request_body.rbi +24 -0
  103. data/rbi/privy/models/mfa_method.rbi +1 -0
  104. data/rbi/privy/models/named_token_transfer_source.rbi +6 -6
  105. data/rbi/privy/models/raw_sign_hash_params.rbi +2 -2
  106. data/rbi/privy/models/raw_sign_response_data.rbi +2 -2
  107. data/rbi/privy/models/solana_sign_and_send_transaction_rpc_input.rbi +2 -2
  108. data/rbi/privy/models/solana_sign_and_send_transaction_rpc_response_data.rbi +2 -2
  109. data/rbi/privy/models/swap_source.rbi +4 -2
  110. data/rbi/privy/models/tempo_aa_authorization.rbi +2 -2
  111. data/rbi/privy/models/tempo_call.rbi +2 -2
  112. data/rbi/privy/models/tempo_fee_payer_signature.rbi +4 -4
  113. data/rbi/privy/models/token_transfer_destination.rbi +2 -2
  114. data/rbi/privy/models/transaction_broadcasted_webhook_payload.rbi +4 -2
  115. data/rbi/privy/models/transaction_chain_name_input.rbi +2 -0
  116. data/rbi/privy/models/transaction_confirmed_webhook_payload.rbi +4 -2
  117. data/rbi/privy/models/transaction_execution_reverted_webhook_payload.rbi +4 -2
  118. data/rbi/privy/models/transaction_failed_webhook_payload.rbi +4 -2
  119. data/rbi/privy/models/transaction_provider_error_webhook_payload.rbi +4 -2
  120. data/rbi/privy/models/transaction_replaced_webhook_payload.rbi +4 -2
  121. data/rbi/privy/models/transaction_still_pending_webhook_payload.rbi +4 -2
  122. data/rbi/privy/models/transfer_received_transaction_detail.rbi +5 -0
  123. data/rbi/privy/models/transfer_sent_transaction_detail.rbi +5 -0
  124. data/rbi/privy/models/tron_send_transaction_rpc_input.rbi +2 -2
  125. data/rbi/privy/models/tron_send_transaction_rpc_response_data.rbi +2 -2
  126. data/rbi/privy/models/unsigned_standard_ethereum_transaction.rbi +2 -2
  127. data/rbi/privy/models/user.rbi +2 -1
  128. data/rbi/privy/models/user_operation_input.rbi +42 -20
  129. data/rbi/privy/models/wallet_action_earn_incentive_claim_created_webhook_payload.rbi +2 -2
  130. data/rbi/privy/models/wallet_action_earn_incentive_claim_failed_webhook_payload.rbi +2 -2
  131. data/rbi/privy/models/wallet_action_earn_incentive_claim_rejected_webhook_payload.rbi +2 -2
  132. data/rbi/privy/models/wallet_action_earn_incentive_claim_succeeded_webhook_payload.rbi +2 -2
  133. data/rbi/privy/models/wallet_action_transfer_created_webhook_payload.rbi +2 -2
  134. data/rbi/privy/models/wallet_action_transfer_failed_webhook_payload.rbi +2 -2
  135. data/rbi/privy/models/wallet_action_transfer_rejected_webhook_payload.rbi +2 -2
  136. data/rbi/privy/models/wallet_action_transfer_succeeded_webhook_payload.rbi +2 -2
  137. data/rbi/privy/models/wallet_asset.rbi +1 -0
  138. data/rbi/privy/models/wallet_ethereum_asset.rbi +1 -0
  139. data/rbi/privy/models/wallets/aave_vault_details.rbi +2 -2
  140. data/rbi/privy/models/wallets/balance_get_params.rbi +11 -6
  141. data/rbi/privy/models/wallets/balance_get_response.rbi +5 -0
  142. data/rbi/privy/models/wallets/earn_incentive_claim_action_response.rbi +2 -2
  143. data/rbi/privy/models/wallets/earn_incentive_claim_request_body.rbi +4 -4
  144. data/rbi/privy/models/wallets/earn_incentive_rewards_query.rbi +2 -2
  145. data/rbi/privy/models/wallets/morpho_vault_details.rbi +2 -2
  146. data/rbi/privy/models/wallets/transaction_get_params.rbi +5 -0
  147. data/rbi/privy/models/wallets/transfer_action_response.rbi +2 -2
  148. data/rbi/privy/models/wallets/veda_vault_details.rbi +2 -2
  149. data/rbi/privy/models.rbi +12 -0
  150. data/rbi/privy/resources/wallets/balance.rbi +2 -2
  151. data/rbi/privy/resources/wallets/earn/ethereum/incentive.rbi +2 -2
  152. data/sig/privy/models/email_mfa_method.rbs +32 -0
  153. data/sig/privy/models/linked_mfa_method.rbs +4 -1
  154. data/sig/privy/models/mfa_email_enroll_request_body.rbs +15 -0
  155. data/sig/privy/models/mfa_email_init_enroll_input.rbs +35 -0
  156. data/sig/privy/models/mfa_email_init_request_body.rbs +12 -0
  157. data/sig/privy/models/mfa_email_init_verify_input.rbs +26 -0
  158. data/sig/privy/models/mfa_email_verify_request_body.rbs +13 -0
  159. data/sig/privy/models/mfa_method.rbs +2 -1
  160. data/sig/privy/models/transaction_chain_name_input.rbs +2 -0
  161. data/sig/privy/models/transfer_received_transaction_detail.rbs +2 -0
  162. data/sig/privy/models/transfer_sent_transaction_detail.rbs +2 -0
  163. data/sig/privy/models/user_operation_input.rbs +14 -0
  164. data/sig/privy/models/wallet_asset.rbs +2 -0
  165. data/sig/privy/models/wallet_ethereum_asset.rbs +11 -1
  166. data/sig/privy/models/wallets/balance_get_params.rbs +2 -0
  167. data/sig/privy/models/wallets/balance_get_response.rbs +2 -0
  168. data/sig/privy/models/wallets/transaction_get_params.rbs +2 -0
  169. data/sig/privy/models.rbs +12 -0
  170. metadata +20 -2
@@ -11,7 +11,7 @@ module Privy
11
11
  )
12
12
  end
13
13
 
14
- # A valid CAIP-2 chain ID (e.g. 'eip155:1').
14
+ # A valid CAIP-2 chain ID (e.g. 'eip155:4217' for Tempo, 'eip155:1' for Ethereum).
15
15
  sig { returns(String) }
16
16
  attr_accessor :caip2
17
17
 
@@ -23,7 +23,7 @@ module Privy
23
23
  params(caip2: String, transaction_id: String).returns(T.attached_class)
24
24
  end
25
25
  def self.new(
26
- # A valid CAIP-2 chain ID (e.g. 'eip155:1').
26
+ # A valid CAIP-2 chain ID (e.g. 'eip155:4217' for Tempo, 'eip155:1' for Ethereum).
27
27
  caip2:,
28
28
  transaction_id:
29
29
  )
@@ -11,7 +11,7 @@ module Privy
11
11
  )
12
12
  end
13
13
 
14
- # A valid CAIP-2 chain ID (e.g. 'eip155:1').
14
+ # A valid CAIP-2 chain ID (e.g. 'eip155:4217' for Tempo, 'eip155:1' for Ethereum).
15
15
  sig { returns(String) }
16
16
  attr_accessor :caip2
17
17
 
@@ -50,7 +50,7 @@ module Privy
50
50
  end
51
51
  attr_writer :chain_type
52
52
 
53
- # A hex-encoded string prefixed with '0x', capped at 100002 characters (50,000
53
+ # A hex-encoded string prefixed with '0x', capped at 300002 characters (150,000
54
54
  # bytes).
55
55
  sig { returns(T.nilable(String)) }
56
56
  attr_reader :experimental_data_suffix
@@ -92,14 +92,14 @@ module Privy
92
92
  ).returns(T.attached_class)
93
93
  end
94
94
  def self.new(
95
- # A valid CAIP-2 chain ID (e.g. 'eip155:1').
95
+ # A valid CAIP-2 chain ID (e.g. 'eip155:4217' for Tempo, 'eip155:1' for Ethereum).
96
96
  caip2:,
97
97
  method_:,
98
98
  # Parameters for the EVM `eth_sendTransaction` RPC.
99
99
  params:,
100
100
  address: nil,
101
101
  chain_type: nil,
102
- # A hex-encoded string prefixed with '0x', capped at 100002 characters (50,000
102
+ # A hex-encoded string prefixed with '0x', capped at 300002 characters (150,000
103
103
  # bytes).
104
104
  experimental_data_suffix: nil,
105
105
  reference_id: nil,
@@ -11,7 +11,7 @@ module Privy
11
11
  )
12
12
  end
13
13
 
14
- # A valid CAIP-2 chain ID (e.g. 'eip155:1').
14
+ # A valid CAIP-2 chain ID (e.g. 'eip155:4217' for Tempo, 'eip155:1' for Ethereum).
15
15
  sig { returns(String) }
16
16
  attr_accessor :caip2
17
17
 
@@ -65,7 +65,7 @@ module Privy
65
65
  ).returns(T.attached_class)
66
66
  end
67
67
  def self.new(
68
- # A valid CAIP-2 chain ID (e.g. 'eip155:1').
68
+ # A valid CAIP-2 chain ID (e.g. 'eip155:4217' for Tempo, 'eip155:1' for Ethereum).
69
69
  caip2:,
70
70
  hash_:,
71
71
  reference_id: nil,
@@ -21,12 +21,12 @@ module Privy
21
21
  sig { returns(Privy::Quantity::Variants) }
22
22
  attr_accessor :nonce
23
23
 
24
- # A hex-encoded string prefixed with '0x', capped at 100002 characters (50,000
24
+ # A hex-encoded string prefixed with '0x', capped at 300002 characters (150,000
25
25
  # bytes).
26
26
  sig { returns(String) }
27
27
  attr_accessor :r
28
28
 
29
- # A hex-encoded string prefixed with '0x', capped at 100002 characters (50,000
29
+ # A hex-encoded string prefixed with '0x', capped at 300002 characters (150,000
30
30
  # bytes).
31
31
  sig { returns(String) }
32
32
  attr_accessor :s
@@ -54,10 +54,10 @@ module Privy
54
54
  # A quantity value that can be either a hex string starting with '0x' or a
55
55
  # non-negative integer.
56
56
  nonce:,
57
- # A hex-encoded string prefixed with '0x', capped at 100002 characters (50,000
57
+ # A hex-encoded string prefixed with '0x', capped at 300002 characters (150,000
58
58
  # bytes).
59
59
  r:,
60
- # A hex-encoded string prefixed with '0x', capped at 100002 characters (50,000
60
+ # A hex-encoded string prefixed with '0x', capped at 300002 characters (150,000
61
61
  # bytes).
62
62
  s:,
63
63
  y_parity:
@@ -26,7 +26,7 @@ module Privy
26
26
  sig { params(address: String).void }
27
27
  attr_writer :address
28
28
 
29
- # A valid CAIP-2 chain ID (e.g. 'eip155:1').
29
+ # A valid CAIP-2 chain ID (e.g. 'eip155:4217' for Tempo, 'eip155:1' for Ethereum).
30
30
  sig { returns(T.nilable(String)) }
31
31
  attr_reader :caip2
32
32
 
@@ -79,7 +79,7 @@ module Privy
79
79
  # Parameters for the EVM `eth_signTypedData_v4` RPC.
80
80
  params:,
81
81
  address: nil,
82
- # A valid CAIP-2 chain ID (e.g. 'eip155:1').
82
+ # A valid CAIP-2 chain ID (e.g. 'eip155:4217' for Tempo, 'eip155:1' for Ethereum).
83
83
  caip2: nil,
84
84
  chain_type: nil,
85
85
  # Options controlling signature production for personal_sign and
@@ -25,7 +25,7 @@ module Privy
25
25
  sig { returns(T.nilable(Float)) }
26
26
  attr_accessor :available_liquidity_usd
27
27
 
28
- # Chain identifier (e.g., eip155:8453).
28
+ # Chain identifier (e.g., eip155:4217 for Tempo, eip155:8453 for Base).
29
29
  sig { returns(String) }
30
30
  attr_accessor :caip2
31
31
 
@@ -75,7 +75,7 @@ module Privy
75
75
  asset_address:,
76
76
  # Assets available for instant withdrawal in USD.
77
77
  available_liquidity_usd:,
78
- # Chain identifier (e.g., eip155:8453).
78
+ # Chain identifier (e.g., eip155:4217 for Tempo, eip155:8453 for Base).
79
79
  caip2:,
80
80
  # Human-readable vault name from the yield provider.
81
81
  name:,
@@ -8,14 +8,16 @@ module Privy
8
8
  T.any(Privy::EthereumYieldClaimInput, Privy::Internal::AnyHash)
9
9
  end
10
10
 
11
- # An EVM CAIP-2 chain identifier (e.g., "eip155:8453" for Base).
11
+ # An EVM CAIP-2 chain identifier (e.g., "eip155:4217" for Tempo, "eip155:8453" for
12
+ # Base).
12
13
  sig { returns(String) }
13
14
  attr_accessor :caip2
14
15
 
15
16
  # Input for claiming incentive rewards from vault participation.
16
17
  sig { params(caip2: String).returns(T.attached_class) }
17
18
  def self.new(
18
- # An EVM CAIP-2 chain identifier (e.g., "eip155:8453" for Base).
19
+ # An EVM CAIP-2 chain identifier (e.g., "eip155:4217" for Tempo, "eip155:8453" for
20
+ # Base).
19
21
  caip2:
20
22
  )
21
23
  end
@@ -12,7 +12,8 @@ module Privy
12
12
  sig { returns(String) }
13
13
  attr_accessor :id
14
14
 
15
- # An EVM CAIP-2 chain identifier (e.g., "eip155:8453" for Base).
15
+ # An EVM CAIP-2 chain identifier (e.g., "eip155:4217" for Tempo, "eip155:8453" for
16
+ # Base).
16
17
  sig { returns(String) }
17
18
  attr_accessor :caip2
18
19
 
@@ -46,7 +47,8 @@ module Privy
46
47
  def self.new(
47
48
  # Privy transaction record ID for the claim operation.
48
49
  id:,
49
- # An EVM CAIP-2 chain identifier (e.g., "eip155:8453" for Base).
50
+ # An EVM CAIP-2 chain identifier (e.g., "eip155:4217" for Tempo, "eip155:8453" for
51
+ # Base).
50
52
  caip2:,
51
53
  # Unix timestamp of when the claim was created, in milliseconds.
52
54
  created_at:,
@@ -17,8 +17,8 @@ module Privy
17
17
  sig { returns(String) }
18
18
  attr_accessor :asset
19
19
 
20
- # A CAIP-2 chain identifier in namespace:reference format (e.g. "eip155:1" for
21
- # Ethereum mainnet, "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp" for Solana mainnet).
20
+ # A CAIP-2 chain identifier in namespace:reference format (e.g. "eip155:4217" for
21
+ # Tempo or "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp" for Solana mainnet).
22
22
  sig { returns(String) }
23
23
  attr_accessor :chain
24
24
 
@@ -34,8 +34,8 @@ module Privy
34
34
  # case, 16-byte Hyperliquid token IDs normalize to lowercase, and all other
35
35
  # identifiers pass through unchanged.
36
36
  asset:,
37
- # A CAIP-2 chain identifier in namespace:reference format (e.g. "eip155:1" for
38
- # Ethereum mainnet, "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp" for Solana mainnet).
37
+ # A CAIP-2 chain identifier in namespace:reference format (e.g. "eip155:4217" for
38
+ # Tempo or "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp" for Solana mainnet).
39
39
  chain:
40
40
  )
41
41
  end
@@ -11,7 +11,8 @@ module Privy
11
11
  T.any(
12
12
  Privy::SMSMfaMethod,
13
13
  Privy::TotpMfaMethod,
14
- Privy::PasskeyMfaMethod
14
+ Privy::PasskeyMfaMethod,
15
+ Privy::EmailMfaMethod
15
16
  )
16
17
  end
17
18
 
@@ -0,0 +1,29 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class MfaEmailEnrollRequestBody < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Privy::MfaEmailEnrollRequestBody, Privy::Internal::AnyHash)
9
+ end
10
+
11
+ sig { returns(String) }
12
+ attr_accessor :code
13
+
14
+ sig { returns(String) }
15
+ attr_accessor :email_address
16
+
17
+ # The request body for enrolling an email MFA code.
18
+ sig do
19
+ params(code: String, email_address: String).returns(T.attached_class)
20
+ end
21
+ def self.new(code:, email_address:)
22
+ end
23
+
24
+ sig { override.returns({ code: String, email_address: String }) }
25
+ def to_hash
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,58 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class MfaEmailInitEnrollInput < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Privy::MfaEmailInitEnrollInput, Privy::Internal::AnyHash)
9
+ end
10
+
11
+ sig { returns(Privy::MfaEmailInitEnrollInput::Action::OrSymbol) }
12
+ attr_accessor :action
13
+
14
+ sig { returns(String) }
15
+ attr_accessor :email_address
16
+
17
+ # Input for enrolling email MFA.
18
+ sig do
19
+ params(
20
+ action: Privy::MfaEmailInitEnrollInput::Action::OrSymbol,
21
+ email_address: String
22
+ ).returns(T.attached_class)
23
+ end
24
+ def self.new(action:, email_address:)
25
+ end
26
+
27
+ sig do
28
+ override.returns(
29
+ {
30
+ action: Privy::MfaEmailInitEnrollInput::Action::OrSymbol,
31
+ email_address: String
32
+ }
33
+ )
34
+ end
35
+ def to_hash
36
+ end
37
+
38
+ module Action
39
+ extend Privy::Internal::Type::Enum
40
+
41
+ TaggedSymbol =
42
+ T.type_alias { T.all(Symbol, Privy::MfaEmailInitEnrollInput::Action) }
43
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
44
+
45
+ ENROLL =
46
+ T.let(:enroll, Privy::MfaEmailInitEnrollInput::Action::TaggedSymbol)
47
+
48
+ sig do
49
+ override.returns(
50
+ T::Array[Privy::MfaEmailInitEnrollInput::Action::TaggedSymbol]
51
+ )
52
+ end
53
+ def self.values
54
+ end
55
+ end
56
+ end
57
+ end
58
+ end
@@ -0,0 +1,21 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ # The request body for initiating an email MFA flow.
6
+ module MfaEmailInitRequestBody
7
+ extend Privy::Internal::Type::Union
8
+
9
+ Variants =
10
+ T.type_alias do
11
+ T.any(Privy::MfaEmailInitVerifyInput, Privy::MfaEmailInitEnrollInput)
12
+ end
13
+
14
+ sig do
15
+ override.returns(T::Array[Privy::MfaEmailInitRequestBody::Variants])
16
+ end
17
+ def self.variants
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,51 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class MfaEmailInitVerifyInput < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Privy::MfaEmailInitVerifyInput, Privy::Internal::AnyHash)
9
+ end
10
+
11
+ sig { returns(Privy::MfaEmailInitVerifyInput::Action::OrSymbol) }
12
+ attr_accessor :action
13
+
14
+ # Input for verifying email MFA.
15
+ sig do
16
+ params(
17
+ action: Privy::MfaEmailInitVerifyInput::Action::OrSymbol
18
+ ).returns(T.attached_class)
19
+ end
20
+ def self.new(action:)
21
+ end
22
+
23
+ sig do
24
+ override.returns(
25
+ { action: Privy::MfaEmailInitVerifyInput::Action::OrSymbol }
26
+ )
27
+ end
28
+ def to_hash
29
+ end
30
+
31
+ module Action
32
+ extend Privy::Internal::Type::Enum
33
+
34
+ TaggedSymbol =
35
+ T.type_alias { T.all(Symbol, Privy::MfaEmailInitVerifyInput::Action) }
36
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
37
+
38
+ VERIFY =
39
+ T.let(:verify, Privy::MfaEmailInitVerifyInput::Action::TaggedSymbol)
40
+
41
+ sig do
42
+ override.returns(
43
+ T::Array[Privy::MfaEmailInitVerifyInput::Action::TaggedSymbol]
44
+ )
45
+ end
46
+ def self.values
47
+ end
48
+ end
49
+ end
50
+ end
51
+ end
@@ -0,0 +1,24 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class MfaEmailVerifyRequestBody < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Privy::MfaEmailVerifyRequestBody, Privy::Internal::AnyHash)
9
+ end
10
+
11
+ sig { returns(String) }
12
+ attr_accessor :code
13
+
14
+ # The request body for verifying an email MFA code.
15
+ sig { params(code: String).returns(T.attached_class) }
16
+ def self.new(code:)
17
+ end
18
+
19
+ sig { override.returns({ code: String }) }
20
+ def to_hash
21
+ end
22
+ end
23
+ end
24
+ end
@@ -12,6 +12,7 @@ module Privy
12
12
  SMS = T.let(:sms, Privy::MfaMethod::TaggedSymbol)
13
13
  TOTP = T.let(:totp, Privy::MfaMethod::TaggedSymbol)
14
14
  PASSKEY = T.let(:passkey, Privy::MfaMethod::TaggedSymbol)
15
+ EMAIL = T.let(:email, Privy::MfaMethod::TaggedSymbol)
15
16
 
16
17
  sig { override.returns(T::Array[Privy::MfaMethod::TaggedSymbol]) }
17
18
  def self.values
@@ -8,13 +8,13 @@ module Privy
8
8
  T.any(Privy::NamedTokenTransferSource, Privy::Internal::AnyHash)
9
9
  end
10
10
 
11
- # The asset to transfer. Supported: 'usdc', 'usdb', 'usdt' (stablecoins), 'eth'
12
- # (native Ethereum), 'sol' (native Solana).
11
+ # The asset to transfer. Supported: 'usdc', 'usdb', 'usdt', 'pathusd'
12
+ # (stablecoins), 'eth' (native Ethereum), 'sol' (native Solana).
13
13
  sig { returns(String) }
14
14
  attr_accessor :asset
15
15
 
16
16
  # The blockchain network on which to perform the transfer. Supported chains
17
- # include: 'ethereum', 'base', 'arbitrum', 'polygon', 'solana', and their
17
+ # include: 'tempo', 'ethereum', 'base', 'arbitrum', 'polygon', 'solana', and their
18
18
  # respective testnets.
19
19
  sig { returns(String) }
20
20
  attr_accessor :chain
@@ -37,11 +37,11 @@ module Privy
37
37
  )
38
38
  end
39
39
  def self.new(
40
- # The asset to transfer. Supported: 'usdc', 'usdb', 'usdt' (stablecoins), 'eth'
41
- # (native Ethereum), 'sol' (native Solana).
40
+ # The asset to transfer. Supported: 'usdc', 'usdb', 'usdt', 'pathusd'
41
+ # (stablecoins), 'eth' (native Ethereum), 'sol' (native Solana).
42
42
  asset:,
43
43
  # The blockchain network on which to perform the transfer. Supported chains
44
- # include: 'ethereum', 'base', 'arbitrum', 'polygon', 'solana', and their
44
+ # include: 'tempo', 'ethereum', 'base', 'arbitrum', 'polygon', 'solana', and their
45
45
  # respective testnets.
46
46
  chain:,
47
47
  # Amount as a decimal string in the token's standard unit (e.g. "1.5" for 1.5
@@ -8,7 +8,7 @@ module Privy
8
8
  T.any(Privy::RawSignHashParams, Privy::Internal::AnyHash)
9
9
  end
10
10
 
11
- # A hex-encoded string prefixed with '0x', capped at 100002 characters (50,000
11
+ # A hex-encoded string prefixed with '0x', capped at 300002 characters (150,000
12
12
  # bytes).
13
13
  sig { returns(String) }
14
14
  attr_accessor :hash_
@@ -16,7 +16,7 @@ module Privy
16
16
  # Parameters for signing a pre-computed hash with the `raw_sign` RPC.
17
17
  sig { params(hash_: String).returns(T.attached_class) }
18
18
  def self.new(
19
- # A hex-encoded string prefixed with '0x', capped at 100002 characters (50,000
19
+ # A hex-encoded string prefixed with '0x', capped at 300002 characters (150,000
20
20
  # bytes).
21
21
  hash_:
22
22
  )
@@ -11,7 +11,7 @@ module Privy
11
11
  sig { returns(Privy::RawSignResponseData::Encoding::TaggedSymbol) }
12
12
  attr_accessor :encoding
13
13
 
14
- # A hex-encoded string prefixed with '0x', capped at 100002 characters (50,000
14
+ # A hex-encoded string prefixed with '0x', capped at 300002 characters (150,000
15
15
  # bytes).
16
16
  sig { returns(String) }
17
17
  attr_accessor :signature
@@ -25,7 +25,7 @@ module Privy
25
25
  end
26
26
  def self.new(
27
27
  encoding:,
28
- # A hex-encoded string prefixed with '0x', capped at 100002 characters (50,000
28
+ # A hex-encoded string prefixed with '0x', capped at 300002 characters (150,000
29
29
  # bytes).
30
30
  signature:
31
31
  )
@@ -11,7 +11,7 @@ module Privy
11
11
  )
12
12
  end
13
13
 
14
- # A valid CAIP-2 chain ID (e.g. 'eip155:1').
14
+ # A valid CAIP-2 chain ID (e.g. 'eip155:4217' for Tempo, 'eip155:1' for Ethereum).
15
15
  sig { returns(String) }
16
16
  attr_accessor :caip2
17
17
 
@@ -96,7 +96,7 @@ module Privy
96
96
  ).returns(T.attached_class)
97
97
  end
98
98
  def self.new(
99
- # A valid CAIP-2 chain ID (e.g. 'eip155:1').
99
+ # A valid CAIP-2 chain ID (e.g. 'eip155:4217' for Tempo, 'eip155:1' for Ethereum).
100
100
  caip2:,
101
101
  method_:,
102
102
  # Parameters for the SVM `signAndSendTransaction` RPC.
@@ -11,7 +11,7 @@ module Privy
11
11
  )
12
12
  end
13
13
 
14
- # A valid CAIP-2 chain ID (e.g. 'eip155:1').
14
+ # A valid CAIP-2 chain ID (e.g. 'eip155:4217' for Tempo, 'eip155:1' for Ethereum).
15
15
  sig { returns(String) }
16
16
  attr_accessor :caip2
17
17
 
@@ -44,7 +44,7 @@ module Privy
44
44
  ).returns(T.attached_class)
45
45
  end
46
46
  def self.new(
47
- # A valid CAIP-2 chain ID (e.g. 'eip155:1').
47
+ # A valid CAIP-2 chain ID (e.g. 'eip155:4217' for Tempo, 'eip155:1' for Ethereum).
48
48
  caip2:,
49
49
  hash_:,
50
50
  reference_id: nil,
@@ -10,7 +10,8 @@ module Privy
10
10
  sig { returns(String) }
11
11
  attr_accessor :asset_address
12
12
 
13
- # CAIP-2 chain identifier (e.g., "eip155:1").
13
+ # CAIP-2 chain identifier (e.g., "eip155:4217" for Tempo, "eip155:1" for
14
+ # Ethereum).
14
15
  sig { returns(String) }
15
16
  attr_accessor :caip2
16
17
 
@@ -21,7 +22,8 @@ module Privy
21
22
  def self.new(
22
23
  # Token contract address to sell, or "native" for the chain's native token.
23
24
  asset_address:,
24
- # CAIP-2 chain identifier (e.g., "eip155:1").
25
+ # CAIP-2 chain identifier (e.g., "eip155:4217" for Tempo, "eip155:1" for
26
+ # Ethereum).
25
27
  caip2:
26
28
  )
27
29
  end
@@ -21,7 +21,7 @@ module Privy
21
21
  sig { returns(Privy::Quantity::Variants) }
22
22
  attr_accessor :nonce
23
23
 
24
- # A hex-encoded string prefixed with '0x', capped at 100002 characters (50,000
24
+ # A hex-encoded string prefixed with '0x', capped at 300002 characters (150,000
25
25
  # bytes).
26
26
  sig { returns(String) }
27
27
  attr_accessor :signature
@@ -43,7 +43,7 @@ module Privy
43
43
  # A quantity value that can be either a hex string starting with '0x' or a
44
44
  # non-negative integer.
45
45
  nonce:,
46
- # A hex-encoded string prefixed with '0x', capped at 100002 characters (50,000
46
+ # A hex-encoded string prefixed with '0x', capped at 300002 characters (150,000
47
47
  # bytes).
48
48
  signature:
49
49
  )
@@ -9,7 +9,7 @@ module Privy
9
9
  sig { returns(String) }
10
10
  attr_accessor :to
11
11
 
12
- # A hex-encoded string prefixed with '0x', capped at 100002 characters (50,000
12
+ # A hex-encoded string prefixed with '0x', capped at 300002 characters (150,000
13
13
  # bytes).
14
14
  sig { returns(T.nilable(String)) }
15
15
  attr_reader :data
@@ -35,7 +35,7 @@ module Privy
35
35
  end
36
36
  def self.new(
37
37
  to:,
38
- # A hex-encoded string prefixed with '0x', capped at 100002 characters (50,000
38
+ # A hex-encoded string prefixed with '0x', capped at 300002 characters (150,000
39
39
  # bytes).
40
40
  data: nil,
41
41
  # A quantity value that can be either a hex string starting with '0x' or a
@@ -8,12 +8,12 @@ module Privy
8
8
  T.any(Privy::TempoFeePayerSignature, Privy::Internal::AnyHash)
9
9
  end
10
10
 
11
- # A hex-encoded string prefixed with '0x', capped at 100002 characters (50,000
11
+ # A hex-encoded string prefixed with '0x', capped at 300002 characters (150,000
12
12
  # bytes).
13
13
  sig { returns(String) }
14
14
  attr_accessor :r
15
15
 
16
- # A hex-encoded string prefixed with '0x', capped at 100002 characters (50,000
16
+ # A hex-encoded string prefixed with '0x', capped at 300002 characters (150,000
17
17
  # bytes).
18
18
  sig { returns(String) }
19
19
  attr_accessor :s
@@ -30,10 +30,10 @@ module Privy
30
30
  ).returns(T.attached_class)
31
31
  end
32
32
  def self.new(
33
- # A hex-encoded string prefixed with '0x', capped at 100002 characters (50,000
33
+ # A hex-encoded string prefixed with '0x', capped at 300002 characters (150,000
34
34
  # bytes).
35
35
  r:,
36
- # A hex-encoded string prefixed with '0x', capped at 100002 characters (50,000
36
+ # A hex-encoded string prefixed with '0x', capped at 300002 characters (150,000
37
37
  # bytes).
38
38
  s:,
39
39
  y_parity:
@@ -21,7 +21,7 @@ module Privy
21
21
  attr_writer :asset
22
22
 
23
23
  # The destination blockchain network. Required for cross-chain transfers (e.g.,
24
- # source 'base' to destination 'arbitrum').
24
+ # source 'tempo' to destination 'base').
25
25
  sig { returns(T.nilable(String)) }
26
26
  attr_reader :chain
27
27
 
@@ -42,7 +42,7 @@ module Privy
42
42
  # to destination 'usdc').
43
43
  asset: nil,
44
44
  # The destination blockchain network. Required for cross-chain transfers (e.g.,
45
- # source 'base' to destination 'arbitrum').
45
+ # source 'tempo' to destination 'base').
46
46
  chain: nil
47
47
  )
48
48
  end
@@ -11,7 +11,8 @@ module Privy
11
11
  )
12
12
  end
13
13
 
14
- # The CAIP-2 chain identifier (e.g., eip155:1 for Ethereum mainnet).
14
+ # The CAIP-2 chain identifier (e.g., eip155:4217 for Tempo, eip155:1 for Ethereum
15
+ # mainnet).
15
16
  sig { returns(String) }
16
17
  attr_accessor :caip2
17
18
 
@@ -50,7 +51,8 @@ module Privy
50
51
  ).returns(T.attached_class)
51
52
  end
52
53
  def self.new(
53
- # The CAIP-2 chain identifier (e.g., eip155:1 for Ethereum mainnet).
54
+ # The CAIP-2 chain identifier (e.g., eip155:4217 for Tempo, eip155:1 for Ethereum
55
+ # mainnet).
54
56
  caip2:,
55
57
  # The blockchain transaction hash.
56
58
  transaction_hash:,
@@ -17,6 +17,8 @@ module Privy
17
17
  AVALANCHE =
18
18
  T.let(:avalanche, Privy::TransactionChainNameInput::TaggedSymbol)
19
19
  BASE = T.let(:base, Privy::TransactionChainNameInput::TaggedSymbol)
20
+ BASE_SEPOLIA =
21
+ T.let(:base_sepolia, Privy::TransactionChainNameInput::TaggedSymbol)
20
22
  BSC = T.let(:bsc, Privy::TransactionChainNameInput::TaggedSymbol)
21
23
  TEMPO = T.let(:tempo, Privy::TransactionChainNameInput::TaggedSymbol)
22
24
  LINEA = T.let(:linea, Privy::TransactionChainNameInput::TaggedSymbol)