BLens
BLens is the read-only Mercury lens on Ethereum, covering market price, BLV, premium, circulating supply, credit previews, pool state, and full JSON ABI for UIs and bots.
Overview
BLens is a read-only view contract (~50 entry points) for bToken and protocol state: market and BLV prices, premium, pool reserves and fees, per-user staking and credit, and config. Typical uses:
- Market and floor pricing (BLV, active price, premium)
- Pool state (reserves, supply, fees)
- User positions (staking, credit)
- Parameter reads
Price Functions
getActivePrice
Current market (active) price in WAD precision (1e18 = 1.0 in WAD).
function getActivePrice(BToken _bToken) external view returns (uint256)| Parameter | Type | Description |
|---|---|---|
_bToken | BToken | bToken to query |
Returns: uint256, active price (WAD)
getBLV
Current Baseline Value (floor price).
function getBLV(BToken _bToken) external view returns (uint256)| Parameter | Type | Description |
|---|---|---|
_bToken | BToken | bToken to query |
Returns: uint256, BLV (WAD)
getPremium
Premium of market price over BLV (active price minus floor).
function getPremium(BToken _bToken) external view returns (uint256)| Parameter | Type | Description |
|---|---|---|
_bToken | BToken | bToken to query |
Returns: uint256, premium (WAD)
getBookPrice
Book value style price: total reserves over circulating supply (see on-chain definition).
function getBookPrice(BToken _bToken) external view returns (uint256)| Parameter | Type | Description |
|---|---|---|
_bToken | BToken | bToken to query |
Returns: uint256, book price (WAD)
Pool State Functions
totalReserves
Total reserves in the pool (reserve asset units, normalized in-state).
function totalReserves(BToken _bToken) external view returns (uint256)| Parameter | Type | Description |
|---|---|---|
_bToken | BToken | bToken to query |
Returns: uint256, reserve balance backing the pool
totalBTokens
bTokens currently held in the pool (non-circulating / protocol side).
function totalBTokens(BToken _bToken) external view returns (uint256)| Parameter | Type | Description |
|---|---|---|
_bToken | BToken | bToken to query |
Returns: uint256, pool bToken inventory (normalized)
totalSupply
Total bToken supply (fixed at deployment).
function totalSupply(BToken _bToken) external view returns (uint256)| Parameter | Type | Description |
|---|---|---|
_bToken | BToken | bToken to query |
Returns: uint256, total supply
getCirculatingSupply
Circulating supply: total less protocol- (pool-) held bTokens.
function getCirculatingSupply(BToken _bToken) external view returns (uint256)| Parameter | Type | Description |
|---|---|---|
_bToken | BToken | bToken to query |
Returns: uint256, circulating bTokens in user hands
reserve
The reserve asset (ERC20) for this bToken’s pool (or placeholder for native; see on-chain BLens / pool).
function reserve(BToken _bToken) external view returns (ERC20)| Parameter | Type | Description |
|---|---|---|
_bToken | BToken | bToken to query |
Returns: ERC20, reserve token
Ratio Functions
getInventoryRatio
Pool inventory to circulating supply ratio (used in BMM / lens displays).
function getInventoryRatio(BToken _bToken) external view returns (uint256)| Parameter | Type | Description |
|---|---|---|
_bToken | BToken | bToken to query |
Returns: uint256, inventory ratio (WAD)
getBufferRatio
Buffer slice of reserves relative to the model (WAD).
function getBufferRatio(BToken _bToken) external view returns (uint256)| Parameter | Type | Description |
|---|---|---|
_bToken | BToken | bToken to query |
Returns: uint256, buffer ratio (WAD)
getLiquidityLeverage
Convenience metric (e.g. buffer ratio × inventory ratio) as exposed by BLens.
function getLiquidityLeverage(BToken _bToken) external view returns (uint256)| Parameter | Type | Description |
|---|---|---|
_bToken | BToken | bToken to query |
Returns: uint256, combined leverage / efficiency scalar (WAD)
Fee Functions
poolFeeShare
Share of fee flow allocated to the pool (BLV growth) for this bToken (WAD).
function poolFeeShare(BToken _bToken) external view returns (uint256)| Parameter | Type | Description |
|---|---|---|
_bToken | BToken | bToken to query |
Returns: uint256, pool fee share (WAD)
creatorFeePct
Creator fee as a share of the post-protocol-fee pot (WAD; see on-chain FeeLib / pool).
function creatorFeePct(BToken _bToken) external view returns (uint256)| Parameter | Type | Description |
|---|---|---|
_bToken | BToken | bToken to query |
Returns: uint256, creator fee pct (WAD)
totalFeeShare
Aggregate or configured fee share read used by the lens (see on-chain for exact meaning).
function totalFeeShare(BToken _bToken) external view returns (uint256)| Parameter | Type | Description |
|---|---|---|
_bToken | BToken | bToken to query |
Returns: uint256, fee share scalar (WAD)
creatorClaimable
Creator fees that can be claimed (reserve units).
function creatorClaimable(BToken _bToken) external view returns (uint256)| Parameter | Type | Description |
|---|---|---|
_bToken | BToken | bToken to query |
Returns: uint256, claimable creator fees (reserve)
Position Functions
getCreditAccount
User credit (borrow) position: locked bToken collateral and outstanding debt in the State.CreditAccount struct.
function getCreditAccount(BToken _bToken, address _user)
external view returns (State.CreditAccount memory)| Parameter | Type | Description |
|---|---|---|
_bToken | BToken | Pool to query |
_user | address | User to query |
Returns: State.CreditAccount, full in-memory credit struct (fields as on-chain State)
getStakedAccount
User staking position: staked amount and rewardDebt (reward accounting) in State.StakedAccount.
function getStakedAccount(BToken _bToken, address _user)
external view returns (State.StakedAccount memory)| Parameter | Type | Description |
|---|---|---|
_bToken | BToken | Pool to query |
_user | address | User to query |
Returns: State.StakedAccount, full in-memory staking struct
getMaxBorrow
Maximum borrowable reserves for a given collateral amount at current BLV / policy (see on-chain rules).
function getMaxBorrow(BToken _bToken, uint256 _collateral)
external view returns (uint256)| Parameter | Type | Description |
|---|---|---|
_bToken | BToken | Pool to query |
_collateral | uint256 | Collateral amount in bToken units to evaluate |
Returns: uint256, max borrow in reserve units (preview)
getLeverageResult
Preview of a leverage round: added collateral, added debt, reserves required to hit the target factor (see BCredit).
function getLeverageResult(
BToken _bToken,
uint256 _collateral,
uint256 _leverageFactor
) external view returns (
uint256 collateralAdded_,
uint256 debtAdded_,
uint256 reservesNeeded_
)| Parameter | Type | Description |
|---|---|---|
_bToken | BToken | Pool to query |
_collateral | uint256 | Initial collateral (bToken) |
_leverageFactor | uint256 | Target leverage (WAD, e.g. 2e18) |
Returns:
collateralAdded_: End-state collateral after the leverage pathdebtAdded_: New debtreservesNeeded_: Reserves the path expects to use
Protocol Configuration
protocolFeeRecipient
Address that receives the protocol’s fee share (global, not per bToken).
function protocolFeeRecipient() external view returns (address)Returns: address, protocol fee recipient
protocolFeePct
Global protocol fee as a WAD share taken before creator/staking split.
function protocolFeePct() external view returns (uint256)Returns: uint256, protocol fee pct (WAD)
originationFee
WAD origination fee on new credit debt (see State.meta).
function originationFee() external view returns (uint256)Returns: uint256, origination fee (WAD)
isPoolPaused
Whether trading / pool operations are paused for this bToken (pool-level guard).
function isPoolPaused(BToken _bToken) external view returns (bool)| Parameter | Type | Description |
|---|---|---|
_bToken | BToken | bToken to query |
Returns: bool, true if the pool is paused
isProtocolPaused
Whether the whole protocol is paused (global).
function isProtocolPaused() external view returns (bool)Returns: bool, true if protocol is paused
Hook Functions
hasHook
Whether this bToken’s pool is wired to a V4 pool/hook in the way BLens tracks.
function hasHook(BToken _bToken) external view returns (bool)| Parameter | Type | Description |
|---|---|---|
_bToken | BToken | bToken to query |
Returns: bool, true if a hook is present for the lens’s notion of hooking
poolKey
Uniswap v4 PoolKey for the bToken’s pool (currencies, fee tier, tick spacing, hook).
function poolKey(BToken _bToken) external view returns (PoolKey memory)| Parameter | Type | Description |
|---|---|---|
_bToken | BToken | bToken to query |
Returns: PoolKey, in-memory v4 key
Component Functions
getComponents
Array of Component / relay-facing addresses the lens is compiled against (BFactory, BSwap, etc.; see on-chain return order).
function getComponents() external view returns (address[] memory)Returns: address[], registered component addresses (do not treat order as API-stable without checking BLens source for your deployment)
Usage Example
// Get current prices
uint256 marketPrice = blens.getActivePrice(bToken);
uint256 blv = blens.getBLV(bToken);
uint256 premium = blens.getPremium(bToken);
// Check pool state
uint256 reserves = blens.totalReserves(bToken);
uint256 circulating = blens.getCirculatingSupply(bToken);
// Preview leverage
(uint256 collateral, uint256 debt, uint256 needed) = blens.getLeverageResult(
bToken,
1000e18, // initial collateral
2e18 // 2x leverage
);
// Check user position
State.CreditAccount memory credit = blens.getCreditAccount(bToken, user);
uint256 maxBorrow = blens.getMaxBorrow(bToken, credit.collateral);ABI
[
{
"type": "function",
"name": "LABEL",
"inputs": [],
"outputs": [
{
"name": "",
"type": "bytes32",
"internalType": "bytes32"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "ROUTES",
"inputs": [],
"outputs": [
{
"name": "routes_",
"type": "bytes4[]",
"internalType": "bytes4[]"
}
],
"stateMutability": "pure"
},
{
"type": "function",
"name": "VERSION",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "accumulator",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "activePrice",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "blvPrice",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "claimableYield",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "convexityExp",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "creator",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "creatorClaimable",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "creatorFeePct",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "creditAccount",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
},
{
"name": "_user",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "defaultLiquidityFeePct",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "defaultProtocolFeePct",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "deployerProfile",
"inputs": [
{
"name": "_user",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "tuple",
"internalType": "struct State.DeployerProfile",
"components": [
{
"name": "active",
"type": "bool",
"internalType": "bool"
},
{
"name": "approvedCreditDeployer",
"type": "bool",
"internalType": "bool"
},
{
"name": "pauser",
"type": "bool",
"internalType": "bool"
},
{
"name": "protocolFeePct",
"type": "uint64",
"internalType": "uint64"
},
{
"name": "liquidityFeePct",
"type": "uint64",
"internalType": "uint64"
}
]
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "getBookPrice",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "getCirculatingSupply",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "getComponents",
"inputs": [],
"outputs": [
{
"name": "components_",
"type": "address[]",
"internalType": "contract Component[]"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "getMaker",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "tuple",
"internalType": "struct State.Maker",
"components": [
{
"name": "initialized",
"type": "bool",
"internalType": "bool"
},
{
"name": "blvPrice",
"type": "uint128",
"internalType": "uint128"
},
{
"name": "swapFee",
"type": "uint128",
"internalType": "uint128"
},
{
"name": "maxCirc",
"type": "uint128",
"internalType": "uint128"
},
{
"name": "maxReserves",
"type": "uint128",
"internalType": "uint128"
},
{
"name": "convexityExp",
"type": "uint128",
"internalType": "uint128"
},
{
"name": "lastInvariant",
"type": "uint256",
"internalType": "uint256"
}
]
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "hasHook",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "isApprovedCreditDeployer",
"inputs": [
{
"name": "_user",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "isLocked",
"inputs": [],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "isPoolPaused",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "isProtocolPaused",
"inputs": [],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "lastInvariant",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "lastUpdatedTimestamp",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "liquidityFeePct",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "originationFee",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "pendingSurplus",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "pendingYield",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "poolFeeRecipient",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "poolFeeShare",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "creator_",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "staking_",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "poolIdToBToken",
"inputs": [
{
"name": "_poolId",
"type": "bytes32",
"internalType": "PoolId"
}
],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "contract BToken"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "poolKey",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "tuple",
"internalType": "struct PoolKey",
"components": [
{
"name": "currency0",
"type": "address",
"internalType": "Currency"
},
{
"name": "currency1",
"type": "address",
"internalType": "Currency"
},
{
"name": "fee",
"type": "uint24",
"internalType": "uint24"
},
{
"name": "tickSpacing",
"type": "int24",
"internalType": "int24"
},
{
"name": "hooks",
"type": "address",
"internalType": "contract IHooks"
}
]
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "protocolClaimable",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "protocolFeePct",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "protocolFeeRecipient",
"inputs": [],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "quoteLeverage",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
},
{
"name": "_collateralIn",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "_leverageFactor",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [
{
"name": "targetCollateral_",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "maxSwapReservesIn_",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "expectedDebt_",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "slippage_",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "reserve",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "contract ERC20"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "reserveHoldings",
"inputs": [
{
"name": "_reserve",
"type": "address",
"internalType": "contract ERC20"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "settledReserves",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "stakedPosition",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
},
{
"name": "_user",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "supportsInterface",
"inputs": [
{
"name": "_interfaceId",
"type": "bytes4",
"internalType": "bytes4"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "pure"
},
{
"type": "function",
"name": "swapFee",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "timeToAdapt",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "timeToDistribute",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "tokensPerSecond",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "totalBTokens",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "totalCollateral",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "totalDebt",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "totalFeeShare",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "creator_",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "staking_",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "protocol_",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "totalReserves",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "totalStaked",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "totalSupply",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "withdrawable",
"inputs": [
{
"name": "_bToken",
"type": "address",
"internalType": "contract BToken"
},
{
"name": "_user",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "error",
"name": "BLens_InvalidLeverageFactor",
"inputs": []
},
{
"type": "error",
"name": "Component_NotPermitted",
"inputs": []
},
{
"type": "error",
"name": "InvalidConvexityExp",
"inputs": []
},
{
"type": "error",
"name": "InvariantDecreased",
"inputs": [
{
"name": "prevInvariant",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "newInvariant",
"type": "uint256",
"internalType": "uint256"
}
]
}
]Related
- BSwap Contract : Trading functions
- BCredit Contract : Borrowing functions
- BStaking Contract : Staking functions