tempo_node/rpc/token/
tokens_by_address.rs1use crate::rpc::token::tokens::{Token, TokensFilters};
2use alloy_primitives::{Address, B256, U256};
3use serde::{Deserialize, Serialize};
4use tempo_alloy::rpc::pagination::PaginationParams;
5
6#[derive(Clone, Debug, Default, PartialEq, Eq, Hash, Serialize, Deserialize)]
7#[serde(rename_all = "camelCase")]
8pub struct TokensByAddressResponse {
9 pub next_cursor: Option<String>,
11 pub tokens: Vec<AccountToken>,
13}
14
15#[derive(Clone, Debug, Default, PartialEq, Eq, Hash, Serialize, Deserialize)]
16#[serde(rename_all = "camelCase")]
17pub struct TokensByAddressParams {
18 pub address: Address,
20 #[serde(flatten)]
22 pub params: PaginationParams<TokensFilters>,
23}
24
25#[derive(Clone, Debug, Default, PartialEq, Eq, Hash, Serialize, Deserialize)]
26#[serde(rename_all = "camelCase")]
27pub struct AccountToken {
28 pub balance: U256,
30 pub roles: Vec<B256>,
32 pub token: Token,
34}