module Cardano.Ledger.Api.Tx.AuxData (
  EraTxAuxData (TxAuxData),
  mkBasicTxAuxData,
  metadataTxAuxDataL,
  hashTxAuxData,
  validateTxAuxData,

  -- * Shelley
  ShelleyTxAuxData (..),
  Metadatum (..),

  -- * Allegra
  AllegraEraTxAuxData,
  timelockScriptsTxAuxDataL,
  AllegraTxAuxData (..),

  -- * Alonzo
  AlonzoEraTxAuxData,
  plutusScriptsTxAuxDataL,
  AlonzoTxAuxData (..),
  mkAlonzoTxAuxData,
  getAlonzoTxAuxDataScripts,

  -- * Upgrade
  binaryUpgradeTxAuxData,
  upgradeTxAuxData,
) where

import Cardano.Ledger.Allegra.TxAuxData (AllegraEraTxAuxData (..), AllegraTxAuxData (..))
import Cardano.Ledger.Alonzo.TxAuxData (
  AlonzoEraTxAuxData (..),
  AlonzoTxAuxData (..),
  getAlonzoTxAuxDataScripts,
  mkAlonzoTxAuxData,
 )
import Cardano.Ledger.Api.Era (EraApi (..))
import Cardano.Ledger.Core (EraTxAuxData (..), binaryUpgradeTxAuxData, hashTxAuxData)
import Cardano.Ledger.Shelley.TxAuxData (Metadatum (..), ShelleyTxAuxData (..))