UNPKG

@hubbleprotocol/hubble-sdk

Version:
1,676 lines (1,675 loc) 171 kB
{ "version": "0.1.23", "name": "borrowing", "instructions": [ { "name": "initializeBorrowingMarket", "accounts": [ { "name": "adminAuthority", "isMut": true, "isSigner": true }, { "name": "borrowingMarketState", "isMut": true, "isSigner": false }, { "name": "globalConfig", "isMut": true, "isSigner": true }, { "name": "stablecoinMint", "isMut": true, "isSigner": false }, { "name": "hbbMint", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "createAdditionalBorrowingMarket", "accounts": [ { "name": "adminAuthority", "isMut": false, "isSigner": true }, { "name": "additionalBorrowingMarketState", "isMut": true, "isSigner": false }, { "name": "originalBorrowingMarketState", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "updateMarketLinkage", "accounts": [ { "name": "adminAuthority", "isMut": false, "isSigner": true }, { "name": "borrowingMarketState", "isMut": true, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "borrowingVaults", "isMut": false, "isSigner": false }, { "name": "stakingPoolState", "isMut": false, "isSigner": false }, { "name": "stabilityPoolState", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "updateMarketOwner", "accounts": [ { "name": "adminAuthority", "isMut": false, "isSigner": true }, { "name": "borrowingMarketState", "isMut": true, "isSigner": false }, { "name": "newOwner", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "initializeCollateralVaultsNew", "accounts": [ { "name": "adminAuthority", "isMut": false, "isSigner": true }, { "name": "borrowingMarketState", "isMut": false, "isSigner": false }, { "name": "stabilityPoolState", "isMut": false, "isSigner": false }, { "name": "borrowingFeesVault", "isMut": true, "isSigner": false }, { "name": "burningVault", "isMut": true, "isSigner": false }, { "name": "stablecoinStabilityPoolVault", "isMut": true, "isSigner": false }, { "name": "borrowingVaults", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "addNewVault", "accounts": [ { "name": "adminAuthority", "isMut": false, "isSigner": true }, { "name": "borrowingMarketState", "isMut": false, "isSigner": false }, { "name": "borrowingVaults", "isMut": true, "isSigner": false }, { "name": "newVault", "isMut": true, "isSigner": false }, { "name": "newMint", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "mintId", "type": "u8" }, { "name": "setVaultToPda", "type": "bool" }, { "name": "vaultIsForLiquidationRewards", "type": "bool" } ] }, { "name": "updateGlobalConfig", "accounts": [ { "name": "adminAuthority", "isMut": false, "isSigner": true }, { "name": "borrowingMarketState", "isMut": false, "isSigner": false }, { "name": "globalConfig", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "key", "type": "u16" }, { "name": "value", "type": { "array": [ "u8", 32 ] } } ] }, { "name": "modifySupportedCollaterals", "accounts": [ { "name": "adminAuthority", "isMut": false, "isSigner": true }, { "name": "borrowingMarketState", "isMut": true, "isSigner": false } ], "args": [ { "name": "action", "type": "u8" }, { "name": "tokenId", "type": "u8" } ] }, { "name": "updateMarketTokenDepositCap", "accounts": [ { "name": "adminAuthority", "isMut": false, "isSigner": true }, { "name": "borrowingMarketState", "isMut": true, "isSigner": false } ], "args": [ { "name": "collateral", "type": "u8" }, { "name": "capInLamports", "type": "u64" } ] }, { "name": "approveTrove", "accounts": [ { "name": "owner", "isMut": true, "isSigner": true }, { "name": "userMetadata", "isMut": true, "isSigner": true }, { "name": "borrowingMarketState", "isMut": true, "isSigner": false }, { "name": "stablecoinAta", "isMut": true, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "transferLoanOwnership", "accounts": [ { "name": "owner", "isMut": false, "isSigner": true }, { "name": "newOwner", "isMut": false, "isSigner": false }, { "name": "borrowingMarketState", "isMut": false, "isSigner": false }, { "name": "userMetadata", "isMut": true, "isSigner": false } ], "args": [] }, { "name": "depositCollateral", "accounts": [ { "name": "owner", "isMut": true, "isSigner": true }, { "name": "borrowingMarketState", "isMut": true, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "borrowingVaults", "isMut": false, "isSigner": false }, { "name": "userMetadata", "isMut": true, "isSigner": false }, { "name": "collateralFrom", "isMut": true, "isSigner": false }, { "name": "collateralTo", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "amountInLamports", "type": "u64" }, { "name": "collateral", "type": "u8" } ] }, { "name": "depositCollateralUnsecured", "accounts": [ { "name": "owner", "isMut": true, "isSigner": true }, { "name": "borrowingMarketState", "isMut": true, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "borrowingVaults", "isMut": false, "isSigner": false }, { "name": "userMetadata", "isMut": true, "isSigner": false }, { "name": "collateralFrom", "isMut": true, "isSigner": false }, { "name": "collateralTo", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "amountInLamports", "type": "u64" }, { "name": "collateral", "type": "u8" } ] }, { "name": "borrowStablecoin", "accounts": [ { "name": "owner", "isMut": false, "isSigner": true }, { "name": "borrowingMarketState", "isMut": true, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "borrowingVaults", "isMut": false, "isSigner": false }, { "name": "stakingPoolState", "isMut": true, "isSigner": false }, { "name": "userMetadata", "isMut": true, "isSigner": false }, { "name": "stablecoinMint", "isMut": true, "isSigner": false }, { "name": "stablecoinMintAuthority", "isMut": false, "isSigner": false }, { "name": "stablecoinBorrowingAssociatedAccount", "isMut": true, "isSigner": false }, { "name": "borrowingFeesVault", "isMut": true, "isSigner": false }, { "name": "treasuryVault", "isMut": true, "isSigner": false }, { "name": "scopePrices", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "amount", "type": "u64" } ] }, { "name": "depositCollateralAndBorrowStablecoin", "accounts": [ { "name": "owner", "isMut": true, "isSigner": true, "docs": [ "It has to be mut, because we're returning the sol back, after closing the acc" ] }, { "name": "borrowingMarketState", "isMut": true, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "borrowingVaults", "isMut": false, "isSigner": false }, { "name": "stakingPoolState", "isMut": true, "isSigner": false }, { "name": "userMetadata", "isMut": true, "isSigner": false }, { "name": "stablecoinMint", "isMut": true, "isSigner": false }, { "name": "stablecoinMintAuthority", "isMut": false, "isSigner": false }, { "name": "collateralFrom", "isMut": true, "isSigner": false }, { "name": "collateralTo", "isMut": true, "isSigner": false }, { "name": "stablecoinBorrowingAssociatedAccount", "isMut": true, "isSigner": false }, { "name": "borrowingFeesVault", "isMut": true, "isSigner": false }, { "name": "treasuryVault", "isMut": true, "isSigner": false }, { "name": "scopePrices", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "depositAmount", "type": "u64" }, { "name": "depositAsset", "type": "u8" }, { "name": "borrowAmount", "type": "u64" } ] }, { "name": "borrowChangeWithdrawalCap", "accounts": [ { "name": "adminAuthority", "isMut": false, "isSigner": true }, { "name": "borrowingMarketState", "isMut": true, "isSigner": false } ], "args": [ { "name": "maxCapacity", "type": "u64" }, { "name": "intervalLength", "type": "u64" }, { "name": "changeCollateralCap", "type": "bool" }, { "name": "collateralId", "type": "u8" }, { "name": "accumActionBool", "type": "bool" } ] }, { "name": "repayLoan", "accounts": [ { "name": "owner", "isMut": false, "isSigner": true }, { "name": "borrowingMarketState", "isMut": true, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "borrowingVaults", "isMut": false, "isSigner": false }, { "name": "userMetadata", "isMut": true, "isSigner": false }, { "name": "stablecoinMint", "isMut": true, "isSigner": false }, { "name": "stablecoinMintAuthority", "isMut": false, "isSigner": false }, { "name": "stablecoinBorrowingAssociatedAccount", "isMut": true, "isSigner": false }, { "name": "burningVault", "isMut": true, "isSigner": false }, { "name": "burningVaultAuthority", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "amount", "type": "u64" } ] }, { "name": "permisionlessRepay", "accounts": [ { "name": "owner", "isMut": false, "isSigner": true }, { "name": "borrowingMarketState", "isMut": true, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "borrowingVaults", "isMut": false, "isSigner": false }, { "name": "userMetadata", "isMut": true, "isSigner": false }, { "name": "stablecoinMint", "isMut": true, "isSigner": false }, { "name": "stablecoinMintAuthority", "isMut": false, "isSigner": false }, { "name": "stablecoinBorrowingAssociatedAccount", "isMut": true, "isSigner": false }, { "name": "burningVault", "isMut": true, "isSigner": false }, { "name": "burningVaultAuthority", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "amount", "type": "u64" } ] }, { "name": "withdrawCollateral", "accounts": [ { "name": "owner", "isMut": true, "isSigner": true }, { "name": "borrowingMarketState", "isMut": true, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "borrowingVaults", "isMut": false, "isSigner": false }, { "name": "userMetadata", "isMut": true, "isSigner": false }, { "name": "collateralFrom", "isMut": true, "isSigner": false }, { "name": "collateralVaultsAuthority", "isMut": false, "isSigner": false }, { "name": "collateralTo", "isMut": true, "isSigner": false }, { "name": "scopePrices", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "amount", "type": "u64" }, { "name": "collateral", "type": "u8" } ] }, { "name": "stabilityInitialize", "accounts": [ { "name": "adminAuthority", "isMut": true, "isSigner": true }, { "name": "borrowingMarketState", "isMut": false, "isSigner": false }, { "name": "stabilityPoolState", "isMut": true, "isSigner": true }, { "name": "epochToScaleToSum", "isMut": true, "isSigner": false }, { "name": "liquidationsQueue", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "clock", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "stabilityApprove", "accounts": [ { "name": "owner", "isMut": true, "isSigner": true }, { "name": "stabilityProviderState", "isMut": true, "isSigner": true }, { "name": "stabilityPoolState", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "stabilityTransferOwnership", "accounts": [ { "name": "owner", "isMut": false, "isSigner": true }, { "name": "newOwner", "isMut": false, "isSigner": false }, { "name": "stabilityPoolState", "isMut": false, "isSigner": false }, { "name": "stabilityProviderState", "isMut": true, "isSigner": false } ], "args": [] }, { "name": "stabilityProvide", "accounts": [ { "name": "owner", "isMut": false, "isSigner": true }, { "name": "stabilityProviderState", "isMut": true, "isSigner": false }, { "name": "borrowingMarketState", "isMut": false, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "stabilityPoolState", "isMut": true, "isSigner": false }, { "name": "borrowingVaults", "isMut": true, "isSigner": false }, { "name": "epochToScaleToSum", "isMut": true, "isSigner": false }, { "name": "stablecoinStabilityPoolVault", "isMut": true, "isSigner": false }, { "name": "stablecoinAta", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "clock", "isMut": false, "isSigner": false } ], "args": [ { "name": "amount", "type": "u64" } ] }, { "name": "stabilityWithdraw", "accounts": [ { "name": "owner", "isMut": false, "isSigner": true }, { "name": "stabilityProviderState", "isMut": true, "isSigner": false }, { "name": "borrowingMarketState", "isMut": false, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "stabilityPoolState", "isMut": true, "isSigner": false }, { "name": "borrowingVaults", "isMut": false, "isSigner": false }, { "name": "epochToScaleToSum", "isMut": true, "isSigner": false }, { "name": "stablecoinStabilityPoolVault", "isMut": true, "isSigner": false }, { "name": "stablecoinStabilityPoolVaultAuthority", "isMut": false, "isSigner": false }, { "name": "stablecoinAta", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "clock", "isMut": false, "isSigner": false } ], "args": [ { "name": "amount", "type": "u64" } ] }, { "name": "tryLiquidate", "accounts": [ { "name": "liquidator", "isMut": true, "isSigner": true }, { "name": "borrowingMarketState", "isMut": true, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "stabilityPoolState", "isMut": true, "isSigner": false }, { "name": "userMetadata", "isMut": true, "isSigner": false }, { "name": "epochToScaleToSum", "isMut": true, "isSigner": false }, { "name": "borrowingVaults", "isMut": false, "isSigner": false }, { "name": "liquidationsQueue", "isMut": true, "isSigner": false }, { "name": "stablecoinMint", "isMut": true, "isSigner": false }, { "name": "stablecoinMintAuthority", "isMut": false, "isSigner": false }, { "name": "stablecoinStabilityPoolVault", "isMut": true, "isSigner": false }, { "name": "stablecoinStabilityPoolVaultAuthority", "isMut": false, "isSigner": false }, { "name": "scopePrices", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "clock", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "tryLiquidateCashBased", "accounts": [ { "name": "liquidator", "isMut": true, "isSigner": true }, { "name": "liquidatorUsdhAta", "isMut": true, "isSigner": false }, { "name": "borrowingMarketState", "isMut": true, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "stabilityPoolState", "isMut": true, "isSigner": false }, { "name": "userMetadata", "isMut": true, "isSigner": false }, { "name": "epochToScaleToSum", "isMut": true, "isSigner": false }, { "name": "borrowingVaults", "isMut": false, "isSigner": false }, { "name": "liquidationsQueue", "isMut": true, "isSigner": false }, { "name": "stablecoinMint", "isMut": true, "isSigner": false }, { "name": "stablecoinMintAuthority", "isMut": false, "isSigner": false }, { "name": "stablecoinStabilityPoolVault", "isMut": true, "isSigner": false }, { "name": "stablecoinStabilityPoolVaultAuthority", "isMut": false, "isSigner": false }, { "name": "scopePrices", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "debtToRepay", "type": "u64" } ] }, { "name": "harvestLiquidationGains", "accounts": [ { "name": "owner", "isMut": true, "isSigner": true }, { "name": "stabilityProviderState", "isMut": true, "isSigner": false }, { "name": "borrowingMarketState", "isMut": false, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "borrowingVaults", "isMut": false, "isSigner": false }, { "name": "stabilityPoolState", "isMut": true, "isSigner": false }, { "name": "liquidationsQueue", "isMut": true, "isSigner": false }, { "name": "epochToScaleToSum", "isMut": true, "isSigner": false }, { "name": "liquidationRewardsVault", "isMut": true, "isSigner": false }, { "name": "liquidationRewardsVaultAuthority", "isMut": false, "isSigner": false }, { "name": "liquidationRewardsTo", "isMut": true, "isSigner": false }, { "name": "hbbMint", "isMut": true, "isSigner": false }, { "name": "hbbMintAuthority", "isMut": false, "isSigner": false }, { "name": "hbbAta", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "clock", "isMut": false, "isSigner": false } ], "args": [ { "name": "token", "type": "u8" } ] }, { "name": "clearLiquidationGains", "accounts": [ { "name": "clearingAgent", "isMut": true, "isSigner": true }, { "name": "clearingAgentAta", "isMut": true, "isSigner": false }, { "name": "borrowingMarketState", "isMut": false, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "borrowingVaults", "isMut": false, "isSigner": false }, { "name": "stabilityPoolState", "isMut": true, "isSigner": false }, { "name": "liquidationsQueue", "isMut": true, "isSigner": false }, { "name": "collateralVault", "isMut": true, "isSigner": false }, { "name": "collateralVaultsAuthority", "isMut": false, "isSigner": false }, { "name": "liquidationRewardsVault", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "clock", "isMut": false, "isSigner": false } ], "args": [ { "name": "token", "type": "u8" } ] }, { "name": "stakingInitialize", "accounts": [ { "name": "adminAuthority", "isMut": true, "isSigner": true }, { "name": "borrowingMarketState", "isMut": false, "isSigner": false }, { "name": "stakingPoolState", "isMut": true, "isSigner": true }, { "name": "stakingVault", "isMut": true, "isSigner": false }, { "name": "treasuryVault", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "stakingApprove", "accounts": [ { "name": "owner", "isMut": true, "isSigner": true }, { "name": "userStakingState", "isMut": true, "isSigner": true }, { "name": "stakingPoolState", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "stakingTransferOwnership", "accounts": [ { "name": "owner", "isMut": false, "isSigner": true }, { "name": "newOwner", "isMut": false, "isSigner": false }, { "name": "stakingPoolState", "isMut": false, "isSigner": false }, { "name": "userStakingState", "isMut": true, "isSigner": false } ], "args": [] }, { "name": "stakingStakeHbb", "accounts": [ { "name": "owner", "isMut": false, "isSigner": true }, { "name": "userStakingState", "isMut": true, "isSigner": false }, { "name": "borrowingMarketState", "isMut": false, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "stakingPoolState", "isMut": true, "isSigner": false }, { "name": "stakingVault", "isMut": true, "isSigner": false }, { "name": "userHbbStakingAta", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "amount", "type": "u64" } ] }, { "name": "withdrawFromTreasury", "accounts": [ { "name": "adminAuthority", "isMut": false, "isSigner": true }, { "name": "stablecoinMint", "isMut": false, "isSigner": false }, { "name": "borrowingMarketState", "isMut": true, "isSigner": false }, { "name": "globalConfig", "isMut": false, "isSigner": false }, { "name": "stakingPoolState", "isMut": true, "isSigner": false }, { "name": "treasuryVault", "isMut": true, "isSigner": false }, { "name": "treasuryVaultAuthority", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "toAccount",