UNPKG

@marinade.finance/kamino-sdk

Version:
2,314 lines 131 kB
{ "version": "0.1.0", "name": "yvaults", "instructions": [ { "name": "initializeStrategy", "accounts": [ { "name": "adminAuthority", "isMut": true, "isSigner": true }, { "name": "strategy", "isMut": true, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "pool", "isMut": false, "isSigner": false, "docs": [ "Program owner also checked." ] }, { "name": "tokenAMint", "isMut": false, "isSigner": false }, { "name": "tokenBMint", "isMut": false, "isSigner": false }, { "name": "tokenAVault", "isMut": true, "isSigner": false }, { "name": "tokenBVault", "isMut": true, "isSigner": false }, { "name": "baseVaultAuthority", "isMut": true, "isSigner": false }, { "name": "sharesMint", "isMut": true, "isSigner": false }, { "name": "sharesMintAuthority", "isMut": true, "isSigner": false }, { "name": "scopePriceId", "isMut": false, "isSigner": false }, { "name": "scopeProgramId", "isMut": false, "isSigner": false }, { "name": "tokenInfos", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "strategyType", "type": "u64" }, { "name": "tokenACollateralId", "type": "u64" }, { "name": "tokenBCollateralId", "type": "u64" } ] }, { "name": "initializeKaminoReward", "accounts": [ { "name": "adminAuthority", "isMut": true, "isSigner": true }, { "name": "strategy", "isMut": true, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "rewardMint", "isMut": false, "isSigner": false }, { "name": "rewardVault", "isMut": true, "isSigner": true }, { "name": "tokenInfos", "isMut": false, "isSigner": false }, { "name": "baseVaultAuthority", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "kaminoRewardIndex", "type": "u64" }, { "name": "collateralToken", "type": "u64" } ] }, { "name": "addKaminoRewards", "accounts": [ { "name": "adminAuthority", "isMut": true, "isSigner": true }, { "name": "strategy", "isMut": true, "isSigner": false }, { "name": "rewardMint", "isMut": false, "isSigner": false }, { "name": "rewardVault", "isMut": true, "isSigner": false }, { "name": "baseVaultAuthority", "isMut": true, "isSigner": false }, { "name": "rewardAta", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "kaminoRewardIndex", "type": "u64" }, { "name": "amount", "type": "u64" } ] }, { "name": "initializeGlobalConfig", "accounts": [ { "name": "adminAuthority", "isMut": true, "isSigner": true }, { "name": "globalConfig", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "initializeCollateralInfo", "accounts": [ { "name": "adminAuthority", "isMut": true, "isSigner": true }, { "name": "globalConfig", "isMut": true, "isSigner": false }, { "name": "collInfo", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "updateCollateralInfo", "accounts": [ { "name": "adminAuthority", "isMut": true, "isSigner": true }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "tokenInfos", "isMut": true, "isSigner": false } ], "args": [ { "name": "index", "type": "u64" }, { "name": "mode", "type": "u64" }, { "name": "value", "type": { "array": [ "u8", 32 ] } } ] }, { "name": "initializeSharesMetadata", "accounts": [ { "name": "adminAuthority", "isMut": true, "isSigner": true }, { "name": "strategy", "isMut": false, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "sharesMint", "isMut": false, "isSigner": false }, { "name": "sharesMetadata", "isMut": true, "isSigner": false }, { "name": "sharesMintAuthority", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "metadataProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "name", "type": "string" }, { "name": "symbol", "type": "string" }, { "name": "uri", "type": "string" } ] }, { "name": "updateSharesMetadata", "accounts": [ { "name": "adminAuthority", "isMut": true, "isSigner": true }, { "name": "strategy", "isMut": false, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "sharesMint", "isMut": false, "isSigner": false }, { "name": "sharesMetadata", "isMut": true, "isSigner": false }, { "name": "sharesMintAuthority", "isMut": false, "isSigner": false }, { "name": "metadataProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "name", "type": "string" }, { "name": "symbol", "type": "string" }, { "name": "uri", "type": "string" } ] }, { "name": "updateGlobalConfig", "accounts": [ { "name": "adminAuthority", "isMut": false, "isSigner": true }, { "name": "globalConfig", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "key", "type": "u16" }, { "name": "index", "type": "u16" }, { "name": "value", "type": { "array": [ "u8", 32 ] } } ] }, { "name": "updateTreasuryFeeVault", "accounts": [ { "name": "signer", "isMut": true, "isSigner": true }, { "name": "globalConfig", "isMut": true, "isSigner": false }, { "name": "feeMint", "isMut": false, "isSigner": false }, { "name": "treasuryFeeVault", "isMut": true, "isSigner": false }, { "name": "treasuryFeeVaultAuthority", "isMut": false, "isSigner": false }, { "name": "tokenInfos", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "collateralId", "type": "u16" } ] }, { "name": "updateStrategyConfig", "accounts": [ { "name": "adminAuthority", "isMut": false, "isSigner": true }, { "name": "newAccount", "isMut": false, "isSigner": false }, { "name": "strategy", "isMut": true, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "mode", "type": "u16" }, { "name": "value", "type": { "array": [ "u8", 128 ] } } ] }, { "name": "updateRewardMapping", "accounts": [ { "name": "payer", "isMut": true, "isSigner": true }, { "name": "strategy", "isMut": true, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "pool", "isMut": false, "isSigner": false }, { "name": "rewardMint", "isMut": false, "isSigner": false }, { "name": "rewardVault", "isMut": true, "isSigner": true }, { "name": "baseVaultAuthority", "isMut": true, "isSigner": false }, { "name": "tokenInfos", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "rewardIndex", "type": "u8" }, { "name": "collateralToken", "type": "u8" } ] }, { "name": "openLiquidityPosition", "accounts": [ { "name": "adminAuthority", "isMut": true, "isSigner": true }, { "name": "strategy", "isMut": true, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "pool", "isMut": true, "isSigner": false }, { "name": "tickArrayLower", "isMut": true, "isSigner": false }, { "name": "tickArrayUpper", "isMut": true, "isSigner": false }, { "name": "baseVaultAuthority", "isMut": true, "isSigner": false }, { "name": "position", "isMut": true, "isSigner": false }, { "name": "positionMint", "isMut": true, "isSigner": true }, { "name": "positionMetadataAccount", "isMut": true, "isSigner": false }, { "name": "positionTokenAccount", "isMut": true, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "system", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "associatedTokenProgram", "isMut": false, "isSigner": false }, { "name": "poolProgram", "isMut": false, "isSigner": false }, { "name": "oldTickArrayLowerOrBaseVaultAuthority", "isMut": true, "isSigner": false }, { "name": "oldTickArrayUpperOrBaseVaultAuthority", "isMut": true, "isSigner": false }, { "name": "oldPositionOrBaseVaultAuthority", "isMut": true, "isSigner": false }, { "name": "oldPositionMintOrBaseVaultAuthority", "isMut": true, "isSigner": false }, { "name": "oldPositionTokenAccountOrBaseVaultAuthority", "isMut": true, "isSigner": false }, { "name": "tokenAVault", "isMut": true, "isSigner": false }, { "name": "tokenBVault", "isMut": true, "isSigner": false }, { "name": "poolTokenVaultA", "isMut": true, "isSigner": false }, { "name": "poolTokenVaultB", "isMut": true, "isSigner": false }, { "name": "scopePrices", "isMut": false, "isSigner": false }, { "name": "tokenInfos", "isMut": false, "isSigner": false } ], "args": [ { "name": "tickLowerIndex", "type": "i64" }, { "name": "tickUpperIndex", "type": "i64" }, { "name": "bump", "type": "u8" } ] }, { "name": "closeStrategy", "accounts": [ { "name": "adminAuthority", "isMut": true, "isSigner": true }, { "name": "strategy", "isMut": true, "isSigner": false }, { "name": "oldPositionOrBaseVaultAuthority", "isMut": true, "isSigner": false }, { "name": "oldPositionMintOrBaseVaultAuthority", "isMut": true, "isSigner": false }, { "name": "oldPositionTokenAccountOrBaseVaultAuthority", "isMut": true, "isSigner": false }, { "name": "tokenAVault", "isMut": true, "isSigner": false }, { "name": "tokenBVault", "isMut": true, "isSigner": false }, { "name": "userTokenAAta", "isMut": true, "isSigner": false }, { "name": "userTokenBAta", "isMut": true, "isSigner": false }, { "name": "reward0Vault", "isMut": true, "isSigner": false, "docs": [ "If rewards are uninitialized, pass this as strategy." ] }, { "name": "reward1Vault", "isMut": true, "isSigner": false, "docs": [ "If rewards are uninitialized, pass this as strategy." ] }, { "name": "reward2Vault", "isMut": true, "isSigner": false, "docs": [ "If rewards are uninitialized, pass this as strategy." ] }, { "name": "kaminoReward0Vault", "isMut": true, "isSigner": false, "docs": [ "If rewards are uninitialized, pass this as strategy." ] }, { "name": "kaminoReward1Vault", "isMut": true, "isSigner": false, "docs": [ "If rewards are uninitialized, pass this as strategy." ] }, { "name": "kaminoReward2Vault", "isMut": true, "isSigner": false, "docs": [ "If rewards are uninitialized, pass this as strategy." ] }, { "name": "userReward0Ata", "isMut": true, "isSigner": false, "docs": [ "If rewards are uninitialized, pass this as strategy." ] }, { "name": "userReward1Ata", "isMut": true, "isSigner": false, "docs": [ "If rewards are uninitialized, pass this as strategy." ] }, { "name": "userReward2Ata", "isMut": true, "isSigner": false, "docs": [ "If rewards are uninitialized, pass this as strategy." ] }, { "name": "userKaminoReward0Ata", "isMut": true, "isSigner": false, "docs": [ "If rewards are uninitialized, pass this as strategy." ] }, { "name": "userKaminoReward1Ata", "isMut": true, "isSigner": false, "docs": [ "If rewards are uninitialized, pass this as strategy." ] }, { "name": "userKaminoReward2Ata", "isMut": true, "isSigner": false, "docs": [ "If rewards are uninitialized, pass this as strategy." ] }, { "name": "baseVaultAuthority", "isMut": true, "isSigner": false }, { "name": "poolProgram", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "system", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "deposit", "accounts": [ { "name": "user", "isMut": true, "isSigner": true }, { "name": "strategy", "isMut": true, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "pool", "isMut": false, "isSigner": false }, { "name": "position", "isMut": false, "isSigner": false }, { "name": "tokenAVault", "isMut": true, "isSigner": false }, { "name": "tokenBVault", "isMut": true, "isSigner": false }, { "name": "baseVaultAuthority", "isMut": false, "isSigner": false }, { "name": "tokenAAta", "isMut": true, "isSigner": false }, { "name": "tokenBAta", "isMut": true, "isSigner": false }, { "name": "tokenAMint", "isMut": false, "isSigner": false }, { "name": "tokenBMint", "isMut": false, "isSigner": false }, { "name": "userSharesAta", "isMut": true, "isSigner": false }, { "name": "sharesMint", "isMut": true, "isSigner": false }, { "name": "sharesMintAuthority", "isMut": false, "isSigner": false }, { "name": "scopePrices", "isMut": false, "isSigner": false }, { "name": "tokenInfos", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "instructionSysvarAccount", "isMut": false, "isSigner": false } ], "args": [ { "name": "tokenMaxA", "type": "u64" }, { "name": "tokenMaxB", "type": "u64" } ] }, { "name": "invest", "accounts": [ { "name": "payer", "isMut": true, "isSigner": true }, { "name": "strategy", "isMut": true, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "tokenAVault", "isMut": true, "isSigner": false }, { "name": "tokenBVault", "isMut": true, "isSigner": false }, { "name": "baseVaultAuthority", "isMut": true, "isSigner": false }, { "name": "pool", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "position", "isMut": true, "isSigner": false }, { "name": "raydiumProtocolPositionOrBaseVaultAuthority", "isMut": true, "isSigner": false }, { "name": "positionTokenAccount", "isMut": true, "isSigner": false }, { "name": "poolTokenVaultA", "isMut": true, "isSigner": false }, { "name": "poolTokenVaultB", "isMut": true, "isSigner": false }, { "name": "tickArrayLower", "isMut": true, "isSigner": false }, { "name": "tickArrayUpper", "isMut": true, "isSigner": false }, { "name": "scopePrices", "isMut": false, "isSigner": false }, { "name": "tokenInfos", "isMut": false, "isSigner": false }, { "name": "poolProgram", "isMut": false, "isSigner": false }, { "name": "instructionSysvarAccount", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "depositAndInvest", "accounts": [ { "name": "user", "isMut": true, "isSigner": true }, { "name": "strategy", "isMut": true, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "pool", "isMut": true, "isSigner": false, "docs": [ "check that the pool is owned either by orca or by raydium" ] }, { "name": "position", "isMut": true, "isSigner": false }, { "name": "raydiumProtocolPositionOrBaseVaultAuthority", "isMut": true, "isSigner": false }, { "name": "positionTokenAccount", "isMut": true, "isSigner": false }, { "name": "tokenAVault", "isMut": true, "isSigner": false }, { "name": "tokenBVault", "isMut": true, "isSigner": false }, { "name": "poolTokenVaultA", "isMut": true, "isSigner": false }, { "name": "poolTokenVaultB", "isMut": true, "isSigner": false }, { "name": "tickArrayLower", "isMut": true, "isSigner": false }, { "name": "tickArrayUpper", "isMut": true, "isSigner": false }, { "name": "baseVaultAuthority", "isMut": true, "isSigner": false }, { "name": "tokenAAta", "isMut": true, "isSigner": false }, { "name": "tokenBAta", "isMut": true, "isSigner": false }, { "name": "tokenAMint", "isMut": true, "isSigner": false }, { "name": "tokenBMint", "isMut": true, "isSigner": false }, { "name": "userSharesAta", "isMut": true, "isSigner": false }, { "name": "sharesMint", "isMut": true, "isSigner": false }, { "name": "sharesMintAuthority", "isMut": false, "isSigner": false }, { "name": "scopePrices", "isMut": false, "isSigner": false }, { "name": "tokenInfos", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "poolProgram", "isMut": false, "isSigner": false }, { "name": "instructionSysvarAccount", "isMut": false, "isSigner": false } ], "args": [ { "name": "tokenMaxA", "type": "u64" }, { "name": "tokenMaxB", "type": "u64" } ] }, { "name": "withdraw", "accounts": [ { "name": "user", "isMut": true, "isSigner": true }, { "name": "strategy", "isMut": true, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "pool", "isMut": true, "isSigner": false }, { "name": "position", "isMut": true, "isSigner": false }, { "name": "raydiumProtocolPositionOrBaseVaultAuthority", "isMut": true, "isSigner": false }, { "name": "tickArrayLower", "isMut": true, "isSigner": false }, { "name": "tickArrayUpper", "isMut": true, "isSigner": false }, { "name": "tokenAVault", "isMut": true, "isSigner": false }, { "name": "tokenBVault", "isMut": true, "isSigner": false }, { "name": "baseVaultAuthority", "isMut": false, "isSigner": false }, { "name": "poolTokenVaultA", "isMut": true, "isSigner": false }, { "name": "poolTokenVaultB", "isMut": true, "isSigner": false }, { "name": "tokenAAta", "isMut": true, "isSigner": false }, { "name": "tokenBAta", "isMut": true, "isSigner": false }, { "name": "userSharesAta", "isMut": true, "isSigner": false }, { "name": "sharesMint", "isMut": true, "isSigner": false }, { "name": "treasuryFeeTokenAVault", "isMut": true, "isSigner": false }, { "name": "treasuryFeeTokenBVault", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "positionTokenAccount", "isMut": true, "isSigner": false }, { "name": "poolProgram", "isMut": false, "isSigner": false }, { "name": "instructionSysvarAccount", "isMut": false, "isSigner": false } ], "args": [ { "name": "sharesAmount", "type": "u64" } ] }, { "name": "executiveWithdraw", "accounts": [ { "name": "adminAuthority", "isMut": true, "isSigner": true }, { "name": "strategy", "isMut": true, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "pool", "isMut": true, "isSigner": false }, { "name": "position", "isMut": true, "isSigner": false }, { "name": "raydiumProtocolPositionOrBaseVaultAuthority", "isMut": true, "isSigner": false }, { "name": "positionTokenAccount", "isMut": false, "isSigner": false }, { "name": "tickArrayLower", "isMut": true, "isSigner": false }, { "name": "tickArrayUpper", "isMut": true, "isSigner": false }, { "name": "tokenAVault", "isMut": true, "isSigner": false }, { "name": "tokenBVault", "isMut": true, "isSigner": false }, { "name": "baseVaultAuthority", "isMut": false, "isSigner": false }, { "name": "poolTokenVaultA", "isMut": true, "isSigner": false }, { "name": "poolTokenVaultB", "isMut": true, "isSigner": false }, { "name": "tokenAMint", "isMut": true, "isSigner": false }, { "name": "tokenBMint", "isMut": true, "isSigner": false }, { "name": "scopePrices", "isMut": false, "isSigner": false }, { "name": "tokenInfos", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "poolProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "action", "type": "u8" } ] }, { "name": "collectFeesAndRewards", "accounts": [ { "name": "user", "isMut": true, "isSigner": true }, { "name": "strategy", "isMut": true, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "baseVaultAuthority", "isMut": true, "isSigner": false }, { "name": "pool", "isMut": true, "isSigner": false }, { "name": "tickArrayLower", "isMut": true, "isSigner": false }, { "name": "tickArrayUpper", "isMut": true, "isSigner": false }, { "name": "position", "isMut": true, "isSigner": false }, { "name": "raydiumProtocolPositionOrBaseVaultAuthority", "isMut": true, "isSigner": false }, { "name": "positionTokenAccount", "isMut": false, "isSigner": false }, { "name": "tokenAVault", "isMut": true, "isSigner": false }, { "name": "poolTokenVaultA", "isMut": true, "isSigner": false }, { "name": "tokenBVault", "isMut": true, "isSigner": false }, { "name": "poolTokenVaultB", "isMut": true, "isSigner": false }, { "name": "treasuryFeeTokenAVault", "isMut": true, "isSigner": false }, { "name": "treasuryFeeTokenBVault", "isMut": true, "isSigner": false }, { "name": "treasuryFeeVaultAuthority", "isMut": false, "isSigner": false }, { "name": "reward0Vault", "isMut": true, "isSigner": false, "docs": [ "If rewards are uninitialized, pass this as strategy." ] }, { "name": "reward1Vault", "isMut": true, "isSigner": false, "docs": [ "If rewards are uninitialized, pass this as strategy." ] }, { "name": "reward2Vault", "isMut": true, "isSigner": false, "docs": [ "If rewards are uninitialized, pass this as strategy." ] }, { "name": "poolRewardVault0", "isMut": true, "isSigner": false, "docs": [ "If rewards are uninitialized, pass this as strategy." ] }, { "name": "poolRewardVault1", "isMut": true, "isSigner": false, "docs": [ "If rewards are uninitialized, pass this as strategy." ] }, { "name": "poolRewardVault2", "isMut": true, "isSigner": false, "docs": [ "If rewards are uninitialized, pass this as strategy." ] }, { "name": "tokenAMint", "isMut": false, "isSigner": false }, { "name": "tokenBMint", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "poolProgram", "isMut": false, "isSigner": false }, { "name": "instructionSysvarAccount", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "swapRewards", "accounts": [ { "name": "user", "isMut": true, "isSigner": true }, { "name": "strategy", "isMut": true, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "pool", "isMut": false, "isSigner": false }, { "name": "tokenAVault", "isMut": true, "isSigner": false }, { "name": "tokenBVault", "isMut": true, "isSigner": false }, { "name": "rewardVault", "isMut": true, "isSigner": false }, { "name": "baseVaultAuthority", "isMut": true, "isSigner": false }, { "name": "treasuryFeeTokenAVault", "isMut": true, "isSigner": false }, { "name": "treasuryFeeTokenBVault", "isMut": true, "isSigner": false }, { "name": "treasuryFeeVaultAuthority", "isMut": false, "isSigner": false }, { "name": "tokenAMint", "isMut": false, "isSigner": false }, { "name": "tokenBMint", "isMut": false, "isSigner": false }, { "name": "userTokenAAta", "isMut": true, "isSigner": false }, { "name": "userTokenBAta", "isMut": true, "isSigner": false }, { "name": "userRewardTokenAccount", "isMut": true, "isSigner": false }, { "name": "scopePrices", "isMut": false, "isSigner": false }, { "name": "tokenInfos", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "instructionSysvarAccount", "isMut": false, "isSigner": false } ], "args": [ { "name": "tokenAIn", "type": "u64" }, { "name": "tokenBIn", "type": "u64" }, { "name": "rewardIndex", "type": "u64" }, { "name": "rewardCollateralId", "type": "u64" }, { "name": "minCollateralTokenOut", "type": "u64" } ] }, { "name": "swapUnevenVaults", "accounts": [ { "name": "actionsAuthority", "isMut": true, "isSigner": true }, { "name": "strategy", "isMut": true, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "tokenAVault", "isMut": true, "isSigner": false }, { "name": "tokenBVault", "isMut": true, "isSigner": false }, { "name": "baseVaultAuthority", "isMut": true, "isSigner": false }, { "name": "pool", "isMut": true, "isSigner": false }, { "name": "position", "isMut": true, "isSigner": false }, { "name": "raydiumPoolConfigOrBaseVaultAuthority", "isMut": false, "isSigner": false }, { "name": "poolTokenVaultA", "isMut": true, "isSigner": false }, { "name": "poolTokenVaultB", "isMut": true, "isSigner": false }, { "name": "tickArray0", "isMut": true, "isSigner": false, "docs": [ "Payer must send this correctly." ] }, { "name": "tickArray1", "isMut": true, "isSigner": false, "docs": [ "Payer must send this correctly." ] }, { "name": "tickArray2", "isMut": true, "isSigner": false, "docs": [ "Payer must send this correctly." ] }, { "name": "oracle", "isMut": false, "isSigner": false }, { "name": "poolProgram", "isMut": false, "isSigner": false }, { "name": "scopePrices", "isMut": false, "isSigner": false }, { "name": "tokenInfos", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "targetLimitBps", "type": "u64" } ] }, { "name": "checkExpectedVaultsBalances", "accounts": [ { "name": "user", "isMut": true, "isSigner": true }, { "name": "tokenAAta", "isMut": false, "isSigner": false }, { "name": "tokenBAta", "isMut": false, "isSigner": false } ], "args": [ { "name": "tokenAAtaBalance", "type": "u64" }, { "name": "tokenBAtaBalance", "type": "u64" } ] }, { "name": "singleTokenDepositAndInvestWithMin", "accounts": [ { "name": "user", "isMut": true, "isSigner": true }, { "name": "strategy", "isMut": true, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "pool", "isMut": true, "isSigner": false, "docs": [ "check that the pool is owned either by orca or by raydium" ] }, { "name": "position", "isMut": true, "isSigner": false }, { "name": "raydiumProtocolPositionOrBaseVaultAuthority", "isMut": true, "isSigner": false }, { "name": "positionTokenAccount", "isMut": true, "isSigner": false }, { "name": "tokenAVault", "isMut": true, "isSigner": false }, { "name": "tokenBVault", "isMut": true, "isSigner": false }, { "name": "poolTokenVaultA", "isMut": true, "isSigner": false }, { "name": "poolTokenVaultB", "isMut": true, "isSigner": false }, { "name": "tickArrayLower", "isMut": true, "isSigner": false }, { "name": "tickArrayUpper", "isMut": true, "isSigner": false }, { "name": "baseVaultAuthority", "isMut": true, "isSigner": false }, { "name": "tokenAAta", "isMut": true, "isSigner": false }, { "name": "tokenBAta", "isMut": true, "isSigner": false }, { "name": "tokenAMint", "isMut": true, "isSigner": false }, { "name": "tokenBMint", "isMut": true, "isSigner": false }, { "name": "userSharesAta", "isMut": true, "isSigner": false }, { "name": "sharesMint", "isMut": true, "isSigner": false }, { "name": "sharesMintAuthority", "isMut": false, "isSigner": false }, { "name": "scopePrices", "isMut": false, "isSigner": false }, { "name": "tokenInfos", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "poolProgram", "isMut": false, "isSigner": false }, { "name": "instructionSysvarAccount", "isMut": false, "isSigner": false } ], "args": [ { "name": "tokenAMinPostDepositBalance", "type": "u64" }, { "name": "tokenBMinPostDepositBalance", "type": "u64" } ] }, { "name": "singleTokenDepositWithMin", "accounts": [ { "name": "user", "isMut": true, "isSigner": true }, { "name": "strategy", "isMut": true, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "pool", "isMut": false, "isSigner": false }, { "name": "position", "isMut": false, "isSigner": false }, { "name": "tokenAVault", "isMut": true, "isSigner": false }, { "name": "tokenBVault", "isMut": true, "isSigner": false }, { "name": "baseVaultAuthority", "isMut": false, "isSigner": false }, { "name": "tokenAAta", "isMut": true, "isSigner": false }, { "name": "tokenBAta", "isMut": true, "isSigner": false }, { "name": "tokenAMint", "isMut": false, "isSigner": false }, { "name": "tokenBMint", "isMut": false, "isSigner": false }, { "name": "userSharesAta", "isMut": true, "isSigner": false }, { "name": "sharesMint", "isMut": true, "isSigner": false }, { "name": "sharesMintAuthority", "isMut": false, "isSigner": false }, { "name": "scopePrices", "isMut": false, "isSigner": false }, { "name": "tokenInfos", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "instructionSysvarAccount", "isMut": false, "isSigner": false } ], "args": [ { "name": "tokenAMinPostDepositBalance", "type": "u64" }, { "name": "tokenBMinPostDepositBalance", "type": "u64" } ] }, { "name": "flashSwapUnevenVaultsStart", "docs": [ "Start of a Flash swap uneven vaults.", "", "This needs to be the first instruction of the transaction or preceded only by a", "ComputeBudget.", "", "This ix has to be paired with a `flash_swap_uneven_vaults_end` (`FlashSwapUnevenVaultsEnd`)", "as the last instruction of the transaction. No other instruction targeted the program is", "allowed.", "The instructions between the start and end instructions are expected to perform the swap." ], "accounts": [ { "name": "swapper", "isMut": true, "isSigner": true }, { "name": "strategy", "isMut": true, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "tokenAVault", "isMut": true, "isSigner": false }, { "name": "tokenBVault", "isMut": true, "isSigner": false }, { "name": "tokenAAta", "isMut": true, "isSigner": false }, { "name": "tokenBAta", "isMut": true, "isSigner": false }, { "name": "baseVaultAuthority", "isMut": true, "isSigner": false }, { "name": "pool", "isMut": true, "isSigner":