import { type Address } from 'viem'; export interface TrackedWallet { address: Address; name: string; winRate: number; totalPnl: bigint; tradesFollowed: number; enabled: boolean; maxCopyAmount: bigint; copyPercentage: number; } export interface CopyTrade { originalWallet: Address; token: Address; action: 'buy' | 'sell'; originalAmount: bigint; copiedAmount: bigint; txHash?: string; timestamp: number; success: boolean; } declare const COPY_CONFIG: { enabled: boolean; maxCopyPerTrade: bigint; minOriginalAmount: bigint; defaultCopyPercentage: number; maxDailyCopyTrades: number; }; /** * Update copy trader config */ export declare function updateCopyConfig(updates: Partial): void; /** * Get copy trader config */ export declare function getCopyConfig(): typeof COPY_CONFIG; /** * Add a wallet to track and copy */ export declare function addTrackedWallet(address: Address, name: string, options?: Partial>): void; /** * Remove a tracked wallet */ export declare function removeTrackedWallet(address: Address): boolean; /** * Get all tracked wallets */ export declare function getTrackedWallets(): TrackedWallet[]; /** * Start watching tracked wallets for trades */ export declare function startCopyTrading(): Promise; /** * Stop copy trading */ export declare function stopCopyTrading(): void; /** * Get copy trade history */ export declare function getCopyTradeHistory(limit?: number): CopyTrade[]; /** * Get copy trading stats */ export declare function getCopyTradingStats(): { enabled: boolean; trackedWallets: number; totalCopied: number; successfulCopies: number; successRate: number; dailyRemaining: number; }; /** * Format wallet for display */ export declare function formatTrackedWallet(wallet: TrackedWallet): string; export {}; //# sourceMappingURL=copy-trader.d.ts.map