gokulnpc

1.0.0 • Public • Published

STREAM NFT

This SDK provides an extension to integrate the STREAM NFT (https://www.streamnft.tech) smart contract to your 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:

[Initialize]

Initializes bid manager:

InitManagerArgs {
  bidPoolIndex: number,
  bidAmount: number,
  totalBids: number,
  signer
}
 initManager(
  bidPoolIndex: number,
  bidAmount: number,
  totalBids: number,
  signer
)

Initializes bidding pool:

InitPoolArgs {
  tokenAddress: address,
  loanDurationInMinutes: number,
  gracePeriodInMinutes: number,
  interestRateLender: number,
  signer
}
 initPool(
  tokenAddress: address,
  loanDurationInMinutes: number,
  gracePeriodInMinutes: number,
  interestRateLender: number,
  signer
) 

Initializes rent:

InitRentArgs {
  tokenAddress: address, 
  tokenId: number, 
  ratePerMinute: number, 
  validityMinutes: number, 
  isFixed: bool, 
  fixedMinutes: number, 
  ownerShare: number, 
  whitelist: address, 
  signer
}
 initRent(
  tokenAddress: address, 
  tokenId: number, 
  ratePerMinute: number, 
  validityMinutes: number, 
  isFixed: bool, 
  fixedMinutes: number, 
  ownerShare: number, 
  whitelist: address, 
  signer
  ) 

[Process]

Processes loan:

ProcessLoanAccounts {
  bidPoolIndex: number, 
  bidManagerIndex: number, 
  tokenId: number, 
  signer
}
processLoan(
  bidPoolIndex: number, 
  bidManagerIndex: number, 
  tokenId: number, 
  signer
)

Processes rent:

ProcessRentArgs {
  tokenAddress: address, 
  tokenId: number, 
  durationMinutes: number, 
  signer
}
processRent(
  tokenAddress: address, 
  tokenId: number, 
  durationMinutes: number, 
  signer
) 

Repays loan:

RepayLoanAccounts {
  userAssetIndex: number, 
  signer
}
repayLoan(
  userAssetIndex: number, 
  signer
) 

[Cancel]

Cancels the bid manager created:

CancelManagerAccounts {
  bidPoolIndex: number, 
  bidManagerIndex: number, 
  signer
}
cancelManager(
  bidPoolIndex: number, 
  bidManagerIndex: number, 
  signer
)

Cancels the rent:

CancelRentArgs {
  tokenAddress: address, 
  tokenId: number, 
  signer
}
cancelRent(
  tokenAddress: address, 
  tokenId: number, 
  signer
)

[Expire]

Expire loan:

ExpireLoanArgs {
  userAssetIndex: number, 
  signer
}
expireLoan(
  userAssetIndex: number, 
  signer
)

Expire Rent:

ExpireRentArgs {
  tokenAddress: address, 
  tokenId: number, 
  signer
}
expireRent(
  tokenAddress: address, 
  tokenId: number, 
  signer
)

[Get]

Get asset manager

getAssetManagerArgs {
  tokenAddress: address, 
  tokenId: number, 
  provider
}
getAssetManager {
  tokenAddress: address, 
  tokenId: number, 
  provider
}

Get bid manager

getBidManagerArgs {
  bidPoolIndex: number, 
  bidManagerIndex: number, 
  provider
}
getBidManager {
  bidPoolIndex: number, 
  bidManagerIndex: number, 
  provider
}

Get user assets

getUserAssetsArgs {
  publicKey: address, 
  userAssetIndex: number, 
  provider
}
getUserAssets {
  publicKey: address, 
  userAssetIndex: number, 
  provider
}

Get bid pool

getBidPoolArgs {
  bidPoolIndex: number, 
  provider
}
getBidPool {
  bidPoolIndex: number, 
  provider
}

Stream NFT currently supports Solana, also expanding to other chains as well soon.. stay tuned :)

Readme

Keywords

none

Package Sidebar

Install

npm i gokulnpc

Weekly Downloads

0

Version

1.0.0

License

ISC

Unpacked Size

44.6 kB

Total Files

4

Last publish

Collaborators

  • shilpachittara