module ApplePush.Types (
DeviceToken,
NotificationServiceMsg(..),
NotificationServiceChan,
NotificationCallbackMsg(..),
NotificationCallbackChan,
NotificationPayload,
NotificationAction
) where
import Data.ByteString
import Control.Concurrent.Chan
import Control.Concurrent.MVar
import Control.Concurrent
import Control.Monad.State as SM
import Text.JSON
type DeviceToken = ByteString
data NotificationServiceMsg = NotificationServiceSend DeviceToken String | NotificationServiceExit
type NotificationServiceChan = Chan NotificationServiceMsg
data NotificationCallbackMsg = NotificationServerConnected NotificationServiceChan |
NotificationServerUnableToConnect String | NotificationServerDisconnected
type NotificationCallbackChan = Chan NotificationCallbackMsg
type NotificationPayload = JSObject JSValue
type NotificationAction = JSObject JSValue