import qualified Tunebank.Model.AbcMetadataSubmission as NewTune (AbcMetadataSubmission(..))
import Tunebank.Model.Comment (CommentId(..), Comment(..))
import qualified Tunebank.Model.CommentSubmission as CommentMsg (Submission(..))
import Data.Abc.Validator (normaliseKeySignature, normaliseRhythm)
import Debug.Trace (traceM)


-- | This is just a simple newtype wrapper for our 'IORef'.
newtype DBConfig = DBConfig {
  _getPool :: Pool Connection
  }

-- | This is also a simple newtype wrapper for our DB Monad.  This is very
-- similar to Persistent's 'SqlPersistT' type.
newtype PostgresT m a = PostgresT (ReaderT DBConfig m a)