@hashgraph/sdk
Version:
3 lines (2 loc) • 1.51 kB
JavaScript
import e from"../account/AccountId.js";import r from"./TokenId.js";import n from"./NftId.js";class t{constructor(e={}){this._senderId=null,this._receiverId=null,this._tokenId=null,this._nftId=null,e.receiverId&&(this._receiverId=e.receiverId),e.senderId&&(this._senderId=e.senderId),e.tokenId?this._tokenId=new r(e.tokenId):e.nftId&&(this._nftId=new n(e.nftId?.tokenId,e.nftId?.serial))}static fromBytes(d){if(null==d.senderId)throw new Error("senderId is required");if(null==d.receiverId)throw new Error("receiverId is required");if(null==d.fungibleTokenType&&null==d.nonFungibleToken)throw new Error("Either fungibleTokenType or nonFungibleToken is required");return new t({senderId:e._fromProtobuf(d.senderId),receiverId:e._fromProtobuf(d.receiverId),nftId:null!=d.nonFungibleToken?n._fromProtobuf(d.nonFungibleToken):null,tokenId:null!=d.fungibleTokenType?r._fromProtobuf(d.fungibleTokenType):null})}setSenderid(e){return this._senderId=e,this}setReceiverId(e){return this._receiverId=e,this}setTokenId(e){return this._nftId=null,this._tokenId=e,this}setNftId(e){return this._tokenId=null,this._nftId=e,this}get senderId(){return this._senderId}get receiverId(){return this._receiverId}get tokenId(){return this._tokenId}get nftId(){return this._nftId}toBytes(){return{senderId:this.senderId?._toProtobuf(),receiverId:this._receiverId?._toProtobuf(),fungibleTokenType:this._tokenId?._toProtobuf(),nonFungibleToken:this._nftId?._toProtobuf()}}}export{t as default};
//# sourceMappingURL=PendingAirdropId.js.map