light_client/indexer/types/
mod.rs1mod account;
2mod interface;
3mod proof;
4mod queue;
5mod signature;
6mod token;
7mod tree;
8
9pub use account::CompressedAccount;
10pub use interface::{
11 AccountInterface, ColdContext, ColdData, InterfaceTreeInfo, SolanaAccountData,
12 TokenAccountInterface,
13};
14pub use proof::{
15 AccountProofInputs, AddressProofInputs, AddressWithTree, MerkleProof, MerkleProofWithContext,
16 NewAddressProofWithContext, RootIndex, ValidityProofWithContext,
17};
18pub use queue::{
19 AddressQueueData, InputQueueData, OutputQueueData, QueueElementsResult, StateQueueData,
20};
21pub use signature::SignatureWithMetadata;
22pub use token::{CompressedTokenAccount, OwnerBalance, TokenBalance};
23pub use tree::{AddressMerkleTreeAccounts, NextTreeInfo, StateMerkleTreeAccounts, TreeInfo};
24
25pub struct ProofOfLeaf {
26 pub leaf: [u8; 32],
27 pub proof: Vec<[u8; 32]>,
28}
29
30pub type Address = [u8; 32];
31pub type Hash = [u8; 32];
32
33#[derive(Debug, Clone, PartialEq)]
34pub struct QueueInfo {
35 pub tree: solana_pubkey::Pubkey,
36 pub queue: solana_pubkey::Pubkey,
37 pub queue_type: u8,
38 pub queue_size: u64,
39}
40
41#[derive(Debug, Clone, PartialEq, Default)]
42pub struct QueueInfoResult {
43 pub queues: Vec<QueueInfo>,
44 pub slot: u64,
45}