1package grc721v223type IGRC721Reader interface {4 Name() string5 Symbol() string6 TokenCount() int647 BalanceOf(owner address) (int64, error)8 OwnerOf(tid TokenID) (address, error)9 GetApproved(tid TokenID) (address, error)10 IsApprovedForAll(owner, operator address) bool11}1213type (14 TokenID string15 TokenURI string16)1718func (t TokenID) String() string { return string(t) }19func (t TokenURI) String() string { return string(t) }2021const (22 MintEvent = "Mint"23 BurnEvent = "Burn"24 TransferEvent = "Transfer"25 ApprovalEvent = "Approval"26 ApprovalForAllEvent = "ApprovalForAll"27 TokenURIUpdateEvent = "TokenUriUpdate"28 MetadataUpdateEvent = "MetadataUpdate"29)3031type NFTGetter func() IGRC721Reader32Signatures reconstructed verbatim from vm/qfuncs — interface params keep their inline definitions.