{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE UndecidableSuperClasses #-}
module Shelley.Spec.Ledger.API
( module X,
ShelleyBasedEra,
)
where
import Cardano.Ledger.Era (Crypto)
import Cardano.Ledger.Shelley (ShelleyEra)
import Cardano.Ledger.Shelley.Constraints (ShelleyBased)
import Shelley.Spec.Ledger.API.ByronTranslation as X
import Shelley.Spec.Ledger.API.Mempool as X
import Shelley.Spec.Ledger.API.Protocol as X
import Shelley.Spec.Ledger.API.Types as X
import Shelley.Spec.Ledger.API.Validation as X
import Shelley.Spec.Ledger.API.Wallet as X
class
( PraosCrypto (Crypto era),
ShelleyBased era,
GetLedgerView era,
ApplyBlock era,
ApplyTx era
) =>
ShelleyBasedEra era
instance PraosCrypto crypto => ShelleyBasedEra (ShelleyEra crypto)