1package grc115523type IGRC1155 interface {4 SafeTransferFrom(caller, from, to address, tid TokenID, amount int64) error5 SafeBatchTransferFrom(caller, from, to address, batch []TokenID, amounts []int64) error6 BalanceOf(owner address, tid TokenID) (int64, error)7 BalanceOfBatch(owners []address, batch []TokenID) ([]int64, error)8 SetApprovalForAll(caller, operator address, approved bool) error9 IsApprovedForAll(owner, operator address) bool10}1112type IGRC1155Reader interface {13 Uri() string14 BalanceOf(owner address, tid TokenID) (int64, error)15 BalanceOfBatch(owners []address, batch []TokenID) ([]int64, error)16 IsApprovedForAll(owner, operator address) bool17}1819type TokenID string2021type TransferSingleEvent struct {22 Operator address23 From address24 To address25 TokenID TokenID26 Amount int6427}2829type TransferBatchEvent struct {30 Operator address31 From address32 To address33 Batch []TokenID34 Amounts []int6435}3637type ApprovalForAllEvent struct {38 Owner address39 Operator address40 Approved bool41}4243type UpdateURIEvent struct {44 URI string45}4647type MultiTokenGetter func() IGRC1155Reader48Signatures reconstructed verbatim from vm/qfuncs — interface params keep their inline definitions.