module Environment (T (..)) where

import Control.Monad.Logger (LogLevel)
import Data.Text (Text)
import Data.Time.Calendar (Year)
import Distribution.SPDX.LicenseId (LicenseId)
import Network.URI (URI)

data T = T
  { T -> Text
name :: Text,
    T -> Text
cabalName :: Text,
    T -> URI
homepage :: URI,
    T -> Text
author :: Text,
    T -> Text
maintainer :: Text,
    T -> LicenseId
licence :: LicenseId,
    T -> FilePath
path :: FilePath,
    T -> Year
year :: Year,
    T -> LogLevel
verbosity :: LogLevel
  }
  deriving (Int -> T -> ShowS
[T] -> ShowS
T -> FilePath
(Int -> T -> ShowS) -> (T -> FilePath) -> ([T] -> ShowS) -> Show T
forall a.
(Int -> a -> ShowS) -> (a -> FilePath) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> T -> ShowS
showsPrec :: Int -> T -> ShowS
$cshow :: T -> FilePath
show :: T -> FilePath
$cshowList :: [T] -> ShowS
showList :: [T] -> ShowS
Show)