helius_rust_client/models/
enums.rs

1use std::fmt;
2
3use serde::{Deserialize, Serialize};
4
5#[derive(Debug, Serialize, Deserialize, Copy, Clone, PartialEq)]
6#[allow(non_camel_case_types)]
7pub enum TransactionType {
8    UNKNOWN,
9    ANY,
10    NFT_BID,
11    NFT_GLOBAL_BID,
12    NFT_GLOBAL_BID_CANCELLED,
13    NFT_BID_CANCELLED,
14    NFT_LISTING,
15    NFT_CANCEL_LISTING,
16    NFT_SALE,
17    NFT_MINT,
18    NFT_AUCTION_CREATED,
19    NFT_AUCTION_UPDATED,
20    NFT_AUCTION_CANCELLED,
21    NFT_PARTICIPATION_REWARD,
22    NFT_MINT_REJECTED,
23    CREATE_STORE,
24    WHITELIST_CREATOR,
25    ADD_TO_WHITELIST,
26    REMOVE_FROM_WHITELIST,
27    AUCTION_MANAGER_CLAIM_BID,
28    EMPTY_PAYMENT_ACCOUNT,
29    UPDATE_PRIMARY_SALE_METADATA,
30    ADD_TOKEN_TO_VAULT,
31    ACTIVATE_VAULT,
32    INIT_VAULT,
33    INIT_BANK,
34    INIT_STAKE,
35    MERGE_STAKE,
36    SPLIT_STAKE,
37    SET_BANK_FLAGS,
38    SET_VAULT_LOCK,
39    UPDATE_VAULT_OWNER,
40    UPDATE_BANK_MANAGER,
41    RECORD_RARITY_POINTS,
42    ADD_RARITIES_TO_BANK,
43    INIT_FARM,
44    INIT_FARMER,
45    REFRESH_FARMER,
46    UPDATE_FARM,
47    AUTHORIZE_FUNDER,
48    DEAUTHORIZE_FUNDER,
49    FUND_REWARD,
50    CANCEL_REWARD,
51    LOCK_REWARD,
52    PAYOUT,
53    VALIDATE_SAFETY_DEPOSIT_BOX_V2,
54    SET_AUTHORITY,
55    INIT_AUCTION_MANAGER_V2,
56    UPDATE_EXTERNAL_PRICE_ACCOUNT,
57    AUCTION_HOUSE_CREATE,
58    CLOSE_ESCROW_ACCOUNT,
59    WITHDRAW,
60    DEPOSIT,
61    TRANSFER,
62    BURN,
63    BURN_NFT,
64    PLATFORM_FEE,
65    LOAN,
66    RESCIND_LOAN,
67    OFFER_LOAN,
68    REPAY_LOAN,
69    TAKE_LOAN,
70    FORECLOSE_LOAN,
71    ADD_TO_POOL,
72    REMOVE_FROM_POOL,
73    CLOSE_POSITION,
74    UNLABELED,
75    CLOSE_ACCOUNT,
76    WITHDRAW_GEM,
77    DEPOSIT_GEM,
78    STAKE_TOKEN,
79    UNSTAKE_TOKEN,
80    STAKE_SOL,
81    UNSTAKE_SOL,
82    CLAIM_REWARDS,
83    BUY_SUBSCRIPTION,
84    SWAP,
85    INIT_SWAP,
86    CANCEL_SWAP,
87    REJECT_SWAP,
88    INITIALIZE_ACCOUNT,
89    TOKEN_MINT,
90    CREATE_APPRAISAL,
91    CANDY_MACHINE_WRAP,
92    CANDY_MACHINE_UNWRAP,
93    CANDY_MACHINE_UPDATE,
94    CANDY_MACHINE_ROUTE,
95    FRACTIONALIZE,
96    DEPOSIT_FRACTIONAL_POOL,
97    FUSE,
98    CREATE_RAFFLE,
99    BUY_TICKETS,
100    UPDATE_ITEM,
101    LIST_ITEM,
102    DELIST_ITEM,
103    ADD_ITEM,
104    CLOSE_ITEM,
105}
106impl fmt::Display for TransactionType {
107    fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
108        write!(f, "{:?}", self)
109    }
110}
111
112#[derive(Debug, Deserialize, Copy, Clone, PartialEq)]
113#[allow(non_camel_case_types)]
114pub enum TransactionSource {
115    FORM_FUNCTION,
116    EXCHANGE_ART,
117    CANDY_MACHINE_V3,
118    CANDY_MACHINE_V2,
119    CANDY_MACHINE_V1,
120    UNKNOWN,
121    SOLANART,
122    SOLSEA,
123    MAGIC_EDEN,
124    HOLAPLEX,
125    METAPLEX,
126    OPENSEA,
127    SOLANA_PROGRAM_LIBRARY,
128    ANCHOR,
129    PHANTOM,
130    SYSTEM_PROGRAM,
131    STAKE_PROGRAM,
132    COINBASE,
133    CORAL_CUBE,
134    HEDGE,
135    LAUNCH_MY_NFT,
136    GEM_BANK,
137    GEM_FARM,
138    DEGODS,
139    BLOCKSMITH_LABS,
140    YAWWW,
141    ATADIA,
142    DIGITAL_EYES,
143    HYPERSPACE,
144    TENSOR,
145    BIFROST,
146    JUPITER,
147    MERCURIAL_STABLE_SWAP,
148    SABER,
149    SERUM,
150    STEP_FINANCE,
151    CROPPER,
152    RAYDIUM,
153    ALDRIN,
154    CREMA,
155    LIFINITY,
156    CYKURA,
157    ORCA,
158    MARINADE,
159    STEPN,
160    SENCHA_EXCHANGE,
161    SAROS,
162    ENGLISH_AUCTION,
163    FOXY,
164    HADESWAP,
165    FOXY_STAKING,
166    FOXY_RAFFLE,
167    FOXY_TOKEN_MARKET,
168    FOXY_MISSIONS,
169    FOXY_MARMALADE,
170    FOXY_COINFLIP,
171    FOXY_AUCTION,
172    CITRUS,
173    ZETA,
174    ELIXIR,
175    ELIXIR_LAUNCHPAD,
176    CARDINAL_RENT,
177    CARDINAL_STAKING,
178    BPF_LOADER,
179    BPF_UPGRADEABLE_LOADER,
180    SQUADS,
181    SHARKY_FI,
182    OPEN_CREATOR_PROTOCOL,
183
184    // Mints
185    W_SOL,
186    DUST,
187    SOLI,
188    USDC,
189    FLWR,
190    HDG,
191    MEAN,
192    UXD,
193    SHDW,
194    POLIS,
195    ATLAS,
196    USH,
197    TRTLS,
198    RUNNER,
199    INVICTUS,
200}
201impl fmt::Display for TransactionSource {
202    fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
203        write!(f, "{:?}", self)
204    }
205}
206
207#[derive(Debug, Deserialize, Copy, Clone, PartialEq)]
208#[allow(non_camel_case_types)]
209pub enum NftEventType {
210    NFT_BID,
211    NFT_BID_CANCELLED,
212    NFT_GLOBAL_BID,
213    NFT_GLOBAL_BID_CANCELLED,
214    NFT_LISTING,
215    NFT_CANCEL_LISTING,
216    NFT_SALE,
217    NFT_MINT,
218    NFT_MINT_REJECTED,
219    NFT_AUCTION_CREATED,
220    NFT_AUCTION_UPDATED,
221    NFT_AUCTION_CANCELLED,
222    NFT_PARTICIPATION_REWARD,
223    BURN_NFT,
224    NFT_RENT_LISTING,
225    NFT_RENT_CANCEL_LISTING,
226    NFT_RENT_UPDATE_LISTING,
227    NFT_RENT_ACTIVATE,
228    NFT_RENT_END,
229    ATTACH_METADATA,
230    REQUEST_PNFT_MIGRATION,
231    START_PNFT_MIGRATION,
232    MIGRATE_TO_PNFT,
233    SFT_MINT,
234}
235
236#[derive(Debug, Deserialize, Copy, Clone, PartialEq)]
237pub enum TokenStandard {
238    ProgrammableNonFungible,
239    NonFungible,
240    Fungible,
241    FungibleAsset,
242    NonFungibleEdition,
243    UnknownStandard,
244}
245
246#[derive(Debug, Deserialize, Copy, Clone, PartialEq)]
247#[allow(non_camel_case_types)]
248pub enum CompressedNftEventType {
249    COMPRESSED_NFT_MINT,
250    COMPRESSED_NFT_TRANSFER,
251    CREATE_MERKLE_TREE,
252    COMPRESSED_NFT_REDEEM,
253    COMPRESSED_NFT_CANCEL_REDEEM,
254    COMPRESSED_NFT_BURN,
255    COMPRESSED_NFT_DELEGATE,
256}
257
258#[derive(Debug, Deserialize, Copy, Clone, PartialEq)]
259#[allow(non_camel_case_types)]
260pub enum SaleType {
261    AUCTION,
262    INSTANT_SALE,
263    OFFER,
264    GLOBAL_OFFER,
265    MINT,
266    UNKNOWN,
267}