nftlabs

package
v1.1.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 16, 2022 License: Apache-2.0 Imports: 23 Imported by: 0

Documentation

Index

Constants

View Source
const (
	AdminRole    Role = ""
	MinterRole        = "MINTER_ROLE"
	TransferRole      = "TRANSFER_ROLE"
	PauserRole        = "PAUSER_ROLE"
)

Variables

View Source
var (
	InterfaceIdErc165           = [4]byte{1, 255, 201, 167}  // 0x01ffc9a7
	InterfaceIdErc721           = [4]byte{128, 172, 88, 205} // 0x80ac58cd
	InterfaceIdErc721Metadata   = [4]byte{91, 94, 19, 159}   // 0x5b5e139f
	InterfaceIdErc721Enumerable = [4]byte{120, 14, 157, 99}  // 0x780e9d63
	InterfaceIdErc1155          = [4]byte{217, 182, 122, 38} // 0xd9b67a26
)

Functions

This section is empty.

Types

type CollectionMetadata

type CollectionMetadata struct {
	NftMetadata
	Creator string   `json:"creator"`
	Supply  *big.Int `json:"supply"`
}

type CreateCollectionArgs

type CreateCollectionArgs struct {
	Metadata Metadata
	Supply   *big.Int
}

CreateCollectionArgs to create collections Supply should be non-nil

type CreatePackArgs

type CreatePackArgs struct {
	AssetContractAddress  string
	Assets                []PackAssetAddition
	SecondsUntilOpenStart *big.Int
	SecondsUntilOpenEnd   *big.Int
	RewardsPerOpen        *big.Int
	Metadata              interface{}
}

type Currency

type Currency interface {
	Balance() (CurrencyValue, error)
	Get() (CurrencyMetadata, error)
	BalanceOf(address string) (CurrencyValue, error)
	GetValue(value *big.Int) (CurrencyValue, error)
	Transfer(to string, amount *big.Int) error
	Allowance(spender string) (*big.Int, error)
	SetAllowance(spender string, amount *big.Int) error
	AllowanceOf(owner string, spender string) (*big.Int, error)
	Mint(amount *big.Int) error
	MintTo(to string, amount *big.Int) error
	Burn(amount *big.Int) error
	BurnFrom(from string, amount *big.Int) error
	TransferFrom(from string, to string, amount *big.Int) error
	GrantRole(role Role, address string) error
	RevokeRole(role Role, address string) error
	TotalSupply() (*big.Int, error)
	SetRestrictedTransfer(restricted bool) error
	// contains filtered or unexported methods
}

type CurrencyMetadata

type CurrencyMetadata struct {
	Name     string `json:"name"`
	Symbol   string `json:"symbol"`
	Decimals uint8  `json:"decimals"`
}

type CurrencyModule

type CurrencyModule struct {
	Client  *ethclient.Client
	Address string
	// contains filtered or unexported fields
}

func (*CurrencyModule) Allowance

func (sdk *CurrencyModule) Allowance(spender string) (*big.Int, error)

func (*CurrencyModule) AllowanceOf added in v0.1.1

func (sdk *CurrencyModule) AllowanceOf(owner string, spender string) (*big.Int, error)

func (*CurrencyModule) Balance

func (sdk *CurrencyModule) Balance() (CurrencyValue, error)

func (*CurrencyModule) BalanceOf

func (sdk *CurrencyModule) BalanceOf(address string) (CurrencyValue, error)

func (*CurrencyModule) Burn

func (sdk *CurrencyModule) Burn(amount *big.Int) error

func (*CurrencyModule) BurnFrom

func (sdk *CurrencyModule) BurnFrom(from string, amount *big.Int) error

func (*CurrencyModule) Get

func (sdk *CurrencyModule) Get() (CurrencyMetadata, error)

func (*CurrencyModule) GetValue

func (sdk *CurrencyModule) GetValue(value *big.Int) (CurrencyValue, error)

func (*CurrencyModule) GrantRole

func (manager *CurrencyModule) GrantRole(role Role, address string) error

func (*CurrencyModule) Mint

func (sdk *CurrencyModule) Mint(amount *big.Int) error

func (*CurrencyModule) MintTo added in v0.0.7

func (sdk *CurrencyModule) MintTo(to string, amount *big.Int) error

func (*CurrencyModule) RevokeRole

func (manager *CurrencyModule) RevokeRole(role Role, address string) error

func (*CurrencyModule) SetAllowance

func (sdk *CurrencyModule) SetAllowance(spender string, amount *big.Int) error

func (*CurrencyModule) SetRestrictedTransfer added in v0.1.2

func (sdk *CurrencyModule) SetRestrictedTransfer(restricted bool) error

SetRestrictedTransfer will disable all transfers if set to true

func (*CurrencyModule) TotalSupply

func (sdk *CurrencyModule) TotalSupply() (*big.Int, error)

func (*CurrencyModule) Transfer

func (sdk *CurrencyModule) Transfer(to string, amount *big.Int) error

func (*CurrencyModule) TransferFrom

func (sdk *CurrencyModule) TransferFrom(from string, to string, amount *big.Int) error

type CurrencyValue

type CurrencyValue struct {
	CurrencyMetadata
	Value        *big.Int `json:"value"`
	DisplayValue string   `json:"displayValue"`
}

type FailedToUploadError added in v0.1.3

type FailedToUploadError struct {
	Payload         interface{}
	UnderlyingError error
	// contains filtered or unexported fields
}

func (*FailedToUploadError) Error added in v0.1.3

func (m *FailedToUploadError) Error() string

type ISdk

type ISdk interface {
	GetNftModule(address string) (Nft, error)
	GetMarketModule(address string) (Market, error)
	GetMarketplaceModule(address string) (Marketplace, error)
	GetCurrencyModule(address string) (Currency, error)
	GetPackModule(address string) (Pack, error)
	GetNftCollectionModule(address string) (NftCollection, error)
	GetStorage() (Storage, error)
	TransferNativeToken(to string, amount *big.Int) error

	SetStorage(gateway Storage)
	// contains filtered or unexported methods
}

type IpfsStorage

type IpfsStorage struct {
	Url string
}

func (*IpfsStorage) Get

func (gw *IpfsStorage) Get(uri string) ([]byte, error)

func (*IpfsStorage) Upload

func (gw *IpfsStorage) Upload(data interface{}, contractAddress string, signerAddress string) (string, error)

Upload method can be used to upload a generic payload to IPFS. NftLabs provides a default proxy in the SDK. You can override this with the ISdk.SetStorage

func (*IpfsStorage) UploadBatch added in v0.1.0

func (gw *IpfsStorage) UploadBatch(data []interface{}, contractAddress string, signerAddress string) ([]string, error)

UploadBatch uploads a list of arbitrary objects and returns their URIs *in the order they were passed*

type Listing

type Listing struct {
	Id               *big.Int       `json:"id"`
	Seller           common.Address `json:"seller"`
	TokenContract    common.Address `json:"tokenContract"`
	TokenId          *big.Int       `json:"tokenId"`
	TokenMetadata    *NftMetadata   `json:"tokenMetadata"`
	Quantity         *big.Int       `json:"quantity"`
	CurrentContract  common.Address `json:"currentContract"`
	CurrencyMetadata *CurrencyValue `json:"currencyMetadata"`
	Price            *big.Int       `json:"price"`
	SaleStart        *time.Time     `json:"saleStart"`
	SaleEnd          *time.Time     `json:"saleEnd"`
}

type ListingFilter

type ListingFilter struct {
	Seller        string   `json:"seller"`
	TokenContract string   `json:"tokenContract"`
	TokenId       *big.Int `json:"tokenId"`
}

type Market

type Market interface {
	GetListing(listingId *big.Int) (Listing, error)
	GetAll(filter ListingFilter) ([]Listing, error)
	List(args NewListingArgs) (Listing, error)
	UnlistAll(listingId *big.Int) error
	Unlist(listingId *big.Int, quantity *big.Int) error
	Buy(listingId *big.Int, quantity *big.Int) error
	GetMarketFeeBps() (*big.Int, error)
	SetMarketFeeBps(fee *big.Int) error
}

type MarketModule

type MarketModule struct {
	Client  *ethclient.Client
	Address string
	// contains filtered or unexported fields
}

func (*MarketModule) Buy

func (sdk *MarketModule) Buy(listingId *big.Int, quantity *big.Int) error

func (*MarketModule) GetAll

func (sdk *MarketModule) GetAll(filter ListingFilter) ([]Listing, error)

func (*MarketModule) GetListing

func (sdk *MarketModule) GetListing(listingId *big.Int) (Listing, error)

func (*MarketModule) GetMarketFeeBps

func (sdk *MarketModule) GetMarketFeeBps() (*big.Int, error)

func (*MarketModule) List

func (sdk *MarketModule) List(args NewListingArgs) (Listing, error)

func (*MarketModule) SetMarketFeeBps

func (sdk *MarketModule) SetMarketFeeBps(fee *big.Int) error

func (*MarketModule) Unlist

func (sdk *MarketModule) Unlist(listingId *big.Int, quantity *big.Int) error

func (*MarketModule) UnlistAll

func (sdk *MarketModule) UnlistAll(listingId *big.Int) error

type Marketplace added in v1.1.0

type Marketplace interface {
	GetListing(listingId *big.Int) (Listing, error)
	GetAll(filter ListingFilter) ([]Listing, error)
	GetMarketFeeBps() (*big.Int, error)
	SetMarketFeeBps(fee *big.Int) error
}

type MarketplaceModule added in v1.1.0

type MarketplaceModule struct {
	Client  *ethclient.Client
	Address string
	// contains filtered or unexported fields
}

func (*MarketplaceModule) GetAll added in v1.1.0

func (sdk *MarketplaceModule) GetAll(filter ListingFilter) ([]Listing, error)

func (*MarketplaceModule) GetListing added in v1.1.0

func (sdk *MarketplaceModule) GetListing(listingId *big.Int) (Listing, error)

func (*MarketplaceModule) GetMarketFeeBps added in v1.1.0

func (sdk *MarketplaceModule) GetMarketFeeBps() (*big.Int, error)

func (*MarketplaceModule) SetMarketFeeBps added in v1.1.0

func (sdk *MarketplaceModule) SetMarketFeeBps(fee *big.Int) error

type Metadata added in v0.1.0

type Metadata struct {
	MetadataUri    string
	MetadataObject interface{}
}

func (*Metadata) MarshalJSON added in v0.1.0

func (arg *Metadata) MarshalJSON() ([]byte, error)

func (*Metadata) UnmarshalJSON added in v0.1.0

func (arg *Metadata) UnmarshalJSON(data []byte) error

type MintCollectionArgs

type MintCollectionArgs struct {
	TokenId *big.Int `json:"tokenId"`
	Amount  *big.Int `json:"amount"`
}

type MintNftMetadata

type MintNftMetadata struct {
	Name        string      `json:"name"`
	Description string      `json:"description"`
	Image       string      `json:"image"`
	Properties  interface{} `json:"properties"`
}

type NewListingArgs

type NewListingArgs struct {
	AssetContractAddress    string   `json:"assetContractAddress"`
	TokenId                 *big.Int `json:"tokenId"`
	CurrencyContractAddress string   `json:"currencyContractAddress"`
	Price                   *big.Int `json:"price"`
	Quantity                *big.Int `json:"quantity"`
	SecondsUntilOpenStart   *big.Int `json:"secondsUntilOpenStart"`
	SecondsUntilOpenEnd     *big.Int `json:"secondsUntilOpenEnd"`
	TokensPerBuyer          *big.Int `json:"tokensPerBuyer"`
}

type Nft

type Nft interface {
	Get(tokenId *big.Int) (NftMetadata, error)
	GetAll() ([]NftMetadata, error)
	GetOwned(address string) ([]NftMetadata, error)
	Balance(tokenId *big.Int) (*big.Int, error)
	BalanceOf(address string) (*big.Int, error)
	Transfer(to string, tokenId *big.Int) error
	TotalSupply() (*big.Int, error)
	SetApproval(operator string, approved bool) error
	Mint(metadata MintNftMetadata) (NftMetadata, error)
	MintBatch(meta []MintNftMetadata) ([]NftMetadata, error)
	MintBatchTo(to string, meta []MintNftMetadata) ([]NftMetadata, error)
	Burn(tokenId *big.Int) error
	TransferFrom(from string, to string, tokenId *big.Int) error
	SetRoyaltyBps(amount *big.Int) error
	SetRestrictedTransfer(restricted bool) error

	MintTo(to string, meta MintNftMetadata) (NftMetadata, error)
	// contains filtered or unexported methods
}

type NftCollection

type NftCollection interface {
	Balance(tokenId *big.Int) (*big.Int, error)
	BalanceOf(address string, tokenId *big.Int) (*big.Int, error)
	Burn(args NftCollectionBatchArgs) error
	BurnBatch(args []NftCollectionBatchArgs) error
	BurnBatchFrom(account string, args []NftCollectionBatchArgs) error
	BurnFrom(account string, args NftCollectionBatchArgs) error
	Create(metadata Metadata) (CollectionMetadata, error)
	CreateAndMint(metadataWithSupply CreateCollectionArgs) (CollectionMetadata, error)
	CreateAndMintBatch(metadataWithSupply []CreateCollectionArgs) ([]CollectionMetadata, error)
	CreateBatch(metadata []Metadata) ([]CollectionMetadata, error)
	CreateWithErc20(tokenContract string, tokenAmount *big.Int, args CreateCollectionArgs) error
	CreateWithErc721(tokenContract string, tokenAmount *big.Int, args CreateCollectionArgs) error
	Get(tokenId *big.Int) (CollectionMetadata, error)
	GetAll() ([]CollectionMetadata, error)

	IsApproved(address string, operator string) (bool, error)

	Mint(args MintCollectionArgs) error
	MintBatch(args []MintCollectionArgs) error
	MintBatchTo(toAddress string, args []MintCollectionArgs) error
	MintTo(toAddress string, args MintCollectionArgs) error

	SetApproval(operator string, approved bool) error
	SetRoyaltyBps(amount *big.Int) error
	SetRestrictedTransfer(restricted bool) error

	Transfer(to string, tokenId *big.Int, amount *big.Int) error
	TransferBatchFrom(from string, to string, args []NftCollectionBatchArgs, amount *big.Int) error
	TransferFrom(from string, to string, args NftCollectionBatchArgs) error
	// contains filtered or unexported methods
}

type NftCollectionBatchArgs added in v0.1.0

type NftCollectionBatchArgs struct {
	Amount  *big.Int `json:"amount"`
	TokenId *big.Int `json:"tokenId"`
}

type NftCollectionModule

type NftCollectionModule struct {
	Client  *ethclient.Client
	Address string
	// contains filtered or unexported fields
}

func (*NftCollectionModule) Balance

func (sdk *NftCollectionModule) Balance(tokenId *big.Int) (*big.Int, error)

func (*NftCollectionModule) BalanceOf

func (sdk *NftCollectionModule) BalanceOf(address string, tokenId *big.Int) (*big.Int, error)

func (*NftCollectionModule) Burn added in v0.1.0

func (*NftCollectionModule) BurnBatch added in v0.1.0

func (sdk *NftCollectionModule) BurnBatch(args []NftCollectionBatchArgs) error

func (*NftCollectionModule) BurnBatchFrom added in v0.1.0

func (sdk *NftCollectionModule) BurnBatchFrom(account string, args []NftCollectionBatchArgs) error

func (*NftCollectionModule) BurnFrom added in v0.1.0

func (sdk *NftCollectionModule) BurnFrom(account string, args NftCollectionBatchArgs) error

func (*NftCollectionModule) Create

func (sdk *NftCollectionModule) Create(metadata Metadata) (CollectionMetadata, error)

func (*NftCollectionModule) CreateAndMint added in v0.1.0

func (sdk *NftCollectionModule) CreateAndMint(metadataWithSupply CreateCollectionArgs) (CollectionMetadata, error)

func (*NftCollectionModule) CreateAndMintBatch added in v0.1.0

func (sdk *NftCollectionModule) CreateAndMintBatch(metadataWithSupply []CreateCollectionArgs) ([]CollectionMetadata, error)

func (*NftCollectionModule) CreateBatch added in v0.1.0

func (sdk *NftCollectionModule) CreateBatch(metadata []Metadata) ([]CollectionMetadata, error)

func (*NftCollectionModule) CreateWithErc20 added in v0.1.0

func (sdk *NftCollectionModule) CreateWithErc20(tokenContract string, tokenAmount *big.Int, args CreateCollectionArgs) error

func (*NftCollectionModule) CreateWithErc721 added in v0.1.0

func (sdk *NftCollectionModule) CreateWithErc721(tokenContract string, tokenAmount *big.Int, args CreateCollectionArgs) error

func (*NftCollectionModule) Get

func (sdk *NftCollectionModule) Get(tokenId *big.Int) (CollectionMetadata, error)

func (*NftCollectionModule) GetAll

func (sdk *NftCollectionModule) GetAll() ([]CollectionMetadata, error)

func (*NftCollectionModule) GetAsync

func (sdk *NftCollectionModule) GetAsync(tokenId *big.Int, ch chan<- CollectionMetadata, wg *sync.WaitGroup)

func (*NftCollectionModule) GrantRole added in v0.1.0

func (manager *NftCollectionModule) GrantRole(role Role, address string) error

func (*NftCollectionModule) IsApproved

func (sdk *NftCollectionModule) IsApproved(address string, operator string) (bool, error)

func (*NftCollectionModule) Mint

func (*NftCollectionModule) MintBatch added in v0.1.0

func (sdk *NftCollectionModule) MintBatch(args []MintCollectionArgs) error

func (*NftCollectionModule) MintBatchTo added in v0.1.0

func (sdk *NftCollectionModule) MintBatchTo(toAddress string, args []MintCollectionArgs) error

func (*NftCollectionModule) MintTo added in v0.1.0

func (sdk *NftCollectionModule) MintTo(toAddress string, args MintCollectionArgs) error

func (*NftCollectionModule) RevokeRole added in v0.1.0

func (manager *NftCollectionModule) RevokeRole(role Role, address string) error

func (*NftCollectionModule) SetApproval added in v0.1.0

func (sdk *NftCollectionModule) SetApproval(operator string, approved bool) error

func (*NftCollectionModule) SetApproved

func (sdk *NftCollectionModule) SetApproved(operator string, approved bool) error

func (*NftCollectionModule) SetRestrictedTransfer added in v0.1.2

func (sdk *NftCollectionModule) SetRestrictedTransfer(restricted bool) error

SetRestrictedTransfer will disable all transfers if set to true

func (*NftCollectionModule) SetRoyaltyBps added in v0.1.0

func (sdk *NftCollectionModule) SetRoyaltyBps(amount *big.Int) error

func (*NftCollectionModule) Transfer

func (sdk *NftCollectionModule) Transfer(to string, tokenId *big.Int, amount *big.Int) error

func (*NftCollectionModule) TransferBatchFrom added in v0.1.0

func (sdk *NftCollectionModule) TransferBatchFrom(from string, to string, args []NftCollectionBatchArgs, amount *big.Int) error

func (*NftCollectionModule) TransferFrom added in v0.1.0

func (sdk *NftCollectionModule) TransferFrom(from string, to string, args NftCollectionBatchArgs) error

type NftMetadata

type NftMetadata struct {
	Id          *big.Int    `json:"id"`
	Name        string      `json:"name"`
	Description string      `json:"description"`
	Image       string      `json:"image"`
	Properties  interface{} `json:"properties"`
}

type NftModule

type NftModule struct {
	Client  *ethclient.Client
	Address string
	Options *SdkOptions
	// contains filtered or unexported fields
}

func (*NftModule) Balance

func (sdk *NftModule) Balance(tokenId *big.Int) (*big.Int, error)

func (*NftModule) BalanceOf

func (sdk *NftModule) BalanceOf(address string) (*big.Int, error)

func (*NftModule) Burn

func (sdk *NftModule) Burn(tokenId *big.Int) error

func (*NftModule) Get

func (sdk *NftModule) Get(tokenId *big.Int) (NftMetadata, error)

func (*NftModule) GetAll

func (sdk *NftModule) GetAll() ([]NftMetadata, error)

func (*NftModule) GetAsync

func (sdk *NftModule) GetAsync(tokenId *big.Int, ch chan<- NftMetadata, errCh chan<- error, wg *sync.WaitGroup)

func (*NftModule) GetOwned

func (sdk *NftModule) GetOwned(address string) ([]NftMetadata, error)

func (*NftModule) GrantRole

func (manager *NftModule) GrantRole(role Role, address string) error

func (*NftModule) Mint

func (sdk *NftModule) Mint(metadata MintNftMetadata) (NftMetadata, error)

func (*NftModule) MintBatch

func (sdk *NftModule) MintBatch(meta []MintNftMetadata) ([]NftMetadata, error)

func (*NftModule) MintBatchTo added in v1.1.0

func (sdk *NftModule) MintBatchTo(to string, meta []MintNftMetadata) ([]NftMetadata, error)

func (*NftModule) MintTo added in v0.0.5

func (sdk *NftModule) MintTo(to string, metadata MintNftMetadata) (NftMetadata, error)

func (*NftModule) RevokeRole

func (manager *NftModule) RevokeRole(role Role, address string) error

func (*NftModule) SetApproval

func (sdk *NftModule) SetApproval(operator string, approved bool) error

func (*NftModule) SetRestrictedTransfer added in v0.1.2

func (sdk *NftModule) SetRestrictedTransfer(restricted bool) error

SetRestrictedTransfer will disable all transfers if set to true

func (*NftModule) SetRoyaltyBps

func (sdk *NftModule) SetRoyaltyBps(amount *big.Int) error

func (*NftModule) TotalSupply

func (sdk *NftModule) TotalSupply() (*big.Int, error)

func (*NftModule) Transfer

func (sdk *NftModule) Transfer(to string, tokenId *big.Int) error

func (*NftModule) TransferFrom

func (sdk *NftModule) TransferFrom(from string, to string, tokenId *big.Int) error

type NoAddressError

type NoAddressError struct {
	// contains filtered or unexported fields
}

func (*NoAddressError) Error

func (m *NoAddressError) Error() string

type NoSignerError

type NoSignerError struct {
	Err error
	// contains filtered or unexported fields
}

func (*NoSignerError) Error

func (m *NoSignerError) Error() string

type NotFoundError

type NotFoundError struct {
	// contains filtered or unexported fields
}

func (*NotFoundError) Error

func (m *NotFoundError) Error() string

type Pack

type Pack interface {
	Open(packId *big.Int) (PackNft, error)
	Get(tokenId *big.Int) (PackMetadata, error)
	GetAll() ([]PackMetadata, error)
	GetNfts(packId *big.Int) ([]PackNft, error)
	Balance(tokenId *big.Int) (*big.Int, error)
	BalanceOf(address string, tokenId *big.Int) (*big.Int, error)
	Transfer(to string, tokenId *big.Int, quantity *big.Int) error
	Create(args CreatePackArgs) (PackMetadata, error)
	SetRestrictedTransfer(restricted bool) error
}

type PackAssetAddition

type PackAssetAddition struct {
	NftId  *big.Int
	Supply *big.Int
}

type PackMetadata

type PackMetadata struct {
	NftMetadata
	Creator       common.Address
	CurrentSupply *big.Int
	OpenStart     time.Time
}

type PackModule

type PackModule struct {
	Client  *ethclient.Client
	Address string
	// contains filtered or unexported fields
}

func (*PackModule) Balance

func (sdk *PackModule) Balance(tokenId *big.Int) (*big.Int, error)

func (*PackModule) BalanceOf

func (sdk *PackModule) BalanceOf(address string, tokenId *big.Int) (*big.Int, error)

func (*PackModule) Create

func (sdk *PackModule) Create(args CreatePackArgs) (PackMetadata, error)

Still a WIP, do not use

func (*PackModule) Get

func (sdk *PackModule) Get(packId *big.Int) (PackMetadata, error)

func (*PackModule) GetAll

func (sdk *PackModule) GetAll() ([]PackMetadata, error)

func (*PackModule) GetAsync

func (sdk *PackModule) GetAsync(tokenId *big.Int, ch chan<- PackMetadata, wg *sync.WaitGroup)

func (*PackModule) GetNfts

func (sdk *PackModule) GetNfts(packId *big.Int) ([]PackNft, error)

func (*PackModule) Open

func (sdk *PackModule) Open(packId *big.Int) (PackNft, error)

Work in progress, do not use

func (*PackModule) SetRestrictedTransfer added in v0.1.2

func (sdk *PackModule) SetRestrictedTransfer(restricted bool) error

SetRestrictedTransfer will disable all transfers if set to true

func (*PackModule) Transfer

func (sdk *PackModule) Transfer(to string, tokenId *big.Int, quantity *big.Int) error

type PackNft

type PackNft struct {
	NftMetadata
	Supply *big.Int
}

type Role

type Role string

func RoleFromString added in v0.0.7

func RoleFromString(str string) (Role, error)

type Sdk

type Sdk struct {
	// contains filtered or unexported fields
}

func NewSdk

func NewSdk(client *ethclient.Client, opt *SdkOptions) (*Sdk, error)

func (*Sdk) GetCurrencyModule

func (sdk *Sdk) GetCurrencyModule(address string) (Currency, error)

func (*Sdk) GetMarketModule

func (sdk *Sdk) GetMarketModule(address string) (Market, error)

func (*Sdk) GetMarketplaceModule added in v1.1.0

func (sdk *Sdk) GetMarketplaceModule(address string) (Marketplace, error)

func (*Sdk) GetNftCollectionModule

func (sdk *Sdk) GetNftCollectionModule(address string) (NftCollection, error)

func (*Sdk) GetNftModule

func (sdk *Sdk) GetNftModule(address string) (Nft, error)

func (*Sdk) GetPackModule

func (sdk *Sdk) GetPackModule(address string) (Pack, error)

func (*Sdk) GetStorage

func (sdk *Sdk) GetStorage() (Storage, error)

func (*Sdk) SetStorage

func (sdk *Sdk) SetStorage(gateway Storage)

func (*Sdk) TransferNativeToken added in v0.1.0

func (sdk *Sdk) TransferNativeToken(to string, amount *big.Int) error

type SdkOptions

type SdkOptions struct {
	IpfsGatewayUrl          string
	PrivateKey              string
	GasSpeed                string
	MaxGasPriceInGwei       *big.Int
	GasPrice                *big.Int
	RegistryContractAddress string
}

type SigningMethod

type SigningMethod = func(common.Address, *types.Transaction) (*types.Transaction, error)

type Storage

type Storage interface {
	Get(uri string) ([]byte, error)
	Upload(data interface{}, contractAddress string, signerAddress string) (string, error)
	UploadBatch(data []interface{}, contractAddress string, signerAddress string) ([]string, error)
}

type UnmarshalError

type UnmarshalError struct {
	UnderlyingError error
	// contains filtered or unexported fields
}

func (*UnmarshalError) Error

func (m *UnmarshalError) Error() string

type UnsupportedFunctionError

type UnsupportedFunctionError struct {
	// contains filtered or unexported fields
}

func (*UnsupportedFunctionError) Error

func (m *UnsupportedFunctionError) Error() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL