{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DerivingStrategies #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}

-- Derived from AWS service descriptions, licensed under Apache 2.0.

-- |
-- Module      : Amazonka.Kendra.Types.SalesforceStandardObjectName
-- Copyright   : (c) 2013-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
module Amazonka.Kendra.Types.SalesforceStandardObjectName
  ( SalesforceStandardObjectName
      ( ..,
        SalesforceStandardObjectName_ACCOUNT,
        SalesforceStandardObjectName_CAMPAIGN,
        SalesforceStandardObjectName_CASE,
        SalesforceStandardObjectName_CONTACT,
        SalesforceStandardObjectName_CONTRACT,
        SalesforceStandardObjectName_DOCUMENT,
        SalesforceStandardObjectName_GROUP,
        SalesforceStandardObjectName_IDEA,
        SalesforceStandardObjectName_LEAD,
        SalesforceStandardObjectName_OPPORTUNITY,
        SalesforceStandardObjectName_PARTNER,
        SalesforceStandardObjectName_PRICEBOOK,
        SalesforceStandardObjectName_PRODUCT,
        SalesforceStandardObjectName_PROFILE,
        SalesforceStandardObjectName_SOLUTION,
        SalesforceStandardObjectName_TASK,
        SalesforceStandardObjectName_USER
      ),
  )
where

import qualified Amazonka.Core as Core
import qualified Amazonka.Data as Data
import qualified Amazonka.Prelude as Prelude

newtype SalesforceStandardObjectName = SalesforceStandardObjectName'
  { SalesforceStandardObjectName -> Text
fromSalesforceStandardObjectName ::
      Data.Text
  }
  deriving stock
    ( Int -> SalesforceStandardObjectName -> ShowS
[SalesforceStandardObjectName] -> ShowS
SalesforceStandardObjectName -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [SalesforceStandardObjectName] -> ShowS
$cshowList :: [SalesforceStandardObjectName] -> ShowS
show :: SalesforceStandardObjectName -> String
$cshow :: SalesforceStandardObjectName -> String
showsPrec :: Int -> SalesforceStandardObjectName -> ShowS
$cshowsPrec :: Int -> SalesforceStandardObjectName -> ShowS
Prelude.Show,
      ReadPrec [SalesforceStandardObjectName]
ReadPrec SalesforceStandardObjectName
Int -> ReadS SalesforceStandardObjectName
ReadS [SalesforceStandardObjectName]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [SalesforceStandardObjectName]
$creadListPrec :: ReadPrec [SalesforceStandardObjectName]
readPrec :: ReadPrec SalesforceStandardObjectName
$creadPrec :: ReadPrec SalesforceStandardObjectName
readList :: ReadS [SalesforceStandardObjectName]
$creadList :: ReadS [SalesforceStandardObjectName]
readsPrec :: Int -> ReadS SalesforceStandardObjectName
$creadsPrec :: Int -> ReadS SalesforceStandardObjectName
Prelude.Read,
      SalesforceStandardObjectName
-> SalesforceStandardObjectName -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: SalesforceStandardObjectName
-> SalesforceStandardObjectName -> Bool
$c/= :: SalesforceStandardObjectName
-> SalesforceStandardObjectName -> Bool
== :: SalesforceStandardObjectName
-> SalesforceStandardObjectName -> Bool
$c== :: SalesforceStandardObjectName
-> SalesforceStandardObjectName -> Bool
Prelude.Eq,
      Eq SalesforceStandardObjectName
SalesforceStandardObjectName
-> SalesforceStandardObjectName -> Bool
SalesforceStandardObjectName
-> SalesforceStandardObjectName -> Ordering
SalesforceStandardObjectName
-> SalesforceStandardObjectName -> SalesforceStandardObjectName
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: SalesforceStandardObjectName
-> SalesforceStandardObjectName -> SalesforceStandardObjectName
$cmin :: SalesforceStandardObjectName
-> SalesforceStandardObjectName -> SalesforceStandardObjectName
max :: SalesforceStandardObjectName
-> SalesforceStandardObjectName -> SalesforceStandardObjectName
$cmax :: SalesforceStandardObjectName
-> SalesforceStandardObjectName -> SalesforceStandardObjectName
>= :: SalesforceStandardObjectName
-> SalesforceStandardObjectName -> Bool
$c>= :: SalesforceStandardObjectName
-> SalesforceStandardObjectName -> Bool
> :: SalesforceStandardObjectName
-> SalesforceStandardObjectName -> Bool
$c> :: SalesforceStandardObjectName
-> SalesforceStandardObjectName -> Bool
<= :: SalesforceStandardObjectName
-> SalesforceStandardObjectName -> Bool
$c<= :: SalesforceStandardObjectName
-> SalesforceStandardObjectName -> Bool
< :: SalesforceStandardObjectName
-> SalesforceStandardObjectName -> Bool
$c< :: SalesforceStandardObjectName
-> SalesforceStandardObjectName -> Bool
compare :: SalesforceStandardObjectName
-> SalesforceStandardObjectName -> Ordering
$ccompare :: SalesforceStandardObjectName
-> SalesforceStandardObjectName -> Ordering
Prelude.Ord,
      forall x.
Rep SalesforceStandardObjectName x -> SalesforceStandardObjectName
forall x.
SalesforceStandardObjectName -> Rep SalesforceStandardObjectName x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep SalesforceStandardObjectName x -> SalesforceStandardObjectName
$cfrom :: forall x.
SalesforceStandardObjectName -> Rep SalesforceStandardObjectName x
Prelude.Generic
    )
  deriving newtype
    ( Eq SalesforceStandardObjectName
Int -> SalesforceStandardObjectName -> Int
SalesforceStandardObjectName -> Int
forall a. Eq a -> (Int -> a -> Int) -> (a -> Int) -> Hashable a
hash :: SalesforceStandardObjectName -> Int
$chash :: SalesforceStandardObjectName -> Int
hashWithSalt :: Int -> SalesforceStandardObjectName -> Int
$chashWithSalt :: Int -> SalesforceStandardObjectName -> Int
Prelude.Hashable,
      SalesforceStandardObjectName -> ()
forall a. (a -> ()) -> NFData a
rnf :: SalesforceStandardObjectName -> ()
$crnf :: SalesforceStandardObjectName -> ()
Prelude.NFData,
      Text -> Either String SalesforceStandardObjectName
forall a. (Text -> Either String a) -> FromText a
fromText :: Text -> Either String SalesforceStandardObjectName
$cfromText :: Text -> Either String SalesforceStandardObjectName
Data.FromText,
      SalesforceStandardObjectName -> Text
forall a. (a -> Text) -> ToText a
toText :: SalesforceStandardObjectName -> Text
$ctoText :: SalesforceStandardObjectName -> Text
Data.ToText,
      SalesforceStandardObjectName -> ByteString
forall a. (a -> ByteString) -> ToByteString a
toBS :: SalesforceStandardObjectName -> ByteString
$ctoBS :: SalesforceStandardObjectName -> ByteString
Data.ToByteString,
      SalesforceStandardObjectName -> ByteStringBuilder
forall a. (a -> ByteStringBuilder) -> ToLog a
build :: SalesforceStandardObjectName -> ByteStringBuilder
$cbuild :: SalesforceStandardObjectName -> ByteStringBuilder
Data.ToLog,
      HeaderName -> SalesforceStandardObjectName -> [Header]
forall a. (HeaderName -> a -> [Header]) -> ToHeader a
toHeader :: HeaderName -> SalesforceStandardObjectName -> [Header]
$ctoHeader :: HeaderName -> SalesforceStandardObjectName -> [Header]
Data.ToHeader,
      SalesforceStandardObjectName -> QueryString
forall a. (a -> QueryString) -> ToQuery a
toQuery :: SalesforceStandardObjectName -> QueryString
$ctoQuery :: SalesforceStandardObjectName -> QueryString
Data.ToQuery,
      Value -> Parser [SalesforceStandardObjectName]
Value -> Parser SalesforceStandardObjectName
forall a.
(Value -> Parser a) -> (Value -> Parser [a]) -> FromJSON a
parseJSONList :: Value -> Parser [SalesforceStandardObjectName]
$cparseJSONList :: Value -> Parser [SalesforceStandardObjectName]
parseJSON :: Value -> Parser SalesforceStandardObjectName
$cparseJSON :: Value -> Parser SalesforceStandardObjectName
Data.FromJSON,
      FromJSONKeyFunction [SalesforceStandardObjectName]
FromJSONKeyFunction SalesforceStandardObjectName
forall a.
FromJSONKeyFunction a -> FromJSONKeyFunction [a] -> FromJSONKey a
fromJSONKeyList :: FromJSONKeyFunction [SalesforceStandardObjectName]
$cfromJSONKeyList :: FromJSONKeyFunction [SalesforceStandardObjectName]
fromJSONKey :: FromJSONKeyFunction SalesforceStandardObjectName
$cfromJSONKey :: FromJSONKeyFunction SalesforceStandardObjectName
Data.FromJSONKey,
      [SalesforceStandardObjectName] -> Encoding
[SalesforceStandardObjectName] -> Value
SalesforceStandardObjectName -> Encoding
SalesforceStandardObjectName -> Value
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> ToJSON a
toEncodingList :: [SalesforceStandardObjectName] -> Encoding
$ctoEncodingList :: [SalesforceStandardObjectName] -> Encoding
toJSONList :: [SalesforceStandardObjectName] -> Value
$ctoJSONList :: [SalesforceStandardObjectName] -> Value
toEncoding :: SalesforceStandardObjectName -> Encoding
$ctoEncoding :: SalesforceStandardObjectName -> Encoding
toJSON :: SalesforceStandardObjectName -> Value
$ctoJSON :: SalesforceStandardObjectName -> Value
Data.ToJSON,
      ToJSONKeyFunction [SalesforceStandardObjectName]
ToJSONKeyFunction SalesforceStandardObjectName
forall a.
ToJSONKeyFunction a -> ToJSONKeyFunction [a] -> ToJSONKey a
toJSONKeyList :: ToJSONKeyFunction [SalesforceStandardObjectName]
$ctoJSONKeyList :: ToJSONKeyFunction [SalesforceStandardObjectName]
toJSONKey :: ToJSONKeyFunction SalesforceStandardObjectName
$ctoJSONKey :: ToJSONKeyFunction SalesforceStandardObjectName
Data.ToJSONKey,
      [Node] -> Either String SalesforceStandardObjectName
forall a. ([Node] -> Either String a) -> FromXML a
parseXML :: [Node] -> Either String SalesforceStandardObjectName
$cparseXML :: [Node] -> Either String SalesforceStandardObjectName
Data.FromXML,
      SalesforceStandardObjectName -> XML
forall a. (a -> XML) -> ToXML a
toXML :: SalesforceStandardObjectName -> XML
$ctoXML :: SalesforceStandardObjectName -> XML
Data.ToXML
    )

pattern SalesforceStandardObjectName_ACCOUNT :: SalesforceStandardObjectName
pattern $bSalesforceStandardObjectName_ACCOUNT :: SalesforceStandardObjectName
$mSalesforceStandardObjectName_ACCOUNT :: forall {r}.
SalesforceStandardObjectName -> ((# #) -> r) -> ((# #) -> r) -> r
SalesforceStandardObjectName_ACCOUNT = SalesforceStandardObjectName' "ACCOUNT"

pattern SalesforceStandardObjectName_CAMPAIGN :: SalesforceStandardObjectName
pattern $bSalesforceStandardObjectName_CAMPAIGN :: SalesforceStandardObjectName
$mSalesforceStandardObjectName_CAMPAIGN :: forall {r}.
SalesforceStandardObjectName -> ((# #) -> r) -> ((# #) -> r) -> r
SalesforceStandardObjectName_CAMPAIGN = SalesforceStandardObjectName' "CAMPAIGN"

pattern SalesforceStandardObjectName_CASE :: SalesforceStandardObjectName
pattern $bSalesforceStandardObjectName_CASE :: SalesforceStandardObjectName
$mSalesforceStandardObjectName_CASE :: forall {r}.
SalesforceStandardObjectName -> ((# #) -> r) -> ((# #) -> r) -> r
SalesforceStandardObjectName_CASE = SalesforceStandardObjectName' "CASE"

pattern SalesforceStandardObjectName_CONTACT :: SalesforceStandardObjectName
pattern $bSalesforceStandardObjectName_CONTACT :: SalesforceStandardObjectName
$mSalesforceStandardObjectName_CONTACT :: forall {r}.
SalesforceStandardObjectName -> ((# #) -> r) -> ((# #) -> r) -> r
SalesforceStandardObjectName_CONTACT = SalesforceStandardObjectName' "CONTACT"

pattern SalesforceStandardObjectName_CONTRACT :: SalesforceStandardObjectName
pattern $bSalesforceStandardObjectName_CONTRACT :: SalesforceStandardObjectName
$mSalesforceStandardObjectName_CONTRACT :: forall {r}.
SalesforceStandardObjectName -> ((# #) -> r) -> ((# #) -> r) -> r
SalesforceStandardObjectName_CONTRACT = SalesforceStandardObjectName' "CONTRACT"

pattern SalesforceStandardObjectName_DOCUMENT :: SalesforceStandardObjectName
pattern $bSalesforceStandardObjectName_DOCUMENT :: SalesforceStandardObjectName
$mSalesforceStandardObjectName_DOCUMENT :: forall {r}.
SalesforceStandardObjectName -> ((# #) -> r) -> ((# #) -> r) -> r
SalesforceStandardObjectName_DOCUMENT = SalesforceStandardObjectName' "DOCUMENT"

pattern SalesforceStandardObjectName_GROUP :: SalesforceStandardObjectName
pattern $bSalesforceStandardObjectName_GROUP :: SalesforceStandardObjectName
$mSalesforceStandardObjectName_GROUP :: forall {r}.
SalesforceStandardObjectName -> ((# #) -> r) -> ((# #) -> r) -> r
SalesforceStandardObjectName_GROUP = SalesforceStandardObjectName' "GROUP"

pattern SalesforceStandardObjectName_IDEA :: SalesforceStandardObjectName
pattern $bSalesforceStandardObjectName_IDEA :: SalesforceStandardObjectName
$mSalesforceStandardObjectName_IDEA :: forall {r}.
SalesforceStandardObjectName -> ((# #) -> r) -> ((# #) -> r) -> r
SalesforceStandardObjectName_IDEA = SalesforceStandardObjectName' "IDEA"

pattern SalesforceStandardObjectName_LEAD :: SalesforceStandardObjectName
pattern $bSalesforceStandardObjectName_LEAD :: SalesforceStandardObjectName
$mSalesforceStandardObjectName_LEAD :: forall {r}.
SalesforceStandardObjectName -> ((# #) -> r) -> ((# #) -> r) -> r
SalesforceStandardObjectName_LEAD = SalesforceStandardObjectName' "LEAD"

pattern SalesforceStandardObjectName_OPPORTUNITY :: SalesforceStandardObjectName
pattern $bSalesforceStandardObjectName_OPPORTUNITY :: SalesforceStandardObjectName
$mSalesforceStandardObjectName_OPPORTUNITY :: forall {r}.
SalesforceStandardObjectName -> ((# #) -> r) -> ((# #) -> r) -> r
SalesforceStandardObjectName_OPPORTUNITY = SalesforceStandardObjectName' "OPPORTUNITY"

pattern SalesforceStandardObjectName_PARTNER :: SalesforceStandardObjectName
pattern $bSalesforceStandardObjectName_PARTNER :: SalesforceStandardObjectName
$mSalesforceStandardObjectName_PARTNER :: forall {r}.
SalesforceStandardObjectName -> ((# #) -> r) -> ((# #) -> r) -> r
SalesforceStandardObjectName_PARTNER = SalesforceStandardObjectName' "PARTNER"

pattern SalesforceStandardObjectName_PRICEBOOK :: SalesforceStandardObjectName
pattern $bSalesforceStandardObjectName_PRICEBOOK :: SalesforceStandardObjectName
$mSalesforceStandardObjectName_PRICEBOOK :: forall {r}.
SalesforceStandardObjectName -> ((# #) -> r) -> ((# #) -> r) -> r
SalesforceStandardObjectName_PRICEBOOK = SalesforceStandardObjectName' "PRICEBOOK"

pattern SalesforceStandardObjectName_PRODUCT :: SalesforceStandardObjectName
pattern $bSalesforceStandardObjectName_PRODUCT :: SalesforceStandardObjectName
$mSalesforceStandardObjectName_PRODUCT :: forall {r}.
SalesforceStandardObjectName -> ((# #) -> r) -> ((# #) -> r) -> r
SalesforceStandardObjectName_PRODUCT = SalesforceStandardObjectName' "PRODUCT"

pattern SalesforceStandardObjectName_PROFILE :: SalesforceStandardObjectName
pattern $bSalesforceStandardObjectName_PROFILE :: SalesforceStandardObjectName
$mSalesforceStandardObjectName_PROFILE :: forall {r}.
SalesforceStandardObjectName -> ((# #) -> r) -> ((# #) -> r) -> r
SalesforceStandardObjectName_PROFILE = SalesforceStandardObjectName' "PROFILE"

pattern SalesforceStandardObjectName_SOLUTION :: SalesforceStandardObjectName
pattern $bSalesforceStandardObjectName_SOLUTION :: SalesforceStandardObjectName
$mSalesforceStandardObjectName_SOLUTION :: forall {r}.
SalesforceStandardObjectName -> ((# #) -> r) -> ((# #) -> r) -> r
SalesforceStandardObjectName_SOLUTION = SalesforceStandardObjectName' "SOLUTION"

pattern SalesforceStandardObjectName_TASK :: SalesforceStandardObjectName
pattern $bSalesforceStandardObjectName_TASK :: SalesforceStandardObjectName
$mSalesforceStandardObjectName_TASK :: forall {r}.
SalesforceStandardObjectName -> ((# #) -> r) -> ((# #) -> r) -> r
SalesforceStandardObjectName_TASK = SalesforceStandardObjectName' "TASK"

pattern SalesforceStandardObjectName_USER :: SalesforceStandardObjectName
pattern $bSalesforceStandardObjectName_USER :: SalesforceStandardObjectName
$mSalesforceStandardObjectName_USER :: forall {r}.
SalesforceStandardObjectName -> ((# #) -> r) -> ((# #) -> r) -> r
SalesforceStandardObjectName_USER = SalesforceStandardObjectName' "USER"

{-# COMPLETE
  SalesforceStandardObjectName_ACCOUNT,
  SalesforceStandardObjectName_CAMPAIGN,
  SalesforceStandardObjectName_CASE,
  SalesforceStandardObjectName_CONTACT,
  SalesforceStandardObjectName_CONTRACT,
  SalesforceStandardObjectName_DOCUMENT,
  SalesforceStandardObjectName_GROUP,
  SalesforceStandardObjectName_IDEA,
  SalesforceStandardObjectName_LEAD,
  SalesforceStandardObjectName_OPPORTUNITY,
  SalesforceStandardObjectName_PARTNER,
  SalesforceStandardObjectName_PRICEBOOK,
  SalesforceStandardObjectName_PRODUCT,
  SalesforceStandardObjectName_PROFILE,
  SalesforceStandardObjectName_SOLUTION,
  SalesforceStandardObjectName_TASK,
  SalesforceStandardObjectName_USER,
  SalesforceStandardObjectName'
  #-}