omega/ui/src/models/pool.ts

32 lines
696 B
TypeScript

import { PublicKey } from "@solana/web3.js";
import { TokenAccount } from "./account";
export interface PoolInfo {
pubkeys: {
program: PublicKey;
account: PublicKey;
holdingAccounts: PublicKey[];
holdingMints: PublicKey[];
mint: PublicKey;
feeAccount?: PublicKey;
};
legacy: boolean;
raw: any;
}
export interface LiquidityComponent {
amount: number;
account?: TokenAccount;
mintAddress: string;
}
export interface PoolConfig {
curveType: 0 | 1;
tradeFeeNumerator: number;
tradeFeeDenominator: number;
ownerTradeFeeNumerator: number;
ownerTradeFeeDenominator: number;
ownerWithdrawFeeNumerator: number;
ownerWithdrawFeeDenominator: number;
}