pub trait Indexer: Send + Sync {
Show 23 methods
// Required methods
fn get_compressed_account<'life0, 'async_trait>(
&'life0 self,
address: [u8; 32],
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<CompressedAccount>, IndexerError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn get_compressed_account_by_hash<'life0, 'async_trait>(
&'life0 self,
hash: [u8; 32],
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<CompressedAccount>, IndexerError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn get_compressed_accounts_by_owner<'life0, 'life1, 'async_trait>(
&'life0 self,
owner: &'life1 Pubkey,
options: Option<GetCompressedAccountsByOwnerConfig>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<ItemsWithCursor<CompressedAccount>>, IndexerError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait;
fn get_compressed_balance<'life0, 'async_trait>(
&'life0 self,
address: Option<[u8; 32]>,
hash: Option<[u8; 32]>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<u64>, IndexerError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn get_compressed_balance_by_owner<'life0, 'life1, 'async_trait>(
&'life0 self,
owner: &'life1 Pubkey,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<u64>, IndexerError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait;
fn get_compressed_mint_token_holders<'life0, 'life1, 'async_trait>(
&'life0 self,
mint: &'life1 Pubkey,
options: Option<PaginatedOptions>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<ItemsWithCursor<OwnerBalance>>, IndexerError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait;
fn get_compressed_token_account_balance<'life0, 'async_trait>(
&'life0 self,
address: Option<[u8; 32]>,
hash: Option<[u8; 32]>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<u64>, IndexerError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn get_compressed_token_accounts_by_delegate<'life0, 'life1, 'async_trait>(
&'life0 self,
delegate: &'life1 Pubkey,
options: Option<GetCompressedTokenAccountsByOwnerOrDelegateOptions>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<ItemsWithCursor<TokenAccount>>, IndexerError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait;
fn get_compressed_token_accounts_by_owner<'life0, 'life1, 'async_trait>(
&'life0 self,
owner: &'life1 Pubkey,
options: Option<GetCompressedTokenAccountsByOwnerOrDelegateOptions>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<ItemsWithCursor<TokenAccount>>, IndexerError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait;
fn get_compressed_token_balances_by_owner_v2<'life0, 'life1, 'async_trait>(
&'life0 self,
owner: &'life1 Pubkey,
options: Option<GetCompressedTokenAccountsByOwnerOrDelegateOptions>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<ItemsWithCursor<TokenBalance>>, IndexerError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait;
fn get_compression_signatures_for_account<'life0, 'async_trait>(
&'life0 self,
hash: [u8; 32],
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<Items<SignatureWithMetadata>>, IndexerError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn get_compression_signatures_for_address<'life0, 'life1, 'async_trait>(
&'life0 self,
address: &'life1 [u8; 32],
options: Option<PaginatedOptions>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<ItemsWithCursor<SignatureWithMetadata>>, IndexerError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait;
fn get_compression_signatures_for_owner<'life0, 'life1, 'async_trait>(
&'life0 self,
owner: &'life1 Pubkey,
options: Option<PaginatedOptions>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<ItemsWithCursor<SignatureWithMetadata>>, IndexerError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait;
fn get_compression_signatures_for_token_owner<'life0, 'life1, 'async_trait>(
&'life0 self,
owner: &'life1 Pubkey,
options: Option<PaginatedOptions>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<ItemsWithCursor<SignatureWithMetadata>>, IndexerError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait;
fn get_indexer_health<'life0, 'async_trait>(
&'life0 self,
config: Option<RetryConfig>,
) -> Pin<Box<dyn Future<Output = Result<bool, IndexerError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn get_indexer_slot<'life0, 'async_trait>(
&'life0 self,
config: Option<RetryConfig>,
) -> Pin<Box<dyn Future<Output = Result<u64, IndexerError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn get_multiple_compressed_account_proofs<'life0, 'async_trait>(
&'life0 self,
hashes: Vec<[u8; 32]>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<Items<MerkleProof>>, IndexerError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn get_multiple_compressed_accounts<'life0, 'async_trait>(
&'life0 self,
addresses: Option<Vec<[u8; 32]>>,
hashes: Option<Vec<[u8; 32]>>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<Items<CompressedAccount>>, IndexerError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn get_multiple_new_address_proofs<'life0, 'async_trait>(
&'life0 self,
merkle_tree_pubkey: [u8; 32],
addresses: Vec<[u8; 32]>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<Items<NewAddressProofWithContext>>, IndexerError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn get_validity_proof<'life0, 'async_trait>(
&'life0 self,
hashes: Vec<[u8; 32]>,
new_addresses_with_trees: Vec<AddressWithTree>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<ValidityProofWithContext>, IndexerError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn get_address_queue_with_proofs<'life0, 'life1, 'async_trait>(
&'life0 mut self,
merkle_tree_pubkey: &'life1 Pubkey,
zkp_batch_size: u16,
start_offset: Option<u64>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<BatchAddressUpdateIndexerResponse>, IndexerError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait;
fn get_queue_elements<'life0, 'async_trait>(
&'life0 mut self,
merkle_tree_pubkey: [u8; 32],
queue_type: QueueType,
num_elements: u16,
start_offset: Option<u64>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<Items<MerkleProofWithContext>>, IndexerError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn get_subtrees<'life0, 'async_trait>(
&'life0 self,
merkle_tree_pubkey: [u8; 32],
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<Items<[u8; 32]>>, IndexerError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait;
}
Required Methods§
Sourcefn get_compressed_account<'life0, 'async_trait>(
&'life0 self,
address: [u8; 32],
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<CompressedAccount>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn get_compressed_account<'life0, 'async_trait>(
&'life0 self,
address: [u8; 32],
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<CompressedAccount>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Returns the compressed account with the given address or hash.
Sourcefn get_compressed_account_by_hash<'life0, 'async_trait>(
&'life0 self,
hash: [u8; 32],
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<CompressedAccount>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn get_compressed_account_by_hash<'life0, 'async_trait>(
&'life0 self,
hash: [u8; 32],
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<CompressedAccount>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Returns the compressed account with the given address or hash.
Sourcefn get_compressed_accounts_by_owner<'life0, 'life1, 'async_trait>(
&'life0 self,
owner: &'life1 Pubkey,
options: Option<GetCompressedAccountsByOwnerConfig>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<ItemsWithCursor<CompressedAccount>>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn get_compressed_accounts_by_owner<'life0, 'life1, 'async_trait>(
&'life0 self,
owner: &'life1 Pubkey,
options: Option<GetCompressedAccountsByOwnerConfig>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<ItemsWithCursor<CompressedAccount>>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Returns the owner’s compressed accounts.
Sourcefn get_compressed_balance<'life0, 'async_trait>(
&'life0 self,
address: Option<[u8; 32]>,
hash: Option<[u8; 32]>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<u64>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn get_compressed_balance<'life0, 'async_trait>(
&'life0 self,
address: Option<[u8; 32]>,
hash: Option<[u8; 32]>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<u64>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Returns the balance for the compressed account with the given address or hash.
Sourcefn get_compressed_balance_by_owner<'life0, 'life1, 'async_trait>(
&'life0 self,
owner: &'life1 Pubkey,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<u64>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn get_compressed_balance_by_owner<'life0, 'life1, 'async_trait>(
&'life0 self,
owner: &'life1 Pubkey,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<u64>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Returns the total balance of the owner’s compressed accounts.
Sourcefn get_compressed_mint_token_holders<'life0, 'life1, 'async_trait>(
&'life0 self,
mint: &'life1 Pubkey,
options: Option<PaginatedOptions>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<ItemsWithCursor<OwnerBalance>>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn get_compressed_mint_token_holders<'life0, 'life1, 'async_trait>(
&'life0 self,
mint: &'life1 Pubkey,
options: Option<PaginatedOptions>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<ItemsWithCursor<OwnerBalance>>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Returns the owner balances for a given mint in descending order.
Sourcefn get_compressed_token_account_balance<'life0, 'async_trait>(
&'life0 self,
address: Option<[u8; 32]>,
hash: Option<[u8; 32]>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<u64>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn get_compressed_token_account_balance<'life0, 'async_trait>(
&'life0 self,
address: Option<[u8; 32]>,
hash: Option<[u8; 32]>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<u64>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Returns the balance for a given token account.
Sourcefn get_compressed_token_accounts_by_delegate<'life0, 'life1, 'async_trait>(
&'life0 self,
delegate: &'life1 Pubkey,
options: Option<GetCompressedTokenAccountsByOwnerOrDelegateOptions>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<ItemsWithCursor<TokenAccount>>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn get_compressed_token_accounts_by_delegate<'life0, 'life1, 'async_trait>(
&'life0 self,
delegate: &'life1 Pubkey,
options: Option<GetCompressedTokenAccountsByOwnerOrDelegateOptions>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<ItemsWithCursor<TokenAccount>>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Returns the compressed token accounts that are partially or fully delegated to the given delegate.
fn get_compressed_token_accounts_by_owner<'life0, 'life1, 'async_trait>(
&'life0 self,
owner: &'life1 Pubkey,
options: Option<GetCompressedTokenAccountsByOwnerOrDelegateOptions>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<ItemsWithCursor<TokenAccount>>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Sourcefn get_compressed_token_balances_by_owner_v2<'life0, 'life1, 'async_trait>(
&'life0 self,
owner: &'life1 Pubkey,
options: Option<GetCompressedTokenAccountsByOwnerOrDelegateOptions>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<ItemsWithCursor<TokenBalance>>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn get_compressed_token_balances_by_owner_v2<'life0, 'life1, 'async_trait>(
&'life0 self,
owner: &'life1 Pubkey,
options: Option<GetCompressedTokenAccountsByOwnerOrDelegateOptions>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<ItemsWithCursor<TokenBalance>>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Returns the token balances for a given owner.
Sourcefn get_compression_signatures_for_account<'life0, 'async_trait>(
&'life0 self,
hash: [u8; 32],
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<Items<SignatureWithMetadata>>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn get_compression_signatures_for_account<'life0, 'async_trait>(
&'life0 self,
hash: [u8; 32],
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<Items<SignatureWithMetadata>>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Returns the token balances for a given owner.
Sourcefn get_compression_signatures_for_address<'life0, 'life1, 'async_trait>(
&'life0 self,
address: &'life1 [u8; 32],
options: Option<PaginatedOptions>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<ItemsWithCursor<SignatureWithMetadata>>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn get_compression_signatures_for_address<'life0, 'life1, 'async_trait>(
&'life0 self,
address: &'life1 [u8; 32],
options: Option<PaginatedOptions>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<ItemsWithCursor<SignatureWithMetadata>>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Return the signatures of the transactions that closed or opened a compressed account with the given address.
Sourcefn get_compression_signatures_for_owner<'life0, 'life1, 'async_trait>(
&'life0 self,
owner: &'life1 Pubkey,
options: Option<PaginatedOptions>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<ItemsWithCursor<SignatureWithMetadata>>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn get_compression_signatures_for_owner<'life0, 'life1, 'async_trait>(
&'life0 self,
owner: &'life1 Pubkey,
options: Option<PaginatedOptions>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<ItemsWithCursor<SignatureWithMetadata>>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Returns the signatures of the transactions that have modified an owner’s compressed accounts.
Sourcefn get_compression_signatures_for_token_owner<'life0, 'life1, 'async_trait>(
&'life0 self,
owner: &'life1 Pubkey,
options: Option<PaginatedOptions>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<ItemsWithCursor<SignatureWithMetadata>>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn get_compression_signatures_for_token_owner<'life0, 'life1, 'async_trait>(
&'life0 self,
owner: &'life1 Pubkey,
options: Option<PaginatedOptions>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<ItemsWithCursor<SignatureWithMetadata>>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Returns the signatures of the transactions that have modified an owner’s compressed token accounts.
Sourcefn get_indexer_health<'life0, 'async_trait>(
&'life0 self,
config: Option<RetryConfig>,
) -> Pin<Box<dyn Future<Output = Result<bool, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn get_indexer_health<'life0, 'async_trait>(
&'life0 self,
config: Option<RetryConfig>,
) -> Pin<Box<dyn Future<Output = Result<bool, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Returns an error if the indexer is stale by more than a configurable number of blocks. Otherwise, it returns ok.
Sourcefn get_indexer_slot<'life0, 'async_trait>(
&'life0 self,
config: Option<RetryConfig>,
) -> Pin<Box<dyn Future<Output = Result<u64, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn get_indexer_slot<'life0, 'async_trait>(
&'life0 self,
config: Option<RetryConfig>,
) -> Pin<Box<dyn Future<Output = Result<u64, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Returns the slot of the last block indexed by the indexer.
Sourcefn get_multiple_compressed_account_proofs<'life0, 'async_trait>(
&'life0 self,
hashes: Vec<[u8; 32]>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<Items<MerkleProof>>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn get_multiple_compressed_account_proofs<'life0, 'async_trait>(
&'life0 self,
hashes: Vec<[u8; 32]>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<Items<MerkleProof>>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Returns multiple proofs used by the compression program to verify the accounts’ validity.
Sourcefn get_multiple_compressed_accounts<'life0, 'async_trait>(
&'life0 self,
addresses: Option<Vec<[u8; 32]>>,
hashes: Option<Vec<[u8; 32]>>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<Items<CompressedAccount>>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn get_multiple_compressed_accounts<'life0, 'async_trait>(
&'life0 self,
addresses: Option<Vec<[u8; 32]>>,
hashes: Option<Vec<[u8; 32]>>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<Items<CompressedAccount>>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Returns multiple compressed accounts with the given addresses or hashes.
Sourcefn get_multiple_new_address_proofs<'life0, 'async_trait>(
&'life0 self,
merkle_tree_pubkey: [u8; 32],
addresses: Vec<[u8; 32]>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<Items<NewAddressProofWithContext>>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn get_multiple_new_address_proofs<'life0, 'async_trait>(
&'life0 self,
merkle_tree_pubkey: [u8; 32],
addresses: Vec<[u8; 32]>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<Items<NewAddressProofWithContext>>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Returns proofs that the new addresses are not taken already and can be created.
Sourcefn get_validity_proof<'life0, 'async_trait>(
&'life0 self,
hashes: Vec<[u8; 32]>,
new_addresses_with_trees: Vec<AddressWithTree>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<ValidityProofWithContext>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn get_validity_proof<'life0, 'async_trait>(
&'life0 self,
hashes: Vec<[u8; 32]>,
new_addresses_with_trees: Vec<AddressWithTree>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<ValidityProofWithContext>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Returns a single ZK Proof used by the compression program to verify that the given accounts are valid and that the new addresses can be created.
fn get_address_queue_with_proofs<'life0, 'life1, 'async_trait>(
&'life0 mut self,
merkle_tree_pubkey: &'life1 Pubkey,
zkp_batch_size: u16,
start_offset: Option<u64>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<BatchAddressUpdateIndexerResponse>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Sourcefn get_queue_elements<'life0, 'async_trait>(
&'life0 mut self,
merkle_tree_pubkey: [u8; 32],
queue_type: QueueType,
num_elements: u16,
start_offset: Option<u64>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<Items<MerkleProofWithContext>>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn get_queue_elements<'life0, 'async_trait>(
&'life0 mut self,
merkle_tree_pubkey: [u8; 32],
queue_type: QueueType,
num_elements: u16,
start_offset: Option<u64>,
config: Option<IndexerRpcConfig>,
) -> Pin<Box<dyn Future<Output = Result<Response<Items<MerkleProofWithContext>>, IndexerError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Returns queue elements from the queue with the given merkle tree pubkey. For input queues account compression program does not store queue elements in the account data but only emits these in the public transaction event. The indexer needs the queue elements to create batch update proofs.