# Data Reference

***

### **1. Asset**

```ts
type Asset = {
  symbol: string;
  tokenMapping: {
    chainId: string;
    address: string;
  }[];
};
```

* `symbol`: Canonical asset symbol (e.g., `WETH`, `AAVE`).
* `tokenMapping`: Array of chain-specific token contracts.

***

### **2. Ticker**

```ts
type Ticker = {
  id: string;
  aggregated: {
    price: number;
    h24UsdVolume: number;
  };
  cex: {
    price: number;
    h24UsdVolume: number;
  };
  dex: {
    price: number;
    h24UsdVolume: number;
    usdTvl: number;
  };
};
```

* `id`: Asset pair symbol in `BASE/QUOTE` format.
* `aggregated`: Aggregated price and volume across CEX + DEX.
* `cex`: Centralized exchange pricing data.
* `dex`: Decentralized exchange pricing and TVL data.

***

### **3. PoolState**

```ts
type PoolState = {
  chainId: string;
  address: string;
  protocol: string;
  usdTvl: number;
  h24UsdVolume: number;
  tokens: {
    symbol: string;
    address: string;
    decimals: number;
    tvl: number;
    usdTvl: number;
    h24Volume: number;
    h24UsdVolume: number;
    priceUsd: number;
  }[];
  pairs: {
    base: string;
    quote: string;
    baseToQuotePrice: number;
    quoteToBasePrice: number;
    h24UsdVolume: number;
  }[];
};
```

* `chainId`: Aleno chain ID (`eth`, `solana`, `arb`, etc.).
* `address`: Pool contract address.
* `protocol`: DEX protocol ID (e.g., `uniswap_v2`, `raydium-clmm`).
* `usdTvl`: Total value locked in USD.
* `h24UsdVolume`: 24-hour volume in USD for the pool.
* `tokens`: Array of tokens in the pool, with liquidity and pricing details.
* `pairs`: Derived price ratios between token pairs.
