1.0.6 • Published 12 months ago
streamnfttech_evm v1.0.6
STREAM NFT
This SDK provides an extension to integrate the STREAM NFT (https://www.streamnft.tech) smart contract to your EVM application. STREAM NFT is an cross-chain scalability layer for NFT liquidity. This can be used to unlock features like rental, loan, buy now pay later for your utilitarian NFT.
import { initPool, initManager, processLoan, repayLoan, expireLoan, cancelManager, initRent, processRent, expireRent, cancelRent } from "streamnfttech_evm";
Documentation on functions:
Rent Protocol
Following functions provide accesibility to rental services
Initialize
Initializes rent:
initRent(
tokenAddress: address, // ERC721 address
tokenId: number, // token Id
ratePerMinute: number, // rental rate per minute
validityMinutes: number, // offer validity
isFixed: bool, // fixed day rental
fixedMinutes: number, // if fixed day, duration in minutes
ownerShare: number, // reward share of owner
whitelist: address, // whitelisted address for rental
signer // signer component of wallet
)
Process
Processes rent:
processRent(
tokenAddress: address, // ERC721 address
tokenId: number, // token Id
durationMinutes: number, // loan duration requested
signer // signer component of wallet
)
Cancel
Cancels the rent:
cancelRent(
tokenAddress: address, // ERC721 address
tokenId: number, // token Id
signer // signer component of wallet
)
Expire
Expire Rent:
expireRent(
tokenAddress: address, // ERC721 address
tokenId: number, // token Id
signer // signer component of wallet
)
Loan Protocol
Initialize
Initializes bidding pool:
initPool(
tokenAddress: address, // ERC721 address
loanDurationInMinutes: number, // loan duration in minutes
gracePeriodInMinutes: number, // grace duration in minutes
interestRateLender: number, // interest rate for loan provider
signer // signer component of wallet
)
Initializes bid manager:
initManager(
bidPoolIndex: number, // index of bid pool
bidAmount: number, // amount of placed on bid pool
totalBids: number, // total number of bids
signer // signer component of wallet
)
Process
Processes loan:
processLoan(
bidPoolIndex: number, // index of bid pool
bidManagerIndex: number, // index of bid manager
tokenId: number, // token Id
signer // signer component of wallet
)
Cancel
Cancels the bid manager created:
cancelManager(
bidPoolIndex: number, // index of bid pool
bidManagerIndex: number, // index of bid manager
signer // signer component of wallet
)
Expire
Expire loan:
expireLoan(
userAssetIndex: number, // user asset index
signer // signer component of wallet
)
Check out solana SDK: https://www.npmjs.com/package/streamnfttech