IPrimaryLendingPlatformLeverage

Overview

License: MIT

interface IPrimaryLendingPlatformLeverage

Functions info

isLeveragePosition (0x3226d284)

function isLeveragePosition(
    address user,
    address projectToken
) external view returns (bool)

Checks if a user has a leverage position for a project token.

Parameters:

Name
Type
Description

user

address

The address of the user.

projectToken

address

The address of the project token.

deleteLeveragePosition (0x0614a25a)

function deleteLeveragePosition(address user, address projectToken) external

Deletes a leverage position for a user and project token.

Parameters:

Name
Type
Description

user

address

The address of the user.

projectToken

address

The address of the project token.

calculateAddingAmount (0x545c5699)

function calculateAddingAmount(
    address user,
    address projectToken,
    uint256 marginCollateralCount
) external view returns (uint256 addingAmount)

Calculates the additional collateral amount needed for the specified user and project token.

Parameters:

Name
Type
Description

user

address

The address of the user.

projectToken

address

The address of the project token.

marginCollateralCount

uint256

The margin collateral amount.

Return values:

Name
Type
Description

addingAmount

uint256

The additional collateral amount needed.

leveragedBorrowFromRelatedContract (0xb21cacd5)

function leveragedBorrowFromRelatedContract(
    Asset.Info memory prjInfo,
    Asset.Info memory lendingInfo,
    uint256 notionalExposure,
    uint256 marginCollateralAmount,
    bytes[] memory buyCalldata,
    address borrower,
    uint8 leverageType,
    bytes32[] memory priceIds,
    bytes[] calldata updateData
) external payable

Allows a related contract to borrow funds on behalf of a user to enter a leveraged position and update related token's prices.

Parameters:

Name
Type
Description

prjInfo

struct Asset.Info

Information about the project token, including its address and type.

lendingInfo

struct Asset.Info

Information about the lending token, including its address and type.

notionalExposure

uint256

The notional exposure of the user's investment.

marginCollateralAmount

uint256

The amount of collateral to be deposited by the user.

buyCalldata

bytes[]

The calldata used for buying the project token on the DEX.

borrower

address

The address of the user for whom the funds are being borrowed.

leverageType

uint8

The type of leverage position.

priceIds

bytes32[]

An array of bytes32 price identifiers to update.

updateData

bytes[]

An array of bytes update data for the corresponding price identifiers.

Last updated