BlockInfo and L2BlockInfo Types

Optimism defines block info types that encapsulate minimal block header information needed by protocol operations.

BlockInfo

The BlockInfo type is straightforward, containing the block hash, number, parent hash, and timestamp.

L2BlockInfo

The L2BlockInfo extends the BlockInfo type for the canonical L2 chain. It contains the "L1 origin" which is a set of block info for the L1 block that this L2 block "originated".

L2BlockInfo provides a from_block_and_gensis method to construct the L2BlockInfo from a block and ChainGenesis.