{-# LANGUAGE DataKinds #-}
{-# LANGUAGE PolyKinds #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE TypeOperators #-}
module Data.Morpheus.Kind
( SCALAR
, OBJECT
, ENUM
, WRAPPER
, UNION
, INPUT_OBJECT
, INPUT_UNION
, GQL_KIND
, Context(..)
, VContext(..)
, ResContext(..)
) where
import Data.Morpheus.Types.Internal.Data (OperationType (..))
data GQL_KIND
= SCALAR
| OBJECT
| ENUM
| INPUT_OBJECT
| UNION
| INPUT_UNION
| WRAPPER
data ResContext (kind :: GQL_KIND) (operation:: OperationType) (m :: * -> * ) event value = ResContext
data Context (kind :: GQL_KIND) a =
Context
newtype VContext (kind :: GQL_KIND) a = VContext
{ unVContext :: a
}
type SCALAR = 'SCALAR
type OBJECT = 'OBJECT
type ENUM = 'ENUM
type INPUT_OBJECT = 'INPUT_OBJECT
type UNION = 'UNION
type INPUT_UNION = 'INPUT_UNION
type WRAPPER = 'WRAPPER