{-# LANGUAGE DataKinds #-} {-# LANGUAGE DerivingStrategies #-} {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE GADTs #-} {-# LANGUAGE GeneralizedNewtypeDeriving #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE QuasiQuotes #-} {-# LANGUAGE StandaloneDeriving #-} {-# LANGUAGE TemplateHaskell #-} {-# LANGUAGE TypeFamilies #-} {-# LANGUAGE TypeOperators #-} {-# LANGUAGE UndecidableInstances #-} {-# OPTIONS_GHC -Wno-name-shadowing #-} module Cardano.Ledger.State.Schema where import Cardano.Ledger.Babbage.TxOut (BabbageTxOut) import Cardano.Ledger.BaseTypes (TxIx (..)) import Cardano.Ledger.Coin import Cardano.Ledger.Core (PParams) import qualified Cardano.Ledger.Credential as Credential import qualified Cardano.Ledger.Keys as Keys import qualified Cardano.Ledger.PoolParams as Shelley import qualified Cardano.Ledger.Shelley.LedgerState as Shelley import qualified Cardano.Ledger.Shelley.PoolRank as Shelley import Cardano.Ledger.State.Orphans (Enc, SnapShotType (..)) import Cardano.Ledger.State.UTxO import qualified Cardano.Ledger.TxIn as TxIn import qualified Data.Map.Strict as Map import Database.Persist.Sqlite import Database.Persist.TH type FGenDelegs = (Enc (Map.Map Shelley.FutureGenDeleg Keys.GenDelegPair)) type CredentialWitness = Credential.Credential 'Keys.Witness type KeyHashWitness = Keys.KeyHash 'Keys.Witness