{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DerivingStrategies #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
module Amazonka.SecurityHub.Types.ThreatIntelIndicatorType
( ThreatIntelIndicatorType
( ..,
ThreatIntelIndicatorType_DOMAIN,
ThreatIntelIndicatorType_EMAIL_ADDRESS,
ThreatIntelIndicatorType_HASH_MD5,
ThreatIntelIndicatorType_HASH_SHA1,
ThreatIntelIndicatorType_HASH_SHA256,
ThreatIntelIndicatorType_HASH_SHA512,
ThreatIntelIndicatorType_IPV4_ADDRESS,
ThreatIntelIndicatorType_IPV6_ADDRESS,
ThreatIntelIndicatorType_MUTEX,
ThreatIntelIndicatorType_PROCESS,
ThreatIntelIndicatorType_URL
),
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Prelude as Prelude
newtype ThreatIntelIndicatorType = ThreatIntelIndicatorType'
{ ThreatIntelIndicatorType -> Text
fromThreatIntelIndicatorType ::
Core.Text
}
deriving stock
( Int -> ThreatIntelIndicatorType -> ShowS
[ThreatIntelIndicatorType] -> ShowS
ThreatIntelIndicatorType -> String
(Int -> ThreatIntelIndicatorType -> ShowS)
-> (ThreatIntelIndicatorType -> String)
-> ([ThreatIntelIndicatorType] -> ShowS)
-> Show ThreatIntelIndicatorType
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ThreatIntelIndicatorType] -> ShowS
$cshowList :: [ThreatIntelIndicatorType] -> ShowS
show :: ThreatIntelIndicatorType -> String
$cshow :: ThreatIntelIndicatorType -> String
showsPrec :: Int -> ThreatIntelIndicatorType -> ShowS
$cshowsPrec :: Int -> ThreatIntelIndicatorType -> ShowS
Prelude.Show,
ReadPrec [ThreatIntelIndicatorType]
ReadPrec ThreatIntelIndicatorType
Int -> ReadS ThreatIntelIndicatorType
ReadS [ThreatIntelIndicatorType]
(Int -> ReadS ThreatIntelIndicatorType)
-> ReadS [ThreatIntelIndicatorType]
-> ReadPrec ThreatIntelIndicatorType
-> ReadPrec [ThreatIntelIndicatorType]
-> Read ThreatIntelIndicatorType
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ThreatIntelIndicatorType]
$creadListPrec :: ReadPrec [ThreatIntelIndicatorType]
readPrec :: ReadPrec ThreatIntelIndicatorType
$creadPrec :: ReadPrec ThreatIntelIndicatorType
readList :: ReadS [ThreatIntelIndicatorType]
$creadList :: ReadS [ThreatIntelIndicatorType]
readsPrec :: Int -> ReadS ThreatIntelIndicatorType
$creadsPrec :: Int -> ReadS ThreatIntelIndicatorType
Prelude.Read,
ThreatIntelIndicatorType -> ThreatIntelIndicatorType -> Bool
(ThreatIntelIndicatorType -> ThreatIntelIndicatorType -> Bool)
-> (ThreatIntelIndicatorType -> ThreatIntelIndicatorType -> Bool)
-> Eq ThreatIntelIndicatorType
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ThreatIntelIndicatorType -> ThreatIntelIndicatorType -> Bool
$c/= :: ThreatIntelIndicatorType -> ThreatIntelIndicatorType -> Bool
== :: ThreatIntelIndicatorType -> ThreatIntelIndicatorType -> Bool
$c== :: ThreatIntelIndicatorType -> ThreatIntelIndicatorType -> Bool
Prelude.Eq,
Eq ThreatIntelIndicatorType
Eq ThreatIntelIndicatorType
-> (ThreatIntelIndicatorType
-> ThreatIntelIndicatorType -> Ordering)
-> (ThreatIntelIndicatorType -> ThreatIntelIndicatorType -> Bool)
-> (ThreatIntelIndicatorType -> ThreatIntelIndicatorType -> Bool)
-> (ThreatIntelIndicatorType -> ThreatIntelIndicatorType -> Bool)
-> (ThreatIntelIndicatorType -> ThreatIntelIndicatorType -> Bool)
-> (ThreatIntelIndicatorType
-> ThreatIntelIndicatorType -> ThreatIntelIndicatorType)
-> (ThreatIntelIndicatorType
-> ThreatIntelIndicatorType -> ThreatIntelIndicatorType)
-> Ord ThreatIntelIndicatorType
ThreatIntelIndicatorType -> ThreatIntelIndicatorType -> Bool
ThreatIntelIndicatorType -> ThreatIntelIndicatorType -> Ordering
ThreatIntelIndicatorType
-> ThreatIntelIndicatorType -> ThreatIntelIndicatorType
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 :: ThreatIntelIndicatorType
-> ThreatIntelIndicatorType -> ThreatIntelIndicatorType
$cmin :: ThreatIntelIndicatorType
-> ThreatIntelIndicatorType -> ThreatIntelIndicatorType
max :: ThreatIntelIndicatorType
-> ThreatIntelIndicatorType -> ThreatIntelIndicatorType
$cmax :: ThreatIntelIndicatorType
-> ThreatIntelIndicatorType -> ThreatIntelIndicatorType
>= :: ThreatIntelIndicatorType -> ThreatIntelIndicatorType -> Bool
$c>= :: ThreatIntelIndicatorType -> ThreatIntelIndicatorType -> Bool
> :: ThreatIntelIndicatorType -> ThreatIntelIndicatorType -> Bool
$c> :: ThreatIntelIndicatorType -> ThreatIntelIndicatorType -> Bool
<= :: ThreatIntelIndicatorType -> ThreatIntelIndicatorType -> Bool
$c<= :: ThreatIntelIndicatorType -> ThreatIntelIndicatorType -> Bool
< :: ThreatIntelIndicatorType -> ThreatIntelIndicatorType -> Bool
$c< :: ThreatIntelIndicatorType -> ThreatIntelIndicatorType -> Bool
compare :: ThreatIntelIndicatorType -> ThreatIntelIndicatorType -> Ordering
$ccompare :: ThreatIntelIndicatorType -> ThreatIntelIndicatorType -> Ordering
$cp1Ord :: Eq ThreatIntelIndicatorType
Prelude.Ord,
(forall x.
ThreatIntelIndicatorType -> Rep ThreatIntelIndicatorType x)
-> (forall x.
Rep ThreatIntelIndicatorType x -> ThreatIntelIndicatorType)
-> Generic ThreatIntelIndicatorType
forall x.
Rep ThreatIntelIndicatorType x -> ThreatIntelIndicatorType
forall x.
ThreatIntelIndicatorType -> Rep ThreatIntelIndicatorType x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep ThreatIntelIndicatorType x -> ThreatIntelIndicatorType
$cfrom :: forall x.
ThreatIntelIndicatorType -> Rep ThreatIntelIndicatorType x
Prelude.Generic
)
deriving newtype
( Int -> ThreatIntelIndicatorType -> Int
ThreatIntelIndicatorType -> Int
(Int -> ThreatIntelIndicatorType -> Int)
-> (ThreatIntelIndicatorType -> Int)
-> Hashable ThreatIntelIndicatorType
forall a. (Int -> a -> Int) -> (a -> Int) -> Hashable a
hash :: ThreatIntelIndicatorType -> Int
$chash :: ThreatIntelIndicatorType -> Int
hashWithSalt :: Int -> ThreatIntelIndicatorType -> Int
$chashWithSalt :: Int -> ThreatIntelIndicatorType -> Int
Prelude.Hashable,
ThreatIntelIndicatorType -> ()
(ThreatIntelIndicatorType -> ()) -> NFData ThreatIntelIndicatorType
forall a. (a -> ()) -> NFData a
rnf :: ThreatIntelIndicatorType -> ()
$crnf :: ThreatIntelIndicatorType -> ()
Prelude.NFData,
Text -> Either String ThreatIntelIndicatorType
(Text -> Either String ThreatIntelIndicatorType)
-> FromText ThreatIntelIndicatorType
forall a. (Text -> Either String a) -> FromText a
fromText :: Text -> Either String ThreatIntelIndicatorType
$cfromText :: Text -> Either String ThreatIntelIndicatorType
Core.FromText,
ThreatIntelIndicatorType -> Text
(ThreatIntelIndicatorType -> Text)
-> ToText ThreatIntelIndicatorType
forall a. (a -> Text) -> ToText a
toText :: ThreatIntelIndicatorType -> Text
$ctoText :: ThreatIntelIndicatorType -> Text
Core.ToText,
ThreatIntelIndicatorType -> ByteString
(ThreatIntelIndicatorType -> ByteString)
-> ToByteString ThreatIntelIndicatorType
forall a. (a -> ByteString) -> ToByteString a
toBS :: ThreatIntelIndicatorType -> ByteString
$ctoBS :: ThreatIntelIndicatorType -> ByteString
Core.ToByteString,
ThreatIntelIndicatorType -> ByteStringBuilder
(ThreatIntelIndicatorType -> ByteStringBuilder)
-> ToLog ThreatIntelIndicatorType
forall a. (a -> ByteStringBuilder) -> ToLog a
build :: ThreatIntelIndicatorType -> ByteStringBuilder
$cbuild :: ThreatIntelIndicatorType -> ByteStringBuilder
Core.ToLog,
HeaderName -> ThreatIntelIndicatorType -> [Header]
(HeaderName -> ThreatIntelIndicatorType -> [Header])
-> ToHeader ThreatIntelIndicatorType
forall a. (HeaderName -> a -> [Header]) -> ToHeader a
toHeader :: HeaderName -> ThreatIntelIndicatorType -> [Header]
$ctoHeader :: HeaderName -> ThreatIntelIndicatorType -> [Header]
Core.ToHeader,
ThreatIntelIndicatorType -> QueryString
(ThreatIntelIndicatorType -> QueryString)
-> ToQuery ThreatIntelIndicatorType
forall a. (a -> QueryString) -> ToQuery a
toQuery :: ThreatIntelIndicatorType -> QueryString
$ctoQuery :: ThreatIntelIndicatorType -> QueryString
Core.ToQuery,
Value -> Parser [ThreatIntelIndicatorType]
Value -> Parser ThreatIntelIndicatorType
(Value -> Parser ThreatIntelIndicatorType)
-> (Value -> Parser [ThreatIntelIndicatorType])
-> FromJSON ThreatIntelIndicatorType
forall a.
(Value -> Parser a) -> (Value -> Parser [a]) -> FromJSON a
parseJSONList :: Value -> Parser [ThreatIntelIndicatorType]
$cparseJSONList :: Value -> Parser [ThreatIntelIndicatorType]
parseJSON :: Value -> Parser ThreatIntelIndicatorType
$cparseJSON :: Value -> Parser ThreatIntelIndicatorType
Core.FromJSON,
FromJSONKeyFunction [ThreatIntelIndicatorType]
FromJSONKeyFunction ThreatIntelIndicatorType
FromJSONKeyFunction ThreatIntelIndicatorType
-> FromJSONKeyFunction [ThreatIntelIndicatorType]
-> FromJSONKey ThreatIntelIndicatorType
forall a.
FromJSONKeyFunction a -> FromJSONKeyFunction [a] -> FromJSONKey a
fromJSONKeyList :: FromJSONKeyFunction [ThreatIntelIndicatorType]
$cfromJSONKeyList :: FromJSONKeyFunction [ThreatIntelIndicatorType]
fromJSONKey :: FromJSONKeyFunction ThreatIntelIndicatorType
$cfromJSONKey :: FromJSONKeyFunction ThreatIntelIndicatorType
Core.FromJSONKey,
[ThreatIntelIndicatorType] -> Encoding
[ThreatIntelIndicatorType] -> Value
ThreatIntelIndicatorType -> Encoding
ThreatIntelIndicatorType -> Value
(ThreatIntelIndicatorType -> Value)
-> (ThreatIntelIndicatorType -> Encoding)
-> ([ThreatIntelIndicatorType] -> Value)
-> ([ThreatIntelIndicatorType] -> Encoding)
-> ToJSON ThreatIntelIndicatorType
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> ToJSON a
toEncodingList :: [ThreatIntelIndicatorType] -> Encoding
$ctoEncodingList :: [ThreatIntelIndicatorType] -> Encoding
toJSONList :: [ThreatIntelIndicatorType] -> Value
$ctoJSONList :: [ThreatIntelIndicatorType] -> Value
toEncoding :: ThreatIntelIndicatorType -> Encoding
$ctoEncoding :: ThreatIntelIndicatorType -> Encoding
toJSON :: ThreatIntelIndicatorType -> Value
$ctoJSON :: ThreatIntelIndicatorType -> Value
Core.ToJSON,
ToJSONKeyFunction [ThreatIntelIndicatorType]
ToJSONKeyFunction ThreatIntelIndicatorType
ToJSONKeyFunction ThreatIntelIndicatorType
-> ToJSONKeyFunction [ThreatIntelIndicatorType]
-> ToJSONKey ThreatIntelIndicatorType
forall a.
ToJSONKeyFunction a -> ToJSONKeyFunction [a] -> ToJSONKey a
toJSONKeyList :: ToJSONKeyFunction [ThreatIntelIndicatorType]
$ctoJSONKeyList :: ToJSONKeyFunction [ThreatIntelIndicatorType]
toJSONKey :: ToJSONKeyFunction ThreatIntelIndicatorType
$ctoJSONKey :: ToJSONKeyFunction ThreatIntelIndicatorType
Core.ToJSONKey,
[Node] -> Either String ThreatIntelIndicatorType
([Node] -> Either String ThreatIntelIndicatorType)
-> FromXML ThreatIntelIndicatorType
forall a. ([Node] -> Either String a) -> FromXML a
parseXML :: [Node] -> Either String ThreatIntelIndicatorType
$cparseXML :: [Node] -> Either String ThreatIntelIndicatorType
Core.FromXML,
ThreatIntelIndicatorType -> XML
(ThreatIntelIndicatorType -> XML) -> ToXML ThreatIntelIndicatorType
forall a. (a -> XML) -> ToXML a
toXML :: ThreatIntelIndicatorType -> XML
$ctoXML :: ThreatIntelIndicatorType -> XML
Core.ToXML
)
pattern ThreatIntelIndicatorType_DOMAIN :: ThreatIntelIndicatorType
pattern $bThreatIntelIndicatorType_DOMAIN :: ThreatIntelIndicatorType
$mThreatIntelIndicatorType_DOMAIN :: forall r.
ThreatIntelIndicatorType -> (Void# -> r) -> (Void# -> r) -> r
ThreatIntelIndicatorType_DOMAIN = ThreatIntelIndicatorType' "DOMAIN"
pattern ThreatIntelIndicatorType_EMAIL_ADDRESS :: ThreatIntelIndicatorType
pattern $bThreatIntelIndicatorType_EMAIL_ADDRESS :: ThreatIntelIndicatorType
$mThreatIntelIndicatorType_EMAIL_ADDRESS :: forall r.
ThreatIntelIndicatorType -> (Void# -> r) -> (Void# -> r) -> r
ThreatIntelIndicatorType_EMAIL_ADDRESS = ThreatIntelIndicatorType' "EMAIL_ADDRESS"
pattern ThreatIntelIndicatorType_HASH_MD5 :: ThreatIntelIndicatorType
pattern $bThreatIntelIndicatorType_HASH_MD5 :: ThreatIntelIndicatorType
$mThreatIntelIndicatorType_HASH_MD5 :: forall r.
ThreatIntelIndicatorType -> (Void# -> r) -> (Void# -> r) -> r
ThreatIntelIndicatorType_HASH_MD5 = ThreatIntelIndicatorType' "HASH_MD5"
pattern ThreatIntelIndicatorType_HASH_SHA1 :: ThreatIntelIndicatorType
pattern $bThreatIntelIndicatorType_HASH_SHA1 :: ThreatIntelIndicatorType
$mThreatIntelIndicatorType_HASH_SHA1 :: forall r.
ThreatIntelIndicatorType -> (Void# -> r) -> (Void# -> r) -> r
ThreatIntelIndicatorType_HASH_SHA1 = ThreatIntelIndicatorType' "HASH_SHA1"
pattern ThreatIntelIndicatorType_HASH_SHA256 :: ThreatIntelIndicatorType
pattern $bThreatIntelIndicatorType_HASH_SHA256 :: ThreatIntelIndicatorType
$mThreatIntelIndicatorType_HASH_SHA256 :: forall r.
ThreatIntelIndicatorType -> (Void# -> r) -> (Void# -> r) -> r
ThreatIntelIndicatorType_HASH_SHA256 = ThreatIntelIndicatorType' "HASH_SHA256"
pattern ThreatIntelIndicatorType_HASH_SHA512 :: ThreatIntelIndicatorType
pattern $bThreatIntelIndicatorType_HASH_SHA512 :: ThreatIntelIndicatorType
$mThreatIntelIndicatorType_HASH_SHA512 :: forall r.
ThreatIntelIndicatorType -> (Void# -> r) -> (Void# -> r) -> r
ThreatIntelIndicatorType_HASH_SHA512 = ThreatIntelIndicatorType' "HASH_SHA512"
pattern ThreatIntelIndicatorType_IPV4_ADDRESS :: ThreatIntelIndicatorType
pattern $bThreatIntelIndicatorType_IPV4_ADDRESS :: ThreatIntelIndicatorType
$mThreatIntelIndicatorType_IPV4_ADDRESS :: forall r.
ThreatIntelIndicatorType -> (Void# -> r) -> (Void# -> r) -> r
ThreatIntelIndicatorType_IPV4_ADDRESS = ThreatIntelIndicatorType' "IPV4_ADDRESS"
pattern ThreatIntelIndicatorType_IPV6_ADDRESS :: ThreatIntelIndicatorType
pattern $bThreatIntelIndicatorType_IPV6_ADDRESS :: ThreatIntelIndicatorType
$mThreatIntelIndicatorType_IPV6_ADDRESS :: forall r.
ThreatIntelIndicatorType -> (Void# -> r) -> (Void# -> r) -> r
ThreatIntelIndicatorType_IPV6_ADDRESS = ThreatIntelIndicatorType' "IPV6_ADDRESS"
pattern ThreatIntelIndicatorType_MUTEX :: ThreatIntelIndicatorType
pattern $bThreatIntelIndicatorType_MUTEX :: ThreatIntelIndicatorType
$mThreatIntelIndicatorType_MUTEX :: forall r.
ThreatIntelIndicatorType -> (Void# -> r) -> (Void# -> r) -> r
ThreatIntelIndicatorType_MUTEX = ThreatIntelIndicatorType' "MUTEX"
pattern ThreatIntelIndicatorType_PROCESS :: ThreatIntelIndicatorType
pattern $bThreatIntelIndicatorType_PROCESS :: ThreatIntelIndicatorType
$mThreatIntelIndicatorType_PROCESS :: forall r.
ThreatIntelIndicatorType -> (Void# -> r) -> (Void# -> r) -> r
ThreatIntelIndicatorType_PROCESS = ThreatIntelIndicatorType' "PROCESS"
pattern ThreatIntelIndicatorType_URL :: ThreatIntelIndicatorType
pattern $bThreatIntelIndicatorType_URL :: ThreatIntelIndicatorType
$mThreatIntelIndicatorType_URL :: forall r.
ThreatIntelIndicatorType -> (Void# -> r) -> (Void# -> r) -> r
ThreatIntelIndicatorType_URL = ThreatIntelIndicatorType' "URL"
{-# COMPLETE
ThreatIntelIndicatorType_DOMAIN,
ThreatIntelIndicatorType_EMAIL_ADDRESS,
ThreatIntelIndicatorType_HASH_MD5,
ThreatIntelIndicatorType_HASH_SHA1,
ThreatIntelIndicatorType_HASH_SHA256,
ThreatIntelIndicatorType_HASH_SHA512,
ThreatIntelIndicatorType_IPV4_ADDRESS,
ThreatIntelIndicatorType_IPV6_ADDRESS,
ThreatIntelIndicatorType_MUTEX,
ThreatIntelIndicatorType_PROCESS,
ThreatIntelIndicatorType_URL,
ThreatIntelIndicatorType'
#-}