{-# LANGUAGE ConstraintKinds #-}
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE NoImplicitPrelude #-}
module Preamble.Types.Alias
( module Preamble.Types.Alias
) where
import Control.Monad.Catch
import Control.Monad.Logger
import Control.Monad.Random
import Control.Monad.Trans.Control
import Data.Aeson
import Preamble.Prelude
type Pairs = [(Text, Value)]
type Tags = [(Text, Text)]
type Logger = Loc -> LogSource -> LogLevel -> LogStr -> IO ()
type Stat = ByteString -> IO ()
type MonadControl m =
( MonadBaseControl IO m
, MonadIO m
, MonadMask m
, MonadRandom m
)