ufomarketplace-sdk-new
Version:
SDK to interact with set ufo marketplace contracts
75 lines (74 loc) • 3.79 kB
TypeScript
import { BigNumber, Signer, ContractTransaction } from 'ethers';
import { UFOMarketplaceConfig, NFTInfo, UAPClaimInfo, BucketInfo, WeaponInfo, LootBuySellInfo, PurchaseType } from './types';
export declare class ufoMarketplaceSDK {
private signer;
private config;
private galaticFactory;
private plasma;
private usdtToken;
private wETHToken;
private netId;
constructor(_signer: Signer, _config: UFOMarketplaceConfig, _netID: string);
sleep(ms: number): Promise<void>;
nftHasApprovalToMarketplace(contractAddr: string, nftId: string): Promise<boolean>;
approveNftToMarketplace(contractAddr: string, nftId: string): Promise<ContractTransaction>;
wETHAllowance(amount: string): Promise<boolean>;
wETHBalance(): Promise<string>;
getNFTCurrentSupply(contractAddr: string): Promise<number>;
revealNft(): Promise<ContractTransaction>;
test(): Promise<void>;
batchMintGalaticNFT(categoryIds: [number], amounts: [number], type: PurchaseType, merkleProof: string[]): Promise<ContractTransaction>;
private batchMintGalaticNFTByPlasma;
private batchMintGalaticNFTByBeam;
private batchMintGalaticNFTByUsdt;
plasmaAmountPerNFT(): Promise<string>;
getWETHAllowanceOfNFTFactory(): Promise<string>;
getWETHAllowanceOfMarketplace(): Promise<string>;
private getAddressOfPriceToken;
approveToken(price_unit: string, spender: string, amount: string): Promise<ContractTransaction>;
hasApprovalToken(price_unit: string, spnder: string, amount: string): Promise<boolean>;
approveWETHToMarketplace(): Promise<ContractTransaction>;
approveWETHToNFTFactory(amount: BigNumber): Promise<ContractTransaction>;
hasWETHApprovalOfMarketplace(amount: string): Promise<boolean>;
hasPlasmaApprovalOfNFTFactory(amount: string): Promise<boolean>;
approveUsdtToNFTFactory(price: number): Promise<ContractTransaction>;
approvePlasmaToNFTFactory(price: number): Promise<ContractTransaction>;
approvePlasmaToMarketplace(): Promise<ContractTransaction>;
private getPlasmaAllowanceOfNFTFactory;
getNftAddresses(): Promise<string[]>;
/**
* buy and sell weapon
* buy and sell type depends on buySellType variable of LootBuySellInfo structre
*/
buySellWeaponNFT(v: BigNumber, r: string, s: string, data: LootBuySellInfo): Promise<ContractTransaction>;
/**
* this function is called by buyer to purchase the
*/
purchaseLoot(quantity: BigNumber, tokenType: BigNumber): Promise<ContractTransaction>;
/**
* this function is called by sender to send some loot as gift
* this function is depricated because this function only transfer the loot box to receiver
*/
/**
* this function is called by buyer to purchase the
*/
purchaseLootAndSendGift(quantity: BigNumber, giftReceiver: string, tokenType: BigNumber): Promise<ContractTransaction>;
/**
* this function is called by opener who open the loot
*/
openLoot(v: BigNumber, r: string, s: string, data: WeaponInfo): Promise<ContractTransaction>;
/**
* update the weapon by weapon owner
*/
updateWeapon(weaponId: BigNumber): Promise<ContractTransaction>;
/**
* this function is called by buyer on fixed sell item
*/
buyNFT(v: BigNumber, r: string, s: string, data: NFTInfo): Promise<ContractTransaction>;
/**
* this function is called by seller on auction sell. seller accept one bid in many bids
*/
sellNFT(v: BigNumber, r: string, s: string, data: NFTInfo): Promise<ContractTransaction>;
claimUAP(v: BigNumber, r: string, s: string, data: UAPClaimInfo): Promise<ContractTransaction>;
purchaseCartItems(v: BigNumber, r: string, s: string, data: BucketInfo): Promise<ContractTransaction>;
}