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
@@ -0,0 +1,143 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class SparkCoopExitFeeQuote < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Privy::SparkCoopExitFeeQuote, Privy::Internal::AnyHash)
9
+ end
10
+
11
+ sig { returns(String) }
12
+ attr_accessor :id
13
+
14
+ sig { returns(String) }
15
+ attr_accessor :created_at
16
+
17
+ sig { returns(String) }
18
+ attr_accessor :expires_at
19
+
20
+ # A currency amount with its original value and unit.
21
+ sig { returns(Privy::SparkCurrencyAmount) }
22
+ attr_reader :l1_broadcast_fee_fast
23
+
24
+ sig do
25
+ params(l1_broadcast_fee_fast: Privy::SparkCurrencyAmount::OrHash).void
26
+ end
27
+ attr_writer :l1_broadcast_fee_fast
28
+
29
+ # A currency amount with its original value and unit.
30
+ sig { returns(Privy::SparkCurrencyAmount) }
31
+ attr_reader :l1_broadcast_fee_medium
32
+
33
+ sig do
34
+ params(l1_broadcast_fee_medium: Privy::SparkCurrencyAmount::OrHash).void
35
+ end
36
+ attr_writer :l1_broadcast_fee_medium
37
+
38
+ # A currency amount with its original value and unit.
39
+ sig { returns(Privy::SparkCurrencyAmount) }
40
+ attr_reader :l1_broadcast_fee_slow
41
+
42
+ sig do
43
+ params(l1_broadcast_fee_slow: Privy::SparkCurrencyAmount::OrHash).void
44
+ end
45
+ attr_writer :l1_broadcast_fee_slow
46
+
47
+ sig { returns(String) }
48
+ attr_accessor :network
49
+
50
+ # A currency amount with its original value and unit.
51
+ sig { returns(Privy::SparkCurrencyAmount) }
52
+ attr_reader :total_amount
53
+
54
+ sig { params(total_amount: Privy::SparkCurrencyAmount::OrHash).void }
55
+ attr_writer :total_amount
56
+
57
+ sig { returns(String) }
58
+ attr_accessor :updated_at
59
+
60
+ # A currency amount with its original value and unit.
61
+ sig { returns(Privy::SparkCurrencyAmount) }
62
+ attr_reader :user_fee_fast
63
+
64
+ sig { params(user_fee_fast: Privy::SparkCurrencyAmount::OrHash).void }
65
+ attr_writer :user_fee_fast
66
+
67
+ # A currency amount with its original value and unit.
68
+ sig { returns(Privy::SparkCurrencyAmount) }
69
+ attr_reader :user_fee_medium
70
+
71
+ sig { params(user_fee_medium: Privy::SparkCurrencyAmount::OrHash).void }
72
+ attr_writer :user_fee_medium
73
+
74
+ # A currency amount with its original value and unit.
75
+ sig { returns(Privy::SparkCurrencyAmount) }
76
+ attr_reader :user_fee_slow
77
+
78
+ sig { params(user_fee_slow: Privy::SparkCurrencyAmount::OrHash).void }
79
+ attr_writer :user_fee_slow
80
+
81
+ # A fee quote for a cooperative exit from Spark to Bitcoin L1.
82
+ sig do
83
+ params(
84
+ id: String,
85
+ created_at: String,
86
+ expires_at: String,
87
+ l1_broadcast_fee_fast: Privy::SparkCurrencyAmount::OrHash,
88
+ l1_broadcast_fee_medium: Privy::SparkCurrencyAmount::OrHash,
89
+ l1_broadcast_fee_slow: Privy::SparkCurrencyAmount::OrHash,
90
+ network: String,
91
+ total_amount: Privy::SparkCurrencyAmount::OrHash,
92
+ updated_at: String,
93
+ user_fee_fast: Privy::SparkCurrencyAmount::OrHash,
94
+ user_fee_medium: Privy::SparkCurrencyAmount::OrHash,
95
+ user_fee_slow: Privy::SparkCurrencyAmount::OrHash
96
+ ).returns(T.attached_class)
97
+ end
98
+ def self.new(
99
+ id:,
100
+ created_at:,
101
+ expires_at:,
102
+ # A currency amount with its original value and unit.
103
+ l1_broadcast_fee_fast:,
104
+ # A currency amount with its original value and unit.
105
+ l1_broadcast_fee_medium:,
106
+ # A currency amount with its original value and unit.
107
+ l1_broadcast_fee_slow:,
108
+ network:,
109
+ # A currency amount with its original value and unit.
110
+ total_amount:,
111
+ updated_at:,
112
+ # A currency amount with its original value and unit.
113
+ user_fee_fast:,
114
+ # A currency amount with its original value and unit.
115
+ user_fee_medium:,
116
+ # A currency amount with its original value and unit.
117
+ user_fee_slow:
118
+ )
119
+ end
120
+
121
+ sig do
122
+ override.returns(
123
+ {
124
+ id: String,
125
+ created_at: String,
126
+ expires_at: String,
127
+ l1_broadcast_fee_fast: Privy::SparkCurrencyAmount,
128
+ l1_broadcast_fee_medium: Privy::SparkCurrencyAmount,
129
+ l1_broadcast_fee_slow: Privy::SparkCurrencyAmount,
130
+ network: String,
131
+ total_amount: Privy::SparkCurrencyAmount,
132
+ updated_at: String,
133
+ user_fee_fast: Privy::SparkCurrencyAmount,
134
+ user_fee_medium: Privy::SparkCurrencyAmount,
135
+ user_fee_slow: Privy::SparkCurrencyAmount
136
+ }
137
+ )
138
+ end
139
+ def to_hash
140
+ end
141
+ end
142
+ end
143
+ end
@@ -0,0 +1,114 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class SparkCoopExitRequest < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Privy::SparkCoopExitRequest, Privy::Internal::AnyHash)
9
+ end
10
+
11
+ sig { returns(String) }
12
+ attr_accessor :id
13
+
14
+ sig { returns(String) }
15
+ attr_accessor :coop_exit_txid
16
+
17
+ sig { returns(String) }
18
+ attr_accessor :created_at
19
+
20
+ sig { returns(String) }
21
+ attr_accessor :expires_at
22
+
23
+ # A currency amount with its original value and unit.
24
+ sig { returns(Privy::SparkCurrencyAmount) }
25
+ attr_reader :fee
26
+
27
+ sig { params(fee: Privy::SparkCurrencyAmount::OrHash).void }
28
+ attr_writer :fee
29
+
30
+ # A currency amount with its original value and unit.
31
+ sig { returns(Privy::SparkCurrencyAmount) }
32
+ attr_reader :l1_broadcast_fee
33
+
34
+ sig { params(l1_broadcast_fee: Privy::SparkCurrencyAmount::OrHash).void }
35
+ attr_writer :l1_broadcast_fee
36
+
37
+ sig { returns(String) }
38
+ attr_accessor :network
39
+
40
+ sig { returns(String) }
41
+ attr_accessor :status
42
+
43
+ sig { returns(String) }
44
+ attr_accessor :updated_at
45
+
46
+ # The exit speed for a cooperative withdrawal from Spark to L1.
47
+ sig { returns(T.nilable(Privy::SparkExitSpeed::TaggedSymbol)) }
48
+ attr_reader :exit_speed
49
+
50
+ sig { params(exit_speed: Privy::SparkExitSpeed::OrSymbol).void }
51
+ attr_writer :exit_speed
52
+
53
+ sig { returns(T.nilable(String)) }
54
+ attr_reader :fee_quote_id
55
+
56
+ sig { params(fee_quote_id: String).void }
57
+ attr_writer :fee_quote_id
58
+
59
+ # A cooperative exit request from Spark to Bitcoin L1.
60
+ sig do
61
+ params(
62
+ id: String,
63
+ coop_exit_txid: String,
64
+ created_at: String,
65
+ expires_at: String,
66
+ fee: Privy::SparkCurrencyAmount::OrHash,
67
+ l1_broadcast_fee: Privy::SparkCurrencyAmount::OrHash,
68
+ network: String,
69
+ status: String,
70
+ updated_at: String,
71
+ exit_speed: Privy::SparkExitSpeed::OrSymbol,
72
+ fee_quote_id: String
73
+ ).returns(T.attached_class)
74
+ end
75
+ def self.new(
76
+ id:,
77
+ coop_exit_txid:,
78
+ created_at:,
79
+ expires_at:,
80
+ # A currency amount with its original value and unit.
81
+ fee:,
82
+ # A currency amount with its original value and unit.
83
+ l1_broadcast_fee:,
84
+ network:,
85
+ status:,
86
+ updated_at:,
87
+ # The exit speed for a cooperative withdrawal from Spark to L1.
88
+ exit_speed: nil,
89
+ fee_quote_id: nil
90
+ )
91
+ end
92
+
93
+ sig do
94
+ override.returns(
95
+ {
96
+ id: String,
97
+ coop_exit_txid: String,
98
+ created_at: String,
99
+ expires_at: String,
100
+ fee: Privy::SparkCurrencyAmount,
101
+ l1_broadcast_fee: Privy::SparkCurrencyAmount,
102
+ network: String,
103
+ status: String,
104
+ updated_at: String,
105
+ exit_speed: Privy::SparkExitSpeed::TaggedSymbol,
106
+ fee_quote_id: String
107
+ }
108
+ )
109
+ end
110
+ def to_hash
111
+ end
112
+ end
113
+ end
114
+ end
@@ -0,0 +1,31 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class SparkCurrencyAmount < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Privy::SparkCurrencyAmount, Privy::Internal::AnyHash)
9
+ end
10
+
11
+ sig { returns(String) }
12
+ attr_accessor :original_unit
13
+
14
+ sig { returns(Float) }
15
+ attr_accessor :original_value
16
+
17
+ # A currency amount with its original value and unit.
18
+ sig do
19
+ params(original_unit: String, original_value: Float).returns(
20
+ T.attached_class
21
+ )
22
+ end
23
+ def self.new(original_unit:, original_value:)
24
+ end
25
+
26
+ sig { override.returns({ original_unit: String, original_value: Float }) }
27
+ def to_hash
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,21 @@
1
+ # typed: strong
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
+ TaggedSymbol = T.type_alias { T.all(Symbol, Privy::SparkExitSpeed) }
10
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
11
+
12
+ FAST = T.let(:FAST, Privy::SparkExitSpeed::TaggedSymbol)
13
+ MEDIUM = T.let(:MEDIUM, Privy::SparkExitSpeed::TaggedSymbol)
14
+ SLOW = T.let(:SLOW, Privy::SparkExitSpeed::TaggedSymbol)
15
+
16
+ sig { override.returns(T::Array[Privy::SparkExitSpeed::TaggedSymbol]) }
17
+ def self.values
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,94 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class SparkGetWithdrawalFeeQuoteRpcInput < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Privy::SparkGetWithdrawalFeeQuoteRpcInput,
10
+ Privy::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ sig do
15
+ returns(Privy::SparkGetWithdrawalFeeQuoteRpcInput::Method::OrSymbol)
16
+ end
17
+ attr_accessor :method_
18
+
19
+ # Parameters for the Spark `getWithdrawalFeeQuote` RPC.
20
+ sig { returns(Privy::SparkGetWithdrawalFeeQuoteRpcInputParams) }
21
+ attr_reader :params
22
+
23
+ sig do
24
+ params(
25
+ params: Privy::SparkGetWithdrawalFeeQuoteRpcInputParams::OrHash
26
+ ).void
27
+ end
28
+ attr_writer :params
29
+
30
+ # The Spark network.
31
+ sig { returns(T.nilable(Privy::SparkNetwork::OrSymbol)) }
32
+ attr_reader :network
33
+
34
+ sig { params(network: Privy::SparkNetwork::OrSymbol).void }
35
+ attr_writer :network
36
+
37
+ # Gets a fee quote for withdrawing from Spark to a Bitcoin L1 address.
38
+ sig do
39
+ params(
40
+ method_: Privy::SparkGetWithdrawalFeeQuoteRpcInput::Method::OrSymbol,
41
+ params: Privy::SparkGetWithdrawalFeeQuoteRpcInputParams::OrHash,
42
+ network: Privy::SparkNetwork::OrSymbol
43
+ ).returns(T.attached_class)
44
+ end
45
+ def self.new(
46
+ method_:,
47
+ # Parameters for the Spark `getWithdrawalFeeQuote` RPC.
48
+ params:,
49
+ # The Spark network.
50
+ network: nil
51
+ )
52
+ end
53
+
54
+ sig do
55
+ override.returns(
56
+ {
57
+ method_:
58
+ Privy::SparkGetWithdrawalFeeQuoteRpcInput::Method::OrSymbol,
59
+ params: Privy::SparkGetWithdrawalFeeQuoteRpcInputParams,
60
+ network: Privy::SparkNetwork::OrSymbol
61
+ }
62
+ )
63
+ end
64
+ def to_hash
65
+ end
66
+
67
+ module Method
68
+ extend Privy::Internal::Type::Enum
69
+
70
+ TaggedSymbol =
71
+ T.type_alias do
72
+ T.all(Symbol, Privy::SparkGetWithdrawalFeeQuoteRpcInput::Method)
73
+ end
74
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
75
+
76
+ GET_WITHDRAWAL_FEE_QUOTE =
77
+ T.let(
78
+ :getWithdrawalFeeQuote,
79
+ Privy::SparkGetWithdrawalFeeQuoteRpcInput::Method::TaggedSymbol
80
+ )
81
+
82
+ sig do
83
+ override.returns(
84
+ T::Array[
85
+ Privy::SparkGetWithdrawalFeeQuoteRpcInput::Method::TaggedSymbol
86
+ ]
87
+ )
88
+ end
89
+ def self.values
90
+ end
91
+ end
92
+ end
93
+ end
94
+ end
@@ -0,0 +1,34 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class SparkGetWithdrawalFeeQuoteRpcInputParams < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Privy::SparkGetWithdrawalFeeQuoteRpcInputParams,
10
+ Privy::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ sig { returns(Float) }
15
+ attr_accessor :amount_sats
16
+
17
+ sig { returns(String) }
18
+ attr_accessor :onchain_address
19
+
20
+ # Parameters for the Spark `getWithdrawalFeeQuote` RPC.
21
+ sig do
22
+ params(amount_sats: Float, onchain_address: String).returns(
23
+ T.attached_class
24
+ )
25
+ end
26
+ def self.new(amount_sats:, onchain_address:)
27
+ end
28
+
29
+ sig { override.returns({ amount_sats: Float, onchain_address: String }) }
30
+ def to_hash
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,82 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class SparkGetWithdrawalFeeQuoteRpcResponse < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Privy::SparkGetWithdrawalFeeQuoteRpcResponse,
10
+ Privy::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ sig do
15
+ returns(
16
+ Privy::SparkGetWithdrawalFeeQuoteRpcResponse::Method::TaggedSymbol
17
+ )
18
+ end
19
+ attr_accessor :method_
20
+
21
+ # A fee quote for a cooperative exit from Spark to Bitcoin L1.
22
+ sig { returns(T.nilable(Privy::SparkCoopExitFeeQuote)) }
23
+ attr_reader :data
24
+
25
+ sig { params(data: Privy::SparkCoopExitFeeQuote::OrHash).void }
26
+ attr_writer :data
27
+
28
+ # Response to the Spark `getWithdrawalFeeQuote` RPC.
29
+ sig do
30
+ params(
31
+ method_:
32
+ Privy::SparkGetWithdrawalFeeQuoteRpcResponse::Method::OrSymbol,
33
+ data: Privy::SparkCoopExitFeeQuote::OrHash
34
+ ).returns(T.attached_class)
35
+ end
36
+ def self.new(
37
+ method_:,
38
+ # A fee quote for a cooperative exit from Spark to Bitcoin L1.
39
+ data: nil
40
+ )
41
+ end
42
+
43
+ sig do
44
+ override.returns(
45
+ {
46
+ method_:
47
+ Privy::SparkGetWithdrawalFeeQuoteRpcResponse::Method::TaggedSymbol,
48
+ data: Privy::SparkCoopExitFeeQuote
49
+ }
50
+ )
51
+ end
52
+ def to_hash
53
+ end
54
+
55
+ module Method
56
+ extend Privy::Internal::Type::Enum
57
+
58
+ TaggedSymbol =
59
+ T.type_alias do
60
+ T.all(Symbol, Privy::SparkGetWithdrawalFeeQuoteRpcResponse::Method)
61
+ end
62
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
63
+
64
+ GET_WITHDRAWAL_FEE_QUOTE =
65
+ T.let(
66
+ :getWithdrawalFeeQuote,
67
+ Privy::SparkGetWithdrawalFeeQuoteRpcResponse::Method::TaggedSymbol
68
+ )
69
+
70
+ sig do
71
+ override.returns(
72
+ T::Array[
73
+ Privy::SparkGetWithdrawalFeeQuoteRpcResponse::Method::TaggedSymbol
74
+ ]
75
+ )
76
+ end
77
+ def self.values
78
+ end
79
+ end
80
+ end
81
+ end
82
+ end
@@ -17,7 +17,9 @@ module Privy
17
17
  Privy::SparkClaimStaticDepositRpcInput,
18
18
  Privy::SparkCreateLightningInvoiceRpcInput,
19
19
  Privy::SparkPayLightningInvoiceRpcInput,
20
- Privy::SparkSignMessageWithIdentityKeyRpcInput
20
+ Privy::SparkSignMessageWithIdentityKeyRpcInput,
21
+ Privy::SparkWithdrawRpcInput,
22
+ Privy::SparkGetWithdrawalFeeQuoteRpcInput
21
23
  )
22
24
  end
23
25
 
@@ -17,7 +17,9 @@ module Privy
17
17
  Privy::SparkClaimStaticDepositRpcResponse,
18
18
  Privy::SparkCreateLightningInvoiceRpcResponse,
19
19
  Privy::SparkPayLightningInvoiceRpcResponse,
20
- Privy::SparkSignMessageWithIdentityKeyRpcResponse
20
+ Privy::SparkSignMessageWithIdentityKeyRpcResponse,
21
+ Privy::SparkWithdrawRpcResponse,
22
+ Privy::SparkGetWithdrawalFeeQuoteRpcResponse
21
23
  )
22
24
  end
23
25
 
@@ -0,0 +1,77 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class SparkWithdrawRpcInput < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Privy::SparkWithdrawRpcInput, Privy::Internal::AnyHash)
9
+ end
10
+
11
+ sig { returns(Privy::SparkWithdrawRpcInput::Method::OrSymbol) }
12
+ attr_accessor :method_
13
+
14
+ # Parameters for the Spark `withdraw` RPC.
15
+ sig { returns(Privy::SparkWithdrawRpcInputParams) }
16
+ attr_reader :params
17
+
18
+ sig { params(params: Privy::SparkWithdrawRpcInputParams::OrHash).void }
19
+ attr_writer :params
20
+
21
+ # The Spark network.
22
+ sig { returns(T.nilable(Privy::SparkNetwork::OrSymbol)) }
23
+ attr_reader :network
24
+
25
+ sig { params(network: Privy::SparkNetwork::OrSymbol).void }
26
+ attr_writer :network
27
+
28
+ # Withdraws from Spark to a Bitcoin L1 address (cooperative exit).
29
+ sig do
30
+ params(
31
+ method_: Privy::SparkWithdrawRpcInput::Method::OrSymbol,
32
+ params: Privy::SparkWithdrawRpcInputParams::OrHash,
33
+ network: Privy::SparkNetwork::OrSymbol
34
+ ).returns(T.attached_class)
35
+ end
36
+ def self.new(
37
+ method_:,
38
+ # Parameters for the Spark `withdraw` RPC.
39
+ params:,
40
+ # The Spark network.
41
+ network: nil
42
+ )
43
+ end
44
+
45
+ sig do
46
+ override.returns(
47
+ {
48
+ method_: Privy::SparkWithdrawRpcInput::Method::OrSymbol,
49
+ params: Privy::SparkWithdrawRpcInputParams,
50
+ network: Privy::SparkNetwork::OrSymbol
51
+ }
52
+ )
53
+ end
54
+ def to_hash
55
+ end
56
+
57
+ module Method
58
+ extend Privy::Internal::Type::Enum
59
+
60
+ TaggedSymbol =
61
+ T.type_alias { T.all(Symbol, Privy::SparkWithdrawRpcInput::Method) }
62
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
63
+
64
+ WITHDRAW =
65
+ T.let(:withdraw, Privy::SparkWithdrawRpcInput::Method::TaggedSymbol)
66
+
67
+ sig do
68
+ override.returns(
69
+ T::Array[Privy::SparkWithdrawRpcInput::Method::TaggedSymbol]
70
+ )
71
+ end
72
+ def self.values
73
+ end
74
+ end
75
+ end
76
+ end
77
+ end
@@ -0,0 +1,80 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ class SparkWithdrawRpcInputParams < Privy::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Privy::SparkWithdrawRpcInputParams, Privy::Internal::AnyHash)
9
+ end
10
+
11
+ # The exit speed for a cooperative withdrawal from Spark to L1.
12
+ sig { returns(Privy::SparkExitSpeed::OrSymbol) }
13
+ attr_accessor :exit_speed
14
+
15
+ sig { returns(String) }
16
+ attr_accessor :onchain_address
17
+
18
+ sig { returns(T.nilable(Float)) }
19
+ attr_reader :amount_sats
20
+
21
+ sig { params(amount_sats: Float).void }
22
+ attr_writer :amount_sats
23
+
24
+ sig { returns(T.nilable(T::Boolean)) }
25
+ attr_reader :deduct_fee_from_withdrawal_amount
26
+
27
+ sig { params(deduct_fee_from_withdrawal_amount: T::Boolean).void }
28
+ attr_writer :deduct_fee_from_withdrawal_amount
29
+
30
+ sig { returns(T.nilable(Float)) }
31
+ attr_reader :fee_amount_sats
32
+
33
+ sig { params(fee_amount_sats: Float).void }
34
+ attr_writer :fee_amount_sats
35
+
36
+ sig { returns(T.nilable(String)) }
37
+ attr_reader :fee_quote_id
38
+
39
+ sig { params(fee_quote_id: String).void }
40
+ attr_writer :fee_quote_id
41
+
42
+ # Parameters for the Spark `withdraw` RPC.
43
+ sig do
44
+ params(
45
+ exit_speed: Privy::SparkExitSpeed::OrSymbol,
46
+ onchain_address: String,
47
+ amount_sats: Float,
48
+ deduct_fee_from_withdrawal_amount: T::Boolean,
49
+ fee_amount_sats: Float,
50
+ fee_quote_id: String
51
+ ).returns(T.attached_class)
52
+ end
53
+ def self.new(
54
+ # The exit speed for a cooperative withdrawal from Spark to L1.
55
+ exit_speed:,
56
+ onchain_address:,
57
+ amount_sats: nil,
58
+ deduct_fee_from_withdrawal_amount: nil,
59
+ fee_amount_sats: nil,
60
+ fee_quote_id: nil
61
+ )
62
+ end
63
+
64
+ sig do
65
+ override.returns(
66
+ {
67
+ exit_speed: Privy::SparkExitSpeed::OrSymbol,
68
+ onchain_address: String,
69
+ amount_sats: Float,
70
+ deduct_fee_from_withdrawal_amount: T::Boolean,
71
+ fee_amount_sats: Float,
72
+ fee_quote_id: String
73
+ }
74
+ )
75
+ end
76
+ def to_hash
77
+ end
78
+ end
79
+ end
80
+ end