(connection: Connection, baseMint: PublicKey, quoteMint: PublicKey)
| 84 | } |
| 85 | |
| 86 | static async fetchPoolKeyInfo(connection: Connection, baseMint: PublicKey, quoteMint: PublicKey) { |
| 87 | const marketId = await this.fetchMarketId(connection, baseMint, quoteMint, 'confirmed') |
| 88 | |
| 89 | // const marketInfo = await this.fetchMarketInfo(connection, marketId); |
| 90 | // const baseMintInfo = await connection.getParsedAccountInfo(baseMint, "confirmed") as MintInfo; |
| 91 | // const baseDecimals = baseMintInfo.value.data.parsed.info.decimals |
| 92 | |
| 93 | const V4PoolInfo = await this.generateV4PoolInfo(baseMint, quoteMint, marketId) |
| 94 | const lpMintInfo = await connection.getParsedAccountInfo(V4PoolInfo.poolInfo.lpMint, "confirmed") as MintInfo; |
| 95 | |
| 96 | return { |
| 97 | id: V4PoolInfo.poolInfo.id, |
| 98 | marketId: marketId, |
| 99 | baseMint: baseMint, |
| 100 | quoteMint: quoteMint, |
| 101 | baseVault: V4PoolInfo.poolInfo.baseVault, |
| 102 | quoteVault: V4PoolInfo.poolInfo.quoteVault, |
| 103 | lpMint: V4PoolInfo.poolInfo.lpMint, |
| 104 | // baseDecimals: baseDecimals, |
| 105 | quoteDecimals: this.SOL_DECIMALS, |
| 106 | lpDecimals: lpMintInfo.value.data.parsed.info.decimals, |
| 107 | version: 4, |
| 108 | programId: new PublicKey(this.RAYDIUM_POOL_V4_PROGRAM_ID), |
| 109 | authority: V4PoolInfo.poolInfo.authority, |
| 110 | openOrders: V4PoolInfo.poolInfo.openOrders, |
| 111 | targetOrders: V4PoolInfo.poolInfo.targetOrders, |
| 112 | withdrawQueue: new PublicKey("11111111111111111111111111111111"), |
| 113 | lpVault: new PublicKey("11111111111111111111111111111111"), |
| 114 | marketVersion: 3, |
| 115 | marketProgramId: new PublicKey(this.OPENBOOK_ADDRESS), |
| 116 | marketAuthority: Market.getAssociatedAuthority({ programId: new PublicKey(this.OPENBOOK_ADDRESS), marketId: marketId }).publicKey, |
| 117 | // marketBaseVault: marketInfo.baseVault, |
| 118 | // marketQuoteVault: marketInfo.quoteVault, |
| 119 | // marketBids: marketInfo.bids, |
| 120 | // marketAsks: marketInfo.asks, |
| 121 | // marketEventQueue: marketInfo.eventQueue, |
| 122 | lookupTableAccount: PublicKey.default |
| 123 | } |
| 124 | } |
| 125 | } |
| 126 | |
| 127 | interface MintInfo { |
no test coverage detected