github.com/gnolang/gno@v0.0.0-20240520182011-228e9d0192ce/examples/gno.land/p/demo/grc/grc1155/igrc1155.gno (about)

     1  package grc1155
     2  
     3  import "std"
     4  
     5  type IGRC1155 interface {
     6  	SafeTransferFrom(from, to std.Address, tid TokenID, amount uint64) error
     7  	SafeBatchTransferFrom(from, to std.Address, batch []TokenID, amounts []uint64) error
     8  	BalanceOf(owner std.Address, tid TokenID) (uint64, error)
     9  	BalanceOfBatch(owners []std.Address, batch []TokenID) ([]uint64, error)
    10  	SetApprovalForAll(operator std.Address, approved bool) error
    11  	IsApprovedForAll(owner, operator std.Address) bool
    12  }
    13  
    14  type TokenID string
    15  
    16  type TransferSingleEvent struct {
    17  	Operator std.Address
    18  	From     std.Address
    19  	To       std.Address
    20  	TokenID  TokenID
    21  	Amount   uint64
    22  }
    23  
    24  type TransferBatchEvent struct {
    25  	Operator std.Address
    26  	From     std.Address
    27  	To       std.Address
    28  	Batch    []TokenID
    29  	Amounts  []uint64
    30  }
    31  
    32  type ApprovalForAllEvent struct {
    33  	Owner    std.Address
    34  	Operator std.Address
    35  	Approved bool
    36  }
    37  
    38  type UpdateURIEvent struct {
    39  	URI string
    40  }