import { IPOSClientConfig, IPOSContracts, ITransactionOption } from "../interfaces"; import { Web3SideChainClient } from "../utils"; import { POSToken } from "./pos_token"; import { TYPE_AMOUNT } from "../types"; export declare class ERC721 extends POSToken { constructor(tokenAddress: string, isParent: boolean, client: Web3SideChainClient, getContracts: () => IPOSContracts); private validateMany_; /** * get tokens count for the user * * @param {string} userAddress * @param {ITransactionOption} [options] * @returns * @memberof ERC721 */ getTokensCount(userAddress: string, options?: ITransactionOption): Promise; /** * returns token id on supplied index for user * * @param {number} index * @param {string} userAddress * @param {ITransactionOption} [options] * @returns * @memberof ERC721 */ getTokenIdAtIndexForUser(index: number, userAddress: string, options?: ITransactionOption): Promise; /** * get all tokens for user * * @param {string} userAddress * @param {*} [limit=Infinity] * @returns * @memberof ERC721 */ getAllTokens(userAddress: string, limit?: number): Promise; isApproved(tokenId: string, option?: ITransactionOption): Promise; isApprovedAll(userAddress: string, option?: ITransactionOption): Promise; approve(tokenId: TYPE_AMOUNT, option?: ITransactionOption): Promise; approveAll(option?: ITransactionOption): Promise; deposit(tokenId: TYPE_AMOUNT, userAddress: string, option?: ITransactionOption): Promise; depositMany(tokenIds: TYPE_AMOUNT[], userAddress: string, option?: ITransactionOption): Promise; withdrawStart(tokenId: TYPE_AMOUNT, option?: ITransactionOption): Promise; withdrawStartWithMetaData(tokenId: TYPE_AMOUNT, option?: ITransactionOption): Promise; withdrawStartMany(tokenIds: TYPE_AMOUNT[], option?: ITransactionOption): Promise; withdrawExit(burnTransactionHash: string, option?: ITransactionOption): Promise; withdrawExitOnIndex(burnTransactionHash: string, index: number, option?: ITransactionOption): Promise; withdrawExitFaster(burnTransactionHash: string, option?: ITransactionOption): Promise; isWithdrawExited(txHash: string): Promise; isWithdrawExitedMany(txHash: string): Promise; isWithdrawExitedOnIndex(txHash: string, index: number): Promise; /** * tranfer to another user * * @param {string} tokenId * @param {string} from * @param {string} to * @param {ITransactionOption} [option] * @returns * @memberof ERC721 */ transfer(tokenId: string, from: string, to: string, option?: ITransactionOption): Promise; }