import type { ClientWithCoreApi } from "@mysten/sui/client"; 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"; /** * Sui-specific configuration for balance tracker */ export type SuiBalanceTrackerConfig = { /** Sui client instance (JSON-RPC or gRPC) */ client: ClientWithCoreApi; } & BaseBalanceTrackerConfig; /** * Sui-specific implementation of the balance tracker */ export declare class SuiBalanceTracker extends BaseBalanceTracker { private client; constructor(config: SuiBalanceTrackerConfig); /** * Sui-specific implementation of balance update */ protected updateBalance(): Promise; } /** * Parameters for creating a Sui balance tracker */ export type CreateSuiBalanceTrackerParams = { client: ClientWithCoreApi; address: string; network: string; updateInterval: DurationInSeconds; metrics: PricePusherMetrics; logger: Logger; }; /** * Factory function to create a balance tracker for Sui chain */ export declare function createSuiBalanceTracker(params: CreateSuiBalanceTrackerParams): IBalanceTracker;