{-# LANGUAGE DeriveGeneric #-} module Model.Json.Init ( Init(..) , InitResult(..) ) where import GHC.Generics import Data.Aeson import Model.Database (UserId) import Model.Json.User (User) import Model.Json.Payment (Payment) import Model.Json.Income (Income) import Model.Message.Key (Key) data Init = Init { users :: [User] , me :: UserId , payments :: [Payment] , incomes :: [Income] } deriving (Show, Generic) instance ToJSON Init data InitResult = InitEmpty | InitSuccess Init | InitError Key deriving (Show, Generic) instance ToJSON InitResult