import { Algodv2, AtomicTransactionComposer, Indexer, TransactionSigner } from "algosdk"; import LimitOrderParams from "./LimitOrderParams"; export default class DeflexLimitOrderPlatformClient { algod: Algodv2; indexer: Indexer; chain: string; userAddress: string; userPrivateKey: string; signer: TransactionSigner; protocolVersion: number; constructor(algod: Algodv2, indexer: Indexer, chain: string, userAddress: string, userMnemonic: string, protocolVersion: number); static fetchMainnetClient(algod: Algodv2, indexer: Indexer, userAddress: string, userPrivateKey: string, protocolVersion: number): DeflexLimitOrderPlatformClient; static fetchTestnetClient(algod: Algodv2, indexer: Indexer, userAddress: string, userPrivateKey: string, protocolVersion: number): DeflexLimitOrderPlatformClient; static getMinimumEscrowBalance(): number; fetchFilledOrders(nextToken?: string): Promise<{ nextToken: any; orders: any; }>; prepareCreateLimitOrderApp(): Promise; prepareUserInitialize(limitOrderAppId: number): Promise; prepareCreateOrder(limitOrder: LimitOrderParams): Promise; prepareCancelOrder(limitOrder: LimitOrderParams): Promise; prepareOptOutAssets(limitOrderAppId: number, assetIds: number[]): Promise; prepareDeleteLimitOrderApp(limitOrderAppId: number): Promise; getLimitOrderAppIds(): Promise; }