nomadex-client
Version:
Client library to programmatically interact with https://voi.nomadex.app
40 lines • 1.92 kB
TypeScript
import { Transaction, type Algodv2, type TransactionSigner } from 'algosdk';
import { PoolClient } from './PoolClient';
import type { TransactionSignerAccount } from '@algorandfoundation/algokit-utils/types/account';
import { MySmartAsset } from './MySmartAsset';
import { contracts } from '../constants';
export declare enum TokenType {
ALGO = 0,
ASA = 1,
SMART = 2
}
type Token = {
id: number;
type: TokenType;
};
export declare class MyPool extends MySmartAsset {
id: number;
network: keyof typeof contracts;
poolClient: PoolClient;
signer: {
addr: string;
signer: TransactionSigner;
};
algod: Algodv2;
constructor(id: number, network: keyof typeof contracts, nodeClient: Algodv2, signer?: TransactionSignerAccount);
buildDepositTxn(token: {
id: number;
type: number;
}, amount: bigint): Promise<Transaction>;
makeOptinTxns(token: Token): Promise<Transaction[]>;
private addLiquidityHandler;
addLiquidity(tokenA: Token, tokenB: Token, assetAAmount: bigint, assetBAmount: bigint): Promise<boolean & import("@algorandfoundation/algokit-utils/types/app").ABIReturn>;
buildAddLiquidityTxns(tokenA: Token, tokenB: Token, assetAAmount: bigint, assetBAmount: bigint, populate: boolean): Promise<Transaction[]>;
private removeLiquidityHandler;
removeLiquidity(lptAmount: bigint): Promise<boolean & import("@algorandfoundation/algokit-utils/types/app").ABIReturn>;
buildRemoveLiquidityTxns(lptAmount: bigint, populate: boolean): Promise<Transaction[]>;
swap(fromToken: Token, toToken: Token, fromAmount: bigint, toAmountMin: bigint, isDirectionAlphaToBeta: boolean): Promise<bigint>;
buildSwapTxns(fromToken: Token, toToken: Token, fromAmount: bigint, toAmountMin: bigint, isDirectionAlphaToBeta: boolean, populate: boolean): Promise<Transaction[]>;
}
export {};
//# sourceMappingURL=MyPool.d.ts.map