{-# LANGUAGE PolyKinds #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE UndecidableInstances #-}
module Data.Aeson.Deriving.Generic
(
ToAesonOptions(..)
, GenericEncoded(..)
, RecordSumEncoded(..)
, GenericOptions
, (:=)
, ToAesonOptionsField
, FieldLabelModifier
, ConstructorTagModifier
, AllNullaryToStringTag
, OmitNothingFields
, SumEncoding
, UnwrapUnaryRecords
, TagSingleConstructors
, StringFunction(..)
, SnakeCase
, Uppercase
, Lowercase
, FirstChar
, DropLowercasePrefix
, DropPrefix
, DropSuffix
, Id
, snakeCase
, dropLowercasePrefix
, ToSumEncoding
, UntaggedValue
, ObjectWithSingleField
, TwoElemArray
, TaggedObject
, LoopWarning
, DisableLoopWarning(..)
, type (&) (Ampersand)
, unAmpersand
) where
import Data.Aeson
import Data.Aeson.Deriving.Internal.Generic
import Data.Aeson.Deriving.Known