privy_ruby 0.4.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +10 -0
- data/README.md +1 -1
- data/lib/privy/models/custom_token_transfer_source.rb +14 -13
- data/lib/privy/models/ethereum_yield_provider.rb +1 -0
- data/lib/privy/models/named_token_transfer_source.rb +14 -13
- data/lib/privy/models/unsafe_unwrap_webhook_event.rb +17 -1
- data/lib/privy/models/wallet_action_earn_fee_collect_created_webhook_payload.rb +153 -0
- data/lib/privy/models/wallet_action_earn_fee_collect_failed_webhook_payload.rb +178 -0
- data/lib/privy/models/wallet_action_earn_fee_collect_rejected_webhook_payload.rb +177 -0
- data/lib/privy/models/wallet_action_earn_fee_collect_succeeded_webhook_payload.rb +169 -0
- data/lib/privy/models/wallets/earn_fee_collect_action_response.rb +149 -0
- data/lib/privy/models/wallets/earn_fee_collect_request_body.rb +20 -0
- data/lib/privy/models/wallets/ethereum_earn_provider.rb +1 -0
- data/lib/privy/models/wallets/ethereum_earn_vault_details_response.rb +4 -1
- data/lib/privy/models/wallets/list_wallet_actions_response.rb +2 -2
- data/lib/privy/models/wallets/veda_vault_details.rb +122 -0
- data/lib/privy/models/wallets/wallet_action_response.rb +4 -1
- data/lib/privy/models/wallets/wallet_action_type.rb +1 -0
- data/lib/privy/models/webhook_payload.rb +13 -1
- data/lib/privy/models.rb +12 -0
- data/lib/privy/resources/wallets/actions.rb +1 -1
- data/lib/privy/resources/webhooks.rb +1 -1
- data/lib/privy/version.rb +1 -1
- data/lib/privy.rb +7 -0
- data/rbi/privy/models/custom_token_transfer_source.rbi +18 -13
- data/rbi/privy/models/ethereum_yield_provider.rbi +1 -0
- data/rbi/privy/models/named_token_transfer_source.rbi +18 -13
- data/rbi/privy/models/unsafe_unwrap_webhook_event.rbi +4 -0
- data/rbi/privy/models/wallet_action_earn_fee_collect_created_webhook_payload.rbi +232 -0
- data/rbi/privy/models/wallet_action_earn_fee_collect_failed_webhook_payload.rbi +271 -0
- data/rbi/privy/models/wallet_action_earn_fee_collect_rejected_webhook_payload.rbi +269 -0
- data/rbi/privy/models/wallet_action_earn_fee_collect_succeeded_webhook_payload.rbi +258 -0
- data/rbi/privy/models/wallets/earn_fee_collect_action_response.rbi +236 -0
- data/rbi/privy/models/wallets/earn_fee_collect_request_body.rbi +33 -0
- data/rbi/privy/models/wallets/ethereum_earn_provider.rbi +1 -0
- data/rbi/privy/models/wallets/ethereum_earn_vault_details_response.rbi +2 -1
- data/rbi/privy/models/wallets/list_wallet_actions_response.rbi +6 -3
- data/rbi/privy/models/wallets/veda_vault_details.rbi +157 -0
- data/rbi/privy/models/wallets/wallet_action_response.rbi +2 -1
- data/rbi/privy/models/wallets/wallet_action_type.rbi +5 -0
- data/rbi/privy/models/webhook_payload.rbi +5 -1
- data/rbi/privy/models.rbi +12 -0
- data/rbi/privy/resources/webhooks.rbi +4 -0
- data/sig/privy/models/custom_token_transfer_source.rbs +8 -6
- data/sig/privy/models/ethereum_yield_provider.rbs +2 -1
- data/sig/privy/models/named_token_transfer_source.rbs +7 -5
- data/sig/privy/models/unsafe_unwrap_webhook_event.rbs +4 -0
- data/sig/privy/models/wallet_action_earn_fee_collect_created_webhook_payload.rbs +111 -0
- data/sig/privy/models/wallet_action_earn_fee_collect_failed_webhook_payload.rbs +126 -0
- data/sig/privy/models/wallet_action_earn_fee_collect_rejected_webhook_payload.rbs +126 -0
- data/sig/privy/models/wallet_action_earn_fee_collect_succeeded_webhook_payload.rbs +121 -0
- data/sig/privy/models/wallets/earn_fee_collect_action_response.rbs +114 -0
- data/sig/privy/models/wallets/earn_fee_collect_request_body.rbs +15 -0
- data/sig/privy/models/wallets/ethereum_earn_provider.rbs +2 -1
- data/sig/privy/models/wallets/ethereum_earn_vault_details_response.rbs +3 -1
- data/sig/privy/models/wallets/veda_vault_details.rbs +87 -0
- data/sig/privy/models/wallets/wallet_action_response.rbs +1 -0
- data/sig/privy/models/wallets/wallet_action_type.rbs +2 -0
- data/sig/privy/models/webhook_payload.rbs +4 -0
- data/sig/privy/models.rbs +8 -0
- data/sig/privy/resources/webhooks.rbs +4 -0
- metadata +23 -2
|
@@ -0,0 +1,258 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Privy
|
|
4
|
+
module Models
|
|
5
|
+
class WalletActionEarnFeeCollectSucceededWebhookPayload < Privy::Internal::Type::BaseModel
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias do
|
|
8
|
+
T.any(
|
|
9
|
+
Privy::WalletActionEarnFeeCollectSucceededWebhookPayload,
|
|
10
|
+
Privy::Internal::AnyHash
|
|
11
|
+
)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
# Type of wallet action
|
|
15
|
+
sig { returns(Privy::Wallets::WalletActionType::TaggedSymbol) }
|
|
16
|
+
attr_accessor :action_type
|
|
17
|
+
|
|
18
|
+
# Underlying asset token address.
|
|
19
|
+
sig { returns(String) }
|
|
20
|
+
attr_accessor :asset_address
|
|
21
|
+
|
|
22
|
+
# CAIP-2 chain identifier.
|
|
23
|
+
sig { returns(String) }
|
|
24
|
+
attr_accessor :caip2
|
|
25
|
+
|
|
26
|
+
# ISO 8601 timestamp of when the wallet action completed successfully.
|
|
27
|
+
sig { returns(String) }
|
|
28
|
+
attr_accessor :completed_at
|
|
29
|
+
|
|
30
|
+
# ISO 8601 timestamp of when the wallet action was created.
|
|
31
|
+
sig { returns(String) }
|
|
32
|
+
attr_accessor :created_at
|
|
33
|
+
|
|
34
|
+
# Base-unit amount of fees collected (e.g. "1500000").
|
|
35
|
+
sig { returns(String) }
|
|
36
|
+
attr_accessor :raw_amount
|
|
37
|
+
|
|
38
|
+
# The status of the wallet action.
|
|
39
|
+
sig do
|
|
40
|
+
returns(
|
|
41
|
+
Privy::WalletActionEarnFeeCollectSucceededWebhookPayload::Status::TaggedSymbol
|
|
42
|
+
)
|
|
43
|
+
end
|
|
44
|
+
attr_accessor :status
|
|
45
|
+
|
|
46
|
+
# The steps of the wallet action, including transaction hashes.
|
|
47
|
+
sig { returns(T::Array[Privy::Wallets::WalletActionStep::Variants]) }
|
|
48
|
+
attr_accessor :steps
|
|
49
|
+
|
|
50
|
+
# The type of webhook event.
|
|
51
|
+
sig do
|
|
52
|
+
returns(
|
|
53
|
+
Privy::WalletActionEarnFeeCollectSucceededWebhookPayload::Type::TaggedSymbol
|
|
54
|
+
)
|
|
55
|
+
end
|
|
56
|
+
attr_accessor :type
|
|
57
|
+
|
|
58
|
+
# ERC-4626 vault contract address.
|
|
59
|
+
sig { returns(String) }
|
|
60
|
+
attr_accessor :vault_address
|
|
61
|
+
|
|
62
|
+
# The vault ID.
|
|
63
|
+
sig { returns(String) }
|
|
64
|
+
attr_accessor :vault_id
|
|
65
|
+
|
|
66
|
+
# The ID of the wallet action.
|
|
67
|
+
sig { returns(String) }
|
|
68
|
+
attr_accessor :wallet_action_id
|
|
69
|
+
|
|
70
|
+
# The ID of the wallet involved in the action.
|
|
71
|
+
sig { returns(String) }
|
|
72
|
+
attr_accessor :wallet_id
|
|
73
|
+
|
|
74
|
+
# Human-readable decimal amount of fees collected (e.g. "1.5"). Only present when
|
|
75
|
+
# the token is known in the asset registry.
|
|
76
|
+
sig { returns(T.nilable(String)) }
|
|
77
|
+
attr_reader :amount
|
|
78
|
+
|
|
79
|
+
sig { params(amount: String).void }
|
|
80
|
+
attr_writer :amount
|
|
81
|
+
|
|
82
|
+
# Asset identifier (e.g. "usdc", "eth"). Only present when the token is known in
|
|
83
|
+
# the asset registry.
|
|
84
|
+
sig { returns(T.nilable(String)) }
|
|
85
|
+
attr_reader :asset
|
|
86
|
+
|
|
87
|
+
sig { params(asset: String).void }
|
|
88
|
+
attr_writer :asset
|
|
89
|
+
|
|
90
|
+
# Number of decimals for the underlying asset (e.g. 6 for USDC, 18 for ETH). Only
|
|
91
|
+
# present when the token is known in the asset registry.
|
|
92
|
+
sig { returns(T.nilable(Integer)) }
|
|
93
|
+
attr_reader :decimals
|
|
94
|
+
|
|
95
|
+
sig { params(decimals: Integer).void }
|
|
96
|
+
attr_writer :decimals
|
|
97
|
+
|
|
98
|
+
# Payload for the wallet_action.earn_fee_collect.succeeded webhook event.
|
|
99
|
+
sig do
|
|
100
|
+
params(
|
|
101
|
+
action_type: Privy::Wallets::WalletActionType::OrSymbol,
|
|
102
|
+
asset_address: String,
|
|
103
|
+
caip2: String,
|
|
104
|
+
completed_at: String,
|
|
105
|
+
created_at: String,
|
|
106
|
+
raw_amount: String,
|
|
107
|
+
status:
|
|
108
|
+
Privy::WalletActionEarnFeeCollectSucceededWebhookPayload::Status::OrSymbol,
|
|
109
|
+
steps:
|
|
110
|
+
T::Array[
|
|
111
|
+
T.any(
|
|
112
|
+
Privy::Wallets::EvmTransactionWalletActionStep::OrHash,
|
|
113
|
+
Privy::Wallets::EvmUserOperationWalletActionStep::OrHash,
|
|
114
|
+
Privy::Wallets::SvmTransactionWalletActionStep::OrHash,
|
|
115
|
+
Privy::Wallets::TvmTransactionWalletActionStep::OrHash,
|
|
116
|
+
Privy::Wallets::ExternalTransactionWalletActionStep::OrHash,
|
|
117
|
+
Privy::Wallets::CustodianTransactionWalletActionStep::OrHash
|
|
118
|
+
)
|
|
119
|
+
],
|
|
120
|
+
type:
|
|
121
|
+
Privy::WalletActionEarnFeeCollectSucceededWebhookPayload::Type::OrSymbol,
|
|
122
|
+
vault_address: String,
|
|
123
|
+
vault_id: String,
|
|
124
|
+
wallet_action_id: String,
|
|
125
|
+
wallet_id: String,
|
|
126
|
+
amount: String,
|
|
127
|
+
asset: String,
|
|
128
|
+
decimals: Integer
|
|
129
|
+
).returns(T.attached_class)
|
|
130
|
+
end
|
|
131
|
+
def self.new(
|
|
132
|
+
# Type of wallet action
|
|
133
|
+
action_type:,
|
|
134
|
+
# Underlying asset token address.
|
|
135
|
+
asset_address:,
|
|
136
|
+
# CAIP-2 chain identifier.
|
|
137
|
+
caip2:,
|
|
138
|
+
# ISO 8601 timestamp of when the wallet action completed successfully.
|
|
139
|
+
completed_at:,
|
|
140
|
+
# ISO 8601 timestamp of when the wallet action was created.
|
|
141
|
+
created_at:,
|
|
142
|
+
# Base-unit amount of fees collected (e.g. "1500000").
|
|
143
|
+
raw_amount:,
|
|
144
|
+
# The status of the wallet action.
|
|
145
|
+
status:,
|
|
146
|
+
# The steps of the wallet action, including transaction hashes.
|
|
147
|
+
steps:,
|
|
148
|
+
# The type of webhook event.
|
|
149
|
+
type:,
|
|
150
|
+
# ERC-4626 vault contract address.
|
|
151
|
+
vault_address:,
|
|
152
|
+
# The vault ID.
|
|
153
|
+
vault_id:,
|
|
154
|
+
# The ID of the wallet action.
|
|
155
|
+
wallet_action_id:,
|
|
156
|
+
# The ID of the wallet involved in the action.
|
|
157
|
+
wallet_id:,
|
|
158
|
+
# Human-readable decimal amount of fees collected (e.g. "1.5"). Only present when
|
|
159
|
+
# the token is known in the asset registry.
|
|
160
|
+
amount: nil,
|
|
161
|
+
# Asset identifier (e.g. "usdc", "eth"). Only present when the token is known in
|
|
162
|
+
# the asset registry.
|
|
163
|
+
asset: nil,
|
|
164
|
+
# Number of decimals for the underlying asset (e.g. 6 for USDC, 18 for ETH). Only
|
|
165
|
+
# present when the token is known in the asset registry.
|
|
166
|
+
decimals: nil
|
|
167
|
+
)
|
|
168
|
+
end
|
|
169
|
+
|
|
170
|
+
sig do
|
|
171
|
+
override.returns(
|
|
172
|
+
{
|
|
173
|
+
action_type: Privy::Wallets::WalletActionType::TaggedSymbol,
|
|
174
|
+
asset_address: String,
|
|
175
|
+
caip2: String,
|
|
176
|
+
completed_at: String,
|
|
177
|
+
created_at: String,
|
|
178
|
+
raw_amount: String,
|
|
179
|
+
status:
|
|
180
|
+
Privy::WalletActionEarnFeeCollectSucceededWebhookPayload::Status::TaggedSymbol,
|
|
181
|
+
steps: T::Array[Privy::Wallets::WalletActionStep::Variants],
|
|
182
|
+
type:
|
|
183
|
+
Privy::WalletActionEarnFeeCollectSucceededWebhookPayload::Type::TaggedSymbol,
|
|
184
|
+
vault_address: String,
|
|
185
|
+
vault_id: String,
|
|
186
|
+
wallet_action_id: String,
|
|
187
|
+
wallet_id: String,
|
|
188
|
+
amount: String,
|
|
189
|
+
asset: String,
|
|
190
|
+
decimals: Integer
|
|
191
|
+
}
|
|
192
|
+
)
|
|
193
|
+
end
|
|
194
|
+
def to_hash
|
|
195
|
+
end
|
|
196
|
+
|
|
197
|
+
# The status of the wallet action.
|
|
198
|
+
module Status
|
|
199
|
+
extend Privy::Internal::Type::Enum
|
|
200
|
+
|
|
201
|
+
TaggedSymbol =
|
|
202
|
+
T.type_alias do
|
|
203
|
+
T.all(
|
|
204
|
+
Symbol,
|
|
205
|
+
Privy::WalletActionEarnFeeCollectSucceededWebhookPayload::Status
|
|
206
|
+
)
|
|
207
|
+
end
|
|
208
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
209
|
+
|
|
210
|
+
SUCCEEDED =
|
|
211
|
+
T.let(
|
|
212
|
+
:succeeded,
|
|
213
|
+
Privy::WalletActionEarnFeeCollectSucceededWebhookPayload::Status::TaggedSymbol
|
|
214
|
+
)
|
|
215
|
+
|
|
216
|
+
sig do
|
|
217
|
+
override.returns(
|
|
218
|
+
T::Array[
|
|
219
|
+
Privy::WalletActionEarnFeeCollectSucceededWebhookPayload::Status::TaggedSymbol
|
|
220
|
+
]
|
|
221
|
+
)
|
|
222
|
+
end
|
|
223
|
+
def self.values
|
|
224
|
+
end
|
|
225
|
+
end
|
|
226
|
+
|
|
227
|
+
# The type of webhook event.
|
|
228
|
+
module Type
|
|
229
|
+
extend Privy::Internal::Type::Enum
|
|
230
|
+
|
|
231
|
+
TaggedSymbol =
|
|
232
|
+
T.type_alias do
|
|
233
|
+
T.all(
|
|
234
|
+
Symbol,
|
|
235
|
+
Privy::WalletActionEarnFeeCollectSucceededWebhookPayload::Type
|
|
236
|
+
)
|
|
237
|
+
end
|
|
238
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
239
|
+
|
|
240
|
+
WALLET_ACTION_EARN_FEE_COLLECT_SUCCEEDED =
|
|
241
|
+
T.let(
|
|
242
|
+
:"wallet_action.earn_fee_collect.succeeded",
|
|
243
|
+
Privy::WalletActionEarnFeeCollectSucceededWebhookPayload::Type::TaggedSymbol
|
|
244
|
+
)
|
|
245
|
+
|
|
246
|
+
sig do
|
|
247
|
+
override.returns(
|
|
248
|
+
T::Array[
|
|
249
|
+
Privy::WalletActionEarnFeeCollectSucceededWebhookPayload::Type::TaggedSymbol
|
|
250
|
+
]
|
|
251
|
+
)
|
|
252
|
+
end
|
|
253
|
+
def self.values
|
|
254
|
+
end
|
|
255
|
+
end
|
|
256
|
+
end
|
|
257
|
+
end
|
|
258
|
+
end
|
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Privy
|
|
4
|
+
module Models
|
|
5
|
+
module Wallets
|
|
6
|
+
class EarnFeeCollectActionResponse < Privy::Internal::Type::BaseModel
|
|
7
|
+
OrHash =
|
|
8
|
+
T.type_alias do
|
|
9
|
+
T.any(
|
|
10
|
+
Privy::Wallets::EarnFeeCollectActionResponse,
|
|
11
|
+
Privy::Internal::AnyHash
|
|
12
|
+
)
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
# The ID of the wallet action.
|
|
16
|
+
sig { returns(String) }
|
|
17
|
+
attr_accessor :id
|
|
18
|
+
|
|
19
|
+
# Underlying asset token address.
|
|
20
|
+
sig { returns(String) }
|
|
21
|
+
attr_accessor :asset_address
|
|
22
|
+
|
|
23
|
+
# CAIP-2 chain identifier.
|
|
24
|
+
sig { returns(String) }
|
|
25
|
+
attr_accessor :caip2
|
|
26
|
+
|
|
27
|
+
# ISO 8601 timestamp of when the wallet action was created.
|
|
28
|
+
sig { returns(Time) }
|
|
29
|
+
attr_accessor :created_at
|
|
30
|
+
|
|
31
|
+
# Base-unit amount of fees collected (e.g. "1500000"). Populated after on-chain
|
|
32
|
+
# confirmation.
|
|
33
|
+
sig { returns(T.nilable(String)) }
|
|
34
|
+
attr_accessor :raw_amount
|
|
35
|
+
|
|
36
|
+
# Status of a wallet action.
|
|
37
|
+
sig { returns(Privy::Wallets::WalletActionStatus::TaggedSymbol) }
|
|
38
|
+
attr_accessor :status
|
|
39
|
+
|
|
40
|
+
sig do
|
|
41
|
+
returns(
|
|
42
|
+
Privy::Wallets::EarnFeeCollectActionResponse::Type::TaggedSymbol
|
|
43
|
+
)
|
|
44
|
+
end
|
|
45
|
+
attr_accessor :type
|
|
46
|
+
|
|
47
|
+
# ERC-4626 vault contract address.
|
|
48
|
+
sig { returns(String) }
|
|
49
|
+
attr_accessor :vault_address
|
|
50
|
+
|
|
51
|
+
# The vault ID.
|
|
52
|
+
sig { returns(String) }
|
|
53
|
+
attr_accessor :vault_id
|
|
54
|
+
|
|
55
|
+
# The ID of the wallet involved in the action.
|
|
56
|
+
sig { returns(String) }
|
|
57
|
+
attr_accessor :wallet_id
|
|
58
|
+
|
|
59
|
+
# Human-readable decimal amount of fees collected (e.g. "1.5"). Omitted when the
|
|
60
|
+
# token is not in the asset registry. Null while the action is pending; populated
|
|
61
|
+
# after on-chain confirmation.
|
|
62
|
+
sig { returns(T.nilable(String)) }
|
|
63
|
+
attr_accessor :amount
|
|
64
|
+
|
|
65
|
+
# Asset identifier (e.g. "usdc", "eth"). Only present when the token is known in
|
|
66
|
+
# the asset registry.
|
|
67
|
+
sig { returns(T.nilable(String)) }
|
|
68
|
+
attr_reader :asset
|
|
69
|
+
|
|
70
|
+
sig { params(asset: String).void }
|
|
71
|
+
attr_writer :asset
|
|
72
|
+
|
|
73
|
+
# Number of decimals for the underlying asset (e.g. 6 for USDC, 18 for ETH). Only
|
|
74
|
+
# present when the token is known in the asset registry.
|
|
75
|
+
sig { returns(T.nilable(Integer)) }
|
|
76
|
+
attr_reader :decimals
|
|
77
|
+
|
|
78
|
+
sig { params(decimals: Integer).void }
|
|
79
|
+
attr_writer :decimals
|
|
80
|
+
|
|
81
|
+
# A description of why a wallet action (or a step within a wallet action) failed.
|
|
82
|
+
sig { returns(T.nilable(Privy::Wallets::FailureReason)) }
|
|
83
|
+
attr_reader :failure_reason
|
|
84
|
+
|
|
85
|
+
sig do
|
|
86
|
+
params(failure_reason: Privy::Wallets::FailureReason::OrHash).void
|
|
87
|
+
end
|
|
88
|
+
attr_writer :failure_reason
|
|
89
|
+
|
|
90
|
+
# The steps of the wallet action. Only returned if `?include=steps` is provided.
|
|
91
|
+
sig do
|
|
92
|
+
returns(
|
|
93
|
+
T.nilable(T::Array[Privy::Wallets::WalletActionStep::Variants])
|
|
94
|
+
)
|
|
95
|
+
end
|
|
96
|
+
attr_reader :steps
|
|
97
|
+
|
|
98
|
+
sig do
|
|
99
|
+
params(
|
|
100
|
+
steps:
|
|
101
|
+
T::Array[
|
|
102
|
+
T.any(
|
|
103
|
+
Privy::Wallets::EvmTransactionWalletActionStep::OrHash,
|
|
104
|
+
Privy::Wallets::EvmUserOperationWalletActionStep::OrHash,
|
|
105
|
+
Privy::Wallets::SvmTransactionWalletActionStep::OrHash,
|
|
106
|
+
Privy::Wallets::TvmTransactionWalletActionStep::OrHash,
|
|
107
|
+
Privy::Wallets::ExternalTransactionWalletActionStep::OrHash,
|
|
108
|
+
Privy::Wallets::CustodianTransactionWalletActionStep::OrHash
|
|
109
|
+
)
|
|
110
|
+
]
|
|
111
|
+
).void
|
|
112
|
+
end
|
|
113
|
+
attr_writer :steps
|
|
114
|
+
|
|
115
|
+
# Response for an earn fee collect action.
|
|
116
|
+
sig do
|
|
117
|
+
params(
|
|
118
|
+
id: String,
|
|
119
|
+
asset_address: String,
|
|
120
|
+
caip2: String,
|
|
121
|
+
created_at: Time,
|
|
122
|
+
raw_amount: T.nilable(String),
|
|
123
|
+
status: Privy::Wallets::WalletActionStatus::OrSymbol,
|
|
124
|
+
type: Privy::Wallets::EarnFeeCollectActionResponse::Type::OrSymbol,
|
|
125
|
+
vault_address: String,
|
|
126
|
+
vault_id: String,
|
|
127
|
+
wallet_id: String,
|
|
128
|
+
amount: T.nilable(String),
|
|
129
|
+
asset: String,
|
|
130
|
+
decimals: Integer,
|
|
131
|
+
failure_reason: Privy::Wallets::FailureReason::OrHash,
|
|
132
|
+
steps:
|
|
133
|
+
T::Array[
|
|
134
|
+
T.any(
|
|
135
|
+
Privy::Wallets::EvmTransactionWalletActionStep::OrHash,
|
|
136
|
+
Privy::Wallets::EvmUserOperationWalletActionStep::OrHash,
|
|
137
|
+
Privy::Wallets::SvmTransactionWalletActionStep::OrHash,
|
|
138
|
+
Privy::Wallets::TvmTransactionWalletActionStep::OrHash,
|
|
139
|
+
Privy::Wallets::ExternalTransactionWalletActionStep::OrHash,
|
|
140
|
+
Privy::Wallets::CustodianTransactionWalletActionStep::OrHash
|
|
141
|
+
)
|
|
142
|
+
]
|
|
143
|
+
).returns(T.attached_class)
|
|
144
|
+
end
|
|
145
|
+
def self.new(
|
|
146
|
+
# The ID of the wallet action.
|
|
147
|
+
id:,
|
|
148
|
+
# Underlying asset token address.
|
|
149
|
+
asset_address:,
|
|
150
|
+
# CAIP-2 chain identifier.
|
|
151
|
+
caip2:,
|
|
152
|
+
# ISO 8601 timestamp of when the wallet action was created.
|
|
153
|
+
created_at:,
|
|
154
|
+
# Base-unit amount of fees collected (e.g. "1500000"). Populated after on-chain
|
|
155
|
+
# confirmation.
|
|
156
|
+
raw_amount:,
|
|
157
|
+
# Status of a wallet action.
|
|
158
|
+
status:,
|
|
159
|
+
type:,
|
|
160
|
+
# ERC-4626 vault contract address.
|
|
161
|
+
vault_address:,
|
|
162
|
+
# The vault ID.
|
|
163
|
+
vault_id:,
|
|
164
|
+
# The ID of the wallet involved in the action.
|
|
165
|
+
wallet_id:,
|
|
166
|
+
# Human-readable decimal amount of fees collected (e.g. "1.5"). Omitted when the
|
|
167
|
+
# token is not in the asset registry. Null while the action is pending; populated
|
|
168
|
+
# after on-chain confirmation.
|
|
169
|
+
amount: nil,
|
|
170
|
+
# Asset identifier (e.g. "usdc", "eth"). Only present when the token is known in
|
|
171
|
+
# the asset registry.
|
|
172
|
+
asset: nil,
|
|
173
|
+
# Number of decimals for the underlying asset (e.g. 6 for USDC, 18 for ETH). Only
|
|
174
|
+
# present when the token is known in the asset registry.
|
|
175
|
+
decimals: nil,
|
|
176
|
+
# A description of why a wallet action (or a step within a wallet action) failed.
|
|
177
|
+
failure_reason: nil,
|
|
178
|
+
# The steps of the wallet action. Only returned if `?include=steps` is provided.
|
|
179
|
+
steps: nil
|
|
180
|
+
)
|
|
181
|
+
end
|
|
182
|
+
|
|
183
|
+
sig do
|
|
184
|
+
override.returns(
|
|
185
|
+
{
|
|
186
|
+
id: String,
|
|
187
|
+
asset_address: String,
|
|
188
|
+
caip2: String,
|
|
189
|
+
created_at: Time,
|
|
190
|
+
raw_amount: T.nilable(String),
|
|
191
|
+
status: Privy::Wallets::WalletActionStatus::TaggedSymbol,
|
|
192
|
+
type:
|
|
193
|
+
Privy::Wallets::EarnFeeCollectActionResponse::Type::TaggedSymbol,
|
|
194
|
+
vault_address: String,
|
|
195
|
+
vault_id: String,
|
|
196
|
+
wallet_id: String,
|
|
197
|
+
amount: T.nilable(String),
|
|
198
|
+
asset: String,
|
|
199
|
+
decimals: Integer,
|
|
200
|
+
failure_reason: Privy::Wallets::FailureReason,
|
|
201
|
+
steps: T::Array[Privy::Wallets::WalletActionStep::Variants]
|
|
202
|
+
}
|
|
203
|
+
)
|
|
204
|
+
end
|
|
205
|
+
def to_hash
|
|
206
|
+
end
|
|
207
|
+
|
|
208
|
+
module Type
|
|
209
|
+
extend Privy::Internal::Type::Enum
|
|
210
|
+
|
|
211
|
+
TaggedSymbol =
|
|
212
|
+
T.type_alias do
|
|
213
|
+
T.all(Symbol, Privy::Wallets::EarnFeeCollectActionResponse::Type)
|
|
214
|
+
end
|
|
215
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
216
|
+
|
|
217
|
+
EARN_FEE_COLLECT =
|
|
218
|
+
T.let(
|
|
219
|
+
:earn_fee_collect,
|
|
220
|
+
Privy::Wallets::EarnFeeCollectActionResponse::Type::TaggedSymbol
|
|
221
|
+
)
|
|
222
|
+
|
|
223
|
+
sig do
|
|
224
|
+
override.returns(
|
|
225
|
+
T::Array[
|
|
226
|
+
Privy::Wallets::EarnFeeCollectActionResponse::Type::TaggedSymbol
|
|
227
|
+
]
|
|
228
|
+
)
|
|
229
|
+
end
|
|
230
|
+
def self.values
|
|
231
|
+
end
|
|
232
|
+
end
|
|
233
|
+
end
|
|
234
|
+
end
|
|
235
|
+
end
|
|
236
|
+
end
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Privy
|
|
4
|
+
module Models
|
|
5
|
+
module Wallets
|
|
6
|
+
class EarnFeeCollectRequestBody < Privy::Internal::Type::BaseModel
|
|
7
|
+
OrHash =
|
|
8
|
+
T.type_alias do
|
|
9
|
+
T.any(
|
|
10
|
+
Privy::Wallets::EarnFeeCollectRequestBody,
|
|
11
|
+
Privy::Internal::AnyHash
|
|
12
|
+
)
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
# The ID of the vault to collect fees from.
|
|
16
|
+
sig { returns(String) }
|
|
17
|
+
attr_accessor :vault_id
|
|
18
|
+
|
|
19
|
+
# Input for collecting accumulated fees from an Aave vault.
|
|
20
|
+
sig { params(vault_id: String).returns(T.attached_class) }
|
|
21
|
+
def self.new(
|
|
22
|
+
# The ID of the vault to collect fees from.
|
|
23
|
+
vault_id:
|
|
24
|
+
)
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
sig { override.returns({ vault_id: String }) }
|
|
28
|
+
def to_hash
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
@@ -14,6 +14,7 @@ module Privy
|
|
|
14
14
|
MORPHO =
|
|
15
15
|
T.let(:morpho, Privy::Wallets::EthereumEarnProvider::TaggedSymbol)
|
|
16
16
|
AAVE = T.let(:aave, Privy::Wallets::EthereumEarnProvider::TaggedSymbol)
|
|
17
|
+
VEDA = T.let(:veda, Privy::Wallets::EthereumEarnProvider::TaggedSymbol)
|
|
17
18
|
|
|
18
19
|
sig do
|
|
19
20
|
override.returns(
|
|
@@ -20,7 +20,8 @@ module Privy
|
|
|
20
20
|
Privy::Wallets::TransferActionResponse,
|
|
21
21
|
Privy::Wallets::EarnDepositActionResponse,
|
|
22
22
|
Privy::Wallets::EarnWithdrawActionResponse,
|
|
23
|
-
Privy::Wallets::EarnIncentiveClaimActionResponse
|
|
23
|
+
Privy::Wallets::EarnIncentiveClaimActionResponse,
|
|
24
|
+
Privy::Wallets::EarnFeeCollectActionResponse
|
|
24
25
|
)
|
|
25
26
|
]
|
|
26
27
|
)
|
|
@@ -40,7 +41,8 @@ module Privy
|
|
|
40
41
|
Privy::Wallets::TransferActionResponse::OrHash,
|
|
41
42
|
Privy::Wallets::EarnDepositActionResponse::OrHash,
|
|
42
43
|
Privy::Wallets::EarnWithdrawActionResponse::OrHash,
|
|
43
|
-
Privy::Wallets::EarnIncentiveClaimActionResponse::OrHash
|
|
44
|
+
Privy::Wallets::EarnIncentiveClaimActionResponse::OrHash,
|
|
45
|
+
Privy::Wallets::EarnFeeCollectActionResponse::OrHash
|
|
44
46
|
)
|
|
45
47
|
],
|
|
46
48
|
next_cursor: T.nilable(String)
|
|
@@ -59,7 +61,8 @@ module Privy
|
|
|
59
61
|
Privy::Wallets::TransferActionResponse,
|
|
60
62
|
Privy::Wallets::EarnDepositActionResponse,
|
|
61
63
|
Privy::Wallets::EarnWithdrawActionResponse,
|
|
62
|
-
Privy::Wallets::EarnIncentiveClaimActionResponse
|
|
64
|
+
Privy::Wallets::EarnIncentiveClaimActionResponse,
|
|
65
|
+
Privy::Wallets::EarnFeeCollectActionResponse
|
|
63
66
|
)
|
|
64
67
|
],
|
|
65
68
|
next_cursor: T.nilable(String)
|