interface SwapInfo { inputMint: string; outputMint: string; inAmount: string; outAmount: string; ammKey: string; label: string; feeAmount: string; feeMint: string; } interface RoutePlan { swapInfo: SwapInfo; percent: number; } export interface SwapQuoteResponse { mode: string; swapMode: string; inputMint: string; outputMint: string; inAmount: string; outAmount: string; otherAmountThreshold: string; slippageBps: number; priceImpactPct: string; routePlan: RoutePlan[]; feeMint: string; feeBps: number; prioritizationFeeLamports: number; swapType: string; router: string; transaction: string | null; gasless: boolean; requestId: string; taker: string | null; inUsdValue: number; outUsdValue: number; priceImpact: number; swapUsdValue: number; totalTime: number; } interface ExecuteResponse { success: boolean; signature: string; slot: string; } interface HoldingsResponse { amount: string; uiAmount: number; uiAmountString: string; tokens: { [key: string]: { account: string; amount: string; uiAmount: number; }[]; }; } declare class UltraClient { getSwapQuote(inputMint: string, outputMint: string, amount: number, owner: string): Promise; swap(signedTransaction: string, requestId: string): Promise; getHoldings(owner: string): Promise; } declare const ultraClient: UltraClient; export default ultraClient;