package structs

import (
	"git.marketally.com/tutus-one/tutus-chain/pkg/interop"
	"git.marketally.com/tutus-one/tutus-chain/pkg/interop/native/ledger"
	"git.marketally.com/tutus-one/tutus-chain/pkg/interop/native/management"
)

type Internal struct {
	Bool            bool
	Int             int
	Bytes           []byte
	String          string
	H160            interop.Hash160
	H256            interop.Hash256
	PK              interop.PublicKey
	PubKey          interop.PublicKey
	Sign            interop.Signature
	ArrOfBytes      [][]byte
	ArrOfH160       []interop.Hash160
	Map             map[int][]interop.PublicKey
	Struct          *Internal
	unexportedField int // this one should be exported in the resulting RPC binding.
}

func Contract(mc management.Contract) management.Contract {
	return mc
}

func Block(b *ledger.Block) *ledger.Block {
	return b
}

func Transaction(t *ledger.Transaction) *ledger.Transaction {
	return t
}

func Struct(s *Internal) *Internal {
	return s
}
