{-# LANGUAGE DeriveAnyClass #-}

module Hercules.API.Accounts.AccountSettings where

import Hercules.API.Prelude

data AccountSettings = AccountSettings
  { -- | When a new repo is created/installed, enable building it?
    AccountSettings -> Bool
enableNewRepos :: Bool
  }
  deriving ((forall x. AccountSettings -> Rep AccountSettings x)
-> (forall x. Rep AccountSettings x -> AccountSettings)
-> Generic AccountSettings
forall x. Rep AccountSettings x -> AccountSettings
forall x. AccountSettings -> Rep AccountSettings x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep AccountSettings x -> AccountSettings
$cfrom :: forall x. AccountSettings -> Rep AccountSettings x
Generic, Int -> AccountSettings -> ShowS
[AccountSettings] -> ShowS
AccountSettings -> String
(Int -> AccountSettings -> ShowS)
-> (AccountSettings -> String)
-> ([AccountSettings] -> ShowS)
-> Show AccountSettings
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [AccountSettings] -> ShowS
$cshowList :: [AccountSettings] -> ShowS
show :: AccountSettings -> String
$cshow :: AccountSettings -> String
showsPrec :: Int -> AccountSettings -> ShowS
$cshowsPrec :: Int -> AccountSettings -> ShowS
Show, AccountSettings -> AccountSettings -> Bool
(AccountSettings -> AccountSettings -> Bool)
-> (AccountSettings -> AccountSettings -> Bool)
-> Eq AccountSettings
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: AccountSettings -> AccountSettings -> Bool
$c/= :: AccountSettings -> AccountSettings -> Bool
== :: AccountSettings -> AccountSettings -> Bool
$c== :: AccountSettings -> AccountSettings -> Bool
Eq, AccountSettings -> ()
(AccountSettings -> ()) -> NFData AccountSettings
forall a. (a -> ()) -> NFData a
rnf :: AccountSettings -> ()
$crnf :: AccountSettings -> ()
NFData, [AccountSettings] -> Encoding
[AccountSettings] -> Value
AccountSettings -> Encoding
AccountSettings -> Value
(AccountSettings -> Value)
-> (AccountSettings -> Encoding)
-> ([AccountSettings] -> Value)
-> ([AccountSettings] -> Encoding)
-> ToJSON AccountSettings
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> ToJSON a
toEncodingList :: [AccountSettings] -> Encoding
$ctoEncodingList :: [AccountSettings] -> Encoding
toJSONList :: [AccountSettings] -> Value
$ctoJSONList :: [AccountSettings] -> Value
toEncoding :: AccountSettings -> Encoding
$ctoEncoding :: AccountSettings -> Encoding
toJSON :: AccountSettings -> Value
$ctoJSON :: AccountSettings -> Value
ToJSON, Value -> Parser [AccountSettings]
Value -> Parser AccountSettings
(Value -> Parser AccountSettings)
-> (Value -> Parser [AccountSettings]) -> FromJSON AccountSettings
forall a.
(Value -> Parser a) -> (Value -> Parser [a]) -> FromJSON a
parseJSONList :: Value -> Parser [AccountSettings]
$cparseJSONList :: Value -> Parser [AccountSettings]
parseJSON :: Value -> Parser AccountSettings
$cparseJSON :: Value -> Parser AccountSettings
FromJSON, Proxy AccountSettings -> Declare (Definitions Schema) NamedSchema
(Proxy AccountSettings -> Declare (Definitions Schema) NamedSchema)
-> ToSchema AccountSettings
forall a.
(Proxy a -> Declare (Definitions Schema) NamedSchema) -> ToSchema a
declareNamedSchema :: Proxy AccountSettings -> Declare (Definitions Schema) NamedSchema
$cdeclareNamedSchema :: Proxy AccountSettings -> Declare (Definitions Schema) NamedSchema
ToSchema)