import type { Logger } from "pino"; import type { BaseBalanceTrackerConfig, IBalanceTracker } from "../interface.js"; import { BaseBalanceTracker } from "../interface.js"; import type { PricePusherMetrics } from "../metrics.js"; import type { DurationInSeconds } from "../utils.js"; import type { SuperWalletClient } from "./super-wallet.js"; /** * EVM-specific configuration for balance tracker */ export type EvmBalanceTrackerConfig = { /** EVM wallet client */ client: SuperWalletClient; /** EVM address with 0x prefix */ address: `0x${string}`; } & BaseBalanceTrackerConfig; /** * EVM-specific implementation of the balance tracker */ export declare class EvmBalanceTracker extends BaseBalanceTracker { private client; private evmAddress; constructor(config: EvmBalanceTrackerConfig); /** * EVM-specific implementation of balance update */ protected updateBalance(): Promise; } /** * Parameters for creating an EVM balance tracker */ export type CreateEvmBalanceTrackerParams = { client: SuperWalletClient; address: `0x${string}`; network: string; updateInterval: DurationInSeconds; metrics: PricePusherMetrics; logger: Logger; }; /** * Factory function to create a balance tracker for EVM chains */ export declare function createEvmBalanceTracker(params: CreateEvmBalanceTrackerParams): IBalanceTracker;