@kamino-finance/klend-sdk
Version:
Typescript SDK for interacting with the Kamino Lending (klend) protocol
2,174 lines • 154 kB
JSON
{
"version": "1.11.0",
"name": "kamino_lending",
"instructions": [
{
"name": "initLendingMarket",
"accounts": [
{
"name": "lendingMarketOwner",
"isMut": true,
"isSigner": true
},
{
"name": "lendingMarket",
"isMut": true,
"isSigner": false
},
{
"name": "lendingMarketAuthority",
"isMut": false,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
},
{
"name": "rent",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "quoteCurrency",
"type": {
"array": [
"u8",
32
]
}
}
]
},
{
"name": "updateLendingMarket",
"accounts": [
{
"name": "lendingMarketOwner",
"isMut": false,
"isSigner": true
},
{
"name": "lendingMarket",
"isMut": true,
"isSigner": false
}
],
"args": [
{
"name": "mode",
"type": "u64"
},
{
"name": "value",
"type": {
"array": [
"u8",
72
]
}
}
]
},
{
"name": "updateLendingMarketOwner",
"accounts": [
{
"name": "lendingMarketOwnerCached",
"isMut": false,
"isSigner": true
},
{
"name": "lendingMarket",
"isMut": true,
"isSigner": false
}
],
"args": []
},
{
"name": "initReserve",
"accounts": [
{
"name": "lendingMarketOwner",
"isMut": true,
"isSigner": true
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "lendingMarketAuthority",
"isMut": false,
"isSigner": false
},
{
"name": "reserve",
"isMut": true,
"isSigner": false
},
{
"name": "reserveLiquidityMint",
"isMut": false,
"isSigner": false
},
{
"name": "reserveLiquiditySupply",
"isMut": true,
"isSigner": false
},
{
"name": "feeReceiver",
"isMut": true,
"isSigner": false
},
{
"name": "reserveCollateralMint",
"isMut": true,
"isSigner": false
},
{
"name": "reserveCollateralSupply",
"isMut": true,
"isSigner": false
},
{
"name": "initialLiquiditySource",
"isMut": true,
"isSigner": false
},
{
"name": "rent",
"isMut": false,
"isSigner": false
},
{
"name": "liquidityTokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "collateralTokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
}
],
"args": []
},
{
"name": "initFarmsForReserve",
"accounts": [
{
"name": "lendingMarketOwner",
"isMut": true,
"isSigner": true
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "lendingMarketAuthority",
"isMut": false,
"isSigner": false
},
{
"name": "reserve",
"isMut": true,
"isSigner": false
},
{
"name": "farmsProgram",
"isMut": false,
"isSigner": false
},
{
"name": "farmsGlobalConfig",
"isMut": false,
"isSigner": false
},
{
"name": "farmState",
"isMut": true,
"isSigner": false
},
{
"name": "farmsVaultAuthority",
"isMut": false,
"isSigner": false
},
{
"name": "rent",
"isMut": false,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "mode",
"type": "u8"
}
]
},
{
"name": "updateReserveConfig",
"accounts": [
{
"name": "signer",
"isMut": false,
"isSigner": true
},
{
"name": "globalConfig",
"isMut": false,
"isSigner": false
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "reserve",
"isMut": true,
"isSigner": false
}
],
"args": [
{
"name": "mode",
"type": {
"defined": "UpdateConfigMode"
}
},
{
"name": "value",
"type": "bytes"
},
{
"name": "skipConfigIntegrityValidation",
"type": "bool"
}
]
},
{
"name": "redeemFees",
"accounts": [
{
"name": "reserve",
"isMut": true,
"isSigner": false
},
{
"name": "reserveLiquidityMint",
"isMut": false,
"isSigner": false
},
{
"name": "reserveLiquidityFeeReceiver",
"isMut": true,
"isSigner": false
},
{
"name": "reserveSupplyLiquidity",
"isMut": true,
"isSigner": false
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "lendingMarketAuthority",
"isMut": false,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
}
],
"args": []
},
{
"name": "withdrawProtocolFee",
"accounts": [
{
"name": "globalConfig",
"isMut": false,
"isSigner": false
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "reserve",
"isMut": false,
"isSigner": false
},
{
"name": "reserveLiquidityMint",
"isMut": false,
"isSigner": false
},
{
"name": "lendingMarketAuthority",
"isMut": false,
"isSigner": false
},
{
"name": "feeVault",
"isMut": true,
"isSigner": false
},
{
"name": "feeCollectorAta",
"isMut": true,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "amount",
"type": "u64"
}
]
},
{
"name": "socializeLoss",
"accounts": [
{
"name": "riskCouncil",
"isMut": false,
"isSigner": true
},
{
"name": "obligation",
"isMut": true,
"isSigner": false
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "reserve",
"isMut": true,
"isSigner": false
},
{
"name": "instructionSysvarAccount",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "liquidityAmount",
"type": "u64"
}
]
},
{
"name": "socializeLossV2",
"accounts": [
{
"name": "socializeLossAccounts",
"accounts": [
{
"name": "riskCouncil",
"isMut": false,
"isSigner": true
},
{
"name": "obligation",
"isMut": true,
"isSigner": false
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "reserve",
"isMut": true,
"isSigner": false
},
{
"name": "instructionSysvarAccount",
"isMut": false,
"isSigner": false
}
]
},
{
"name": "farmsAccounts",
"accounts": [
{
"name": "obligationFarmUserState",
"isMut": true,
"isSigner": false,
"isOptional": true
},
{
"name": "reserveFarmState",
"isMut": true,
"isSigner": false,
"isOptional": true
}
]
},
{
"name": "lendingMarketAuthority",
"isMut": false,
"isSigner": false
},
{
"name": "farmsProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "liquidityAmount",
"type": "u64"
}
]
},
{
"name": "markObligationForDeleveraging",
"accounts": [
{
"name": "riskCouncil",
"isMut": false,
"isSigner": true
},
{
"name": "obligation",
"isMut": true,
"isSigner": false
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "autodeleverageTargetLtvPct",
"type": "u8"
}
]
},
{
"name": "refreshReserve",
"accounts": [
{
"name": "reserve",
"isMut": true,
"isSigner": false
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "pythOracle",
"isMut": false,
"isSigner": false,
"isOptional": true
},
{
"name": "switchboardPriceOracle",
"isMut": false,
"isSigner": false,
"isOptional": true
},
{
"name": "switchboardTwapOracle",
"isMut": false,
"isSigner": false,
"isOptional": true
},
{
"name": "scopePrices",
"isMut": false,
"isSigner": false,
"isOptional": true
}
],
"args": []
},
{
"name": "refreshReservesBatch",
"accounts": [],
"args": [
{
"name": "skipPriceUpdates",
"type": "bool"
}
]
},
{
"name": "depositReserveLiquidity",
"accounts": [
{
"name": "owner",
"isMut": false,
"isSigner": true
},
{
"name": "reserve",
"isMut": true,
"isSigner": false
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "lendingMarketAuthority",
"isMut": false,
"isSigner": false
},
{
"name": "reserveLiquidityMint",
"isMut": false,
"isSigner": false
},
{
"name": "reserveLiquiditySupply",
"isMut": true,
"isSigner": false
},
{
"name": "reserveCollateralMint",
"isMut": true,
"isSigner": false
},
{
"name": "userSourceLiquidity",
"isMut": true,
"isSigner": false
},
{
"name": "userDestinationCollateral",
"isMut": true,
"isSigner": false
},
{
"name": "collateralTokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "liquidityTokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "instructionSysvarAccount",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "liquidityAmount",
"type": "u64"
}
]
},
{
"name": "redeemReserveCollateral",
"accounts": [
{
"name": "owner",
"isMut": false,
"isSigner": true
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "reserve",
"isMut": true,
"isSigner": false
},
{
"name": "lendingMarketAuthority",
"isMut": false,
"isSigner": false
},
{
"name": "reserveLiquidityMint",
"isMut": false,
"isSigner": false
},
{
"name": "reserveCollateralMint",
"isMut": true,
"isSigner": false
},
{
"name": "reserveLiquiditySupply",
"isMut": true,
"isSigner": false
},
{
"name": "userSourceCollateral",
"isMut": true,
"isSigner": false
},
{
"name": "userDestinationLiquidity",
"isMut": true,
"isSigner": false
},
{
"name": "collateralTokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "liquidityTokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "instructionSysvarAccount",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "collateralAmount",
"type": "u64"
}
]
},
{
"name": "initObligation",
"accounts": [
{
"name": "obligationOwner",
"isMut": false,
"isSigner": true
},
{
"name": "feePayer",
"isMut": true,
"isSigner": true
},
{
"name": "obligation",
"isMut": true,
"isSigner": false
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "seed1Account",
"isMut": false,
"isSigner": false
},
{
"name": "seed2Account",
"isMut": false,
"isSigner": false
},
{
"name": "ownerUserMetadata",
"isMut": false,
"isSigner": false
},
{
"name": "rent",
"isMut": false,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "args",
"type": {
"defined": "InitObligationArgs"
}
}
]
},
{
"name": "initObligationFarmsForReserve",
"accounts": [
{
"name": "payer",
"isMut": true,
"isSigner": true
},
{
"name": "owner",
"isMut": false,
"isSigner": false
},
{
"name": "obligation",
"isMut": true,
"isSigner": false
},
{
"name": "lendingMarketAuthority",
"isMut": false,
"isSigner": false
},
{
"name": "reserve",
"isMut": true,
"isSigner": false
},
{
"name": "reserveFarmState",
"isMut": true,
"isSigner": false
},
{
"name": "obligationFarm",
"isMut": true,
"isSigner": false
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "farmsProgram",
"isMut": false,
"isSigner": false
},
{
"name": "rent",
"isMut": false,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "mode",
"type": "u8"
}
]
},
{
"name": "refreshObligationFarmsForReserve",
"accounts": [
{
"name": "crank",
"isMut": false,
"isSigner": true
},
{
"name": "baseAccounts",
"accounts": [
{
"name": "obligation",
"isMut": false,
"isSigner": false
},
{
"name": "lendingMarketAuthority",
"isMut": false,
"isSigner": false
},
{
"name": "reserve",
"isMut": false,
"isSigner": false
},
{
"name": "reserveFarmState",
"isMut": true,
"isSigner": false
},
{
"name": "obligationFarmUserState",
"isMut": true,
"isSigner": false
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
}
]
},
{
"name": "farmsProgram",
"isMut": false,
"isSigner": false
},
{
"name": "rent",
"isMut": false,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "mode",
"type": "u8"
}
]
},
{
"name": "refreshObligation",
"accounts": [
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "obligation",
"isMut": true,
"isSigner": false
}
],
"args": []
},
{
"name": "depositObligationCollateral",
"accounts": [
{
"name": "owner",
"isMut": false,
"isSigner": true
},
{
"name": "obligation",
"isMut": true,
"isSigner": false
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "depositReserve",
"isMut": true,
"isSigner": false
},
{
"name": "reserveDestinationCollateral",
"isMut": true,
"isSigner": false
},
{
"name": "userSourceCollateral",
"isMut": true,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "instructionSysvarAccount",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "collateralAmount",
"type": "u64"
}
]
},
{
"name": "depositObligationCollateralV2",
"accounts": [
{
"name": "depositAccounts",
"accounts": [
{
"name": "owner",
"isMut": false,
"isSigner": true
},
{
"name": "obligation",
"isMut": true,
"isSigner": false
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "depositReserve",
"isMut": true,
"isSigner": false
},
{
"name": "reserveDestinationCollateral",
"isMut": true,
"isSigner": false
},
{
"name": "userSourceCollateral",
"isMut": true,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "instructionSysvarAccount",
"isMut": false,
"isSigner": false
}
]
},
{
"name": "lendingMarketAuthority",
"isMut": false,
"isSigner": false
},
{
"name": "farmsAccounts",
"accounts": [
{
"name": "obligationFarmUserState",
"isMut": true,
"isSigner": false,
"isOptional": true
},
{
"name": "reserveFarmState",
"isMut": true,
"isSigner": false,
"isOptional": true
}
]
},
{
"name": "farmsProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "collateralAmount",
"type": "u64"
}
]
},
{
"name": "withdrawObligationCollateral",
"accounts": [
{
"name": "owner",
"isMut": false,
"isSigner": true
},
{
"name": "obligation",
"isMut": true,
"isSigner": false
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "lendingMarketAuthority",
"isMut": false,
"isSigner": false
},
{
"name": "withdrawReserve",
"isMut": true,
"isSigner": false
},
{
"name": "reserveSourceCollateral",
"isMut": true,
"isSigner": false
},
{
"name": "userDestinationCollateral",
"isMut": true,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "instructionSysvarAccount",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "collateralAmount",
"type": "u64"
}
]
},
{
"name": "withdrawObligationCollateralV2",
"accounts": [
{
"name": "withdrawAccounts",
"accounts": [
{
"name": "owner",
"isMut": false,
"isSigner": true
},
{
"name": "obligation",
"isMut": true,
"isSigner": false
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "lendingMarketAuthority",
"isMut": false,
"isSigner": false
},
{
"name": "withdrawReserve",
"isMut": true,
"isSigner": false
},
{
"name": "reserveSourceCollateral",
"isMut": true,
"isSigner": false
},
{
"name": "userDestinationCollateral",
"isMut": true,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "instructionSysvarAccount",
"isMut": false,
"isSigner": false
}
]
},
{
"name": "farmsAccounts",
"accounts": [
{
"name": "obligationFarmUserState",
"isMut": true,
"isSigner": false,
"isOptional": true
},
{
"name": "reserveFarmState",
"isMut": true,
"isSigner": false,
"isOptional": true
}
]
},
{
"name": "farmsProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "collateralAmount",
"type": "u64"
}
]
},
{
"name": "borrowObligationLiquidity",
"accounts": [
{
"name": "owner",
"isMut": false,
"isSigner": true
},
{
"name": "obligation",
"isMut": true,
"isSigner": false
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "lendingMarketAuthority",
"isMut": false,
"isSigner": false
},
{
"name": "borrowReserve",
"isMut": true,
"isSigner": false
},
{
"name": "borrowReserveLiquidityMint",
"isMut": false,
"isSigner": false
},
{
"name": "reserveSourceLiquidity",
"isMut": true,
"isSigner": false
},
{
"name": "borrowReserveLiquidityFeeReceiver",
"isMut": true,
"isSigner": false
},
{
"name": "userDestinationLiquidity",
"isMut": true,
"isSigner": false
},
{
"name": "referrerTokenState",
"isMut": true,
"isSigner": false,
"isOptional": true
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "instructionSysvarAccount",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "liquidityAmount",
"type": "u64"
}
]
},
{
"name": "borrowObligationLiquidityV2",
"accounts": [
{
"name": "borrowAccounts",
"accounts": [
{
"name": "owner",
"isMut": false,
"isSigner": true
},
{
"name": "obligation",
"isMut": true,
"isSigner": false
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "lendingMarketAuthority",
"isMut": false,
"isSigner": false
},
{
"name": "borrowReserve",
"isMut": true,
"isSigner": false
},
{
"name": "borrowReserveLiquidityMint",
"isMut": false,
"isSigner": false
},
{
"name": "reserveSourceLiquidity",
"isMut": true,
"isSigner": false
},
{
"name": "borrowReserveLiquidityFeeReceiver",
"isMut": true,
"isSigner": false
},
{
"name": "userDestinationLiquidity",
"isMut": true,
"isSigner": false
},
{
"name": "referrerTokenState",
"isMut": true,
"isSigner": false,
"isOptional": true
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "instructionSysvarAccount",
"isMut": false,
"isSigner": false
}
]
},
{
"name": "farmsAccounts",
"accounts": [
{
"name": "obligationFarmUserState",
"isMut": true,
"isSigner": false,
"isOptional": true
},
{
"name": "reserveFarmState",
"isMut": true,
"isSigner": false,
"isOptional": true
}
]
},
{
"name": "farmsProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "liquidityAmount",
"type": "u64"
}
]
},
{
"name": "repayObligationLiquidity",
"accounts": [
{
"name": "owner",
"isMut": false,
"isSigner": true
},
{
"name": "obligation",
"isMut": true,
"isSigner": false
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "repayReserve",
"isMut": true,
"isSigner": false
},
{
"name": "reserveLiquidityMint",
"isMut": false,
"isSigner": false
},
{
"name": "reserveDestinationLiquidity",
"isMut": true,
"isSigner": false
},
{
"name": "userSourceLiquidity",
"isMut": true,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "instructionSysvarAccount",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "liquidityAmount",
"type": "u64"
}
]
},
{
"name": "repayObligationLiquidityV2",
"accounts": [
{
"name": "repayAccounts",
"accounts": [
{
"name": "owner",
"isMut": false,
"isSigner": true
},
{
"name": "obligation",
"isMut": true,
"isSigner": false
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "repayReserve",
"isMut": true,
"isSigner": false
},
{
"name": "reserveLiquidityMint",
"isMut": false,
"isSigner": false
},
{
"name": "reserveDestinationLiquidity",
"isMut": true,
"isSigner": false
},
{
"name": "userSourceLiquidity",
"isMut": true,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "instructionSysvarAccount",
"isMut": false,
"isSigner": false
}
]
},
{
"name": "farmsAccounts",
"accounts": [
{
"name": "obligationFarmUserState",
"isMut": true,
"isSigner": false,
"isOptional": true
},
{
"name": "reserveFarmState",
"isMut": true,
"isSigner": false,
"isOptional": true
}
]
},
{
"name": "lendingMarketAuthority",
"isMut": false,
"isSigner": false
},
{
"name": "farmsProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "liquidityAmount",
"type": "u64"
}
]
},
{
"name": "repayAndWithdrawAndRedeem",
"accounts": [
{
"name": "repayAccounts",
"accounts": [
{
"name": "owner",
"isMut": false,
"isSigner": true
},
{
"name": "obligation",
"isMut": true,
"isSigner": false
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "repayReserve",
"isMut": true,
"isSigner": false
},
{
"name": "reserveLiquidityMint",
"isMut": false,
"isSigner": false
},
{
"name": "reserveDestinationLiquidity",
"isMut": true,
"isSigner": false
},
{
"name": "userSourceLiquidity",
"isMut": true,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "instructionSysvarAccount",
"isMut": false,
"isSigner": false
}
]
},
{
"name": "withdrawAccounts",
"accounts": [
{
"name": "owner",
"isMut": true,
"isSigner": true
},
{
"name": "obligation",
"isMut": true,
"isSigner": false
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "lendingMarketAuthority",
"isMut": false,
"isSigner": false
},
{
"name": "withdrawReserve",
"isMut": true,
"isSigner": false
},
{
"name": "reserveLiquidityMint",
"isMut": false,
"isSigner": false
},
{
"name": "reserveSourceCollateral",
"isMut": true,
"isSigner": false
},
{
"name": "reserveCollateralMint",
"isMut": true,
"isSigner": false
},
{
"name": "reserveLiquiditySupply",
"isMut": true,
"isSigner": false
},
{
"name": "userDestinationLiquidity",
"isMut": true,
"isSigner": false
},
{
"name": "placeholderUserDestinationCollateral",
"isMut": false,
"isSigner": false,
"isOptional": true
},
{
"name": "collateralTokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "liquidityTokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "instructionSysvarAccount",
"isMut": false,
"isSigner": false
}
]
},
{
"name": "collateralFarmsAccounts",
"accounts": [
{
"name": "obligationFarmUserState",
"isMut": true,
"isSigner": false,
"isOptional": true
},
{
"name": "reserveFarmState",
"isMut": true,
"isSigner": false,
"isOptional": true
}
]
},
{
"name": "debtFarmsAccounts",
"accounts": [
{
"name": "obligationFarmUserState",
"isMut": true,
"isSigner": false,
"isOptional": true
},
{
"name": "reserveFarmState",
"isMut": true,
"isSigner": false,
"isOptional": true
}
]
},
{
"name": "farmsProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "repayAmount",
"type": "u64"
},
{
"name": "withdrawCollateralAmount",
"type": "u64"
}
]
},
{
"name": "depositAndWithdraw",
"accounts": [
{
"name": "depositAccounts",
"accounts": [
{
"name": "owner",
"isMut": true,
"isSigner": true
},
{
"name": "obligation",
"isMut": true,
"isSigner": false
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "lendingMarketAuthority",
"isMut": false,
"isSigner": false
},
{
"name": "reserve",
"isMut": true,
"isSigner": false
},
{
"name": "reserveLiquidityMint",
"isMut": false,
"isSigner": false
},
{
"name": "reserveLiquiditySupply",
"isMut": true,
"isSigner": false
},
{
"name": "reserveCollateralMint",
"isMut": true,
"isSigner": false
},
{
"name": "reserveDestinationDepositCollateral",
"isMut": true,
"isSigner": false
},
{
"name": "userSourceLiquidity",
"isMut": true,
"isSigner": false
},
{
"name": "placeholderUserDestinationCollateral",
"isMut": false,
"isSigner": false,
"isOptional": true
},
{
"name": "collateralTokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "liquidityTokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "instructionSysvarAccount",
"isMut": false,
"isSigner": false
}
]
},
{
"name": "withdrawAccounts",
"accounts": [
{
"name": "owner",
"isMut": true,
"isSigner": true
},
{
"name": "obligation",
"isMut": true,
"isSigner": false
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "lendingMarketAuthority",
"isMut": false,
"isSigner": false
},
{
"name": "withdrawReserve",
"isMut": true,
"isSigner": false
},
{
"name": "reserveLiquidityMint",
"isMut": false,
"isSigner": false
},
{
"name": "reserveSourceCollateral",
"isMut": true,
"isSigner": false
},
{
"name": "reserveCollateralMint",
"isMut": true,
"isSigner": false
},
{
"name": "reserveLiquiditySupply",
"isMut": true,
"isSigner": false
},
{
"name": "userDestinationLiquidity",
"isMut": true,
"isSigner": false
},
{
"name": "placeholderUserDestinationCollateral",
"isMut": false,
"isSigner": false,
"isOptional": true
},
{
"name": "collateralTokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "liquidityTokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "instructionSysvarAccount",
"isMut": false,
"isSigner": false
}
]
},
{
"name": "depositFarmsAccounts",
"accounts": [
{
"name": "obligationFarmUserState",
"isMut": true,
"isSigner": false,
"isOptional": true
},
{
"name": "reserveFarmState",
"isMut": true,
"isSigner": false,
"isOptional": true
}
]
},
{
"name": "withdrawFarmsAccounts",
"accounts": [
{
"name": "obligationFarmUserState",
"isMut": true,
"isSigner": false,
"isOptional": true
},
{
"name": "reserveFarmState",
"isMut": true,
"isSigner": false,
"isOptional": true
}
]
},
{
"name": "farmsProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "liquidityAmount",
"type": "u64"
},
{
"name": "withdrawCollateralAmount",
"type": "u64"
}
]
},
{
"name": "depositReserveLiquidityAndObligationCollateral",
"accounts": [
{
"name": "owner",
"isMut": true,
"isSigner": true
},
{
"name": "obligation",
"isMut": true,
"isSigner": false
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "lendingMarketAuthority",
"isMut": false,
"isSigner": false
},
{
"name": "reserve",
"isMut": true,
"isSigner": false
},
{
"name": "reserveLiquidityMint",
"isMut": false,
"isSigner": false
},
{
"name": "reserveLiquiditySupply",
"isMut": true,
"isSigner": false
},
{
"name": "reserveCollateralMint",
"isMut": true,
"isSigner": false
},
{
"name": "reserveDestinationDepositCollateral",
"isMut": true,
"isSigner": false
},
{
"name": "userSourceLiquidity",
"isMut": true,
"isSigner": false
},
{
"name": "placeholderUserDestinationCollateral",
"isMut": false,
"isSigner": false,
"isOptional": true
},
{
"name": "collateralTokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "liquidityTokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "instructionSysvarAccount",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "liquidityAmount",
"type": "u64"
}
]
},
{
"name": "depositReserveLiquidityAndObligationCollateralV2",
"accounts": [
{
"name": "depositAccounts",
"accounts": [
{
"name": "owner",
"isMut": true,
"isSigner": true
},
{
"name": "obligation",
"isMut": true,
"isSigner": false
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "lendingMarketAuthority",
"isMut": false,
"isSigner": false
},
{
"name": "reserve",
"isMut": true,
"isSigner": false
},
{
"name": "reserveLiquidityMint",
"isMut": false,
"isSigner": false
},
{
"name": "reserveLiquiditySupply",
"isMut": true,
"isSigner": false
},
{
"name": "reserveCollateralMint",
"isMut": true,
"isSigner": false
},
{
"name": "reserveDestinationDepositCollateral",
"isMut": true,
"isSigner": false
},
{
"name": "userSourceLiquidity",
"isMut": true,
"isSigner": false
},
{
"name": "placeholderUserDestinationCollateral",
"isMut": false,
"isSigner": false,
"isOptional": true
},
{
"name": "collateralTokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "liquidityTokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "instructionSysvarAccount",
"isMut": false,
"isSigner": false
}
]
},
{
"name": "farmsAccounts",
"accounts": [
{
"name": "obligationFarmUserState",
"isMut": true,
"isSigner": false,
"isOptional": true
},
{
"name": "reserveFarmState",
"isMut": true,
"isSigner": false,
"isOptional": true
}
]
},
{
"name": "farmsProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "liquidityAmount",
"type": "u64"
}
]
},
{
"name": "withdrawObligationCollateralAndRedeemReserveCollateral",
"accounts": [
{
"name": "owner",
"isMut": true,
"isSigner": true
},
{
"name": "obligation",
"isMut": true,
"isSigner": false
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "lendingMarketAuthority",
"isMut": false,
"isSigner": false
},
{
"name": "withdrawReserve",
"isMut": true,
"isSigner": false
},
{
"name": "reserveLiquidityMint",
"isMut": false,
"isSigner": false
},
{
"name": "reserveSourceCollateral",
"isMut": true,
"isSigner": false
},
{
"name": "reserveCollateralMint",
"isMut": true,
"isSigner": false
},
{
"name": "reserveLiquiditySupply",
"isMut": true,
"isSigner": false
},
{
"name": "userDestinationLiquidity",
"isMut": true,
"isSigner": false
},
{
"name": "placeholderUserDestinationCollateral",
"isMut": false,
"isSigner": false,
"isOptional": true
},
{
"name": "collateralTokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "liquidityTokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "instructionSysvarAccount",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "collateralAmount",
"type": "u64"
}
]
},
{
"name": "withdrawObligationCollateralAndRedeemReserveCollateralV2",
"accounts": [
{
"name": "withdrawAccounts",
"accounts": [
{
"name": "owner",
"isMut": true,
"isSigner": true
},
{
"name": "obligation",
"isMut": true,
"isSigner": false
},
{
"name": "lendingMarket",
"isMut": false,
"isSigner": false
},
{
"name": "lendingMarketAuthority",
"isMut": false,
"isSigner": false
},
{
"name": "withdrawReserve",
"isMut": true,
"isSigner": false
},
{
"name": "reserveLiquidityMint",
"isMut": false,
"isSigner": false
},
{
"name": "reserveSo