UNPKG

@symmetry-hq/liquidity-sdk

Version:

Exchange functionality using symmetry funds liquidity

2,518 lines (2,517 loc) 132 kB
export type FundsIDL = { "version": "0.1.0", "name": "funds", "instructions": [ { "name": "createFund", "accounts": [ { "name": "manager", "isMut": true, "isSigner": true }, { "name": "tokenList", "isMut": false, "isSigner": false }, { "name": "fundState", "isMut": true, "isSigner": false }, { "name": "pdaAccount", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "fundToken", "isMut": true, "isSigner": true }, { "name": "createFeeSweeper", "isMut": true, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false } ], "args": [ { "name": "messageDigestFive", "type": { "array": [ "u8", 16 ] } }, { "name": "managerFee", "type": "u64" }, { "name": "hostPubkey", "type": "publicKey" }, { "name": "hostFee", "type": "u64" }, { "name": "activelyManaged", "type": "u64" }, { "name": "assetPool", "type": { "array": [ "u8", 256 ] } }, { "name": "refilterInterval", "type": "u64" }, { "name": "reweightInterval", "type": "u64" }, { "name": "rebalanceInterval", "type": "u64" }, { "name": "rebalanceThreshold", "type": "u64" }, { "name": "rebalanceSlippage", "type": "u64" }, { "name": "lpOffsetThreshold", "type": "u64" }, { "name": "rebalanceAndLp", "type": { "array": [ "u8", 2 ] } } ] }, { "name": "closeFund", "accounts": [ { "name": "manager", "isMut": true, "isSigner": true }, { "name": "fundToken", "isMut": true, "isSigner": false }, { "name": "fundState", "isMut": true, "isSigner": false }, { "name": "pdaAccount", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "setRules", "accounts": [ { "name": "manager", "isMut": true, "isSigner": true }, { "name": "fundState", "isMut": true, "isSigner": false } ], "args": [ { "name": "numOfRules", "type": "u64" }, { "name": "rulesData", "type": { "array": [ "u8", 512 ] } }, { "name": "ruleWeights", "type": { "array": [ "u64", 20 ] } }, { "name": "ruleExpos", "type": { "array": [ "i64", 20 ] } } ] }, { "name": "fundEdit", "accounts": [ { "name": "manager", "isMut": true, "isSigner": true }, { "name": "tokenList", "isMut": false, "isSigner": false }, { "name": "fundState", "isMut": true, "isSigner": false } ], "args": [ { "name": "messageDigestFive", "type": { "array": [ "u8", 16 ] } }, { "name": "managerFee", "type": "u64" }, { "name": "activelyManaged", "type": "u64" }, { "name": "assetPool", "type": { "array": [ "u8", 256 ] } }, { "name": "refilterInterval", "type": "u64" }, { "name": "reweightInterval", "type": "u64" }, { "name": "rebalanceInterval", "type": "u64" }, { "name": "rebalanceThreshold", "type": "u64" }, { "name": "rebalanceSlippage", "type": "u64" }, { "name": "lpOffsetThreshold", "type": "u64" }, { "name": "rebalanceAndLp", "type": { "array": [ "u8", 2 ] } } ] }, { "name": "swapFundTokens", "accounts": [ { "name": "buyer", "isMut": false, "isSigner": true }, { "name": "fundState", "isMut": true, "isSigner": false }, { "name": "pdaAccount", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "pdaFromTokenAccount", "isMut": true, "isSigner": false }, { "name": "buyerFromTokenAccount", "isMut": true, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "pdaToTokenAccount", "isMut": true, "isSigner": false }, { "name": "buyerToTokenAccount", "isMut": true, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "swapFeeAccount", "isMut": true, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "hostFeeAccount", "isMut": true, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "managerFeeAccount", "isMut": true, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "tokenInfo", "isMut": false, "isSigner": false }, { "name": "curveData", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "fromTokenId", "type": "u64" }, { "name": "toTokenId", "type": "u64" }, { "name": "fromAmount", "type": "u64" }, { "name": "minimumToAmount", "type": "u64" } ] }, { "name": "liquidityProvision", "accounts": [ { "name": "buyer", "isMut": false, "isSigner": true }, { "name": "fundState", "isMut": true, "isSigner": false }, { "name": "pdaAccount", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "pdaFromTokenAccount", "isMut": true, "isSigner": false }, { "name": "buyerFromTokenAccount", "isMut": true, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "pdaToTokenAccount", "isMut": true, "isSigner": false }, { "name": "buyerToTokenAccount", "isMut": true, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "swapFeeAccount", "isMut": true, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "hostFeeAccount", "isMut": true, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "managerFeeAccount", "isMut": true, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "tokenList", "isMut": false, "isSigner": false }, { "name": "curveData", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "fromTokenId", "type": "u64" }, { "name": "toTokenId", "type": "u64" }, { "name": "fromAmount", "type": "u64" }, { "name": "minimumToAmount", "type": "u64" } ] }, { "name": "buyFund", "accounts": [ { "name": "buyer", "isMut": true, "isSigner": true }, { "name": "fundState", "isMut": true, "isSigner": false }, { "name": "tokenList", "isMut": false, "isSigner": false }, { "name": "pdaAccount", "isMut": false, "isSigner": false }, { "name": "pdaUsdcAccount", "isMut": true, "isSigner": false }, { "name": "buyerUsdcAccount", "isMut": true, "isSigner": false }, { "name": "managerUsdcAccount", "isMut": true, "isSigner": false }, { "name": "smfFeeAccount", "isMut": true, "isSigner": false }, { "name": "hostUsdcAccount", "isMut": true, "isSigner": false }, { "name": "buyerFundTokenAccount", "isMut": true, "isSigner": false }, { "name": "buyState", "isMut": true, "isSigner": true }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "amount", "type": "u64" } ] }, { "name": "mintFund", "accounts": [ { "name": "signer", "isMut": true, "isSigner": true }, { "name": "buyer", "isMut": true, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "fundState", "isMut": true, "isSigner": false }, { "name": "tokenList", "isMut": false, "isSigner": false }, { "name": "buyState", "isMut": true, "isSigner": false }, { "name": "pdaAccount", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "buyerFundTokenAccount", "isMut": true, "isSigner": false }, { "name": "fundToken", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "instantMint", "accounts": [ { "name": "authority", "isMut": true, "isSigner": true }, { "name": "buyerFundTokenAccount", "isMut": true, "isSigner": false }, { "name": "fundToken", "isMut": true, "isSigner": false }, { "name": "fundState", "isMut": true, "isSigner": false }, { "name": "tokenList", "isMut": false, "isSigner": false }, { "name": "pdaAccount", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "amounts", "type": { "array": [ "u64", 20 ] } } ] }, { "name": "sellFund", "accounts": [ { "name": "seller", "isMut": true, "isSigner": true }, { "name": "fundState", "isMut": true, "isSigner": false }, { "name": "pdaAccount", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "newFundState", "isMut": true, "isSigner": false }, { "name": "sellerFundTokenAccount", "isMut": true, "isSigner": false }, { "name": "fundToken", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false } ], "args": [ { "name": "amount", "type": "u64" }, { "name": "rebalance", "type": "u64" } ] }, { "name": "claimToken", "accounts": [ { "name": "manager", "isMut": true, "isSigner": true }, { "name": "fundState", "isMut": true, "isSigner": false }, { "name": "tokenList", "isMut": false, "isSigner": false }, { "name": "sellerTokenAccount", "isMut": true, "isSigner": false }, { "name": "pdaTokenAccount", "isMut": true, "isSigner": false }, { "name": "pdaAccount", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "tokenId", "type": "u64" } ] }, { "name": "claimTokenFromBuyState", "accounts": [ { "name": "signer", "isMut": true, "isSigner": true }, { "name": "buyer", "isMut": true, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "fundState", "isMut": true, "isSigner": false }, { "name": "buyState", "isMut": true, "isSigner": false }, { "name": "tokenList", "isMut": false, "isSigner": false }, { "name": "buyerTokenAccount", "isMut": true, "isSigner": false }, { "name": "pdaTokenAccount", "isMut": true, "isSigner": false }, { "name": "pdaAccount", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "tokenId", "type": "u64" } ] }, { "name": "updateCurrentWeights", "accounts": [ { "name": "fundState", "isMut": true, "isSigner": false }, { "name": "tokenList", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "buyStateRebalance", "accounts": [ { "name": "fundState", "isMut": true, "isSigner": false }, { "name": "buyState", "isMut": true, "isSigner": false }, { "name": "tokenList", "isMut": false, "isSigner": false }, { "name": "oracleToken", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "oracleUsdc", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "pdaAccount", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "pdaTokenAccount", "isMut": true, "isSigner": false }, { "name": "pdaUsdcAccount", "isMut": true, "isSigner": false }, { "name": "rebalanceFeeAccount", "isMut": true, "isSigner": false }, { "name": "prismProgram", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "tokenId", "type": "u8" }, { "name": "instructionId", "type": { "array": [ "u8", 8 ] } }, { "name": "instructionSize", "type": "u8" }, { "name": "instructionData", "type": { "array": [ "u8", 28 ] } } ] }, { "name": "rebalanceToUsdc", "accounts": [ { "name": "signer", "isMut": true, "isSigner": true }, { "name": "fundState", "isMut": true, "isSigner": false }, { "name": "tokenList", "isMut": false, "isSigner": false }, { "name": "oracleToken", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "oracleUsdc", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "pdaAccount", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "pdaTokenAccount", "isMut": true, "isSigner": false }, { "name": "pdaUsdcAccount", "isMut": true, "isSigner": false }, { "name": "rebalanceFeeAccount", "isMut": true, "isSigner": false }, { "name": "prismProgram", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "tokenId", "type": "u8" }, { "name": "maxAmountToSell", "type": "u64" }, { "name": "instructionId", "type": { "array": [ "u8", 8 ] } }, { "name": "instructionSize", "type": "u8" }, { "name": "instructionData", "type": { "array": [ "u8", 28 ] } } ] }, { "name": "rebalanceFromUsdc", "accounts": [ { "name": "signer", "isMut": true, "isSigner": true }, { "name": "fundState", "isMut": true, "isSigner": false }, { "name": "tokenList", "isMut": false, "isSigner": false }, { "name": "oracleToken", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "oracleUsdc", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "pdaAccount", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "pdaTokenAccount", "isMut": true, "isSigner": false }, { "name": "pdaUsdcAccount", "isMut": true, "isSigner": false }, { "name": "rebalanceFeeAccount", "isMut": true, "isSigner": false }, { "name": "prismProgram", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "tokenId", "type": "u8" }, { "name": "maxAmountToSpend", "type": "u64" }, { "name": "instructionId", "type": { "array": [ "u8", 8 ] } }, { "name": "instructionSize", "type": "u8" }, { "name": "instructionData", "type": { "array": [ "u8", 28 ] } } ] }, { "name": "rebalanceBuyState", "accounts": [ { "name": "fundState", "isMut": true, "isSigner": false }, { "name": "buyState", "isMut": true, "isSigner": false }, { "name": "tokenList", "isMut": false, "isSigner": false }, { "name": "oracleToken", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "oracleUsdc", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "pdaAccount", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "pdaTokenAccount", "isMut": true, "isSigner": false }, { "name": "pdaUsdcAccount", "isMut": true, "isSigner": false }, { "name": "rebalanceFeeAccount", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "tokenId", "type": "u8" }, { "name": "instructionSize", "type": "u8" }, { "name": "instructionData", "type": { "array": [ "u8", 128 ] } } ] }, { "name": "rebalanceSell", "accounts": [ { "name": "signer", "isMut": true, "isSigner": true }, { "name": "fundState", "isMut": true, "isSigner": false }, { "name": "tokenList", "isMut": false, "isSigner": false }, { "name": "oracleToken", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "oracleUsdc", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "pdaAccount", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "pdaTokenAccount", "isMut": true, "isSigner": false }, { "name": "pdaUsdcAccount", "isMut": true, "isSigner": false }, { "name": "rebalanceFeeAccount", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "tokenId", "type": "u8" }, { "name": "maxAmountToSell", "type": "u64" }, { "name": "instructionSize", "type": "u8" }, { "name": "instructionData", "type": { "array": [ "u8", 128 ] } } ] }, { "name": "rebalanceBuy", "accounts": [ { "name": "signer", "isMut": true, "isSigner": true }, { "name": "fundState", "isMut": true, "isSigner": false }, { "name": "tokenList", "isMut": false, "isSigner": false }, { "name": "oracleToken", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "oracleUsdc", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "pdaAccount", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "pdaTokenAccount", "isMut": true, "isSigner": false }, { "name": "pdaUsdcAccount", "isMut": true, "isSigner": false }, { "name": "rebalanceFeeAccount", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "tokenId", "type": "u8" }, { "name": "maxAmountToSpend", "type": "u64" }, { "name": "instructionSize", "type": "u8" }, { "name": "instructionData", "type": { "array": [ "u8", 128 ] } } ] }, { "name": "reweight", "accounts": [ { "name": "signer", "isMut": true, "isSigner": true }, { "name": "fundState", "isMut": true, "isSigner": false }, { "name": "tokenStats", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "refilter", "accounts": [ { "name": "signer", "isMut": true, "isSigner": true }, { "name": "fundState", "isMut": true, "isSigner": false }, { "name": "tokenStats", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "updateTokenList", "accounts": [ { "name": "owner", "isMut": true, "isSigner": true }, { "name": "tokenList", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "index", "type": "u8" }, { "name": "tokenMint", "type": "publicKey" }, { "name": "decimals", "type": "u8" }, { "name": "coingeckoId", "type": { "array": [ "u8", 30 ] } }, { "name": "pdaTokenAccount", "type": "publicKey" }, { "name": "oracleType", "type": "u8" }, { "name": "oracleAccount", "type": "publicKey" }, { "name": "oracleIndex", "type": "u8" }, { "name": "oracleConfidencePct", "type": "u8" }, { "name": "fixedConfidenceBps", "type": "u8" }, { "name": "tokenSwapFeeBeforeTwBps", "type": "u8" }, { "name": "tokenSwapFeeAfterTwBps", "type": "u8" }, { "name": "isLive", "type": "u8" }, { "name": "lpOn", "type": "u8" }, { "name": "useCurveData", "type": "u8" } ] }, { "name": "modifyFeeStructure", "accounts": [ { "name": "owner", "isMut": true, "isSigner": true }, { "name": "tokenList", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "symmetryFee", "type": "u8" }, { "name": "hostFee", "type": "u8" }, { "name": "managerFee", "type": "u8" } ] }, { "name": "addToken", "accounts": [ { "name": "owner", "isMut": true, "isSigner": true }, { "name": "tokenInfo", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "tokenMint", "type": "publicKey" }, { "name": "pdaTokenAccount", "type": "publicKey" }, { "name": "coingeckoId", "type": { "array": [ "u8", 30 ] } }, { "name": "pyth", "type": "publicKey" }, { "name": "decimals", "type": "u8" }, { "name": "index", "type": "u8" } ] }, { "name": "updateDatabase", "accounts": [ { "name": "owner", "isMut": true, "isSigner": true }, { "name": "database", "isMut": true, "isSigner": false } ], "args": [ { "name": "tokenId", "type": "u64" }, { "name": "price", "type": "u64" }, { "name": "circulatingSupply", "type": "u64" }, { "name": "volume", "type": "u64" }, { "name": "timestamp", "type": "u64" } ] }, { "name": "clearDatabase", "accounts": [ { "name": "owner", "isMut": true, "isSigner": true }, { "name": "database", "isMut": true, "isSigner": false } ], "args": [ { "name": "tokenId", "type": "u64" } ] }, { "name": "updateTokenStats", "accounts": [ { "name": "owner", "isMut": true, "isSigner": true }, { "name": "tokenStats", "isMut": true, "isSigner": false }, { "name": "database", "isMut": false, "isSigner": false } ], "args": [ { "name": "startIndex", "type": "u8" }, { "name": "endIndex", "type": "u8" } ] }, { "name": "updateTokenStatsV2", "accounts": [ { "name": "owner", "isMut": true, "isSigner": true }, { "name": "tokenStats", "isMut": true, "isSigner": false }, { "name": "database", "isMut": false, "isSigner": false } ], "args": [ { "name": "token", "type": "u8" }, { "name": "data", "type": { "array": [ { "array": [ "u64", 3 ] }, 6 ] } } ] }, { "name": "updateCurveData", "accounts": [ { "name": "owner", "isMut": true, "isSigner": true }, { "name": "curveData", "isMut": true, "isSigner": false } ], "args": [ { "name": "startIndex", "type": "u8" }, { "name": "endIndex", "type": "u8" }, { "name": "priceData", "type": { "array": [ { "array": [ { "array": [ { "array": [ "u64", 2 ] }, 10 ] }, 2 ] }, 3 ] } } ] }, { "name": "initializeTokenList", "accounts": [ { "name": "owner", "isMut": true, "isSigner": true }, { "name": "tokenList", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "initializeDatabase", "accounts": [ { "name": "owner", "isMut": true, "isSigner": true }, { "name": "database", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "initializeTokenStats", "accounts": [ { "name": "owner", "isMut": true, "isSigner": true }, { "name": "tokenStats", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "initializeCurveData", "accounts": [ { "name": "owner", "isMut": true, "isSigner": true }, { "name": "curveData", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "closeDatabase", "accounts": [ { "name": "owner", "isMut": true, "isSigner": true }, { "name": "database", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "closeTokenStats", "accounts": [ { "name": "owner", "isMut": true, "isSigner": true }, { "name": "tokenStats", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "closeTokenInfo", "accounts": [ { "name": "owner", "isMut": true, "isSigner": true }, { "name": "tokenInfo", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "closeTokenList", "accounts": [ { "name": "owner", "isMut": true, "isSigner": true }, { "name": "tokenList", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "closeToken", "accounts": [ { "name": "owner", "isMut": true, "isSigner": true }, { "name": "pdaAccount", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "tokenAccount", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "closeOpenOrders", "accounts": [ { "name": "owner", "isMut": true, "isSigner": true }, { "name": "pdaAccount", "isMut": true, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "openOrders", "isMut": true, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "market", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "serumDex", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "serumSwapProgram", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "createFundTokenMintMetadata", "accounts": [ { "name": "manager", "isMut": true, "isSigner": true }, { "name": "fundToken", "isMut": false, "isSigner": false }, { "name": "fundState", "isMut": false, "isSigner": false }, { "name": "updateAuthority", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "metadataAccount", "isMut": true, "isSigner": false }, { "name": "metadataProgram", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false } ], "args": [ { "name": "params", "type": { "defined": "UpdateMetadataParams" } } ] }, { "name": "updateFundTokenMintMetadata", "accounts": [ { "name": "manager", "isMut": true, "isSigner": true }, { "name": "fundToken", "isMut": false, "isSigner": false }, { "name": "fundState", "isMut": false, "isSigner": false }, { "name": "updateAuthority", "isMut": false, "isSigner": false, "docs": [ "CHECK" ] }, { "name": "metadataAccount", "isMut": true, "isSigner": false }, { "name": "metadataProgram", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false } ], "args": [ { "name": "params", "type": { "defined": "UpdateMetadataParams" } } ] } ], "accounts": [ { "name": "fundState", "type": { "kind": "struct", "fields": [ { "name": "version", "type": "u64" }, { "name": "manager", "type": "publicKey" }, { "name": "fundToken", "type": "publicKey" }, { "name": "managerFee", "type": "u64" }, { "name": "supplyOutsanding", "type": "u64" }, { "name": "activelyManaged", "type": "u64" }, { "name": "activeBuyStates", "type": "u64" }, { "name": "sellState", "type": "u64" }, { "name": "rebalanceSellState", "type": "u64" }, { "name": "hostPubkey", "type": "publicKey" }, { "name": "hostFee", "type": "u64" }, { "name": "numOfTokens", "type": "u64" }, { "name": "currentCompToken", "type": { "array": [ "u64", 20 ] } }, { "name": "currentCompAmount", "type": { "array": [ "u64", 20 ] } }, { "name": "lastRebalanceTime", "type": { "array": [ "u64", 20 ] } }, { "name": "targetWeight", "type": { "array": [ "u64", 20 ] } }, { "name": "weightSum", "type": "u64" }, { "name": "currentWeight", "type": { "array": [ "u64", 20 ] } }, { "name": "fundWorth", "type": "u64" }, { "name": "lastUpdateTime", "type": "u64" }, { "name": "refilterInterval", "type": "u64" }, { "name": "reweightInterval", "type": "u64" }, { "name": "rebalanceInterval", "type": "u64" }, { "name": "rebalanceThreshold", "type": "u64" }, { "name": "rebalanceSlippage", "type": "u64" }, { "name": "lpOffsetThreshold", "type": "u64" }, { "name": "lastRefilterTime", "type": "u64" }, { "name": "lastReweightTime", "type": "u64" }, { "name": "rulesReady", "type": "u64" }, { "name": "assetPool", "type": { "array": [ "u64", 200 ] } }, { "name": "numOfRules", "type": "u64" }, { "name": "rules", "type": { "array": [ { "defined": "Rule" }, 20 ] } }, { "name": "numRuleTokens", "type": "u64" }, { "name": "ruleTokens", "type": { "array": [ "u64", 20 ] } }, { "name": "ruleTokenWeights", "type": { "array": [ "u64", 20 ] } }, { "name": "messageDigestFive", "type": { "array": [ "u8", 16 ] } }, { "name": "disableRebalance", "type": "u64" }, { "name": "disableLp", "type": "u64" }, { "name": "allowMultiAssetContribution", "type": "u8" }, { "name": "extraBytes", "type": { "array": [ "u8", 767 ] } } ] } }, { "name": "buyState", "type": { "kind": "struct", "fields": [ { "name": "fund", "type": "publicKey" }, { "name": "buyer", "type": "publicKey" }, { "name": "fundManager", "type": "publicKey" }, { "name": "hostPlatform", "type": "publicKey" }, { "name": "buyerFundTokenAccount", "type": "publicKey" }, { "name": "usdcContributed", "type": "u64" }, { "name": "usdcLeft", "type": "u64" }, { "name": "token", "type": { "array": [ "u64", 20 ] } }, { "name": "amountToSpend", "type": { "array": [ "u64", 20 ] } }, { "name": "amountBought", "type": { "array": [ "u64", 20 ] } }, { "name": "creationTimestamp", "type": "u64" }, { "name": "contributedValue",