1#![allow(clippy::all)]
4
5#[derive(Debug, Clone, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
6pub enum AddressWatchNetwork {
7 #[serde(rename = "ArbitrumOne")]
8 ArbitrumOne,
9 #[serde(rename = "ArbitrumSepolia")]
10 ArbitrumSepolia,
11 #[serde(rename = "ArcTestnet")]
12 ArcTestnet,
13 #[serde(rename = "AvalancheC")]
14 AvalancheC,
15 #[serde(rename = "AvalancheCFuji")]
16 AvalancheCFuji,
17 #[serde(rename = "Base")]
18 Base,
19 #[serde(rename = "BaseSepolia")]
20 BaseSepolia,
21 #[serde(rename = "Berachain")]
22 Berachain,
23 #[serde(rename = "BerachainBepolia")]
24 BerachainBepolia,
25 #[serde(rename = "Bob")]
26 Bob,
27 #[serde(rename = "BobSepolia")]
28 BobSepolia,
29 #[serde(rename = "Bsc")]
30 Bsc,
31 #[serde(rename = "BscTestnet")]
32 BscTestnet,
33 #[serde(rename = "Celo")]
34 Celo,
35 #[serde(rename = "CeloAlfajores")]
36 CeloAlfajores,
37 #[serde(rename = "Codex")]
38 Codex,
39 #[serde(rename = "CodexSepolia")]
40 CodexSepolia,
41 #[serde(rename = "Ethereum")]
42 Ethereum,
43 #[serde(rename = "EthereumClassic")]
44 EthereumClassic,
45 #[serde(rename = "EthereumClassicMordor")]
46 EthereumClassicMordor,
47 #[serde(rename = "EthereumSepolia")]
48 EthereumSepolia,
49 #[serde(rename = "EthereumHoodi")]
50 EthereumHoodi,
51 #[serde(rename = "FlareC")]
52 FlareC,
53 #[serde(rename = "FlareCCoston2")]
54 FlareCCoston2,
55 #[serde(rename = "FlowEvm")]
56 FlowEvm,
57 #[serde(rename = "FlowEvmTestnet")]
58 FlowEvmTestnet,
59 #[serde(rename = "Ink")]
60 Ink,
61 #[serde(rename = "InkSepolia")]
62 InkSepolia,
63 #[serde(rename = "Optimism")]
64 Optimism,
65 #[serde(rename = "OptimismSepolia")]
66 OptimismSepolia,
67 #[serde(rename = "Plasma")]
68 Plasma,
69 #[serde(rename = "PlasmaTestnet")]
70 PlasmaTestnet,
71 #[serde(rename = "Plume")]
72 Plume,
73 #[serde(rename = "PlumeSepolia")]
74 PlumeSepolia,
75 #[serde(rename = "Polygon")]
76 Polygon,
77 #[serde(rename = "PolygonAmoy")]
78 PolygonAmoy,
79 #[serde(rename = "Race")]
80 Race,
81 #[serde(rename = "RaceSepolia")]
82 RaceSepolia,
83 #[serde(rename = "Rayls")]
84 Rayls,
85 #[serde(rename = "RaylsTestnet")]
86 RaylsTestnet,
87 #[serde(rename = "Robinhood")]
88 Robinhood,
89 #[serde(rename = "RobinhoodSepolia")]
90 RobinhoodSepolia,
91 #[serde(rename = "SeiAtlantic2")]
92 SeiAtlantic2,
93 #[serde(rename = "SeiPacific1")]
94 SeiPacific1,
95 #[serde(rename = "Sonic")]
96 Sonic,
97 #[serde(rename = "SonicTestnet")]
98 SonicTestnet,
99 #[serde(rename = "Tempo")]
100 Tempo,
101 #[serde(rename = "TempoModerato")]
102 TempoModerato,
103 #[serde(rename = "Tsc")]
104 Tsc,
105 #[serde(rename = "TscTestnet1")]
106 TscTestnet1,
107 #[serde(rename = "Xdc")]
108 Xdc,
109 #[serde(rename = "XdcApothem")]
110 XdcApothem,
111 #[serde(rename = "XLayer")]
112 XLayer,
113 #[serde(rename = "XLayerSepolia")]
114 XLayerSepolia,
115}
116
117impl std::fmt::Display for AddressWatchNetwork {
118 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
119 f.write_str(match self {
120 AddressWatchNetwork::ArbitrumOne => "ArbitrumOne",
121 AddressWatchNetwork::ArbitrumSepolia => "ArbitrumSepolia",
122 AddressWatchNetwork::ArcTestnet => "ArcTestnet",
123 AddressWatchNetwork::AvalancheC => "AvalancheC",
124 AddressWatchNetwork::AvalancheCFuji => "AvalancheCFuji",
125 AddressWatchNetwork::Base => "Base",
126 AddressWatchNetwork::BaseSepolia => "BaseSepolia",
127 AddressWatchNetwork::Berachain => "Berachain",
128 AddressWatchNetwork::BerachainBepolia => "BerachainBepolia",
129 AddressWatchNetwork::Bob => "Bob",
130 AddressWatchNetwork::BobSepolia => "BobSepolia",
131 AddressWatchNetwork::Bsc => "Bsc",
132 AddressWatchNetwork::BscTestnet => "BscTestnet",
133 AddressWatchNetwork::Celo => "Celo",
134 AddressWatchNetwork::CeloAlfajores => "CeloAlfajores",
135 AddressWatchNetwork::Codex => "Codex",
136 AddressWatchNetwork::CodexSepolia => "CodexSepolia",
137 AddressWatchNetwork::Ethereum => "Ethereum",
138 AddressWatchNetwork::EthereumClassic => "EthereumClassic",
139 AddressWatchNetwork::EthereumClassicMordor => "EthereumClassicMordor",
140 AddressWatchNetwork::EthereumSepolia => "EthereumSepolia",
141 AddressWatchNetwork::EthereumHoodi => "EthereumHoodi",
142 AddressWatchNetwork::FlareC => "FlareC",
143 AddressWatchNetwork::FlareCCoston2 => "FlareCCoston2",
144 AddressWatchNetwork::FlowEvm => "FlowEvm",
145 AddressWatchNetwork::FlowEvmTestnet => "FlowEvmTestnet",
146 AddressWatchNetwork::Ink => "Ink",
147 AddressWatchNetwork::InkSepolia => "InkSepolia",
148 AddressWatchNetwork::Optimism => "Optimism",
149 AddressWatchNetwork::OptimismSepolia => "OptimismSepolia",
150 AddressWatchNetwork::Plasma => "Plasma",
151 AddressWatchNetwork::PlasmaTestnet => "PlasmaTestnet",
152 AddressWatchNetwork::Plume => "Plume",
153 AddressWatchNetwork::PlumeSepolia => "PlumeSepolia",
154 AddressWatchNetwork::Polygon => "Polygon",
155 AddressWatchNetwork::PolygonAmoy => "PolygonAmoy",
156 AddressWatchNetwork::Race => "Race",
157 AddressWatchNetwork::RaceSepolia => "RaceSepolia",
158 AddressWatchNetwork::Rayls => "Rayls",
159 AddressWatchNetwork::RaylsTestnet => "RaylsTestnet",
160 AddressWatchNetwork::Robinhood => "Robinhood",
161 AddressWatchNetwork::RobinhoodSepolia => "RobinhoodSepolia",
162 AddressWatchNetwork::SeiAtlantic2 => "SeiAtlantic2",
163 AddressWatchNetwork::SeiPacific1 => "SeiPacific1",
164 AddressWatchNetwork::Sonic => "Sonic",
165 AddressWatchNetwork::SonicTestnet => "SonicTestnet",
166 AddressWatchNetwork::Tempo => "Tempo",
167 AddressWatchNetwork::TempoModerato => "TempoModerato",
168 AddressWatchNetwork::Tsc => "Tsc",
169 AddressWatchNetwork::TscTestnet1 => "TscTestnet1",
170 AddressWatchNetwork::Xdc => "Xdc",
171 AddressWatchNetwork::XdcApothem => "XdcApothem",
172 AddressWatchNetwork::XLayer => "XLayer",
173 AddressWatchNetwork::XLayerSepolia => "XLayerSepolia",
174 })
175 }
176}
177
178#[derive(Debug, Clone, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
179pub enum Network {
180 #[serde(rename = "Algorand")]
181 Algorand,
182 #[serde(rename = "AlgorandTestnet")]
183 AlgorandTestnet,
184 #[serde(rename = "Aptos")]
185 Aptos,
186 #[serde(rename = "AptosTestnet")]
187 AptosTestnet,
188 #[serde(rename = "ArbitrumOne")]
189 ArbitrumOne,
190 #[serde(rename = "ArbitrumSepolia")]
191 ArbitrumSepolia,
192 #[serde(rename = "ArcTestnet")]
193 ArcTestnet,
194 #[serde(rename = "AvalancheC")]
195 AvalancheC,
196 #[serde(rename = "AvalancheCFuji")]
197 AvalancheCFuji,
198 #[serde(rename = "BabylonGenesis")]
199 BabylonGenesis,
200 #[serde(rename = "BabylonTestnet5")]
201 BabylonTestnet5,
202 #[serde(rename = "Base")]
203 Base,
204 #[serde(rename = "BaseSepolia")]
205 BaseSepolia,
206 #[serde(rename = "Berachain")]
207 Berachain,
208 #[serde(rename = "BerachainBepolia")]
209 BerachainBepolia,
210 #[serde(rename = "Bitcoin")]
211 Bitcoin,
212 #[serde(rename = "BitcoinSignet")]
213 BitcoinSignet,
214 #[serde(rename = "BitcoinTestnet4")]
215 BitcoinTestnet4,
216 #[serde(rename = "BitcoinCash")]
217 BitcoinCash,
218 #[serde(rename = "Bob")]
219 Bob,
220 #[serde(rename = "BobSepolia")]
221 BobSepolia,
222 #[serde(rename = "Bsc")]
223 Bsc,
224 #[serde(rename = "BscTestnet")]
225 BscTestnet,
226 #[serde(rename = "Canton")]
227 Canton,
228 #[serde(rename = "CantonTestnet")]
229 CantonTestnet,
230 #[serde(rename = "Cardano")]
231 Cardano,
232 #[serde(rename = "CardanoPreprod")]
233 CardanoPreprod,
234 #[serde(rename = "Concordium")]
235 Concordium,
236 #[serde(rename = "ConcordiumTestnet")]
237 ConcordiumTestnet,
238 #[serde(rename = "Celo")]
239 Celo,
240 #[serde(rename = "CeloAlfajores")]
241 CeloAlfajores,
242 #[serde(rename = "Codex")]
243 Codex,
244 #[serde(rename = "CodexSepolia")]
245 CodexSepolia,
246 #[serde(rename = "CosmosHub4")]
247 CosmosHub4,
248 #[serde(rename = "CosmosIcsTestnet")]
249 CosmosIcsTestnet,
250 #[serde(rename = "Dogecoin")]
251 Dogecoin,
252 #[serde(rename = "DogecoinTestnet")]
253 DogecoinTestnet,
254 #[serde(rename = "Ethereum")]
255 Ethereum,
256 #[serde(rename = "EthereumClassic")]
257 EthereumClassic,
258 #[serde(rename = "EthereumClassicMordor")]
259 EthereumClassicMordor,
260 #[serde(rename = "EthereumSepolia")]
261 EthereumSepolia,
262 #[serde(rename = "EthereumHoodi")]
263 EthereumHoodi,
264 #[serde(rename = "FlareC")]
265 FlareC,
266 #[serde(rename = "FlareCCoston2")]
267 FlareCCoston2,
268 #[serde(rename = "FlowEvm")]
269 FlowEvm,
270 #[serde(rename = "FlowEvmTestnet")]
271 FlowEvmTestnet,
272 #[serde(rename = "Hedera")]
273 Hedera,
274 #[serde(rename = "HederaTestnet")]
275 HederaTestnet,
276 #[serde(rename = "Ink")]
277 Ink,
278 #[serde(rename = "InkSepolia")]
279 InkSepolia,
280 #[serde(rename = "InternetComputer")]
281 InternetComputer,
282 #[serde(rename = "Ion")]
283 Ion,
284 #[serde(rename = "IonTestnet")]
285 IonTestnet,
286 #[serde(rename = "Iota")]
287 Iota,
288 #[serde(rename = "IotaTestnet")]
289 IotaTestnet,
290 #[serde(rename = "Kusama")]
291 Kusama,
292 #[serde(rename = "KusamaAssetHub")]
293 KusamaAssetHub,
294 #[serde(rename = "Litecoin")]
295 Litecoin,
296 #[serde(rename = "LitecoinTestnet")]
297 LitecoinTestnet,
298 #[serde(rename = "Movement")]
299 Movement,
300 #[serde(rename = "MovementTestnet")]
301 MovementTestnet,
302 #[serde(rename = "Near")]
303 Near,
304 #[serde(rename = "NearTestnet")]
305 NearTestnet,
306 #[serde(rename = "Optimism")]
307 Optimism,
308 #[serde(rename = "OptimismSepolia")]
309 OptimismSepolia,
310 #[serde(rename = "Origyn")]
311 Origyn,
312 #[serde(rename = "Plasma")]
313 Plasma,
314 #[serde(rename = "PlasmaTestnet")]
315 PlasmaTestnet,
316 #[serde(rename = "Plume")]
317 Plume,
318 #[serde(rename = "PlumeSepolia")]
319 PlumeSepolia,
320 #[serde(rename = "Paseo")]
321 Paseo,
322 #[serde(rename = "PaseoAssetHub")]
323 PaseoAssetHub,
324 #[serde(rename = "Polkadot")]
325 Polkadot,
326 #[serde(rename = "PolkadotAssetHub")]
327 PolkadotAssetHub,
328 #[serde(rename = "Polygon")]
329 Polygon,
330 #[serde(rename = "PolygonAmoy")]
331 PolygonAmoy,
332 #[serde(rename = "Polymesh")]
333 Polymesh,
334 #[serde(rename = "PolymeshTestnet")]
335 PolymeshTestnet,
336 #[serde(rename = "Race")]
337 Race,
338 #[serde(rename = "RaceSepolia")]
339 RaceSepolia,
340 #[serde(rename = "Rayls")]
341 Rayls,
342 #[serde(rename = "RaylsTestnet")]
343 RaylsTestnet,
344 #[serde(rename = "Robinhood")]
345 Robinhood,
346 #[serde(rename = "RobinhoodSepolia")]
347 RobinhoodSepolia,
348 #[serde(rename = "SeiAtlantic2")]
349 SeiAtlantic2,
350 #[serde(rename = "SeiPacific1")]
351 SeiPacific1,
352 #[serde(rename = "Solana")]
353 Solana,
354 #[serde(rename = "SolanaDevnet")]
355 SolanaDevnet,
356 #[serde(rename = "Sonic")]
357 Sonic,
358 #[serde(rename = "SonicTestnet")]
359 SonicTestnet,
360 #[serde(rename = "Starknet")]
361 Starknet,
362 #[serde(rename = "StarknetSepolia")]
363 StarknetSepolia,
364 #[serde(rename = "Stellar")]
365 Stellar,
366 #[serde(rename = "StellarTestnet")]
367 StellarTestnet,
368 #[serde(rename = "Sui")]
369 Sui,
370 #[serde(rename = "SuiTestnet")]
371 SuiTestnet,
372 #[serde(rename = "Tezos")]
373 Tezos,
374 #[serde(rename = "TezosGhostnet")]
375 TezosGhostnet,
376 #[serde(rename = "TezosShadownet")]
377 TezosShadownet,
378 #[serde(rename = "Tempo")]
379 Tempo,
380 #[serde(rename = "TempoModerato")]
381 TempoModerato,
382 #[serde(rename = "Tsc")]
383 Tsc,
384 #[serde(rename = "TscTestnet1")]
385 TscTestnet1,
386 #[serde(rename = "Ton")]
387 Ton,
388 #[serde(rename = "TonTestnet")]
389 TonTestnet,
390 #[serde(rename = "Tron")]
391 Tron,
392 #[serde(rename = "TronNile")]
393 TronNile,
394 #[serde(rename = "Westend")]
395 Westend,
396 #[serde(rename = "WestendAssetHub")]
397 WestendAssetHub,
398 #[serde(rename = "Xdc")]
399 Xdc,
400 #[serde(rename = "XdcApothem")]
401 XdcApothem,
402 #[serde(rename = "XLayer")]
403 XLayer,
404 #[serde(rename = "XLayerSepolia")]
405 XLayerSepolia,
406 #[serde(rename = "XrpLedger")]
407 XrpLedger,
408 #[serde(rename = "XrpLedgerTestnet")]
409 XrpLedgerTestnet,
410}
411
412impl std::fmt::Display for Network {
413 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
414 f.write_str(match self {
415 Network::Algorand => "Algorand",
416 Network::AlgorandTestnet => "AlgorandTestnet",
417 Network::Aptos => "Aptos",
418 Network::AptosTestnet => "AptosTestnet",
419 Network::ArbitrumOne => "ArbitrumOne",
420 Network::ArbitrumSepolia => "ArbitrumSepolia",
421 Network::ArcTestnet => "ArcTestnet",
422 Network::AvalancheC => "AvalancheC",
423 Network::AvalancheCFuji => "AvalancheCFuji",
424 Network::BabylonGenesis => "BabylonGenesis",
425 Network::BabylonTestnet5 => "BabylonTestnet5",
426 Network::Base => "Base",
427 Network::BaseSepolia => "BaseSepolia",
428 Network::Berachain => "Berachain",
429 Network::BerachainBepolia => "BerachainBepolia",
430 Network::Bitcoin => "Bitcoin",
431 Network::BitcoinSignet => "BitcoinSignet",
432 Network::BitcoinTestnet4 => "BitcoinTestnet4",
433 Network::BitcoinCash => "BitcoinCash",
434 Network::Bob => "Bob",
435 Network::BobSepolia => "BobSepolia",
436 Network::Bsc => "Bsc",
437 Network::BscTestnet => "BscTestnet",
438 Network::Canton => "Canton",
439 Network::CantonTestnet => "CantonTestnet",
440 Network::Cardano => "Cardano",
441 Network::CardanoPreprod => "CardanoPreprod",
442 Network::Concordium => "Concordium",
443 Network::ConcordiumTestnet => "ConcordiumTestnet",
444 Network::Celo => "Celo",
445 Network::CeloAlfajores => "CeloAlfajores",
446 Network::Codex => "Codex",
447 Network::CodexSepolia => "CodexSepolia",
448 Network::CosmosHub4 => "CosmosHub4",
449 Network::CosmosIcsTestnet => "CosmosIcsTestnet",
450 Network::Dogecoin => "Dogecoin",
451 Network::DogecoinTestnet => "DogecoinTestnet",
452 Network::Ethereum => "Ethereum",
453 Network::EthereumClassic => "EthereumClassic",
454 Network::EthereumClassicMordor => "EthereumClassicMordor",
455 Network::EthereumSepolia => "EthereumSepolia",
456 Network::EthereumHoodi => "EthereumHoodi",
457 Network::FlareC => "FlareC",
458 Network::FlareCCoston2 => "FlareCCoston2",
459 Network::FlowEvm => "FlowEvm",
460 Network::FlowEvmTestnet => "FlowEvmTestnet",
461 Network::Hedera => "Hedera",
462 Network::HederaTestnet => "HederaTestnet",
463 Network::Ink => "Ink",
464 Network::InkSepolia => "InkSepolia",
465 Network::InternetComputer => "InternetComputer",
466 Network::Ion => "Ion",
467 Network::IonTestnet => "IonTestnet",
468 Network::Iota => "Iota",
469 Network::IotaTestnet => "IotaTestnet",
470 Network::Kusama => "Kusama",
471 Network::KusamaAssetHub => "KusamaAssetHub",
472 Network::Litecoin => "Litecoin",
473 Network::LitecoinTestnet => "LitecoinTestnet",
474 Network::Movement => "Movement",
475 Network::MovementTestnet => "MovementTestnet",
476 Network::Near => "Near",
477 Network::NearTestnet => "NearTestnet",
478 Network::Optimism => "Optimism",
479 Network::OptimismSepolia => "OptimismSepolia",
480 Network::Origyn => "Origyn",
481 Network::Plasma => "Plasma",
482 Network::PlasmaTestnet => "PlasmaTestnet",
483 Network::Plume => "Plume",
484 Network::PlumeSepolia => "PlumeSepolia",
485 Network::Paseo => "Paseo",
486 Network::PaseoAssetHub => "PaseoAssetHub",
487 Network::Polkadot => "Polkadot",
488 Network::PolkadotAssetHub => "PolkadotAssetHub",
489 Network::Polygon => "Polygon",
490 Network::PolygonAmoy => "PolygonAmoy",
491 Network::Polymesh => "Polymesh",
492 Network::PolymeshTestnet => "PolymeshTestnet",
493 Network::Race => "Race",
494 Network::RaceSepolia => "RaceSepolia",
495 Network::Rayls => "Rayls",
496 Network::RaylsTestnet => "RaylsTestnet",
497 Network::Robinhood => "Robinhood",
498 Network::RobinhoodSepolia => "RobinhoodSepolia",
499 Network::SeiAtlantic2 => "SeiAtlantic2",
500 Network::SeiPacific1 => "SeiPacific1",
501 Network::Solana => "Solana",
502 Network::SolanaDevnet => "SolanaDevnet",
503 Network::Sonic => "Sonic",
504 Network::SonicTestnet => "SonicTestnet",
505 Network::Starknet => "Starknet",
506 Network::StarknetSepolia => "StarknetSepolia",
507 Network::Stellar => "Stellar",
508 Network::StellarTestnet => "StellarTestnet",
509 Network::Sui => "Sui",
510 Network::SuiTestnet => "SuiTestnet",
511 Network::Tezos => "Tezos",
512 Network::TezosGhostnet => "TezosGhostnet",
513 Network::TezosShadownet => "TezosShadownet",
514 Network::Tempo => "Tempo",
515 Network::TempoModerato => "TempoModerato",
516 Network::Tsc => "Tsc",
517 Network::TscTestnet1 => "TscTestnet1",
518 Network::Ton => "Ton",
519 Network::TonTestnet => "TonTestnet",
520 Network::Tron => "Tron",
521 Network::TronNile => "TronNile",
522 Network::Westend => "Westend",
523 Network::WestendAssetHub => "WestendAssetHub",
524 Network::Xdc => "Xdc",
525 Network::XdcApothem => "XdcApothem",
526 Network::XLayer => "XLayer",
527 Network::XLayerSepolia => "XLayerSepolia",
528 Network::XrpLedger => "XrpLedger",
529 Network::XrpLedgerTestnet => "XrpLedgerTestnet",
530 })
531 }
532}
533
534#[derive(Debug, Clone, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
535pub enum CredentialKind {
536 #[serde(rename = "Fido2")]
537 Fido2,
538 #[serde(rename = "Key")]
539 Key,
540 #[serde(rename = "RecoveryKey")]
541 RecoveryKey,
542 #[serde(rename = "PasswordProtectedKey")]
543 PasswordProtectedKey,
544}
545
546impl std::fmt::Display for CredentialKind {
547 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
548 f.write_str(match self {
549 CredentialKind::Fido2 => "Fido2",
550 CredentialKind::Key => "Key",
551 CredentialKind::RecoveryKey => "RecoveryKey",
552 CredentialKind::PasswordProtectedKey => "PasswordProtectedKey",
553 })
554 }
555}
556
557#[derive(Debug, Clone, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
558pub enum KeyScheme {
559 #[serde(rename = "ECDSA")]
560 ECDSA,
561 #[serde(rename = "EdDSA")]
562 EdDSA,
563 #[serde(rename = "Schnorr")]
564 Schnorr,
565}
566
567impl std::fmt::Display for KeyScheme {
568 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
569 f.write_str(match self {
570 KeyScheme::ECDSA => "ECDSA",
571 KeyScheme::EdDSA => "EdDSA",
572 KeyScheme::Schnorr => "Schnorr",
573 })
574 }
575}
576
577#[derive(Debug, Clone, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
578pub enum KeyCurve {
579 #[serde(rename = "ed25519")]
580 Ed25519,
581 #[serde(rename = "secp256k1")]
582 Secp256k1,
583 #[serde(rename = "stark")]
584 Stark,
585}
586
587impl std::fmt::Display for KeyCurve {
588 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
589 f.write_str(match self {
590 KeyCurve::Ed25519 => "ed25519",
591 KeyCurve::Secp256k1 => "secp256k1",
592 KeyCurve::Stark => "stark",
593 })
594 }
595}
596
597#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
598pub struct WebhookEvent {
599 #[serde(rename = "id")]
600 pub id: String,
601 #[serde(rename = "date")]
602 pub date: String,
603 #[serde(rename = "kind")]
604 pub kind: String,
605 #[serde(rename = "data")]
606 pub data:
607 std::collections::HashMap<String, std::collections::HashMap<String, serde_json::Value>>,
608 #[serde(rename = "status")]
609 pub status: String,
610 #[serde(rename = "error", default, skip_serializing_if = "Option::is_none")]
611 pub error: Option<String>,
612 #[serde(rename = "timestampSent")]
613 pub timestamp_sent: i64,
614}
615
616#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
617pub struct WebhookWithSecret {
618 #[serde(rename = "id")]
619 pub id: String,
620 #[serde(rename = "url")]
621 pub url: String,
622 #[serde(rename = "events")]
623 pub events: Vec<serde_json::Value>,
624 #[serde(rename = "status")]
625 pub status: String,
626 #[serde(
627 rename = "description",
628 default,
629 skip_serializing_if = "Option::is_none"
630 )]
631 pub description: Option<String>,
632 #[serde(rename = "dateCreated")]
633 pub date_created: String,
634 #[serde(rename = "dateUpdated")]
635 pub date_updated: String,
636 #[serde(rename = "secret")]
637 pub secret: String,
638}
639
640#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
641pub struct Webhook {
642 #[serde(rename = "id")]
643 pub id: String,
644 #[serde(rename = "url")]
645 pub url: String,
646 #[serde(rename = "events")]
647 pub events: Vec<serde_json::Value>,
648 #[serde(rename = "status")]
649 pub status: String,
650 #[serde(
651 rename = "description",
652 default,
653 skip_serializing_if = "Option::is_none"
654 )]
655 pub description: Option<String>,
656 #[serde(rename = "dateCreated")]
657 pub date_created: String,
658 #[serde(rename = "dateUpdated")]
659 pub date_updated: String,
660}
661
662#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
663pub struct Offer {
664 #[serde(rename = "id")]
665 pub id: String,
666 #[serde(rename = "orgId")]
667 pub org_id: String,
668 #[serde(rename = "walletId")]
669 pub wallet_id: String,
670 #[serde(rename = "network")]
671 pub network: crate::types::Network,
672 #[serde(rename = "kind")]
673 pub kind: String,
674 #[serde(rename = "metadata")]
675 pub metadata: serde_json::Value,
676 #[serde(rename = "txHash")]
677 pub tx_hash: String,
678 #[serde(rename = "status")]
679 pub status: String,
680 #[serde(rename = "from")]
681 pub from: String,
682 #[serde(rename = "to")]
683 pub to: String,
684 #[serde(rename = "value")]
685 pub value: String,
686 #[serde(rename = "timestamp")]
687 pub timestamp: String,
688 #[serde(rename = "expiresAt", default, skip_serializing_if = "Option::is_none")]
689 pub expires_at: Option<String>,
690 #[serde(rename = "memo", default, skip_serializing_if = "Option::is_none")]
691 pub memo: Option<String>,
692 #[serde(
693 rename = "settlementTransactionId",
694 default,
695 skip_serializing_if = "Option::is_none"
696 )]
697 pub settlement_transaction_id: Option<String>,
698 #[serde(
699 rename = "dateSettled",
700 default,
701 skip_serializing_if = "Option::is_none"
702 )]
703 pub date_settled: Option<String>,
704}
705
706#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
707pub struct TransactionRequest {
708 #[serde(rename = "id")]
709 pub id: String,
710 #[serde(rename = "walletId")]
711 pub wallet_id: String,
712 #[serde(rename = "network")]
713 pub network: crate::types::Network,
714 #[serde(rename = "requester")]
715 pub requester: Requester,
716 #[serde(rename = "requestBody")]
717 pub request_body: serde_json::Value,
718 #[serde(rename = "status")]
719 pub status: String,
720 #[serde(rename = "reason", default, skip_serializing_if = "Option::is_none")]
721 pub reason: Option<String>,
722 #[serde(rename = "txHash", default, skip_serializing_if = "Option::is_none")]
723 pub tx_hash: Option<String>,
724 #[serde(rename = "fee", default, skip_serializing_if = "Option::is_none")]
725 pub fee: Option<String>,
726 #[serde(
727 rename = "approvalId",
728 default,
729 skip_serializing_if = "Option::is_none"
730 )]
731 pub approval_id: Option<String>,
732 #[serde(rename = "dateRequested")]
733 pub date_requested: String,
734 #[serde(
735 rename = "datePolicyResolved",
736 default,
737 skip_serializing_if = "Option::is_none"
738 )]
739 pub date_policy_resolved: Option<String>,
740 #[serde(
741 rename = "dateBroadcasted",
742 default,
743 skip_serializing_if = "Option::is_none"
744 )]
745 pub date_broadcasted: Option<String>,
746 #[serde(
747 rename = "dateConfirmed",
748 default,
749 skip_serializing_if = "Option::is_none"
750 )]
751 pub date_confirmed: Option<String>,
752 #[serde(
753 rename = "externalId",
754 default,
755 skip_serializing_if = "Option::is_none"
756 )]
757 pub external_id: Option<String>,
758 #[serde(
759 rename = "replacementId",
760 default,
761 skip_serializing_if = "Option::is_none"
762 )]
763 pub replacement_id: Option<String>,
764 #[serde(rename = "details", default, skip_serializing_if = "Option::is_none")]
765 pub details: Option<
766 std::collections::HashMap<String, std::collections::HashMap<String, serde_json::Value>>,
767 >,
768}
769
770#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
772pub struct Requester {
773 #[serde(rename = "userId")]
774 pub user_id: String,
775 #[serde(rename = "tokenId", default, skip_serializing_if = "Option::is_none")]
776 pub token_id: Option<String>,
777}
778
779#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
781pub struct VaultBalanceEntry {
782 #[serde(rename = "id")]
783 pub id: String,
784 #[serde(rename = "kind")]
785 pub kind: String,
786 #[serde(rename = "network")]
787 pub network: String,
788 #[serde(rename = "tid")]
789 pub tid: String,
790 #[serde(rename = "amount")]
791 pub amount: String,
792 #[serde(
793 rename = "transferId",
794 default,
795 skip_serializing_if = "Option::is_none"
796 )]
797 pub transfer_id: Option<String>,
798 #[serde(
799 rename = "quarantineId",
800 default,
801 skip_serializing_if = "Option::is_none"
802 )]
803 pub quarantine_id: Option<String>,
804}
805
806#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
808pub struct VaultNetWorth {
809 #[serde(rename = "available")]
810 pub available: serde_json::Value,
811 #[serde(rename = "quarantined")]
812 pub quarantined: serde_json::Value,
813 #[serde(rename = "locked")]
814 pub locked: serde_json::Value,
815 #[serde(rename = "total")]
816 pub total: serde_json::Value,
817}
818
819#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
821pub struct VaultAsset {
822 #[serde(rename = "kind")]
823 pub kind: String,
824 #[serde(rename = "network")]
825 pub network: String,
826 #[serde(rename = "tid")]
827 pub tid: String,
828 #[serde(rename = "decimals")]
829 pub decimals: f64,
830 #[serde(rename = "symbol", default, skip_serializing_if = "Option::is_none")]
831 pub symbol: Option<String>,
832 #[serde(rename = "verified", default, skip_serializing_if = "Option::is_none")]
833 pub verified: Option<bool>,
834 #[serde(rename = "availableBalance")]
835 pub available_balance: String,
836 #[serde(rename = "quarantinedBalance")]
837 pub quarantined_balance: String,
838 #[serde(rename = "lockedBalance")]
839 pub locked_balance: String,
840 #[serde(rename = "quotes", default, skip_serializing_if = "Option::is_none")]
841 pub quotes: Option<serde_json::Value>,
842}
843
844#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
845pub struct TransferRequest {
846 #[serde(rename = "id")]
847 pub id: String,
848 #[serde(rename = "walletId")]
849 pub wallet_id: String,
850 #[serde(rename = "network")]
851 pub network: crate::types::Network,
852 #[serde(rename = "requester")]
853 pub requester: crate::types::Requester,
854 #[serde(rename = "requestBody")]
855 pub request_body: serde_json::Value,
856 #[serde(rename = "metadata")]
857 pub metadata: serde_json::Value,
858 #[serde(rename = "status")]
859 pub status: String,
860 #[serde(rename = "reason", default, skip_serializing_if = "Option::is_none")]
861 pub reason: Option<String>,
862 #[serde(rename = "txHash", default, skip_serializing_if = "Option::is_none")]
863 pub tx_hash: Option<String>,
864 #[serde(rename = "fee", default, skip_serializing_if = "Option::is_none")]
865 pub fee: Option<String>,
866 #[serde(rename = "dateRequested")]
867 pub date_requested: String,
868 #[serde(
869 rename = "datePolicyResolved",
870 default,
871 skip_serializing_if = "Option::is_none"
872 )]
873 pub date_policy_resolved: Option<String>,
874 #[serde(
875 rename = "dateBroadcasted",
876 default,
877 skip_serializing_if = "Option::is_none"
878 )]
879 pub date_broadcasted: Option<String>,
880 #[serde(
881 rename = "dateConfirmed",
882 default,
883 skip_serializing_if = "Option::is_none"
884 )]
885 pub date_confirmed: Option<String>,
886 #[serde(
887 rename = "approvalId",
888 default,
889 skip_serializing_if = "Option::is_none"
890 )]
891 pub approval_id: Option<String>,
892 #[serde(
893 rename = "externalId",
894 default,
895 skip_serializing_if = "Option::is_none"
896 )]
897 pub external_id: Option<String>,
898 #[serde(
899 rename = "feeSponsorId",
900 default,
901 skip_serializing_if = "Option::is_none"
902 )]
903 pub fee_sponsor_id: Option<String>,
904 #[serde(
905 rename = "replacementId",
906 default,
907 skip_serializing_if = "Option::is_none"
908 )]
909 pub replacement_id: Option<String>,
910 #[serde(rename = "details", default, skip_serializing_if = "Option::is_none")]
911 pub details: Option<
912 std::collections::HashMap<String, std::collections::HashMap<String, serde_json::Value>>,
913 >,
914}
915
916#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
918pub struct VaultAddress {
919 #[serde(rename = "walletId")]
920 pub wallet_id: String,
921 #[serde(rename = "network")]
922 pub network: String,
923 #[serde(rename = "address")]
924 pub address: String,
925}
926
927#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
929pub struct Vault {
930 #[serde(rename = "id")]
931 pub id: String,
932 #[serde(rename = "orgId")]
933 pub org_id: String,
934 #[serde(rename = "name", default, skip_serializing_if = "Option::is_none")]
935 pub name: Option<String>,
936 #[serde(rename = "tags")]
937 pub tags: Vec<String>,
938 #[serde(
939 rename = "externalId",
940 default,
941 skip_serializing_if = "Option::is_none"
942 )]
943 pub external_id: Option<String>,
944 #[serde(rename = "dateCreated")]
945 pub date_created: String,
946 #[serde(rename = "dateUpdated")]
947 pub date_updated: String,
948 #[serde(rename = "addresses", default, skip_serializing_if = "Option::is_none")]
949 pub addresses: Option<Vec<crate::types::VaultAddress>>,
950}
951
952#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
953pub struct SwapQuote {
954 #[serde(rename = "id")]
955 pub id: String,
956 #[serde(rename = "walletId")]
957 pub wallet_id: String,
958 #[serde(
959 rename = "targetWalletId",
960 default,
961 skip_serializing_if = "Option::is_none"
962 )]
963 pub target_wallet_id: Option<String>,
964 #[serde(rename = "provider")]
965 pub provider: String,
966 #[serde(rename = "sourceAsset")]
967 pub source_asset: serde_json::Value,
968 #[serde(rename = "targetAsset")]
969 pub target_asset: serde_json::Value,
970 #[serde(rename = "slippageBps")]
971 pub slippage_bps: i64,
972 #[serde(rename = "fee", default, skip_serializing_if = "Option::is_none")]
973 pub fee: Option<String>,
974 #[serde(rename = "dateCreated")]
975 pub date_created: String,
976 #[serde(rename = "requestBody")]
977 pub request_body: serde_json::Value,
978 #[serde(rename = "requester")]
979 pub requester: crate::types::Requester,
980}
981
982#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
983pub struct Swap {
984 #[serde(rename = "id")]
985 pub id: String,
986 #[serde(rename = "quoteId")]
987 pub quote_id: String,
988 #[serde(rename = "reference")]
989 pub reference: serde_json::Value,
990 #[serde(rename = "walletId")]
991 pub wallet_id: String,
992 #[serde(rename = "targetWalletId")]
993 pub target_wallet_id: String,
994 #[serde(rename = "status")]
995 pub status: String,
996 #[serde(rename = "provider")]
997 pub provider: String,
998 #[serde(
999 rename = "feeSponsorId",
1000 default,
1001 skip_serializing_if = "Option::is_none"
1002 )]
1003 pub fee_sponsor_id: Option<String>,
1004 #[serde(rename = "quotedSourceAsset")]
1005 pub quoted_source_asset: serde_json::Value,
1006 #[serde(rename = "quotedTargetAsset")]
1007 pub quoted_target_asset: serde_json::Value,
1008 #[serde(rename = "slippageBps")]
1009 pub slippage_bps: f64,
1010 #[serde(rename = "dateCreated")]
1011 pub date_created: String,
1012 #[serde(rename = "requestBody")]
1013 pub request_body: serde_json::Value,
1014 #[serde(rename = "requester")]
1015 pub requester: crate::types::Requester,
1016 #[serde(
1017 rename = "failureReason",
1018 default,
1019 skip_serializing_if = "Option::is_none"
1020 )]
1021 pub failure_reason: Option<String>,
1022 #[serde(
1023 rename = "protocolStatus",
1024 default,
1025 skip_serializing_if = "Option::is_none"
1026 )]
1027 pub protocol_status: Option<String>,
1028}
1029
1030#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
1031pub struct StakeAction {
1032 #[serde(rename = "id")]
1033 pub id: String,
1034 #[serde(rename = "stakeId")]
1035 pub stake_id: String,
1036 #[serde(rename = "status")]
1037 pub status: String,
1038 #[serde(
1039 rename = "transactionId",
1040 default,
1041 skip_serializing_if = "Option::is_none"
1042 )]
1043 pub transaction_id: Option<String>,
1044 #[serde(
1045 rename = "signatureId",
1046 default,
1047 skip_serializing_if = "Option::is_none"
1048 )]
1049 pub signature_id: Option<String>,
1050 #[serde(
1051 rename = "transactionHash",
1052 default,
1053 skip_serializing_if = "Option::is_none"
1054 )]
1055 pub transaction_hash: Option<String>,
1056 #[serde(rename = "kind")]
1057 pub kind: String,
1058 #[serde(rename = "requester")]
1059 pub requester: crate::types::Requester,
1060 #[serde(rename = "requestBody")]
1061 pub request_body: serde_json::Value,
1062 #[serde(
1063 rename = "failureReason",
1064 default,
1065 skip_serializing_if = "Option::is_none"
1066 )]
1067 pub failure_reason: Option<String>,
1068 #[serde(rename = "dateCreated")]
1069 pub date_created: String,
1070}
1071
1072#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
1073pub struct PolicyApproval {
1074 #[serde(rename = "id")]
1075 pub id: String,
1076 #[serde(rename = "initiatorId")]
1077 pub initiator_id: String,
1078 #[serde(rename = "activity")]
1079 pub activity: serde_json::Value,
1080 #[serde(rename = "status")]
1081 pub status: String,
1082 #[serde(
1083 rename = "expirationDate",
1084 default,
1085 skip_serializing_if = "Option::is_none"
1086 )]
1087 pub expiration_date: Option<String>,
1088 #[serde(
1089 rename = "dateCreated",
1090 default,
1091 skip_serializing_if = "Option::is_none"
1092 )]
1093 pub date_created: Option<String>,
1094 #[serde(rename = "dateUpdated")]
1095 pub date_updated: String,
1096 #[serde(
1097 rename = "dateResolved",
1098 default,
1099 skip_serializing_if = "Option::is_none"
1100 )]
1101 pub date_resolved: Option<String>,
1102 #[serde(rename = "policyEvaluations")]
1103 pub policy_evaluations: Vec<serde_json::Value>,
1104 #[serde(rename = "decisions")]
1105 pub decisions: Vec<serde_json::Value>,
1106}
1107
1108#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
1110pub struct ChangeRequestRequester {
1111 #[serde(rename = "userId")]
1112 pub user_id: String,
1113 #[serde(rename = "tokenId", default, skip_serializing_if = "Option::is_none")]
1114 pub token_id: Option<String>,
1115 #[serde(rename = "appId", default, skip_serializing_if = "Option::is_none")]
1116 pub app_id: Option<String>,
1117}
1118
1119#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
1120pub struct Permission {
1121 #[serde(rename = "id")]
1122 pub id: String,
1123 #[serde(rename = "name")]
1124 pub name: String,
1125 #[serde(rename = "operations")]
1126 pub operations: Vec<String>,
1127 #[serde(rename = "status")]
1128 pub status: String,
1129 #[serde(rename = "isImmutable")]
1130 pub is_immutable: bool,
1131 #[serde(rename = "isArchived")]
1132 pub is_archived: bool,
1133 #[serde(rename = "dateCreated")]
1134 pub date_created: String,
1135 #[serde(rename = "dateUpdated")]
1136 pub date_updated: String,
1137}
1138
1139#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
1140pub struct CantonValidator {
1141 #[serde(rename = "id")]
1142 pub id: String,
1143 #[serde(rename = "orgId")]
1144 pub org_id: String,
1145 #[serde(rename = "network")]
1146 pub network: String,
1147 #[serde(rename = "name", default, skip_serializing_if = "Option::is_none")]
1148 pub name: Option<String>,
1149 #[serde(rename = "kind")]
1150 pub kind: String,
1151 #[serde(rename = "dateCreated")]
1152 pub date_created: String,
1153 #[serde(rename = "partyHint")]
1154 pub party_hint: String,
1155}
1156
1157#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
1158pub struct SignatureRequest {
1159 #[serde(rename = "id")]
1160 pub id: String,
1161 #[serde(rename = "keyId")]
1162 pub key_id: String,
1163 #[serde(rename = "requester")]
1164 pub requester: crate::types::Requester,
1165 #[serde(rename = "requestBody")]
1166 pub request_body: serde_json::Value,
1167 #[serde(rename = "status")]
1168 pub status: String,
1169 #[serde(rename = "reason", default, skip_serializing_if = "Option::is_none")]
1170 pub reason: Option<String>,
1171 #[serde(rename = "signature", default, skip_serializing_if = "Option::is_none")]
1172 pub signature: Option<serde_json::Value>,
1173 #[serde(
1174 rename = "signatures",
1175 default,
1176 skip_serializing_if = "Option::is_none"
1177 )]
1178 pub signatures: Option<Vec<serde_json::Value>>,
1179 #[serde(
1180 rename = "signedData",
1181 default,
1182 skip_serializing_if = "Option::is_none"
1183 )]
1184 pub signed_data: Option<String>,
1185 #[serde(rename = "network", default, skip_serializing_if = "Option::is_none")]
1186 pub network: Option<crate::types::Network>,
1187 #[serde(rename = "txHash", default, skip_serializing_if = "Option::is_none")]
1188 pub tx_hash: Option<String>,
1189 #[serde(rename = "fee", default, skip_serializing_if = "Option::is_none")]
1190 pub fee: Option<String>,
1191 #[serde(
1192 rename = "approvalId",
1193 default,
1194 skip_serializing_if = "Option::is_none"
1195 )]
1196 pub approval_id: Option<String>,
1197 #[serde(rename = "dateRequested")]
1198 pub date_requested: String,
1199 #[serde(
1200 rename = "datePolicyResolved",
1201 default,
1202 skip_serializing_if = "Option::is_none"
1203 )]
1204 pub date_policy_resolved: Option<String>,
1205 #[serde(
1206 rename = "dateSigned",
1207 default,
1208 skip_serializing_if = "Option::is_none"
1209 )]
1210 pub date_signed: Option<String>,
1211 #[serde(
1212 rename = "dateConfirmed",
1213 default,
1214 skip_serializing_if = "Option::is_none"
1215 )]
1216 pub date_confirmed: Option<String>,
1217 #[serde(
1218 rename = "externalId",
1219 default,
1220 skip_serializing_if = "Option::is_none"
1221 )]
1222 pub external_id: Option<String>,
1223 #[serde(rename = "details", default, skip_serializing_if = "Option::is_none")]
1224 pub details: Option<
1225 std::collections::HashMap<String, std::collections::HashMap<String, serde_json::Value>>,
1226 >,
1227}
1228
1229#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
1230pub struct Key {
1231 #[serde(rename = "id")]
1232 pub id: String,
1233 #[serde(rename = "scheme")]
1234 pub scheme: crate::types::KeyScheme,
1235 #[serde(rename = "curve")]
1236 pub curve: crate::types::KeyCurve,
1237 #[serde(rename = "publicKey")]
1238 pub public_key: String,
1239 #[serde(rename = "masterKey", default, skip_serializing_if = "Option::is_none")]
1240 pub master_key: Option<bool>,
1241 #[serde(
1242 rename = "derivedFrom",
1243 default,
1244 skip_serializing_if = "Option::is_none"
1245 )]
1246 pub derived_from: Option<serde_json::Value>,
1247 #[serde(rename = "name", default, skip_serializing_if = "Option::is_none")]
1248 pub name: Option<String>,
1249 #[serde(rename = "status")]
1250 pub status: String,
1251 #[serde(rename = "custodial")]
1252 pub custodial: bool,
1253 #[serde(rename = "dateCreated")]
1254 pub date_created: String,
1255 #[serde(rename = "imported", default, skip_serializing_if = "Option::is_none")]
1256 pub imported: Option<bool>,
1257 #[serde(rename = "exported", default, skip_serializing_if = "Option::is_none")]
1258 pub exported: Option<bool>,
1259 #[serde(
1260 rename = "dateExported",
1261 default,
1262 skip_serializing_if = "Option::is_none"
1263 )]
1264 pub date_exported: Option<String>,
1265 #[serde(
1266 rename = "dateDeleted",
1267 default,
1268 skip_serializing_if = "Option::is_none"
1269 )]
1270 pub date_deleted: Option<String>,
1271}
1272
1273#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
1274pub struct FeeSponsor {
1275 #[serde(rename = "id")]
1276 pub id: String,
1277 #[serde(rename = "name", default, skip_serializing_if = "Option::is_none")]
1278 pub name: Option<String>,
1279 #[serde(rename = "walletId")]
1280 pub wallet_id: String,
1281 #[serde(rename = "network")]
1282 pub network: crate::types::Network,
1283 #[serde(rename = "status")]
1284 pub status: String,
1285 #[serde(rename = "dateCreated")]
1286 pub date_created: String,
1287 #[serde(
1288 rename = "allowEndUser",
1289 default,
1290 skip_serializing_if = "Option::is_none"
1291 )]
1292 pub allow_end_user: Option<bool>,
1293}
1294
1295#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
1296pub struct User {
1297 #[serde(rename = "username")]
1298 pub username: String,
1299 #[serde(rename = "name")]
1300 pub name: String,
1301 #[serde(rename = "userId")]
1302 pub user_id: String,
1303 #[serde(rename = "kind")]
1304 pub kind: String,
1305 #[serde(rename = "credentialUuid")]
1306 pub credential_uuid: String,
1307 #[serde(rename = "orgId", default, skip_serializing_if = "Option::is_none")]
1308 pub org_id: Option<String>,
1309 #[serde(rename = "tenantId", default, skip_serializing_if = "Option::is_none")]
1310 pub tenant_id: Option<String>,
1311 #[serde(
1312 rename = "permissions",
1313 default,
1314 skip_serializing_if = "Option::is_none"
1315 )]
1316 pub permissions: Option<Vec<String>>,
1317 #[serde(rename = "isActive")]
1318 pub is_active: bool,
1319 #[serde(rename = "isServiceAccount")]
1320 pub is_service_account: bool,
1321 #[serde(rename = "isRegistered")]
1322 pub is_registered: bool,
1323 #[serde(rename = "isSSORequired")]
1324 pub is_ssorequired: bool,
1325 #[serde(rename = "permissionAssignments")]
1326 pub permission_assignments: Vec<serde_json::Value>,
1327}
1328
1329#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
1330pub struct Wallet {
1331 #[serde(rename = "id")]
1332 pub id: String,
1333 #[serde(rename = "network")]
1334 pub network: String,
1335 #[serde(rename = "address", default, skip_serializing_if = "Option::is_none")]
1336 pub address: Option<String>,
1337 #[serde(rename = "signingKey")]
1338 pub signing_key: serde_json::Value,
1339 #[serde(rename = "status")]
1340 pub status: String,
1341 #[serde(rename = "dateCreated")]
1342 pub date_created: String,
1343 #[serde(
1344 rename = "dateDeleted",
1345 default,
1346 skip_serializing_if = "Option::is_none"
1347 )]
1348 pub date_deleted: Option<String>,
1349 #[serde(rename = "name", default, skip_serializing_if = "Option::is_none")]
1350 pub name: Option<String>,
1351 #[serde(rename = "custodial")]
1352 pub custodial: bool,
1353 #[serde(
1354 rename = "externalId",
1355 default,
1356 skip_serializing_if = "Option::is_none"
1357 )]
1358 pub external_id: Option<String>,
1359 #[serde(rename = "tags")]
1360 pub tags: Vec<String>,
1361 #[serde(
1362 rename = "validatorId",
1363 default,
1364 skip_serializing_if = "Option::is_none"
1365 )]
1366 pub validator_id: Option<String>,
1367}
1368
1369#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
1371pub struct RecoveryKeyAttestation {
1372 #[serde(rename = "credentialKind")]
1373 pub credential_kind: String,
1374 #[serde(rename = "credentialInfo")]
1375 pub credential_info: serde_json::Value,
1376 #[serde(
1377 rename = "encryptedPrivateKey",
1378 default,
1379 skip_serializing_if = "Option::is_none"
1380 )]
1381 pub encrypted_private_key: Option<String>,
1382 #[serde(
1383 rename = "credentialName",
1384 default,
1385 skip_serializing_if = "Option::is_none"
1386 )]
1387 pub credential_name: Option<String>,
1388}
1389
1390#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
1391pub struct Credential {
1392 #[serde(rename = "kind")]
1393 pub kind: String,
1394 #[serde(rename = "credentialId")]
1395 pub credential_id: String,
1396 #[serde(rename = "credentialUuid")]
1397 pub credential_uuid: String,
1398 #[serde(rename = "dateCreated")]
1399 pub date_created: String,
1400 #[serde(rename = "isActive")]
1401 pub is_active: bool,
1402 #[serde(rename = "name")]
1403 pub name: String,
1404 #[serde(rename = "publicKey")]
1405 pub public_key: String,
1406 #[serde(rename = "relyingPartyId")]
1407 pub relying_party_id: String,
1408 #[serde(rename = "origin")]
1409 pub origin: String,
1410}
1411
1412#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
1413pub struct PersonalAccessToken {
1414 #[serde(
1415 rename = "accessToken",
1416 default,
1417 skip_serializing_if = "Option::is_none"
1418 )]
1419 pub access_token: Option<String>,
1420 #[serde(rename = "dateCreated")]
1421 pub date_created: String,
1422 #[serde(rename = "credId")]
1423 pub cred_id: String,
1424 #[serde(rename = "isActive")]
1425 pub is_active: bool,
1426 #[serde(rename = "kind")]
1427 pub kind: String,
1428 #[serde(rename = "linkedUserId")]
1429 pub linked_user_id: String,
1430 #[serde(rename = "linkedAppId")]
1431 pub linked_app_id: String,
1432 #[serde(rename = "name")]
1433 pub name: String,
1434 #[serde(rename = "orgId")]
1435 pub org_id: String,
1436 #[serde(rename = "permissionAssignments")]
1437 pub permission_assignments: Vec<serde_json::Value>,
1438 #[serde(rename = "publicKey")]
1439 pub public_key: String,
1440 #[serde(rename = "tokenId")]
1441 pub token_id: String,
1442}
1443
1444#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
1445pub struct AuditLog {
1446 #[serde(rename = "id")]
1447 pub id: serde_json::Value,
1448 #[serde(rename = "action")]
1449 pub action: String,
1450 #[serde(rename = "actionToken")]
1451 pub action_token: String,
1452 #[serde(rename = "userId")]
1453 pub user_id: serde_json::Value,
1454 #[serde(rename = "username")]
1455 pub username: serde_json::Value,
1456 #[serde(rename = "datePerformed")]
1457 pub date_performed: String,
1458 #[serde(rename = "firstFactorCredential")]
1459 pub first_factor_credential: serde_json::Value,
1460}
1461
1462#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
1464pub struct AllocationAction {
1465 #[serde(rename = "id")]
1466 pub id: String,
1467 #[serde(rename = "allocationId")]
1468 pub allocation_id: String,
1469 #[serde(
1470 rename = "externalId",
1471 default,
1472 skip_serializing_if = "Option::is_none"
1473 )]
1474 pub external_id: Option<String>,
1475 #[serde(rename = "kind")]
1476 pub kind: String,
1477 #[serde(rename = "status")]
1478 pub status: String,
1479 #[serde(rename = "requester")]
1480 pub requester: crate::types::Requester,
1481 #[serde(rename = "requestBody")]
1482 pub request_body: serde_json::Value,
1483 #[serde(
1484 rename = "failureReason",
1485 default,
1486 skip_serializing_if = "Option::is_none"
1487 )]
1488 pub failure_reason: Option<String>,
1489 #[serde(rename = "dateCreated")]
1490 pub date_created: String,
1491}
1492
1493#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
1495pub struct Allocation {
1496 #[serde(rename = "id")]
1497 pub id: String,
1498 #[serde(rename = "walletId")]
1499 pub wallet_id: String,
1500 #[serde(rename = "protocol")]
1501 pub protocol: String,
1502 #[serde(rename = "provider", default, skip_serializing_if = "Option::is_none")]
1503 pub provider: Option<String>,
1504 #[serde(rename = "amount")]
1505 pub amount: serde_json::Value,
1506 #[serde(rename = "rewards")]
1507 pub rewards: serde_json::Value,
1508 #[serde(rename = "dateCreated")]
1509 pub date_created: String,
1510}
1511
1512#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
1513pub struct AddressWatchBlockchainEvent {
1514 #[serde(rename = "id")]
1515 pub id: String,
1516 #[serde(rename = "addressWatchId")]
1517 pub address_watch_id: String,
1518 #[serde(rename = "network")]
1519 pub network: crate::types::AddressWatchNetwork,
1520 #[serde(rename = "name")]
1521 pub name: String,
1522 #[serde(rename = "blockNumber")]
1523 pub block_number: f64,
1524 #[serde(rename = "txHash")]
1525 pub tx_hash: String,
1526 #[serde(rename = "index")]
1527 pub index: String,
1528 #[serde(rename = "timestamp")]
1529 pub timestamp: String,
1530 #[serde(rename = "status")]
1531 pub status: String,
1532 #[serde(rename = "data")]
1533 pub data:
1534 std::collections::HashMap<String, std::collections::HashMap<String, serde_json::Value>>,
1535}
1536
1537#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
1538pub struct AddressWatch {
1539 #[serde(rename = "id")]
1540 pub id: String,
1541 #[serde(rename = "network")]
1542 pub network: crate::types::AddressWatchNetwork,
1543 #[serde(rename = "address")]
1544 pub address: String,
1545 #[serde(rename = "name", default, skip_serializing_if = "Option::is_none")]
1546 pub name: Option<String>,
1547 #[serde(
1548 rename = "externalId",
1549 default,
1550 skip_serializing_if = "Option::is_none"
1551 )]
1552 pub external_id: Option<String>,
1553 #[serde(rename = "tags")]
1554 pub tags: Vec<String>,
1555 #[serde(rename = "status")]
1556 pub status: String,
1557 #[serde(rename = "dateCreated")]
1558 pub date_created: String,
1559 #[serde(
1560 rename = "dateDeleted",
1561 default,
1562 skip_serializing_if = "Option::is_none"
1563 )]
1564 pub date_deleted: Option<String>,
1565}