@infy-protocol/sdk
Version:
Lend and rent any ERC721s and ERC1155s on supported mainnet and testnet.
21 lines (20 loc) • 1.74 kB
TypeScript
import { Signer, BigNumber, ContractTransaction, Contract } from 'ethers';
import { ITimeBasedNFTRentals, NFTStandard } from './types';
import { ContractType, SupportedChainIds } from './networkConfig';
declare class TimeBasedNFTRentals implements ITimeBasedNFTRentals {
readonly signer: Signer;
protected contract: Contract;
constructor(_signer: Signer, chainId: SupportedChainIds, type: ContractType);
lend(nftStandards: NFTStandard[], nftAddresses: string[], tokenIds: BigNumber[], lendAmounts: BigNumber[], maxRentDurations: number[], minRentDurations: number[], dailyRentPrices: BigNumber[], paymentOptions: number[], collateralPrices: BigNumber[], allowedRenters: string[][][]): Promise<ContractTransaction>;
rent(nftStandards: NFTStandard[], nftAddresses: string[], tokenIds: BigNumber[], lendingIds: BigNumber[], rentDurations: number[], rentAmounts: BigNumber[]): Promise<ContractTransaction>;
stopRenting(nftStandards: NFTStandard[], nftAddresses: string[], tokenIds: BigNumber[], lendingIds: BigNumber[], rentingIds: BigNumber[]): Promise<ContractTransaction>;
stopLending(nftStandards: NFTStandard[], nftAddresses: string[], tokenIds: BigNumber[], lendingIds: BigNumber[]): Promise<ContractTransaction>;
claimRentOrCollateral(nftStandards: NFTStandard[], nftAddresses: string[], tokenIds: BigNumber[], lendingIds: BigNumber[], rentingIds: BigNumber[]): Promise<ContractTransaction>;
}
export declare class CollateralizedNFTRentals extends TimeBasedNFTRentals {
constructor(_signer: Signer, _chainId: SupportedChainIds);
}
export declare class CollateralFreeNFTRentals extends TimeBasedNFTRentals {
constructor(_signer: Signer, _chainId: SupportedChainIds);
}
export {};