Skip to main content
import * as BeaconBlockRoot from 'voltaire-effect/primitives/BeaconBlockRoot'
import * as Schema from 'effect/Schema'
import { Effect } from 'effect'

// Schema: validates 32-byte hex
const root = Schema.decodeSync(BeaconBlockRoot.Hex)(
  '0x88e96d4537bea4d9c05d12549907b32561d3bf31f45aae734cdc119f13406cb6'
)

// Effect constructor (hex or bytes)
const result = await Effect.runPromise(BeaconBlockRoot.from('0x...'))

// Convert to hex
BeaconBlockRoot.toHex(root)
32-byte hash for accessing beacon chain state from EVM (EIP-4788).