import { GetExecutionStatusResponse, QuoteResponse } from "@defuse-protocol/one-click-sdk-typescript"; import { HotConnector } from "./HotConnector"; import { ReviewFee } from "./omni/bridge"; import { Recipient } from "./omni/recipient"; import { OmniWallet } from "./OmniWallet"; import { Token } from "./omni/token"; export declare class UnsupportedDexError extends Error { constructor(message: string); } export declare class ReadableDexError extends Error { constructor(message: string); } export type BridgeReview = { amountIn: bigint; amountOut: bigint; slippage: number; fee: ReviewFee | null; qoute: QuoteResponse["quote"] | "withdraw" | "deposit"; status: "pending" | "success" | "failed"; statusMessage: string | null; sender: OmniWallet | "qr"; recipient: Recipient; from: Token; to: Token; }; interface BridgeRequest { refund: OmniWallet; sender: OmniWallet | "qr"; type?: "exactIn" | "exactOut"; recipient: Recipient; slippage: number; amount: bigint; from: Token; to: Token; } export declare class Exchange { readonly wibe3: HotConnector; constructor(wibe3: HotConnector); getToken(chain: number, address: string): Promise; deposit(args: { sender: OmniWallet; token: Token; amount: bigint; recipient: Recipient; onMessage: (message: string) => void; }): Promise; withdraw(args: { sender: OmniWallet; token: Token; amount: bigint; recipient: Recipient; }): Promise; withdrawFee(request: BridgeRequest): Promise; reviewSwap(request: BridgeRequest): Promise; makeSwap(review: BridgeReview, pending: { log: (message: string) => void; }): Promise; waitBalance(to: Token, wallet: OmniWallet, beforeBalance: bigint, review: BridgeReview): Promise; getMessage(status: GetExecutionStatusResponse.status): string | null; checkStatus(review: BridgeReview): Promise; processing(review: BridgeReview, interval?: number): Promise; } export {};