// price.types.ts export interface TokenPrice { tokenAddress: string; price: number; priceChange24h?: number; marketCap?: number; volume24h?: number; timestamp: number; } export interface EvmPriceResponse { chainId: number; vm: 'EVM'; prices: TokenPrice[]; } export interface SvmPriceResponse { chainId: number; vm: 'SVM'; prices: (TokenPrice & { symbol?: string; name?: string })[]; } export type PriceResponse = EvmPriceResponse | SvmPriceResponse; export interface PriceApiError { code: number; message: string; stack: string; errors: any[]; } export type VmType = 'EVM' | 'SVM'; export interface PriceFetchingConfig { vm: VmType; chainId: number; tokenAddresses: string[]; } export interface PriceFetchingResult { data?: PriceResponse; error?: PriceApiError; }