module IHP.ApplicationContext where

import IHP.Prelude
import IHP.AutoRefresh.Types (AutoRefreshServer)
import IHP.FrameworkConfig (FrameworkConfig)
import IHP.PGListener (PGListener)

data ApplicationContext = ApplicationContext
    { ApplicationContext -> ModelContext
modelContext :: !ModelContext
    , ApplicationContext -> IORef AutoRefreshServer
autoRefreshServer :: !(IORef AutoRefreshServer)
    , ApplicationContext -> FrameworkConfig
frameworkConfig :: !FrameworkConfig
    , ApplicationContext -> PGListener
pgListener :: PGListener
    }