package types

import (
	"github.com/scroll-tech/go-ethereum/common"
	"github.com/scroll-tech/go-ethereum/core/types"
)

// WrappedBlock contains the block's Header, Transactions and WithdrawTrieRoot hash.
type WrappedBlock struct {
	Header *types.Header `json:"header"`
	// Transactions is only used for recover types.Transactions, the from of types.TransactionData field is missing.
	Transactions []*types.TransactionData `json:"transactions"`
	WithdrawRoot common.Hash              `json:"withdraw_trie_root,omitempty"`
}

// BatchInfo contains the BlockBatch's main info
type BatchInfo struct {
	Index     uint64 `json:"index"`
	Hash      string `json:"hash"`
	StateRoot string `json:"state_root"`
}
