{-# 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.CustomerProfiles.Types.OperatorPropertiesKeys
-- Copyright   : (c) 2013-2021 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
module Amazonka.CustomerProfiles.Types.OperatorPropertiesKeys
  ( OperatorPropertiesKeys
      ( ..,
        OperatorPropertiesKeys_CONCAT_FORMAT,
        OperatorPropertiesKeys_DATA_TYPE,
        OperatorPropertiesKeys_DESTINATION_DATA_TYPE,
        OperatorPropertiesKeys_LOWER_BOUND,
        OperatorPropertiesKeys_MASK_LENGTH,
        OperatorPropertiesKeys_MASK_VALUE,
        OperatorPropertiesKeys_MATH_OPERATION_FIELDS_ORDER,
        OperatorPropertiesKeys_SOURCE_DATA_TYPE,
        OperatorPropertiesKeys_SUBFIELD_CATEGORY_MAP,
        OperatorPropertiesKeys_TRUNCATE_LENGTH,
        OperatorPropertiesKeys_UPPER_BOUND,
        OperatorPropertiesKeys_VALIDATION_ACTION,
        OperatorPropertiesKeys_VALUE,
        OperatorPropertiesKeys_VALUES
      ),
  )
where

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

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

pattern OperatorPropertiesKeys_CONCAT_FORMAT :: OperatorPropertiesKeys
pattern $bOperatorPropertiesKeys_CONCAT_FORMAT :: OperatorPropertiesKeys
$mOperatorPropertiesKeys_CONCAT_FORMAT :: forall r.
OperatorPropertiesKeys -> (Void# -> r) -> (Void# -> r) -> r
OperatorPropertiesKeys_CONCAT_FORMAT = OperatorPropertiesKeys' "CONCAT_FORMAT"

pattern OperatorPropertiesKeys_DATA_TYPE :: OperatorPropertiesKeys
pattern $bOperatorPropertiesKeys_DATA_TYPE :: OperatorPropertiesKeys
$mOperatorPropertiesKeys_DATA_TYPE :: forall r.
OperatorPropertiesKeys -> (Void# -> r) -> (Void# -> r) -> r
OperatorPropertiesKeys_DATA_TYPE = OperatorPropertiesKeys' "DATA_TYPE"

pattern OperatorPropertiesKeys_DESTINATION_DATA_TYPE :: OperatorPropertiesKeys
pattern $bOperatorPropertiesKeys_DESTINATION_DATA_TYPE :: OperatorPropertiesKeys
$mOperatorPropertiesKeys_DESTINATION_DATA_TYPE :: forall r.
OperatorPropertiesKeys -> (Void# -> r) -> (Void# -> r) -> r
OperatorPropertiesKeys_DESTINATION_DATA_TYPE = OperatorPropertiesKeys' "DESTINATION_DATA_TYPE"

pattern OperatorPropertiesKeys_LOWER_BOUND :: OperatorPropertiesKeys
pattern $bOperatorPropertiesKeys_LOWER_BOUND :: OperatorPropertiesKeys
$mOperatorPropertiesKeys_LOWER_BOUND :: forall r.
OperatorPropertiesKeys -> (Void# -> r) -> (Void# -> r) -> r
OperatorPropertiesKeys_LOWER_BOUND = OperatorPropertiesKeys' "LOWER_BOUND"

pattern OperatorPropertiesKeys_MASK_LENGTH :: OperatorPropertiesKeys
pattern $bOperatorPropertiesKeys_MASK_LENGTH :: OperatorPropertiesKeys
$mOperatorPropertiesKeys_MASK_LENGTH :: forall r.
OperatorPropertiesKeys -> (Void# -> r) -> (Void# -> r) -> r
OperatorPropertiesKeys_MASK_LENGTH = OperatorPropertiesKeys' "MASK_LENGTH"

pattern OperatorPropertiesKeys_MASK_VALUE :: OperatorPropertiesKeys
pattern $bOperatorPropertiesKeys_MASK_VALUE :: OperatorPropertiesKeys
$mOperatorPropertiesKeys_MASK_VALUE :: forall r.
OperatorPropertiesKeys -> (Void# -> r) -> (Void# -> r) -> r
OperatorPropertiesKeys_MASK_VALUE = OperatorPropertiesKeys' "MASK_VALUE"

pattern OperatorPropertiesKeys_MATH_OPERATION_FIELDS_ORDER :: OperatorPropertiesKeys
pattern $bOperatorPropertiesKeys_MATH_OPERATION_FIELDS_ORDER :: OperatorPropertiesKeys
$mOperatorPropertiesKeys_MATH_OPERATION_FIELDS_ORDER :: forall r.
OperatorPropertiesKeys -> (Void# -> r) -> (Void# -> r) -> r
OperatorPropertiesKeys_MATH_OPERATION_FIELDS_ORDER = OperatorPropertiesKeys' "MATH_OPERATION_FIELDS_ORDER"

pattern OperatorPropertiesKeys_SOURCE_DATA_TYPE :: OperatorPropertiesKeys
pattern $bOperatorPropertiesKeys_SOURCE_DATA_TYPE :: OperatorPropertiesKeys
$mOperatorPropertiesKeys_SOURCE_DATA_TYPE :: forall r.
OperatorPropertiesKeys -> (Void# -> r) -> (Void# -> r) -> r
OperatorPropertiesKeys_SOURCE_DATA_TYPE = OperatorPropertiesKeys' "SOURCE_DATA_TYPE"

pattern OperatorPropertiesKeys_SUBFIELD_CATEGORY_MAP :: OperatorPropertiesKeys
pattern $bOperatorPropertiesKeys_SUBFIELD_CATEGORY_MAP :: OperatorPropertiesKeys
$mOperatorPropertiesKeys_SUBFIELD_CATEGORY_MAP :: forall r.
OperatorPropertiesKeys -> (Void# -> r) -> (Void# -> r) -> r
OperatorPropertiesKeys_SUBFIELD_CATEGORY_MAP = OperatorPropertiesKeys' "SUBFIELD_CATEGORY_MAP"

pattern OperatorPropertiesKeys_TRUNCATE_LENGTH :: OperatorPropertiesKeys
pattern $bOperatorPropertiesKeys_TRUNCATE_LENGTH :: OperatorPropertiesKeys
$mOperatorPropertiesKeys_TRUNCATE_LENGTH :: forall r.
OperatorPropertiesKeys -> (Void# -> r) -> (Void# -> r) -> r
OperatorPropertiesKeys_TRUNCATE_LENGTH = OperatorPropertiesKeys' "TRUNCATE_LENGTH"

pattern OperatorPropertiesKeys_UPPER_BOUND :: OperatorPropertiesKeys
pattern $bOperatorPropertiesKeys_UPPER_BOUND :: OperatorPropertiesKeys
$mOperatorPropertiesKeys_UPPER_BOUND :: forall r.
OperatorPropertiesKeys -> (Void# -> r) -> (Void# -> r) -> r
OperatorPropertiesKeys_UPPER_BOUND = OperatorPropertiesKeys' "UPPER_BOUND"

pattern OperatorPropertiesKeys_VALIDATION_ACTION :: OperatorPropertiesKeys
pattern $bOperatorPropertiesKeys_VALIDATION_ACTION :: OperatorPropertiesKeys
$mOperatorPropertiesKeys_VALIDATION_ACTION :: forall r.
OperatorPropertiesKeys -> (Void# -> r) -> (Void# -> r) -> r
OperatorPropertiesKeys_VALIDATION_ACTION = OperatorPropertiesKeys' "VALIDATION_ACTION"

pattern OperatorPropertiesKeys_VALUE :: OperatorPropertiesKeys
pattern $bOperatorPropertiesKeys_VALUE :: OperatorPropertiesKeys
$mOperatorPropertiesKeys_VALUE :: forall r.
OperatorPropertiesKeys -> (Void# -> r) -> (Void# -> r) -> r
OperatorPropertiesKeys_VALUE = OperatorPropertiesKeys' "VALUE"

pattern OperatorPropertiesKeys_VALUES :: OperatorPropertiesKeys
pattern $bOperatorPropertiesKeys_VALUES :: OperatorPropertiesKeys
$mOperatorPropertiesKeys_VALUES :: forall r.
OperatorPropertiesKeys -> (Void# -> r) -> (Void# -> r) -> r
OperatorPropertiesKeys_VALUES = OperatorPropertiesKeys' "VALUES"

{-# COMPLETE
  OperatorPropertiesKeys_CONCAT_FORMAT,
  OperatorPropertiesKeys_DATA_TYPE,
  OperatorPropertiesKeys_DESTINATION_DATA_TYPE,
  OperatorPropertiesKeys_LOWER_BOUND,
  OperatorPropertiesKeys_MASK_LENGTH,
  OperatorPropertiesKeys_MASK_VALUE,
  OperatorPropertiesKeys_MATH_OPERATION_FIELDS_ORDER,
  OperatorPropertiesKeys_SOURCE_DATA_TYPE,
  OperatorPropertiesKeys_SUBFIELD_CATEGORY_MAP,
  OperatorPropertiesKeys_TRUNCATE_LENGTH,
  OperatorPropertiesKeys_UPPER_BOUND,
  OperatorPropertiesKeys_VALIDATION_ACTION,
  OperatorPropertiesKeys_VALUE,
  OperatorPropertiesKeys_VALUES,
  OperatorPropertiesKeys'
  #-}