import { type PublicClient, type Address } from 'viem'; import { TransactionType } from '../constant'; export interface EVMTransactionHistoryItem { hash: string; timestamp: number | null; status: 'success' | 'failed' | 'pending'; fee: string; type: TransactionType; from: string; to: string | null; blockNumber: bigint; gasUsed: bigint; gasPrice: string; value: string; method?: string; tokenTransfers?: TokenTransfer[]; nftTransfers?: NFTTransfer[]; } export interface TokenTransfer { type: 'ERC20'; from: string; to: string; amount: string; tokenAddress: string; tokenSymbol?: string; tokenDecimals?: number; } export interface NFTTransfer { type: 'ERC721' | 'ERC1155'; from: string; to: string; tokenId: string; amount?: string; tokenAddress: string; collectionName?: string; } export interface TransactionHistoryOptions { startBlock?: bigint; endBlock?: bigint; includeTokenTransfers?: boolean; includeNFTTransfers?: boolean; } export declare function getEVMTransactionHistory(client: PublicClient, walletAddress: Address, options?: TransactionHistoryOptions): Promise; export declare function getEVMTransactionHistoryWithAPI(client: PublicClient, walletAddress: Address, apiEndpoint: string, apiKey: string, options?: TransactionHistoryOptions): Promise;